IdeaVIM:如何方便地重命名我提取的变量?

时间:2015-03-24 23:51:40

标签: intellij-idea ideavim

在IdeaVIM中,如果我提取变量并想要命名它,看起来我在视觉模式中(变量名称突出显示),但我无法找到一种方法改变突出显示的内容。这是一张图片:

enter image description here

如果我输入c,它就不会做任何事情。如果我输入cc,它会改变整行。基本上,它在命令模式下就像我一样,但名称突出显示,就好像它处于可视模式一样。我想做的99%的时间都是改变这个词。然而,光标在单词后面是一个字符,因此ciw没有改变它。

重命名此变量的便捷方法是什么?我通常做hciw。我更喜欢"提取变量"但是,让我直接进入插入模式。

2 个答案:

答案 0 :(得分:7)

这有点违反直觉,但最简单的方法是立即点击i进入插入模式,然后开始输入新名称,它将替换突出显示的文本。

正如我所看到的那样,问题是vim是模态的,而vanilla IntelliJ也是模态的,你在这里拥有的是两组模式的交互。要了解IntelliJ模式,请尝试使用^Z关闭IdeaVIM并使用提取变量重构。请注意,如果您立即开始键入,键入的内容将替换所选文本,但如果先移动光标然后开始键入,则会在光标处插入您键入的内容。现在添加IdeaVIM:一旦你处于插入模式,IntelliJ的行为开始了。

请参阅VIM-274以了解更改此行为的请求以及对替代方案的一些讨论。

答案 1 :(得分:2)

For" Extract Variable"一旦你达到了建议名称的程度: name suggestions

总是有效的是按 Escape b cw ,然后输入新名称。 有时您可以立即按 b ,但由于某种原因通常会让我进入可视模式,因此保证按 Escape