Language Pack

November 24, 2025 ยท View on GitHub

  1. About
  2. Supported File Formats/Languages
  3. How to update grammars

About

Syntax highlighting and more for about 40 programming languages and file formats taken from Visual Studio Code.

TextMate grammars and language configurations taken from Visual Studio Code and provided as a plugin based on Eclipse tm4e for the Eclipse IDE.

Supported File Formats/Languages

Language/FormatFile AssociationsSource
ASP.NET Razorfile-extensions="cshtml, razor"1.106.0@microsoft/vscode [upstream]
Batch File file-extensions="bat, cmd"1.106.0@microsoft/vscode [upstream]
BibTeXfile-extensions="bib"1.106.0@microsoft/vscode [upstream]
Cfile-extensions="c, i"1.106.0@microsoft/vscode [upstream]
C#file-extensions="cake, cs, csx"1.106.0@microsoft/vscode [upstream]
C++file-extensions="c++, c++m, cc, ccm, cpp, cppm, cxx, cxxm, h, h++, h.in, hh, hpp, hpp.in, hxx, ii, inl, ino, ipp, ixx, tpp, txx"1.106.0@microsoft/vscode [upstream]
Clojure file-extensions="clj, cljc, cljs, cljx, clojure, edn"1.106.0@microsoft/vscode [upstream]
Code Snippetsfile-extensions="code-snippets"
file-patterns="**/User/profiles/*/snippets/*.json, **/User/snippets/*.json, **/snippets*.json"
1.106.0@microsoft/vscode [upstream]
CoffeeScript file-extensions="coffee, cson, iced"1.106.0@microsoft/vscode [upstream]
CSSfile-extensions="css"1.106.0@microsoft/vscode [upstream]
CUDA C++file-extensions="cu, cuh"1.106.0@microsoft/vscode [upstream]
Dartfile-extensions="dart"1.106.0@microsoft/vscode [upstream]
Difffile-extensions="diff, patch, rej"1.106.0@microsoft/vscode [upstream]
Dockerfile-extensions="containerfile, dockerfile"
file-names="Containerfile, Dockerfile"
file-patterns="Containerfile.*, Dockerfile.*"
1.106.0@microsoft/vscode [upstream]
Dotenvfile-extensions="env"
file-names=".env, .flaskenv, user-dirs.dirs"
file-patterns=".env.*"
1.106.0@microsoft/vscode [upstream]
F#file-extensions="fs, fsi, fsscript, fsx"1.106.0@microsoft/vscode [upstream]
Git Commit Message file-names="COMMIT_EDITMSG, MERGE_MSG"1.106.0@microsoft/vscode [upstream]
Git Ignore file-extensions="git-blame-ignore-revs, gitignore, gitignore_global"
file-names=".gitignore"
1.106.0@microsoft/vscode
Git Rebase Message file-names="git-rebase-todo"
file-patterns="**/rebase-merge/done"
1.106.0@microsoft/vscode [upstream]
Gofile-extensions="go"1.106.0@microsoft/vscode [upstream]
Groovyfile-extensions="gradle, groovy, gvy, jenkinsfile, nf"
file-names="Jenkinsfile"
file-patterns="Jenkinsfile*"
1.106.0@microsoft/vscode [upstream]
Handlebarsfile-extensions="handlebars, hbs, hjs"1.106.0@microsoft/vscode [upstream]
HLSL (High-Level Shader Language)file-extensions="cginc, compute, fx, fxh, hlsl, hlsli, psh, vsh"1.106.0@microsoft/vscode [upstream]
HTMLfile-extensions="asp, aspx, ejs, htm, html, jshtm, jsp, mdoc, rhtml, shtml, volt, xht, xhtml"1.106.0@microsoft/vscode [upstream]
INI Config Filefile-extensions="ini"1.106.0@microsoft/vscode [upstream]
Java file-extensions="jav, java"1.106.0@microsoft/vscode [upstream]
JavaScriptfile-extensions="cjs, es6, js, mjs, pac"
file-names="jakefile"
1.106.0@microsoft/vscode [upstream]
JavaScript JSXfile-extensions="jsx"1.106.0@microsoft/vscode [upstream]
JSONfile-extensions="bowerrc, css.map, geojson, har, ipynb, js.map, jscsrc, jslintrc, json, jsonld, ts.map, vuerc, webmanifest"
file-names=".watchmanconfig, composer.lock"
1.106.0@microsoft/vscode [upstream]
JSON Linesfile-extensions="jsonl, ndjson"1.106.0@microsoft/vscode [upstream]
JSON with Commentsfile-extensions="babelrc, eslintrc, eslintrc.json, hintrc, jsfmtrc, jshintrc, jsonc, swcrc, toolset.jsonc"
file-names=".babelrc.json, .ember-cli, babel.config.json, bun.lock, typedoc.json"
1.106.0@microsoft/vscode [upstream]
Juliafile-extensions="jl"1.106.0@microsoft/vscode [upstream]
LaTeXfile-extensions="ctx, ltx, tex"1.106.0@microsoft/vscode [upstream]
Lessfile-extensions="less"1.106.0@microsoft/vscode [upstream]
Luafile-extensions="lua"1.106.0@microsoft/vscode [upstream]
Makefilefile-extensions="mak, mk"
file-names="GNUmakefile, Makefile, OCamlMakefile, makefile"
1.106.0@microsoft/vscode [upstream]
Markdown file-extensions="markdn, markdown, md, mdown, mdtext, mdtxt, mdwn, mkd, workbook"1.106.0@microsoft/vscode [upstream]
MS SQLfile-extensions="dsql, sql"1.106.0@microsoft/vscode [upstream]
Objective-Cfile-extensions="m"1.106.0@microsoft/vscode [upstream]
Objective-C++file-extensions="mm"1.106.0@microsoft/vscode [upstream]
Perlfile-extensions="PL, pl, pm, pod, psgi, t"1.106.0@microsoft/vscode [upstream]
PHPfile-extensions="ctp, php, php4, php5, phtml"1.106.0@microsoft/vscode [upstream]
PowerShellfile-extensions="ps1, psd1, psm1, psrc, pssc"1.106.0@microsoft/vscode [upstream]
Pugfile-extensions="jade, pug"1.106.0@microsoft/vscode [upstream]
Pythonfile-extensions="cpy, gyp, gypi, ipy, py, pyi, pyt, pyw, rpy"
file-names="SConscript, SConstruct"
1.106.0@microsoft/vscode [upstream]
Rfile-extensions="r, rhistory, rprofile, rt"1.106.0@microsoft/vscode [upstream]
Raku (Perl 6)file-extensions="nqp, p6, pl6, pm6, raku, rakudoc, rakumod, rakutest"1.106.0@microsoft/vscode [upstream]
reStructuredTextfile-extensions="rst"1.106.0@microsoft/vscode [upstream]
Rubyfile-extensions="erb, gemspec, podspec, rake, rb, rbi, rbx, rjs, ru"
file-names="appfile, appraisals, berksfile, berksfile.lock, brewfile, capfile, cheffile, dangerfile, deliverfile, fastfile, gemfile, guardfile, gymfile, hobofile, matchfile, podfile, puppetfile, rakefile, rantfile, scanfile, snapfile, thorfile, vagrantfile"
1.106.0@microsoft/vscode [upstream]
Rust file-extensions="rs"1.106.0@microsoft/vscode [upstream]
SCSSfile-extensions="scss"1.106.0@microsoft/vscode [upstream]
ShaderLabfile-extensions="shader"1.106.0@microsoft/vscode [upstream]
Shell Scriptfile-extensions="Xsession, bash, bash_aliases, bash_login, bash_logout, bash_profile, bashrc, csh, cshrc, ebuild, eclass, fish, ksh, profile, sh, tcshrc, xprofile, xsession, xsessionrc, yash_profile, yashrc, zlogin, zlogout, zprofile, zsh, zsh-theme, zshenv, zshrc"
file-names=".envrc, .hushlogin, APKBUILD, PKGBUILD, bashrc_Apple_Terminal, zlogin, zlogout, zprofile, zshenv, zshrc, zshrc_Apple_Terminal"
1.106.0@microsoft/vscode [upstream]
Swiftfile-extensions="swift"1.106.0@microsoft/vscode [upstream]
TeXfile-extensions="bbx, cbx, cls, sty"1.106.0@microsoft/vscode [upstream]
TypeScriptfile-extensions="cts, mts, ts"1.106.0@microsoft/vscode [upstream]
TypeScript JSXfile-extensions="tsx"1.106.0@microsoft/vscode [upstream]
Visual Basicfile-extensions="bas, brs, vb, vba, vbs"1.106.0@microsoft/vscode [upstream]
VS Code Search Result file-extensions="code-search"1.106.0@microsoft/vscode
XML file-extensions="ascx, atom, axaml, axml, bpmn, cpt, csl, csproj, csproj.user, dita, ditamap, dtd, dtml, ent, fsproj, fxml, iml, isml, jmx, launch, menu, mod, mxml, nuspec, opml, owl, proj, props, pt, publishsettings, pubxml, pubxml.user, rbxlx, rbxmx, rdf, rng, rss, shproj, slnx, storyboard, svg, targets, tld, tmx, vbproj, vbproj.user, vcxproj, vcxproj.filters, wsdl, wxi, wxl, wxs, xaml, xbl, xib, xlf, xliff, xml, xoml, xpdl, xsd, xul"1.106.0@microsoft/vscode [upstream]
XSL file-extensions="xsl, xslt"1.106.0@microsoft/vscode [upstream]
YAMLfile-extensions="cff, eyaml, eyml, winget, yaml, yaml-tmlanguage, yaml-tmpreferences, yaml-tmtheme, yml"1.96.1@microsoft/vscode [upstream]

How to update grammars

To update the grammar files do:

  1. Update version value under sources/vscode-extensions/github/ref setting in updater/updater-config.yaml to the desired value.

  2. Run updater/run.sh or updater/run.cmd

    $ updater/run.sh
    Launching...
    Loading [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\updater\updater-config.yaml]...
      -> 1 source repos defined
    Syntaxes Folder: [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\syntaxes]
    Source Repos Cache Dir: [C:\Users\User1\AppData\Local\Temp\syntax-repos]
    Loading [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\updater\updater-state.yaml]...
    ==================================================================
    [1/1] Processing [vscode-extensions] (VSCodeMultiExtensionsSource)
    ==================================================================
    Sparse checkout [https://github.com/microsoft/vscode]...
    Locating valid VSCode grammar extensions...
    Validating extension overrides...
      ==================================================================
      [1/49] Processing [bat] (VSCodeSingleExtensionSource)
      ==================================================================
      Validating language configuration overrides...OK
      Copying file [bat.tmLanguage.json]... OK -> 19288 bytes
      Copying file [bat.language-configuration.json]... OK -> 484 bytes
      ==================================================================
      [2/49] Processing [clojure] (VSCodeSingleExtensionSource)
      ==================================================================
      Copying file [clojure.tmLanguage.json]... OK -> 9632 bytes
      Copying file [clojure.language-configuration.json]... OK -> 373 bytes
      ...
    Saving state to [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\updater\updater-state.yaml]
    ==================================================================
    Updating [plugin.xml]...
    ==================================================================
    Rendering entry [bat/bat]...
    Rendering entry [clojure/clojure]...
    ...
    Saving [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\plugin.xml]...
    ==================================================================
    Updating [README.md.]...
    ==================================================================
    Saving [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\README.md]...
    ==================================================================
    Updating [about.html.]...
    ==================================================================
    Saving [X:\workspace\tm4e\org.eclipse.tm4e.language_pack\about.html]...
    ========================================================
    **DONE**
    ========================================================