Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2012 基于传入代码块的Visual Studio扩展突出显示_Visual Studio 2012_Visual Studio Extensions - Fatal编程技术网

Visual studio 2012 基于传入代码块的Visual Studio扩展突出显示

Visual studio 2012 基于传入代码块的Visual Studio扩展突出显示,visual-studio-2012,visual-studio-extensions,Visual Studio 2012,Visual Studio Extensions,正在尝试编写一个VisualStudio扩展,它将允许我传入一个字符串和值对,并突出显示该值 我有一个查找特定代码的扩展,示例是它运行并可能返回所有if语句 If(someString == someOtherString){ return “This was something”; } If(someStringElse == someOtherString){ return “This was interesting”; } 在本例中,我的值可能是 If(someString

正在尝试编写一个VisualStudio扩展,它将允许我传入一个字符串和值对,并突出显示该值

我有一个查找特定代码的扩展,示例是它运行并可能返回所有if语句

If(someString == someOtherString){
  return “This was something”;
}

If(someStringElse == someOtherString){
  return “This was interesting”;
}
在本例中,我的值可能是

If(someString

我在MSDN网站上玩过这个教程,但它似乎只显示了一个全有或全无。我可以让它突出显示所有的圆括号,而且我似乎不能将它限制为我想要的代码块(传入我想要搜索的代码块)

如果您遵循该原型,那么您可以在这里调整这些行:

//Find the new spans
FindData findData = new FindData(currentWord.GetText(), currentWord.Snapshot);
findData.FindOptions = FindOptions.WholeWord | FindOptions.MatchCase;

wordSpans.AddRange(TextSearchService.FindAll(findData));

TextSearchService.FindAll
正在返回编辑器中与传入文本匹配的跨距列表。在调用
AddRange
之前,没有什么可以阻止您简单地更改跨度或计算新的跨度。根据需要定制逻辑。显然,如果要突出显示的内容不取决于插入符号的位置,那么可以删除相当多的代码来确定
currentWord

我不清楚您在这里想要什么,我也怀疑这是一个“XY问题”,您真的想在这里解决一些不同的问题。你用的是哪个教程?这似乎是标准的Find功能可以或多或少地找到您想要的语句……我正打算通过这个来尝试了解扩展。