Я хочу написать новый язык шаблонов и хочу, чтобы Visual Studio «поддерживала» его. Что мне нужно знать:
- Как мне разобрать мой новый язык?
Учитывая некоторый код на моем новом языке шаблонов, как мне перевести его в HTML? Прямо сейчас я использую регулярные выражения для анализа токена за токеном, но я не думаю, что это будет хорошо масштабироваться, поскольку язык становится более сложным и нет проверки ошибок. Я слышал об ANTLR, но никогда не использовал его. Подойдет ли это для этой работы или есть что-нибудь попроще? В идеале я хотел бы отправлять любые синтаксические ошибки в окно ошибок с как можно большим количеством информации (номер строки, тип ошибки), как это делают другие языки. - Как создать новый тип файла для Visual Studio?
- Как получить подсветку синтаксиса?
Могу ли я использовать тот же парсер, который я создал на шаге 1, или это что-то совсем другое? - Как мне получить Intellisense?
Я бы предпочел написать свой парсер на C #.
В VS SDK есть образец, который показывает большинство функций, которые вы ищете.
источник
Я использовал VS с собственным языком и отчаянно нуждался в подсветке синтаксиса . Я построил свой на основе этого учебника: https://mattduffield.wordpress.com/2012/07/31/writing-a-brightscript-syntax-highlight-extension-for-visual-studio-2010/
Я знаю, что учебник находится в VS2010. Я сделал свой в VS2012 без икоты или с очень небольшой икотой. (также работал в VS2013). Недавно я перешел на VS2015, и решение можно редактировать и создавать без проблем.
источник
Я нашел эту очень полезную коллекцию недавних примеров для Visual Studio 2013 SDK: http://blogs.msdn.com/b/vsx/archive/2014/05/30/vs-2013-sdk-samples-released.aspx
Он также содержит последнюю версию OokLanguage, которая звучит многообещающе.
Мы использовали ANTLR 4 для анализа нашего языка, который работает как шарм и позволяет напрямую взаимодействовать с кодом C #. Могу полностью рекомендовать это.
источник
Как упоминалось в других ответах, наиболее интересным примером кода является расширение языка Ook для последней версии Visual Studio (2017 г. на момент написания).
Для VS 2015 см. Образец в ветке VS2015 .
Чтобы установить SDK для 2015 года или более поздней версии, вам необходимо повторно запустить установку VS. В 2015 году он называется «Обновление 3 средств расширения Visual Studio».
источник