问题标签 [resharper-plugins]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
resharper - 使用 ReSharper SDK 访问选定的代码
有什么方法可以识别和提取通过使用 ReSharper SDK 单击和拖动突出显示的代码块?
c# - 通过 ReSharper SDK 访问 IMethodDeclaration 对象
我手头有 INamespaceBody、IClassDeclaration 和 IMethod。我想得到IMethod对应的IMethodDeclaration和IClassDeclaration对应的IClassBody。但我完全不知所措......我怎么能做到这一点?
c# - 使用 Resharper 7.1 插件从 IClass 中删除 IProperty
我想创建一个 resharper 插件,它从类中删除具有返回类型字符串的属性。我已经创建了一个IActionHandler
从所选类中获取所有属性的方法,但我不知道如何修改代码结构以从类中删除属性。
这是 Execute 的方法IActionHandler
:
有任何想法吗?
visual-studio-2010 - 如何安装旧版本的 ReSharper 插件?
我在 Visual Studio 2010 中使用 ReSharper 8.0。ReSharper 8.0 使用基于NuGet 的扩展管理器进行插件管理,这使得查找和安装插件变得非常容易,但这个扩展管理器只会提供任何给定插件的最新版本. 它还跟踪插件更新,并在新版本可用时提供更新插件。
这就是我的问题出现的地方。我使用的特定插件 ( GoToWord
) 已更新,最新版本 ( 0.9.3
) 似乎无法使用。我无法想出任何方法来回滚到以前的好版本 ( 0.9.1.1
),也无法在卸载旧版本后安装它。
我尝试打开常规的 NuGet 包管理器控制台(at Tools | Library Package Manager | Package Manager Console
)并发出以下命令:
但这在依赖解决阶段失败了,大概是因为常规NuGet 不知道 ReSharper:
NuGet 的 ReSharper Extension Manager 版本是否有控制台?还是有其他方法可以安装旧版本的插件?
resharper - 安装 ReSharper 的插件时无法解析 JetBrains.ReSharper.SDK
我正在尝试安装使用 ReSharper 扩展管理器编写的自定义 ReSharper 插件,但出现错误
正在尝试解决依赖项“JetBrains.ReSharper.SDK (≥ 8.2.1158)”。
无法解析依赖项“JetBrains.ReSharper.SDK (≥ 8.2.1158)”。
我遵循了官方文档,这是我的.nuspec
.
注意:打包的 nuget 被推送到我公司的 nuget 存储库中,当我在 Extension Manager 中搜索包时,我从Online -> All
标签中搜索
visual-studio - Resharper - 单元测试运行器 - 隐藏命名空间
有没有办法在 Resharper Unit Test Runner 中隐藏命名空间?我正在使用 Project Structure Group By 并且命名空间只是弄乱了窗口:
这可以在扩展中快速修复吗?
否则,我使用 JetBrains 创建了一个 YouTrack 问题。如果您同意,请投票:http: //youtrack.jetbrains.com/issue/RSRP-414772
更新:我正在使用 Resharper 8.2(构建 8.2.0.2160)。如果我没记错的话,我在 7 上也遇到过这个问题。
我正在写 NUnit 测试
c# - 获取当前项目中的所有 IDeclaredType-s(用于 ReSharper Generator 插件)
我正在编写一个 ReSharper 7.1 Generator 插件,需要获取当前项目中声明的所有类型(类、接口和结构 - IDeclaredType-s
)的列表GeneratorProviderBase<CSharpGeneratorContext>.Populate
。
使用常规反射,它会像 一样简单Assembly.GetTypes()
,但在这里它被证明是一个相当大的挑战。有没有办法做到这一点?
我搜索了高低,文档和示例没有帮助,然后查看了每个*Extensions
课程*Util
,但找不到任何有用的东西......
resharper - SearchDomainFactory.Instance 已过时:“注入我!” (不知道如何创建实例)
我正在尝试将 R# 扩展项目从 R# 6 迁移到 R# 8。(我已经接管了某人编写的项目,而且我是编写扩展的新手。)
在现有的 v6 项目中,有一个派生自 RenameWorkflow 的类,构造函数过去看起来像这样;
这曾经在 R# SDK v 6 中工作,但现在在 V8 中,RenameWorkflow 不再具有采用 Solution 和 actionId 的构造函数。新的构造函数签名现在看起来像这样;
现在这是我需要帮助的问题(我认为)
我已经复制了构造函数,现在这个类的构造函数必须满足这些新的依赖关系。通过一些挖掘,我设法找到了一种方法来满足所有依赖项,除了'SearchDomainFactory'。我可以通过更新的构造函数进行实例化的最接近如下;
新的 RenameStepWorkflow(Solution.Locks,JetBrains.ReSharper.Psi.Search.SearchDomainFactory.Instance,RenameRefactoringService.Instance,this.Solution,null)
一切看起来都不错,除了JetBrains.ReSharper.Psi.Search.SearchDomainFactory.Instance
标记为过时,并且给了我一个我无法解决的编译错误,即使使用#pragma
也不允许我编译代码。我编译时得到的确切错误消息是Error 16 'JetBrains.ReSharper.Psi.Search.SearchDomainFactory.Instance' is obsolete: 'Inject me!'
明显的下一个问题..好的,怎么样?我如何“注入你”?我找不到关于这个新的重大更改的任何文档,事实上,我找不到任何文档(或示例项目)甚至提到DrivenRefactoringWorkflow
或RenameWorkflow
,(现在需要新 SearchDomainFactory 的类),或任何关于SearchDomainFactory.Instance
突然过时的信息以及如何满足“注入”它的需要。
非常感激任何的帮助!谢谢,
问候
艾伦
resharper-plugins - ReSharper 插件测试中的任意检查
正如我从 DevGuide 中了解到的,测试 ReSharper 插件的工作方式如下:
- 加载插件并将测试输入文件传递给它
- 插件对传递的文件执行其操作
- ReSharper 的测试环境将插件操作结果以特殊格式写入 .tmp 文件,该格式取决于测试的功能类型(例如,如果我们测试完成,.tmp 文件将包含生成的完成项列表)
- ReSharper 的测试环境将 .tmp 文件与 .gold 文件进行比较,以确定测试是失败还是成功
但我需要以下场景。前两步同上,则:
- 我编写代码来获取插件操作的结果并检查它们是否符合我的预期,以便在需要时使测试失败
我怎样才能做到这一点?
我需要它,因为我有一个使用 ReSharper 生成的 AST 来构建一些图表的代码,我想测试这些图表是否正确构建。
c# - 创建一个泛型类型以在 Resharper 插件中查找实现
我正在为 resharper 编写一个插件,我想用它来从ConcreteCommand
->ConcreteCommandHandler
这些类型看起来像这样的地方导航
当光标位于实例/定义上时,我已经添加了导航菜单选项ICommand
(目前仅通过检查名称是否包含“Command”而不是“CommandHandler”),我认为我有实际所需的代码搜索一个继承某些东西的类型,但我的问题是我唯一真正拥有的类型是我的ConcereteCommand
,我需要创建(或获取对)泛型类型作为光标当前所在的类型ICommandHandler<T>
。T
所以我还有两件事我还想知道:
- 如何检查我
IDeclaredElement
的是否是特定接口的实现(理想情况下,通过在配置中的字符串中指定全名)? - 如何创建一个
ITypeElement
特定接口的泛型类型,我可以从现有IDeclaredElement
的 s 类型中设置泛型类型,然后我可以找到继承它的类?
我现有的代码如下所示: