如何在Vim中复制整行,方法与IntelliJ IDEA/Resharper中的Ctrl+D或Ctrl+Alt类似+↑/↓ 在Eclipse中?
当前回答
我更喜欢在.vimrc中定义自定义键映射Ctrl+D,以在正常模式和插入模式下复制当前行:
" duplicate line in normal mode:
nnoremap <C-D> Yp
" duplicate line in insert mode:
inoremap <C-D> <Esc> Ypi
其他回答
yyp-粘贴后
yyP-粘贴之前
您也可以尝试<C-x><C-l>,它将重复插入模式中的最后一行,并为您带来一个包含所有行的完成窗口。它的工作原理几乎类似于<C-p>
对于不了解vi的人,上面的一些答案可能会用“粘贴…在当前行之后/之前”等短语误导他。它实际上是“粘贴…在光标之后/之前”。yy或Y复制行或dd删除该行
then
p将复制或删除的文本粘贴到光标后或P将复制或删除的文本粘贴到光标之前
有关更多密钥绑定,您可以访问以下站点:vi完整密钥绑定列表
默认值是yyp,但我已经使用此重新绑定一年左右了,并且很喜欢它:
“将Y设置为复制行,也可以在视觉模式下工作。nnoremap Y年vnoremap Y Y`>pgv
我更喜欢在.vimrc中定义自定义键映射Ctrl+D,以在正常模式和插入模式下复制当前行:
" duplicate line in normal mode:
nnoremap <C-D> Yp
" duplicate line in insert mode:
inoremap <C-D> <Esc> Ypi
推荐文章
- 如何在可视块模式插入?
- 使iTerm以与其他操作系统相同的方式翻译“元键”
- 强迫自己掌握vi的最好方法是什么?
- 如何回到行之前编辑的最后一个在Vim?
- 如何跳转到一个特定的人物在vim?
- 如何删除一个大的文本块而不计算行?
- 是否有一种方法可以在Visual Studio中删除一行而不剪切它?
- 如何在Eclipse中只使用键盘去一个错误?
- 你常用的Xcode快捷键有哪些?
- 是否有Eclipse行宽标记?
- 在Vim/Vi中,如何将光标移动到前一个单词的末尾?
- 如何在vim中自动删除尾随空格
- 在Eclipse中更改字符串的大小写
- 为什么Vim使用~扩展名保存文件?
- Visual Studio展开/折叠键盘快捷键