我想写一个新的模板语言,我希望Visual Studio"支持"它.我需要知道的是:
- 我如何解析我的新语言?
在我的新模板语言中给出了一些代码,我该如何将其翻译成HTML?现在我正在使用正则表达式通过令牌解析它令牌,但我不认为随着语言变得更加复杂,这将无法扩展,并且没有错误检查.我听说过ANTLR,但从未使用它.这是否适合这项工作,或者是否有更简单的工具?理想情况下,我想将错误窗口中的任何语法错误发送到尽可能多的信息(行#,错误类型),就像其他语言一样.
- 如何为Visual Studio创建新的文件类型?
- 如何获得语法高亮?
我可以使用我在步骤1中创建的相同解析器,还是这个完全不同?
- 我如何获得智能感知?
我更喜欢用C#编写我的解析器.