如何在Resharper的IntelliSense中显示所有Visual Studio的代码段?

时间:2019-03-03 17:54:32

标签: visual-studio resharper

Resharper的IntelliSense仅显示其自己的实时模板,而不显示Visual Studio的代码段。

是否有一种方法可以使Resharper IntelliSense显示所有VS代码片段?

在Resharper的模板资源管理器中,我发现它有许多标记为Imported Visual C# Snippets的实时摘录

enter image description here

但是它并没有全部导入,只有一部分导入。例如,Resharper并未从Visual Studio导入propfull代码段(如您在第一张屏幕截图propfull上看到的那样,不在列表中): enter image description here

我在Resharper中找不到一个功能,可以手动,一一或全部导入VS代码段。我在Resharper的Live Templates Manager中尝试了Import...按钮,但显然它仅允许导入Live Templates(.DotSettings和.XML文件,而不是.snippets文件),但不能导入代码片段文件。可以以某种方式导入VS代码段吗?

我想要做的就是以某种方式使所有VS代码段都在Resharper IntelliSense中工作。也许有一些第三方工具可以将摘要转换为实时模板之类的东西?谢谢。

1 个答案:

答案 0 :(得分:2)

ReSharper在安装或首次启动时不会导入任何VS模板。您在模板资源管理器中看到的所有模板均已手动添加到ReSharper的默认设置-没有“将代码片段转换为实时模板”转换器https://youtrack.jetbrains.com/issue/RSRP-273779

因此,如果您想在实时模板中获取propfull模板,则必须手动创建-打开ReSharper | Tools | Templates Explorer | Live Templates | C# | New Template并在其中放置以下代码:

private $TYPE$ _$Var$;

public $TYPE$ $Property$ 
{ 
    get { return _$Var$; } 
    set { _$Var$ = value; } 
}

并调整Var占位符:Value -> Choose Macro -> "Value of another variable with the first characters in lower case" -> OK -> "another variable" -> Choose "Property"。也是Editable Occurrence -> Not editable。然后将新添加的模板的占位符顺序更改为以下内容: -Type -Property -Var

在这种情况下,Var将继承Property的正确名称。