Prettify在分词C#时会给类型和方法相同的类赋予相同的颜色。这是因为,在C#中方法是帕斯卡命名法,而不是像Java一样采用骆驼命名法。这影响了我的博客和所有的 StackOverflow C# 代码,因为它们也使用了 Prettify。
有人有解决方法吗?
如果没有,您至少可以点赞/投票官方报告的错误,该错误于2009年3月报告,以便作者再次查看。
Prettify在分词C#时会给类型和方法相同的类赋予相同的颜色。这是因为,在C#中方法是帕斯卡命名法,而不是像Java一样采用骆驼命名法。这影响了我的博客和所有的 StackOverflow C# 代码,因为它们也使用了 Prettify。
有人有解决方法吗?
如果没有,您至少可以点赞/投票官方报告的错误,该错误于2009年3月报告,以便作者再次查看。
相同的语法可能具有不同的含义。没有足够的信息来正确地突出显示所有内容。
看看这个例子:
static class Program
{
class Foo { public class Bar { public static void Func() { } } }
class Foo2 { public static Baz Bar2 { get; set; } }
class Baz { public void Func2() { } }
static void Main()
{
Foo.Bar.Func();
Foo2.Bar2.Func2();
}
}
在第一行中,Bar是一个内部类,应该被突出显示为绿色。在第二行中,Bar2是类型为Foo2的属性,应该被突出显示为黑色。Func和Func2都是函数,应该被突出显示为黑色。
以下是Visual Studio如何突出显示该代码。
var value = new Test();
Test();
这个例子实例化了一个新的Test
,然后调用了Test
方法。只有拥有整个代码库和编译器才能确定哪个是类,哪个是类型。
而且我还没有触及到无效代码。
话虽如此,我认为当前由SO使用的美化程序在没有任何上下文的情况下对代码示例进行了出色的突出显示。
以下是操作步骤:
注意:您需要安装C#捆绑包以进行C#语法突出显示(已经包括了其他常见语言)。要完成此操作,请安装“Get Bundles”捆绑包,并使用该捆绑包安装C#捆绑包。
编辑:根据评论,我意识到TextMate只适用于Mac用户。有时我会忘记Windows。