microsoft / microsoft/TypeScript-TmLanguage

Generic constructor with more than one generic type can break syntax highlighting.

Offen
#973 4 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
TypeScript
Sterne
471
Forks
149
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

JavaScript and TypeScript Nightly version:

Last released - 4/4/2023, 02:09:37
Last updated - 4/4/2023, 18:09:42

Code

export class Foo {
    readonly bar = {
        map: new Map<
            Type1, Type2>([]) 
    };

    private function() {
        return 1;
    }
}

The code above breaks syntax highlighting, I have also tested in insiders vscode with nightly typescript.

image

It is fine, if both generics are on the same line as the main type:

image

If there is only 1 generic, it does slightly better, the highlighting of the generic is wrong, but the rest of the file is ok.

image

Or if the argument to the constructor is not a list, this it is also recoverable, although both the highlighting of the generic, and the closing angle bracket are wrong.

image

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Keine Quelldatei oder kein Test ist angegeben. Beginne damit, das mehrzeilige TypeScript-Beispiel für einen generischen Konstruktor aus dem Issue zu reproduzieren, vergleiche es mit den funktionierenden Varianten und verfolge die für die Syntaxhervorhebung verantwortliche TypeScript-TextMate-Grammatik. Als erledigt gilt die Aufgabe, wenn der gezeigte Code und die ihn umgebende Datei ihre korrekte Hervorhebung behalten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript, vscode
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.