【问题标题】:WebStorm limit refactor scope to current file onlyWebStorm 将重构范围限制为仅当前文件
【发布时间】:2016-08-05 15:03:55
【问题描述】:

编辑:这是我创建的问题的链接 [https://youtrack.jetbrains.com/issue/WEB-21956]

是否可以将 WebStorm 的重构范围限制为您发出重构的文件(默认情况下)?

在这种情况下,我有一个正在编辑的文件,我想重构(重命名)一个变量。 WebStorm 然后搜索整个项目中的所有文件。我在网上搜索过这个,我只能找到特定文件夹的范围限制。我希望我不会为每个文件创建范围。

P.S. 我发现了这个相关问题 (https://stackoverflow.com/questions/33197566/pycharm-limit-refactor-renaming-to-current-file)。虽然我无法对此发表评论,因为我还没有 50 个代表(耻辱)。如果它不在 PyCharm 中,则很有可能不在 WebStorm 中(它们共享代码),所以这更像是一个双重检查。如果事实证明它确实不存在,我将添加一个指向功能请求的链接,我将发布到 WebStorm 问题。

【问题讨论】:

  • 我认为这是不可能的。您是否创建了功能请求?如果是这样,请发布链接。一种可能的解决方法是改用查找和替换功能:将插入符号放在单词上,按 Ctrl + W,然后按 Ctrl + R。
  • @iled 我有点忘了这个问题哈哈。我刚刚为此创建了一张票 [youtrack.jetbrains.com/issue/WEB-21956]。我相信我看到了 IDEA 的类似问题(具有相同的主题)。虽然它是在 2014 年提交的:/.
  • 感谢您创建票证。我已经投票了:)
  • @iled 太棒了!我看到他们已经指派了一个人来处理这个问题。不过,在他们解决这个问题之前需要多长时间,这是任何人的猜测。

标签: intellij-idea scope refactoring webstorm


【解决方案1】:

从 WebStorm 2016.1.3 开始,似乎无法更改 Rename Refactoring默认 行为。唯一可用的选项是在 limited scope 内重命名,在这种情况下,您可以启用或禁用就地模式 (see docs)。

这里有两种可能的工作流程。我将使用 PC 键盘快捷键给出说明,但您也可以通过上下文菜单来实现。


查找和替换

  1. 将插入符号移至要重命名的符号
  2. 使用 Ctrl + W 选择单词
  3. 使用 Ctrl + R 打开替换对话框
  4. 点击 Tab 并输入新名称
  5. Alt + P 替换当前出现或 Alt + A 替换所有出现

重命名重构工具

  1. 使用 Shift + F6 打开重命名重构工具
  2. 输入新名称
  3. 调整Search in comments and stringsSearch for text occurrences 的过滤器(默认开启)
  4. 预览重构 (Alt + P)
  5. Find Refactoring Preview 窗格将显示(Alt + 3 聚焦),列出找到的所有匹配项
  6. 在此列表中,您可以选择将在哪些文件中进行重构;例如,您可以通过在父组中按 Delete 来排除所有文件,然后仅在目标文件中按 Insert

在这个 (stupid) 示例中,我将 require 重命名为 require2。发现了几个事件。我通过排除主要组来排除所有这些,然后只包含一个文件。我也可以排除剩余的组,或者用 Ctrl + A 选择所有组,然后用 Delete 排除。


另见

【讨论】:

  • 我将此标记为答案,因为它提供了一个很好的解决方法,直到此问题得到修复。我已经用功能请求的链接编辑了我的原始问题。
  • 我在寻找与 PHPStorm 相同的东西时偶然发现了这一点。我还想出了如何通过重构预览排除事物。我的问题是,即使我实际上排除了文件,它仍在重构它们。我不知道这是否是一个错误。只是想我不会把它留在这里,以防其他人也偶然发现它。
  • @CasperWilkes 感谢您的评论。在我发布此内容时,我确认它没有重构未选择的文件。如果您在 PHPStorm 中确认了这种行为,我建议您设置一个可重现的示例并使用 Jetbrains 填写错误报告。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-29
  • 2011-02-04
  • 1970-01-01
  • 1970-01-01
  • 2012-06-24
  • 2012-10-18
  • 2019-09-09
相关资源
最近更新 更多