Saya ingin menulis bahasa template baru, dan saya ingin Visual Studio "mendukung" -nya. Yang perlu saya ketahui adalah:
- Bagaimana cara mengurai bahasa baru saya?
Diberikan beberapa kode dalam bahasa template baru saya, bagaimana cara menerjemahkannya ke dalam HTML? Saat ini saya menggunakan ekspresi reguler untuk mengurai token demi token, tetapi menurut saya ini tidak akan diskalakan dengan baik karena bahasanya menjadi lebih rumit, dan tidak ada pemeriksaan kesalahan. Saya pernah mendengar tentang ANTLR tetapi tidak pernah menggunakannya. Apakah itu alat yang tepat untuk pekerjaan ini, atau mungkin ada sesuatu yang lebih sederhana? Idealnya saya ingin mengirim kesalahan sintaks ke jendela kesalahan dengan informasi sebanyak mungkin (baris #, jenis kesalahan) seperti yang dilakukan bahasa lain. - Bagaimana cara membuat tipe file baru untuk Visual Studio?
- Bagaimana cara mendapatkan penyorotan sintaks?
Dapatkah saya menggunakan parser yang sama yang saya buat di langkah 1, atau apakah ini sesuatu yang sama sekali berbeda? - Bagaimana cara saya mendapatkan Intellisense?
Saya lebih suka menulis parser saya di C #.
Ada contoh di VS SDK yang menunjukkan sebagian besar fitur yang Anda cari.
sumber
Saya menggunakan VS dengan bahasa sendiri dan sangat membutuhkan sorotan sintaks . Saya membuat milik saya berdasarkan tutorial ini: https://mattduffield.wordpress.com/2012/07/31/writing-a-brightscript-syntax-highlight-extension-for-visual-studio-2010/
Saya tahu tutorialnya ada di VS2010. Saya membuat milik saya di VS2012 tanpa atau cegukan yang sangat kecil. (juga bekerja di VS2013) Baru-baru ini saya mengubah ke VS2015 dan solusinya dapat diedit, dibuat tanpa masalah.
sumber
Saya menemukan koleksi sampel terbaru yang sangat berguna untuk Visual Studio 2013 SDK: http://blogs.msdn.com/b/vsx/archive/2014/05/30/vs-2013-sdk-samples-released.aspx
Ini juga berisi versi terbaru dari OokLanguage yang terdengar menjanjikan.
Kami menggunakan ANTLR 4 untuk mengurai bahasa kami yang berfungsi seperti pesona dan memungkinkan interaksi langsung dengan kode C #. Benar-benar dapat merekomendasikannya.
sumber
Seperti disebutkan dalam jawaban lain, contoh kode yang paling menarik adalah ekstensi bahasa Ook untuk versi terbaru Visual Studio (2017 pada saat penulisan).
Untuk VS 2015 lihat sampel di cabang VS2015 .
Untuk menginstal SDK untuk tahun 2015 atau lebih baru, Anda perlu menjalankan kembali penyiapan VS. Pada 2015 ini disebut "Visual Studio Extensibility Tools Update 3".
sumber