Sprachidentifikatoren
In Visual Studio Code hat jeder Sprachmodus einen eindeutigen, spezifischen Sprachidentifikator. Dieser Identifikator ist für den Benutzer selten sichtbar, außer in den Einstellungen, beispielsweise wenn Dateierweiterungen einer Sprache zugeordnet werden.
"files.associations": {
"*.myphp": "php"
}
Beachten Sie, dass die Groß- und Kleinschreibung für die exakte Übereinstimmung des Identifikators wichtig ist ('Markdown' != 'markdown')
Der Sprachidentifikator wird für VS Code-Erweiterungsentwickler unerlässlich, wenn neue Sprachfunktionen hinzugefügt oder eine Sprachunterstützung ersetzt werden soll.
Jede Sprache definiert ihre id über den languages-Konfigurationspunkt in der package.json-Datei der Erweiterung
"languages": [{
"id": "java",
"extensions": [ ".java", ".jav" ],
"aliases": [ "Java", "java" ]
}]
Sprachunterstützungen werden anhand des Sprachidentifikators hinzugefügt
"grammars": [{
"language": "groovy",
"scopeName": "source.groovy",
"path": "./syntaxes/Groovy.tmLanguage.json"
}],
"snippets": [{
"language": "groovy",
"path": "./snippets/groovy.json"
}]
languages.registerCompletionItemProvider('php', new PHPCompletionItemProvider(), '.', '$');
Neue Richtlinien für Bezeichner
Verwenden Sie bei der Definition eines neuen Sprachidentifikators die folgenden Richtlinien
- Verwenden Sie den klein geschriebenen Namen der Programmiersprache.
- Suchen Sie im Marketplace nach anderen Erweiterungen, um herauszufinden, ob ein Sprachidentifikator bereits verwendet wurde.
Bekannte Sprachidentifikatoren
Die folgende Tabelle listet bekannte Sprachidentifikatoren auf
| Sprache | Identifikator |
|---|---|
| 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-commit und 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 mit Kommentaren | 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 und perl6 |
| PHP | php |
| Plain Text | plaintext |
| PowerShell | powershell |
| Pug | jade, pug |
| Python | python |
| R | r |
| Razor (cshtml) | razor |
| Ruby | ruby |
| Rust | rust |
| SCSS | scss (Syntax mit geschweiften Klammern), sass ( eingerückte Syntax) |
| 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 |