Как мне: Расширение подсветки синтаксиса Visual Studio - PullRequest
20 голосов
/ 15 июля 2010

Я хочу разработать расширение для VS2010, которое позволит мне сделать некоторые дополнительные функции для подсветки синтаксиса.

Я установил SDK, как мне начать с?

Пожалуйста, дайтенебольшой фрагмент (или ссылку на код), где я вижу, как начать.

Примечание : нужно ли проверять весь блок кода, или SDK говорит мне о каждом словечто это такое, как заявлено и т. д.

Ответы [ 2 ]

21 голосов
/ 16 июля 2010

Есть немало информации для написания классификаторов. Я написал статью об этом в блоге некоторое время назад.

Что касается примеров / кода, то есть:

Ответ на другую часть вашего вопроса о том, говорит ли вам SDK, что такое каждое слово, ответ «нет», с несколькими «любопытными» предостережениями. В целом, базовые языковые модели не раскрываются, хотя вы можете делать что-то вроде получения информации о классификации из других классификаторов в надежде, что они предоставят вам достаточно информации; некоторые, такие как C #, дают много информации, которая может не отображаться в IDE в настройках шрифтов и цветов по умолчанию (проверьте настройки «Инструменты-> Параметры-> Среда-> Шрифты и цвета», чтобы узнать, хотите ли вы изменения уже могут быть), а другие, как VB, как правило, нет. Вы также можете использовать такие вещи, как CodeModel от DTE, но я никогда не слышал о том, чтобы кто-то имел действительно хороший опыт работы с ним.

Если вам нужен пример использования информации о классификации, вы можете увидеть, как это делает CommentTextTagger.cs (часть расширения проверки орфографии).

2 голосов
/ 15 июля 2010

Вы можете проверить

http://code.msdn.microsoft.com/ookLanguage

, который имеет подсветку синтаксиса в "OokTokenTag.cs" в примере C #.Конечно, вам нужно разобрать целый блок текста, но это не так уж сложно.

(найдено по этой ссылке из http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/657212c1-1685-4ed6-be2f-cbf34fcc5b20)

...