C# Visual studio(2008)集成-智能感知和着色器
所以我现在要看的是如何让visual studio集成为我们的少ruby库端口工作:。这基本上是一个CSS预处理器,它在CSS语言上进行扩展,为您提供变量、混合、嵌套规则等 我们想要的是让我们的.Less文件类型利用VS的智能和语法突出显示。现在,由于Less语言基本上是CSS,有一些额外的细节,因此扩展现有VS对CSS文件的支持似乎是明智的 我们已经开始关注VSSDK,并设法将所有文本都涂成蓝色(这是一个开始)。但是在我们开始研究Lexer impl之前,我真的想知道我们是否能够以某种方式扩展CSS支持已经完成的工作 任何指向正确方向的指示都将不胜感激C# Visual studio(2008)集成-智能感知和着色器,c#,visual-studio,parsing,intellisense,C#,Visual Studio,Parsing,Intellisense,所以我现在要看的是如何让visual studio集成为我们的少ruby库端口工作:。这基本上是一个CSS预处理器,它在CSS语言上进行扩展,为您提供变量、混合、嵌套规则等 我们想要的是让我们的.Less文件类型利用VS的智能和语法突出显示。现在,由于Less语言基本上是CSS,有一些额外的细节,因此扩展现有VS对CSS文件的支持似乎是明智的 我们已经开始关注VSSDK,并设法将所有文本都涂成蓝色(这是一个开始)。但是在我们开始研究Lexer impl之前,我真的想知道我们是否能够以某种方式扩展
克里斯 这在VisualStudio2010中是很简单的,它现在是beta 2版。文本编辑器是全新的,旨在支持此场景。如果深入研究SDK,您会发现许多相关示例
对于VS2008及更早版本,您无法扩展现有编辑器。您必须提供一个全新的编辑器,它恰好复制了现有编辑器的所有功能 无论你选择2005年、2008年还是2010年,你都将面临同样的选择——你可以选择其中一个,但决不能同时选择两个
如果您选择#2,那么您将编写所谓的Visual Studio语言服务,这里和web上都有很多资源(我的博客中有一些)。请注意,一旦您通过了简单的语法突出显示,这将是一项非常重要的任务。-1:用于添加新语言支持的可扩展性API在2008年和2010年有所不同,但您必须编写语言服务这一事实并非如此。你不能“扩展”内置的语言,除了C++语法高亮器中的用户关键词(如果这甚至是计数)。+ 1:你不需要编写语言服务来修改在VS2010 EddioRoK中显示的任何文档中的颜色,这不是我想要听到的,但只要我知道就好。还有一件事,您通常会发现编写两个解析器意味着一个用于DSL,另一个用于VS集成,或者您成功地让一个解析器用于两种场景吗?我已经用两种方法完成了,但目前我使用一个“轻”词法分析器进行语法高亮显示,另一个词法分析器/解析器进行语义、IntelliSense、,大纲和一些智能感知操作有时也最好由专用解析器处理。