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