我想将网页上的内容粘贴到vim中。
1.选择我要粘贴的内容 请附件
2.我用方法剪贴板粘贴的句子
3.比较我用方法:+p
粘贴的句子2
为什么sentence1丢失了C
这个字母?这是唯一不同的地方。
答案 0 :(得分:6)
当您使用"+p
时,vim会粘贴+
缓冲区的内容。但是当您从剪贴板粘贴时,终端模拟器会将每个字母作为输入传递给vim,就好像来自键盘一样。碰巧粘贴内容的第一个字母是C
,这会导致vim从光标切割到行尾并进入插入模式,因此您只会丢失一个字符。从剪贴板粘贴时(通过菜单或ctrl-v),您需要先进入插入模式。根据您要粘贴的内容,您可能需要:set paste
,以防止绑定和格式化生效(使用:set nopaste
将其关闭)。
答案 1 :(得分:0)
通常,您不希望Vim解释您从系统剪贴板粘贴的任何内容,只需键入文本。但是,Vim无法知道所有场景中粘贴和类型文本之间的区别,尤其是在终端中。使用粘贴模式将禁用所粘贴文本的任何解释,即格式化,通过插件甚至命令自动完成。
来自:h paste
:
Put Vim in Paste mode. This is useful if you want to cut or copy
some text from one window and paste it in Vim. This will avoid
unexpected effects.
Setting this option is useful when using Vim in a terminal, where Vim
cannot distinguish between typed text and pasted text. In the GUI, Vim
knows about pasting and will mostly do the right thing without 'paste'
being set. The same is true for a terminal where Vim handles the
mouse clicks itself.
使用pastetoggle
切换粘贴模式:
set pastetoggle=<F3>