Jawaban:
Dalam Visual Studio Code , Anda bisa menambahkan asosiasi file persisten untuk menyoroti bahasa ke settings.json
file Anda seperti ini:
// Place your settings in this file to overwrite the default settings
{
"some_setting": custom_value,
...
"files.associations": {
"*.thor": "ruby",
"*.jsx": "javascript",
"Jenkinsfile*": "groovy"
}
}
Anda dapat menggunakan Ctrl+ Shift+ plalu mengetik settings JSON
. Pilih Preferensi: Buka Pengaturan (JSON) untuk membuka settings.json
.
The Files: Associations
fitur pertama kali diperkenalkan pada Visual Studio Kode versi 1.0 (Maret 2016). Periksa pola wildcard yang tersedia di catatan rilis dan string bahasa yang dikenal dalam dokumentasi.
.editorconfig
menutup file, atau menyelaraskan konfigurasi antara VSCode dan .editorconfig
, yang terakhir akan diutamakan
${projectdir}/.vscode/settings.json
file spesifik proyek .
Tahan Ctrl + Shift + P (atau cmd pada Mac), pilih "Ubah Bahasa Mode" dan itu dia.
Tetapi saya masih belum menemukan cara untuk membuat file VS Code dikenali dengan ekstensi spesifik karena beberapa bahasa tertentu.
Change Language Mode
; Alt+K, M
Cmd+K, M
untuk Mac.
Cara termudah yang saya temukan untuk asosiasi global adalah dengan ctrl + km (atau ctrl + shift + p dan ketik "ubah bahasa mode") dengan file jenis yang Anda asosiasikan terbuka.
Pada pilihan pertama akan "Konfigurasikan Asosiasi File untuk 'x'" (apa pun tipe file - lihat gambar terlampir) Memilih ini membuat asosiasi tipe file permanen
Ini mungkin telah berubah (mungkin memang) sejak pertanyaan asli dan jawaban yang diterima (dan saya tidak tahu kapan itu berubah) tetapi itu jauh lebih mudah daripada langkah-langkah pengeditan manual dalam menerima dan beberapa jawaban lain, dan benar-benar menghindari memiliki untuk muss dengan ID yang mungkin tidak jelas.
settings.json
file secara manual apa ID ekstensi seharusnya, tetapi metode ini mengurutkannya!
misalnya:
// .vscode/settings.json in workspace
{
"files.associations": {
"*Container.js": "javascriptreact",
"**/components/*/*.js": "javascriptreact",
"**/config/routes.js": "javascriptreact"
}
}
"**/layouts/**/*.html": "erb"
- perlu dicatat bahwa dropdown "mode bahasa" VSCode menunjukkan nama sebenarnya dari stabilo sintaks di kurung misalnyaRuby ERB (erb)
Ini, misalnya, akan membuat file berakhir .variables
dan .overrides
diperlakukan sama seperti file KURANG lainnya. Dalam hal pewarnaan kode, dalam hal pemformatan (otomatis). Tetapkan dalam pengaturan pengguna atau pengaturan proyek, yang Anda inginkan.
(UI semantik menggunakan ekstensi aneh ini, jika Anda penasaran)
Saya menemukan solusi di sini: https://code.visualstudio.com/docs/customization/colorizer
Pergi ke VS_CODE_FOLDER/resources/app/extensions/
sana dan perbaruipackage.json
Mengikuti langkah-langkah di https://code.visualstudio.com/docs/customization/colorizer#_common-questions bekerja dengan baik untuk saya:
Untuk memperluas colorizer yang ada, Anda akan membuat package.json sederhana di folder baru di bawah .vscode / extensions dan memberikan atribut extensionDependencies yang menentukan kustomisasi yang ingin Anda tambahkan. Pada contoh di bawah ini, ekstensi .mmd ditambahkan ke colorizer markdown. Perhatikan bahwa nama extensionDependency tidak hanya harus sesuai dengan kustomisasi tetapi juga id bahasa harus cocok dengan id bahasa dari colorizer yang Anda perluas.
{
"name": "MyMarkdown",
"version": "0.0.1",
"engines": {
"vscode": "0.10.x"
},
"publisher": "none",
"extensionDependencies": [
"markdown"
],
"contributes": {
"languages": [{
"id": "markdown",
"aliases": ["mmd"],
"extensions": [".mmd"]
}]
}
}
Saya telah mengikuti pendekatan yang berbeda untuk menyelesaikan masalah yang hampir sama, dalam kasus saya, saya membuat ekstensi baru yang menambahkan sintaks PHP yang menyoroti dukungan untuk file Drupal-spesifik (seperti .module dan .inc): https: // github. com / mastazi / VS-code-drupal
Seperti yang dapat Anda lihat dalam kode, saya membuat ekstensi baru daripada mengubah ekstensi PHP yang ada. Jelas saya menyatakan ketergantungan pada ekstensi PHP di ekstensi Drupal.
Keuntungan melakukannya dengan cara ini adalah jika ada pembaruan untuk ekstensi PHP, dukungan khusus saya untuk Drupal tidak hilang dalam proses pembaruan.