复制文本不是从一个换行符到另一个剪贴板的文本文件粘贴到一个文本文件(这是)正在编辑与vim
(在控制台模式在cmd.exe
)由"+p
。右键点击“复制链接地址”。
然后,对于下一个剪贴板内容(同时复制),要粘贴到下一行,您需要通过o <Enter> <Esc>
移动光标。
什么是更聪明的方式呢?
以换行符结尾的文本,例如,由yy
复制的行。 为什么光标停留在行的第一个字符,如果你通过p
或P
粘贴回来,那么它是无差别的?
你到底在干什么?
在"+p
,你处于正常模式下, <Esc>
在这里没有任何用处, o
在当前的下面打开一个新的插入行, <Enter>
插入一个回车符,所以你现在在下面两行, <Esc>
再次回到正常模式,准备粘贴更多的内容。
我这样看,用其他程序复制的bar
和[]
在正常模式下标记光标 在插入模式下:
[]
"+p
ba[r]
<Esc>o
bar |
<Enter>
bar |
<Esc>
bar []
那是你做的?
如果你的问题出在需要把光标放在下面的两行空白处,你有许多方法来优化。 我建议一个简单的映射:
nnoremap <F3> 2o<Esc>"+p
那会在下面放两个空行,并粘贴"+
寄存器的内容。
或者更聪明一个,需要{count}
( 2<F3>
, 9<F3>
):
nnoremp <F3> :<Cu>execute 'normal! ' . v:count . 'o'<CR>"+p
当然,您可以选择任何键或组合键代替<F3>
。
尝试这个:
:map <F9> "+p<ESC>o<CR><ESC>
用你喜欢的任何东西代替F9
作为一个键盘绑定。
然后,只需选择文本到您的剪贴板,然后按F9
(或任何您选择作为您的键绑定)
您可以使用{register}直接以插入模式“放置”寄存器的内容
所以击键是:
a<Cr>+<CR><CR><Esc> a<Cr>+
所以你用'a'进入插入模式,把用于剪贴板的寄存器'+'插入两个换行符,返回正常模式,然后复制第二个链接并重复操作
我的UnconditionalPaste插件提供了专门的粘贴命令,例如glp
,它将一个寄存器粘贴到一个新行中,即使寄存器内容只是文本而没有尾随的换行符。