Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Regular expressions aren't properly highlighted in certain scenarios

Ouverte
#853 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
42/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
javascript, typescript
Domaine
tooling

Piste de recherche

Commencez par reproduire les extraits JavaScript fournis dans VS Code, puis repérez les règles de grammaire TypeScript TextMate responsables des littéraux d’expressions régulières. Comparez la coloration syntaxique dans chacun des contextes indiqués et dans l’exemple imbriqué ; le travail est terminé lorsque les expressions régulières et le code environnant sont correctement colorés sans perturber les constructions suivantes.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

in vscode 1.53.1

/foo/;
return /foo/;
throw /foo/;

yield* /foo/;
yield /foo/;
await /foo/;

export default /foo/;


if(_) /foo/;
else /foo/;

while(_) /foo/;

for(;;) /foo/;
for(_ in /foo/) /foo/;

with(_) /foo/;

do /foo/;
while(_);


void /foo/;
typeof /foo/;
/foo/ in /foo/;
/foo/ instanceof /foo/;
new /foo/;
!class extends /foo/ {};

/foo/[/foo/];
!/foo/;
~/foo/;
+/foo/;
-/foo/;
++/foo/;
--/foo/;
/foo/++;
/foo/--;

looks like this:

as can be seen, regular expressions aren't properly highlighted:

  • after throw/export default
  • after await/yield (but not yield*)
  • after while(), for(), with(), do, else (but not if())
  • after in/of (in for..in/for..of)
  • after void/typeof/new
  • as either operand of in/instanceof
  • after extends (in class)
  • after unary ++/--

worse yet, this can break the highlighting of surrounding code:

yield /[[]/;
if(1) {
	foo["bar"]();
	a: { break a; }
} else return 123;

Langage dominant
TypeScript
Étoiles
471
Forks
149
Métriques de merge des PR
Aucune PR mergée en 30 j

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de microsoft/TypeScript-TmLanguage

Toutes les issues de microsoft/TypeScript-TmLanguage

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.