microsoft / microsoft/TypeScript-TmLanguage
Broken syntax highlighting for async generic arrow functions with multiline arguments
Dieses Issue hat noch niemand übernommen.
- 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)
}
}

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.



Just noticed GitHub highlighting breaks as well. Is it a grammar limitation?
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
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