【问题标题】:Adding selected *sentences* for next occurrence添加选定的*句子*以供下次出现
【发布时间】:2019-07-04 07:04:43
【问题描述】:

在 IntelliJ IDE 中,我可以使用“添加所选文本以供下次出现”快捷键添加任何重复的单词。当同时选择多个单词时,我可以使用 IdeaVim 插件和ciw 按键一次更改所有单词。

但是,对于句子,我无法成功地做到这一点。例如,如果我在双引号之间选择一组文本:" hello there ",最终发生的事情是我将能够选择/突出显示重复的 hello there 组,但按任何键都会导致我只更新第一个选择 hello there 而不是其他选择。

我确实意识到我可以通过对整个页面进行查找/替换来实现相同的效果,但我喜欢只需按一下按钮即可一次添加一个事件的便利性。有什么建议吗?

【问题讨论】:

  • 宏指令?录制/运行一次宏,然后在需要时简单地重新运行它“只需按一下按钮”(nnoremap Q @q<CR>xnoremap Q :normal @q<CR>

标签: intellij-idea vim pycharm


【解决方案1】:

有几种方法可以实现您提到的行为。但是如果你正在寻找一种视觉效果类似于 Intellij 的方法,你可能需要使用 vim 的插件,例如vim-multiple-cursors

这里有一些 vim 的方法:

下一次出现 + 重做上一个命令

  1. / 搜索所有出现(/你好)
  2. n 导航到下一个事件
  3. v 和箭头键/l 选择区域
  4. s 替换区域或用x 删除区域下的文本
  5. n 表示下一次出现,.(点)重做最后一个命令并重复 n + .

  1. / 搜索所有出现(/你好)
  2. qq 开始录制宏到键 q
  3. 执行之前方法中的步骤 2-4
  4. q停止录制宏
  5. @ 然后 q 从键 q 应用宏

注意:如果要重复第 5 步 n 次,只需在 @ 前附加一个数字(例如 5@q 以应用宏 5 次。如果只有 4 次出现,则宏将仅应用 4 个计时器.)

查找和替换

:%s/ hello there /new value/g 将“hello there”全局替换为“新值”

要替换特定位置的出现,使用可视块v 选择块然后:'<,'>s/ hello there /new value/g 仅在选定区域替换

【讨论】:

    猜你喜欢
    • 2015-08-10
    • 1970-01-01
    • 2013-05-03
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多