Доброго времени суток.
Есть такая штука, как LanguageService. Используется она для разбора, подсветки, навигации, рефакоринга и автодополнения синтаксического древа в файлах исходных текстов, о которых студия пока не знает.
https://msdn.microsoft.com/en-us/library/microsoft.visualstudio.package.languageservice.aspx
Возникла необходимость реализовать. Беглый поиск не дал результатов — мануалов практически нет, а если речь заходит о CodeSense, то вообще нет. Что странно.
В моём случае, это файлы UnrealScript (*.uc). В своё время в помощи по UDK вообще рекомендовалось выбрать для них в качестве редактора Visual C++ и не мучиться. Вариант, конечно, но не лучший. Нашёл и студию, построенную на Isolated Shell:
http://uside.codeplex.com/SourceControl/latest
Солюшен очень грязный. Часть лексем определены в ресурсных файлах, часть парсится из внешних, парсеры и лексеры генерируются по простыне жутких регулярок. Немного подпилил, завёл, но расширять и поддерживать это...
Так вот, в случае изобретения собственного велосипеда, подскажите — куда копать?
Есть, к примеру, очень приятный с виду пакет
https://irony.codeplex.com/
По части простенького разбора на ключевые слова, комментарии весьма удобен. И вроде бы даже какая-то объектная модель у него есть, но как её реализовывать, опять же не ясно.
Если у вас был опыт использования каких-нибудь фреймворков или реализации в лоб LanguageService с поддержкой CodeSense (обязательно), поделитесь, пожалуйста.
"Хаос всегда побеждает порядок, поскольку лучше организован." (с) Терри Пратчетт