c# - 自动高亮返回行

标签 c# visual-studio-2010 resharper-5.1

Eclipse(至少在使用 Java 时)具有自动突出显示方法中所有行的功能,当我将光标放在方法定义中的返回类型上时,方法返回。
Visual Studio + ReSharper 5.1.3 中的 C# 是否也有这样的功能?

代码示例

string Do()
{
  if(/**/)
    return ""; // here

  if(/**/)
    return "1"; // here

  if(/**/)
    return "2"; // here

  throw new Exception(""); // here
 }

当我将光标放在此示例第一行中的单词 string 上时,标有 //here 的行应突出显示。

最佳答案

看起来像the VS2010 extension called Linguist会接近你想要的。它可以对任何正则表达式进行自定义突出显示。不过,它似乎无法根据您的光标位置进行更改。

关于扩展的更多信息可以查看at the github page .

设置没有 GUI。取而代之的是您配置的设置文件 %LOCALAPPDATA%\Linguist

由于我的语法已经突出显示了我希望使用 Resharper 的方式,所以我从 standard 中的 Styles.field 文件中删除了所有格式子目录。如果这样做,您需要保留所有名称,因此它看起来类似于:

Styles.field

# If new elements are added (or old ones removed) then Definitons.cs
# and Languages.Init have to be updated.
Name: attribute

Name: command

Name: comment

<<< keep all the names in this file, just remove formatting >>>

您需要设置其中一种命名样式以用于突出显示。我做了:

Name: emphasis
BackColor: Red

然后我在 custom 子目录中创建了一个名为 custom.lang 的文件(但您可以使用 .lang 扩展名为您的文件命名)。这就是我为突出显示返回语句所做的:

自定义.lang

Language: csharp
Globs: *.cs

Emphasis: \breturn\b
Emphasis: \bthrow\b

这让事情对我有用。有点复杂,但它是免费的。另一种方法可能是清除 standard\C#.lang 文件,这样您就可以保留其他文件格式。

最后是另一个选项,因为它在 github 上,您可以为突出显示的文本添加新的样式定义,这样我们就不会破坏其余的格式。很高兴有选择:)

关于c# - 自动高亮返回行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10620527/

相关文章:

c# - 如何从 Lambda 检索属性的类型并在列表中推断它?

c++ - 想逐行阅读,但 fstream 只读第一行

visual-studio - Visual Studio 2010 - 评论中的智能感知

vb.net - Visual Studio 2013 奇怪的编译问题

c# - 在 MSTest 中忽略从通用基类继承的测试类

c# - 忽略 IgnoreAttribute

c# - 在本地主机 :/token from origin 'http://localhost:' has been blocked by CORS 请求

c# - Java 和 C# 中的 SQLite 实现

javascript - 运行 C# 代码后禁用 aspx 页面中的按钮

c# - 在 VS 2010 中扩展文件重命名