如何在Vim中复制整行,方法与IntelliJ IDEA/Resharper中的Ctrl+D或Ctrl+Alt类似+↑/↓ 在Eclipse中?


当前回答

您也可以尝试<C-x><C-l>,它将重复插入模式中的最后一行,并为您带来一个包含所有行的完成窗口。它的工作原理几乎类似于<C-p>

其他回答

对于那些开始学习vi的人来说,这里是一个很好的vi介绍,并列列出了典型的Windows GUI编辑器光标移动和快捷键的vi命令。它列出了所有基本命令,包括yy(复制行)和p(粘贴后)或p(粘贴前)。

Windows用户的vi(Vim)

yy或Y复制行(助记符:yank)或dd删除行(Vim将您删除的内容复制到剪贴板中,如“注册”,如剪切操作)

then

p将复制或删除的文本粘贴到当前行之后或Shift+P将复制或删除的文本粘贴到当前行之前

如果您想复制一行并将其粘贴到当前行的下方,就像Sublime Ctrl+Shift+D中一样,那么可以将其添加到.virc文件中。

nmap<S-C-d><Esc>Yp

或者,对于插入模式:

imap<S-C-d><Esc>Ypa

默认值是yyp,但我已经使用此重新绑定一年左右了,并且很喜欢它:

“将Y设置为复制行,也可以在视觉模式下工作。nnoremap Y年vnoremap Y Y`>pgv

您也可以尝试<C-x><C-l>,它将重复插入模式中的最后一行,并为您带来一个包含所有行的完成窗口。它的工作原理几乎类似于<C-p>