言語識別子

VS Codeでは、各言語モードに固有の言語識別子があります。識別子は、たとえばファイル拡張子を言語に関連付ける場合など、設定を除いてユーザーが見ることはほとんどありません。

"files.associations": {
"*.myphp": "php"
}

正確に識別を一致するためのケーシング事項(‘Markdown’ != ‘markdown’)

言語識別子は、新しい言語機能を追加するときや言語サポートを置き換えるときに、VS Code拡張機能の開発者にとって不可欠になります。

すべての言語はlanguages構成オプションを通じてidを定義します:

"languages": [{
"id": "java",
"extensions": [ ".java", ".jav" ],
"aliases": [ "Java", "java" ]
}]

言語サポートは、言語識別子を利用して追加します:

"grammars": [{
"language": "groovy",
"scopeName": "source.groovy",
"path": "./syntaxes/Groovy.tmLanguage"
}],
"snippets": [{
"language": "groovy",
"path": "./snippets/groovy.json"
}]
languages.registerCompletionItemProvider('php', new PHPCompletionItemProvider(), '.', '$')

新しい識別子のガイドライン

新しい言語識別子を定義するときは、次のガイドラインを使用してください:

  • 小文字のプログラミング言語名を使用します。
  • Marketplaceで他の拡張機能を検索して、言語識別子が既に使用されているかどうかを確認します。

既知の言語識別子

次に既知のすべての言語識別子を示します:

LanguageIdentifier
Windows Batbat
BibTeXbibtex
Clojureclojure
Coffeescriptcoffeescript
Cc
C++cpp
C#csharp
CSScss
Diffdiff
Dockerfiledockerfile
F#fsharp
Gitgit-commit and git-rebase
Gogo
Groovygroovy
Handlebarshandlebars
HTMLhtml
Iniini
Javajava
JavaScriptjavascript
JSONjson
LaTeXlatex
Lessless
Lualua
Makefilemakefile
Markdownmarkdown
Objective-Cobjective-c
Objective-C++objective-cpp
Perlperl and perl6
PHPphp
Powershellpowershell
Pugjade
Pythonpython
Rr
Razor (cshtml)razor
Rubyruby
Rustrust
Sassscss (syntax using curly brackets), sass (indented syntax)
ShaderLabshaderlab
Shell Script (Bash)shellscript
SQLsql
Swiftswift
TypeScripttypescript
TeXtex
Visual Basicvb
XMLxml
XSLxsl
YAMLyaml

42757495f4d9a4a7a959e45a7eb459c388b04aaf