如何在 vim 中复制最近写的字
How to duplicate the recent written word in vim
如果我只输入car这个词,我怎么用普通模式再写一遍呢?,我只看到carcar.
如果我这样做 yyp
,Vim 将当前行复制到最后一行,但我需要同一行中的单词。
使用 .
重复你最后做的事情。
如果你在车里的 c 上,你可以输入
ywep
猛拉单词 (yw
),移动到单词 (e
) 的末尾,然后粘贴单词 (p
)。
如果你在汽车的任何地方,你可以使用 yiw
来复制汽车的所有内容。所以
yiwep
会复制汽车。
如果您知道要在插入 之前重复 ,您可以向 i
/ a
命令提供 [count]
。例如,2icar<Esc>
产生 carcar
.
正如@kid 在他的回答中所写,.
将重复插入,但您必须a
追加(或首先将光标移到最后一个字符之外)。
另一个选择是a<C-@>
;后一个命令在插入模式下再次插入最后插入的文本; cp。 :help i_CTRL-@
.
类似的事情适用于视觉模式,viw 将 select current/inner 单词,然后你可以 copy/yank 它(y) 并粘贴 (P 或 $p).
您可以将以下行添加到 vimrc:
map <A-v> viw"+gPb
map <A-c> viw"+y
map <A-x> viw"+x
这些绑定遵循 Control+V、Control+C 和 [=20= 的 Windows 样式键]Control+X;除了使用 Alt 而不是 Control。根据您的喜好进行调整。
参见:
如果我只输入car这个词,我怎么用普通模式再写一遍呢?,我只看到carcar.
如果我这样做 yyp
,Vim 将当前行复制到最后一行,但我需要同一行中的单词。
使用 .
重复你最后做的事情。
如果你在车里的 c 上,你可以输入
ywep
猛拉单词 (yw
),移动到单词 (e
) 的末尾,然后粘贴单词 (p
)。
如果你在汽车的任何地方,你可以使用 yiw
来复制汽车的所有内容。所以
yiwep
会复制汽车。
如果您知道要在插入 之前重复 ,您可以向 i
/ a
命令提供 [count]
。例如,2icar<Esc>
产生 carcar
.
正如@kid 在他的回答中所写,.
将重复插入,但您必须a
追加(或首先将光标移到最后一个字符之外)。
另一个选择是a<C-@>
;后一个命令在插入模式下再次插入最后插入的文本; cp。 :help i_CTRL-@
.
类似的事情适用于视觉模式,viw 将 select current/inner 单词,然后你可以 copy/yank 它(y) 并粘贴 (P 或 $p).
您可以将以下行添加到 vimrc:
map <A-v> viw"+gPb
map <A-c> viw"+y
map <A-x> viw"+x
这些绑定遵循 Control+V、Control+C 和 [=20= 的 Windows 样式键]Control+X;除了使用 Alt 而不是 Control。根据您的喜好进行调整。
参见: