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

新的識別項指南

定義新的語言識別項時,請使用下列指南

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

已知語言識別項

下表列出已知的語言識別項

語言 識別項
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
Plain Text plaintext
PowerShell powershell
Pug jadepug
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