microsoft / microsoft/TypeScript-TmLanguage
TS Syntax highlight broken for multiline generic arguments of function in object
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 471
- Forks
- 149
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Type: Bug
When having a function with generic type params in an object and the generic type params wrap into multiple lines, the TS syntax highlighting is broken.
To reproduce, just paste the following code in a .ts file and see the broken output:
const myObj = {
test<
A extends Record<string, any>,
C extends Record<string, any>,
B extends Record<string, any>,
>(a: A, b: B, c: C): Record<string, any>[] {
if ('hello' in a) {
console.log('Test');
}
return [a, b, c];
},
};
For reference, I added the same function but outside of the object which shows the correct/broken highlight in comparison:
VS Code version: Code 1.88.1 (e170252f762678dec6ca2cc69aba1570769a5d39, 2024-04-10T17:42:52.765Z)
OS version: Darwin x64 22.6.0
Modes:
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Reproduisez le problème dans un fichier TypeScript en utilisant l’objet fourni et l’exemple de generic-function multiligne, en le comparant à la fonction autonome. Examinez les fichiers de grammaire TypeScript TextMate pour trouver les règles qui gèrent les arguments génériques à l’intérieur des membres d’objet ; le travail est terminé lorsque la version multiligne reçoit la même coloration correcte que la fonction autonome.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- tooling
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100