それとも、構文ハイライト機能を使用するように現在のファイルの言語を切り替える方法はありますか?
たとえば、*.jsx
は実際にはJavaScriptを使用しますが、VS Codeはそれを認識しません。
Visual Studio Code では、言語ハイライト用の永続的なファイルの関連付けをsettings.json
ファイルに次のように追加できます。
// Place your settings in this file to overwrite the default settings
{
"some_setting": custom_value,
...
"files.associations": {
"*.thor": "Ruby",
"*.jsx": "javascript"
}
}
あなたが使用することができます Ctrl+Shift+p 次にsettings JSON
と入力します。 settings.json
を開くには、設定:設定を開く(JSON)を選択します。
Files: Associations
機能は、Visual Studio Codeバージョン1.0(2016年3月)で最初に導入されました。リリースノートで利用可能な ワイルドカードパターン とドキュメントで 既知の言語文字列 を確認してください。
Ctrl + Shift + P(またはMacの場合はcmd)を押しながら、[言語モードの変更]を選択します。
しかし、VS Codeに特定の拡張子を持つファイルを特定の言語として認識させる方法はまだ見つかりません。
例えば:
// .vscode/settings.json in workspace
{
"files.associations": {
"*Container.js": "javascriptreact",
"**/components/*/*.js": "javascriptreact",
"**/config/routes.js": "javascriptreact"
}
}
私はここで解決策を見つけました: https://code.visualstudio.com/docs/customization/colorizer
VS_CODE_FOLDER/resources/app/extensions/
に行き、そこでpackage.json
を更新してください。
https://code.visualstudio.com/docs/customization/colorizer#_common-questions の手順に従うと、うまくいきました。
既存のカラーライザーを拡張するには、.vscode/extensionsの下の新しいフォルダーに単純なpackage.jsonを作成し、追加したいカスタマイズを指定するextensionDependencies属性を指定します。以下の例では、拡張子.mmdがマークダウンカラーライザーに追加されています。 extensionDependency名がカスタマイズと一致する必要があるだけでなく、言語IDも拡張するカラーライザーの言語IDと一致する必要があります。
{
"name": "MyMarkdown",
"version": "0.0.1",
"engines": {
"vscode": "0.10.x"
},
"publisher": "none",
"extensionDependencies": [
"markdown"
],
"contributes": {
"languages": [{
"id": "markdown",
"aliases": ["mmd"],
"extensions": [".mmd"]
}]
}
}
こんにちは私はほとんど同じ問題を解決するために別のアプローチを取りました、私の場合私はPHP構文強調表示サポートをDrupal特有のファイル(.moduleや.incなど)に追加する新しい拡張子を作りました: https://github.com/mastazi/VS-code-drupal
コードからわかるように、既存のPHP拡張子を変更するのではなく、新しい拡張子を作成しました。私は、Drupal拡張モジュールのPHP拡張モジュールへの依存を宣言しています。
このようにすることの利点は、PHP拡張子への更新があっても、私のDrupalのカスタムサポートが更新プロセスで失われないことです。