Vim 在插入模式下浏览文本

Vim navigating the text in insert mode

在 Vim 中,我写了这个之后 :

int[] no={1,2,3,4,5,6}

我改变了主意,想把它变成这样的字符串 :

String[] no={"1","2","3","4","5","6"};

只要将手移到箭头键上并保持插入模式,就很容易了。否则你需要大量的 esc 按键。这样做的 "Vim way" 是什么?

(也有类似的问题,但我认为这个具体示例很好地证明了需要一种简单的插入模式遍历方法。)

不,您不需要为此保持插入模式。内置选项之一:

0cwString<Esc>:s/\d/"&"/g

另一个带有 surround.vim 插件(ysh" 用双引号将左边的字符括起来):

0cwString<Esc>f,ysh";;.;;.;;.;;.f}.

我相信其他人会想出更多有创意的方法...

与插入模式比较:

0cwString<Esc>f{a"<Right>"<Right>"<Right>"<Right>"<Right>"<Right>"<Right>"<Right>"<Right>"<Right>"<Right>"<Esc>

如果您想到的'easy way of editing in insert mode'是

"<Right>"<Right>"<Right>"<Right>...

你也可以在普通模式下这样做。

  1. 就绪:f{.
  2. 设置:a"<Esc>.
  3. 开始:<Space>.<Space>.<Space>.<Space>.<Space>....!