我想写一种新的模板语言,我希望Visual Studio“支持”它。我需要知道的是:
给定一些使用新模板语言编写的代码,如何将其转换为HTML?现在我正在使用正则表达式逐个令牌地解析它,但我认为这不会很好地扩展,因为语言变得更加复杂,而且没有错误检查。我听说过ANTLR,但从未使用过它。这是适合这项工作的工具吗,还是有更简单的工具?理想情况下,我希望将任何语法错误发送到错误窗口,并提供尽可能多的信息(行号、错误类型),就像其他语言一样do.
我可以使用我在步骤1中创建的解析器吗,或者这是完全different?
吗?
我更喜欢用C#编写解析器。
发布于 2010-11-26 14:58:27
我想看看另一种语言,它已经完成了与Visual Studio集成的日常工作。Boo就是一个很好的例子。语言和Visual Studio的集成是开源的。所以你可以看看他们到底要做些什么。
VSX Language:https://github.com/boo/boo-lang
VS2010的Boo语法突出显示在其主页上包含了一些推荐链接,我将复制这些链接以便于参考:
VS2010中关于“分类”(语法高亮)的一篇很好的文章:http://dotneteers.net/blogs/divedeeper/archive/2008/11/04/LearnVSXNowPart38.aspx
发布于 2010-11-26 14:58:41
关于Visual Studio方面,您需要的是“语言服务”,它是为给定的文件扩展名/类型处理着色、智能感知等的实体。
有关简介,请参阅see this article
而对于代码示例see here
关于解析,有很多技术,我不会提供意见/建议。
请注意,这涉及到大量的工作,尽管在我看来,在VS2010中提供这种扩展要比在以前的Visual Studio版本中简单得多。
另请参阅
发布于 2011-01-14 02:03:42
我以本文为基础编写了一个VS语言服务:http://www.codeproject.com/KB/recipes/VSLanguageService.aspx
如果你对语法有一个基本的掌握,这并不是太糟糕。
https://stackoverflow.com/questions/4283072
复制相似问题