vscode/extensions/typescript-basics/syntaxes
Matt Bierner cf01f3bb99
Update TS grammars (#167479)
Pulls in support for TS accessor syntax
2022-11-28 16:30:49 -08:00
..
jsdoc.js.injection.tmLanguage.json Restore extensions in core (#114921) 2021-01-25 17:07:56 +01:00
jsdoc.ts.injection.tmLanguage.json Restore extensions in core (#114921) 2021-01-25 17:07:56 +01:00
Readme.md Restore extensions in core (#114921) 2021-01-25 17:07:56 +01:00
TypeScript.tmLanguage.json Update TS grammars (#167479) 2022-11-28 16:30:49 -08:00
TypeScriptReact.tmLanguage.json Update TS grammars (#167479) 2022-11-28 16:30:49 -08:00

The file TypeScript.tmLanguage.json and TypeScriptReact.tmLanguage.json are derived from TypeScript.tmLanguage and TypeScriptReact.tmLanguage.

To update to the latest version:

  • cd extensions/typescript and run npm run update-grammars
  • don't forget to run the integration tests at ./scripts/test-integration.sh

Migration notes and todos:

  • differentiate variable and function declarations from references

    • I suggest we use a new scope segment 'function-call' to signal a function reference, and 'definition' to the declaration. An alternative is to use 'support.function' everywhere.
    • I suggest we use a new scope segment 'definition' to the variable declarations. Haven't yet found a scope for references that other grammars use.
  • rename scope to return.type to return-type, which is already used in other grammars

  • rename entity.name.class to entity.name.type.class which is used in all other grammars I've seen

  • do we really want to have the list of all the 'library' types (Math, Dom...). It adds a lot of size to the grammar, lots of special rules and is not really correct as it depends on the JavaScript runtime which types are present.