microsoft / microsoft/TypeScript-TmLanguage
Regular expressions aren't properly highlighted in certain scenarios
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 471
- Forks
- 149
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
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 notyield*) - after
while(),for(),with(),do,else(but notif()) - after
in/of(infor..in/for..of) - after
void/typeof/new - as either operand of
in/instanceof - after
extends(inclass) - after unary
++/--
worse yet, this can break the highlighting of surrounding code:
yield /[[]/;
if(1) {
foo["bar"]();
a: { break a; }
} else return 123;

Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die bereitgestellten JavaScript-Snippets in VS Code zu reproduzieren, und ermittle dann die TypeScript TextMate-Grammatikregeln, die für Literale regulärer Ausdrücke verantwortlich sind. Vergleiche die Hervorhebung in jedem aufgeführten Kontext und im verschachtelten Beispiel; als erledigt gilt die Aufgabe, wenn die Regexe und der umgebende Code korrekt hervorgehoben werden, ohne nachfolgende Konstrukte zu beeinträchtigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, typescript
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100