microsoft / microsoft/TypeScript-TmLanguage

Broken syntax highlighting for async generic arrow functions with multiline arguments

Offen
#819 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

TS and JS Grammar Extension version: 0.0.53 / latest

Syntax highlighting breaks for async generic arrow functions, whose arguments span multiple lines. This is basically the same problem as #481 but with async keyword

Code

async <TData, TError extends string = string>(
  url: string,
  config?: AxiosRequestConfig,
): Promise<Result<TData, TError>> => {
  try {
    const { data } = await Axios.get<ServerResponse<TData, TError>>(
      url,
      config,
    )
    return Result.fromResponse(data)
  } catch (e) {
    return handleError<TData, TError>(e)
  }
}

image

It works fine when I either move type arguments to next line/remove async/move arguments to one line. In the first two cases, type arguments and normal arguments highlighting doesn't work though.

image
image
image

Just noticed GitHub highlighting breaks as well. Is it a grammar limitation?

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

Reproduziere den Hervorhebungsfehler mit dem Beispiel einer asynchronen generischen Pfeilfunktion im Issue und vergleiche ihn anschließend mit dem referenzierten Fall #481. Verfolge das Verhalten der TypeScript/JavaScript-Grammatik bei mehrzeiligen Argumenten und überprüfe, dass das Beispiel und seine angegebenen Varianten korrekt hervorgehoben werden.

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
38/100

Neue Issues direkt in Ihr Postfach

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