Quero escrever uma nova linguagem de templates e quero que o Visual Studio "dê suporte" a ela. O que preciso saber é:
- Como analiso meu novo idioma?
Dado algum código em minha nova linguagem de modelo, como faço para traduzi-lo para HTML? No momento, estou usando expressões regulares para analisar token por token, mas não acho que isso vá escalar muito bem, pois a linguagem fica mais complicada e não há verificação de erros. Já ouvi falar do ANTLR, mas nunca o usei. Essa seria a ferramenta certa para este trabalho, ou talvez haja algo mais simples? Idealmente, gostaria de enviar quaisquer erros de sintaxe para a janela de erro com o máximo de informações possível (linha #, tipo de erro) como fazem outras linguagens. - Como faço para criar um novo tipo de arquivo para Visual Studio?
- Como obtenho o realce de sintaxe?
Posso usar o mesmo analisador que criei na etapa 1 ou isso é algo totalmente diferente? - Como faço para obter o Intellisense?
Eu prefiro escrever meu analisador em C #.
Há um exemplo no VS SDK que mostra a maioria dos recursos que você está procurando.
fonte
Eu estava usando o VS com sua própria linguagem e precisava desesperadamente de um destaque de sintaxe . Construí o meu com base neste tutorial: https://mattduffield.wordpress.com/2012/07/31/writing-a-brightscript-syntax-highlight-extension-for-visual-studio-2010/
Eu sei que o tutorial está no VS2010. Eu fiz o meu no VS2012 com nenhum ou muito pequeno soluço. (também funcionou no VS2013) Recentemente mudei para o VS2015 e a solução pode ser editada, construída sem problemas.
fonte
Achei esta coleção muito útil de exemplos recentes para Visual Studio 2013 SDK: http://blogs.msdn.com/b/vsx/archive/2014/05/30/vs-2013-sdk-samples-released.aspx
Ele também contém a versão recente do OokLanguage que parece promissora.
Usamos ANTLR 4 para analisar nossa linguagem, que funciona perfeitamente e permite a interação direta com o código C #. Posso recomendar totalmente.
fonte
Conforme mencionado em outras respostas, o exemplo de código mais interessante é a extensão de linguagem Ook para a versão mais recente do Visual Studio (2017 no momento da escrita).
Para o VS 2015, veja a amostra no ramo VS2015 .
Para instalar o SDK para 2015 ou posterior, você precisa executar novamente a configuração do VS. Em 2015 é chamado de "Atualização 3 das Ferramentas de Extensibilidade do Visual Studio".
fonte