Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>TextMate Syntax Highlighting and IntellisenseNew to Visual Studio Code? Get it now.
TextMate Syntax Highlighting and Intellisense

TextMate Syntax Highlighting and Intellisense

RedCMD

|
6,092 installs
| (5) | Free
Syntax Highlighting and Intellisense for VSCodes's JSON based TextMate grammars
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

TmLanguage-Syntax-Highlighter

Syntax Highlighting and Intellisense for VSCodes's JSON based TextMate grammars

Features

  • Syntax Highlighting
  • Basic Intellisense
  • Diagnostics error reporting
  • Ctrl+click Definitions
  • Breadcrumbs/Outline
  • Formatting
  • Schema support
  • Regex Optimizer
  • repository/include Call Hierarchy View
  • [F2] Rename
  • CodeLens
  • CallStack Viewer
  • Deadcode dims
  • File converter from/to JSON, YAML, XML and Ascii Plist
  • Supported in VSCode Web

Example code:
example-code

Highlights scope names with their own themed colour in realtime:
list-of-VSCode-Dark+-scopenames-and-their-colours

{
  "$schema": "https://raw.githubusercontent.com/RedCMD/TmLanguage-Syntax-Highlighter/main/vscode.tmLanguage.schema.json",
  "name": "languageId",
  "scopeName": "source.languageId",
  "patterns": [
    { "include": "#repo-item" },
    { "include": "#string" },
    { "include": "#boolean" }
  ],
  "repository": {
    "repo-item": { },
    "boolean": {
      "comment": "`\\b` is a 0-width word boundary. `$1` references capture group 1",
      "match": "\\b(true|false)\\b",
      "name": "constant.language.$1.languageId"
    },
    "string": {
      "comment": "\"begin\" & \"end\" can create a multi-line region",
      "begin": "\"",
      "end": "\"",
      "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.languageId" } },
      "endCaptures": { "0": { "name": "punctuation.definition.string.end.languageId" } },
      "name": "string.quoted.double.languageId",
      "patterns": [
        {
          "comment": "Quad backslash required to match one literal backslash",
          "match": "\\\\.",
          "name": "constant.character.escape.languageId"
        }
      ]
    }
  }
}

For more information

  • Github - TextMate
  • Github - VSCode TextMate
  • Github - Oniguruma
  • Github - Oniguruma: list of all expressions
  • Github - VSCode Oniguruma
  • Github - Oniguruma Optimizer
  • Github - Unit testing
  • Github - TmLanguage-Syntax-Highlighter
  • Github - Documentation
  • Github - Schema

Todo

  • Support unicode character insertions \u00b0
  • Finish ctrl+click definitions and references
  • Improve tree-sitter grammar
  • Improve TextMate documentation
  • Finish CallStack viewer
  • Redo TextMate scopeNames Naming conventions
  • Move to LanguageServer
  • Add unit tests mocha vscode-tmgrammar-test
  • Improve TreeSitter Query performance: Node contains &fieldName, Caching or Serializing a TSQuery
  • Add FlameGraph schema
  • Update CHANGELOG.md
  • Fix TreeSitter minified empty repo name
  • Add warnings for invalid Github Linguist errors
  • Parse regexes with oniguruma-parser
  • Update YAML and Ascii Plist grammars
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft