🚀 在 VS Code 中

語言識別碼

在 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(), '.', '$');

新的識別碼指南

定義新的語言識別碼時,請使用以下指南:

  • 使用小寫的程式語言名稱。
  • 在 Marketplace 中搜尋其他擴充功能,以找出是否已使用過語言識別碼。

已知的語言識別碼

下表列出了已知的語言識別碼:

語言 識別碼
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
Dart dart
Delphi pascal
Diff diff
Dockerfile dockerfile
Erlang erlang
F# fsharp
Git git-commitgit-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 with Comments 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 perlperl6
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 Script (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