Visual Studio 2010中更好的C#语法着色?

18
从Eclipse转过来,我对Visual Studio(所有版本,包括2010)为C#提供的非常有限的语法着色功能感到失望。
特别是,我对方法/字段/本地变量/静态内容的不同颜色很感兴趣。
我知道Visual Assist可以增强着色,但我没有找到任何能够做到这一点的免费替代品,所以我转向SO(我希望它与编程有关)。是否有任何免费(或至少比Visual Assist更便宜)的解决方案可以增强C#的语法着色?

你的意思是“最多到2010年”?即使是VS 2015也是一样糟糕的东西。 - salmatron
5个回答

22

我从其他回复中了解到,答案是“没有免费提供这样的扩展程序”,于是我自己写了一个:

better syntax coloring

(方法用浅棕色表示,变量用洋红色表示,否则它们的颜色就是黑色)

它有点粗糙,但对我来说有效 - 而且是免费的 :)

编辑:有兴趣的人可以使用 Visual Studio SDK 随附的“编辑器分类”模板作为起点。


1
不错...就是这股劲儿!!+1 - Warren Rumak
21
有没有发布这个东西的免费/开源版本,以便我们其他人也能享受它? - Omer Raviv
不点赞,因为这对我没有帮助。 - nawfal

13

确实如此,但看起来它的价格和Visual Assist一样昂贵,甚至更贵 :( - Oak
2
一旦你发现它能提高你的生产力,那么它就不算贵了。 - Diego Mijelshon
3
R#是非常有价值的。一旦你拥有它,就无法再没有它。它让编码变得更加愉悦。VisualAssist更适用于C++。 - sylvanaar
1
ReSharper基本上使得Visual Studio与Eclipse相媲美。你会一直发现缺少的功能,直到你得到它为止。 - Greg

8
注意:一种IDE的缺陷可能是另一种IDE的特性。Visual Studio的语法着色完全基于词法分析,快速、简单且始终准确,无论您在编辑时代码有多么糟糕。要获得类似Eclipse的着色,编辑器需要能够解析代码以对标识符进行分类。这是一个更难的问题。
更重要的是,VS2010中有一些变化强调要完全相反地做事情。要以您喜欢的方式获得准确的语法着色,您可能会首先专注于完成类的“超级结构”。这正好与VS2010所做的相反。它允许您跳过无聊的细节并输入代码,并提供重构,使您可以从该代码自动创建字段/属性/方法声明。
微软花费了大量资金研究其软件的最有效使用方式。如果您过于努力地试图将事情恢复到以前的方式,您可能会与他们想出的创新隔离开来。

2
是啊,你不想和微软的薪资丰厚的研究员们意见不合吧......为什么它不能尝试进行语义分析,然后在解析失败时退而求其次,使用纯词汇呢?另外,我不明白更好的突出显示意味着重构会更有用或者没用。 - Matthew Flaschen
我知道Visual Studio用于着色标记的方法 - 我已经在Visual Studio中为另一种语言实现了语法颜色器。 我同意,在某种程度上,也许我应该接受与以前不同的工作方式的利弊,但我认为我并没有要求太多 - 我只想要一些语法着色,而Visual Assist / Resharper似乎可以很好地实现它... - Oak
那么,你实现了什么?词法着色还是解析着色? - Hans Passant
仅词法分析,甚至比C#所做的还要简单(我只检查了标记类型)。 - Oak
1
这是一个富有创意的解释。但事实上,VS已经在进行后台编译,以提供错误波浪线。你对微软优化VS UX的信心过于高了。 - Aleksandr Dubinsky

1

这是一个很棒的免费选项,http://studiostyl.es/

通过“工具”->“导入/导出设置”导入设置


0

谢谢,但似乎CodeRush Xpress没有任何增强语法高亮的功能。 - Oak

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接