语言标识符
在 Visual Studio Code 中,每个 语言模式 都有一个唯一的特定语言标识符。该标识符很少被用户看到,除非是在设置中,例如,将文件扩展名与语言关联时。
"files.associations": {
"*.myphp": "php"
}
请注意,大小写对精确标识符匹配很重要('Markdown' != 'markdown')。
语言标识符对于 VS Code 扩展开发人员来说至关重要,因为他们需要添加新的语言功能或替换语言支持。
每种语言都通过扩展的 package.json
文件中的 languages
配置点定义其 id。
"languages": [{
"id": "java",
"extensions": [ ".java", ".jav" ],
"aliases": [ "Java", "java" ]
}]
使用语言标识符添加语言支持。
"grammars": [{
"language": "groovy",
"scopeName": "source.groovy",
"path": "./syntaxes/Groovy.tmLanguage.json"
}],
"snippets": [{
"language": "groovy",
"path": "./snippets/groovy.json"
}]
languages.registerCompletionItemProvider('php', new PHPCompletionItemProvider(), '.', '$');
新的标识符指南
定义新语言标识符时,请遵循以下指南。
- 使用小写的编程语言名称。
- 在市场中搜索其他扩展,以确定语言标识符是否已被使用。
已知语言标识符
下表列出了已知语言标识符。
语言 | 标识符 |
---|---|
ABAP | abap |
Windows Bat | bat |
BibTeX | bibtex |
Clojure | clojure |
Coffeescript | coffeescript |
C | c |
C++ | cpp |
C# | csharp |
Compose | dockercompose |
CSS | css |
CUDA C++ | cuda-cpp |
D | d |
Delphi | pascal |
Diff | diff |
Dockerfile | dockerfile |
Erlang | erlang |
F# | fsharp |
Git | git-commit 和 git-rebase |
Go | go |
Groovy | groovy |
Handlebars | handlebars |
Haml | haml |
Haskell | haskell |
HTML | html |
Ini | ini |
Java | java |
JavaScript | javascript |
JavaScript JSX | javascriptreact |
JSON | json |
带注释的 JSON | jsonc |
Julia | julia |
LaTeX | latex |
Less | less |
Lua | lua |
Makefile | makefile |
Markdown | markdown |
Objective-C | objective-c |
Objective-C++ | objective-cpp |
OCaml | ocaml |
Pascal | pascal |
Perl | perl 和 perl6 |
PHP | php |
纯文本 | plaintext |
PowerShell | powershell |
Pug | jade 、pug |
Python | python |
R | r |
Razor (cshtml) | razor |
Ruby | ruby |
Rust | rust |
SCSS | scss (使用大括号的语法)、sass (缩进语法) |
ShaderLab | shaderlab |
Shell 脚本(Bash) | shellscript |
Slim | slim |
SQL | sql |
Stylus | stylus |
Svelte | svelte |
Swift | swift |
TypeScript | typescript |
TypeScript JSX | typescriptreact |
TeX | tex |
Visual Basic | vb |
Vue | vue |
Vue HTML | vue-html |
XML | xml |
XSL | xsl |
YAML | yaml |