microsoft / microsoft/TypeScript-TmLanguage

Syntax highlighting broken in lambda after type statement without semicolon

Ouverte
#889 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

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

Description

Bug Report

🔎 Search Terms

syntax highlight semicolon lambda

🕗 Version & Regression Information
  • This is not a bug with the compiler
  • This is a VSCode syntax highlighting bug
  • VSCode Version 1.61.2
Version: 1.61.2 (user setup)
Commit: 6cba118ac49a1b88332f312a8f67186f7f3c1643
Date: 2021-10-19T14:57:20.575Z
Electron: 13.5.1
Chrome: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Windows_NT x64 10.0.19043
⏯ Playground Link

Playground link with relevant code

💻 Code
declare function doFoo(arg: any): void

type A = number
doFoo(() => {
    type B = number
    const b = 5
})
const a = 1
🙁 Actual behavior

type and const get colored oddly inside the lambda.

image

Notice that the colors are different in and out of the lambda.

Scope/token debugging:

image

🙂 Expected behavior

The syntax highlighting should look like this:

image

Notice that colors are the same in and out of the lambda. I added a semicolon in this case to the type statement to workaround the issue.

Scope/token debugging:

image

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.

Piste de recherche

Ouvrez le TypeScript Playground lié et reproduisez la différence de coloration syntaxique dans VS Code 1.61.2 à l’aide de la lambda et des déclarations de type fournies. Examinez le comportement de la grammaire TextMate ainsi que la sortie scope/token autour de l’instruction de type sans point-virgule. Le travail est considéré comme terminé lorsque type et const reçoivent la même coloration à l’intérieur et à l’extérieur de la lambda sans nécessiter de point-virgule.

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

Évaluation

Stack technique
typescript
Domaine
devtools, tooling
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
38/100

Recevez les nouvelles issues par e-mail

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