与其他编辑器不同,vim将复制的文本存储在自己的剪贴板中。所以,对我来说,从网页复制一些文本并将其粘贴到当前的工作文件中是非常困难的。碰巧我必须打开gedit或手动输入它。
我可以使vim粘贴从和系统的剪贴板?
与其他编辑器不同,vim将复制的文本存储在自己的剪贴板中。所以,对我来说,从网页复制一些文本并将其粘贴到当前的工作文件中是非常困难的。碰巧我必须打开gedit或手动输入它。
我可以使vim粘贴从和系统的剪贴板?
当前回答
When I use my Debian vim that is not integrated with Gnome (vim --version | grep clip # shows no clipboard support), I can copy to the clipboard after holding the Shift key and selecting the text with the mouse, just like with any other curses program. As I figured from a comment by @Conner, it's the terminal (gnome-terminal in my case) that turns off its mouse event reporting when it senses my Shift press. I guess curses-based programs can receive mouse events after sending a certain Escape sequence to the terminal.
其他回答
有两种简单的方法。使您的文件处于插入模式和 1)按下鼠标中间的按钮(滚轮),或者 2) Ctrl + Shift + V
对于那些Vim安装不支持*和+寄存器的人,请快速注意。不需要从剪贴板下载新的Vim安装来粘贴。下面是另一种方法:
安装parcellite(一个具有低内存占用的剪贴板管理器); 在你的.vimrc文件中,添加以下内容: 命令剪切r !parcellite -c 重启vim。
现在,当你输入:Clip as a ex命令时,剪贴板的内容将被粘贴到光标处。您还可以将新命令映射到功能键,以便能够通过一次击键完成此操作。
这些组合键适用于任何操作系统。
使用鼠标选择目标文本,并参考复制、剪切和粘贴的键序列。
复制:Ctrl +插入 粘贴:Shift +插入
剪切:Shift + Del 粘贴:Shift +插入
你真正需要的是EasyClip。它会做到这一点,还有更多……
还有一种方法是直接粘贴到'r'ead 'cat'输出:
:r!cat
这将在前台运行cat,所以你可以发送到终端你想要插入/在你的剪贴板。 完成后,发送ctrl+d以结束流。
这样做的好处是你不需要打乱缩进——文本就这样被插入。 注意,在cat位置可以有任何命令,比如fold(在发现gq之前我一直使用这个命令)或任何其他过滤工具。
虽然'+'寄存器似乎更vimic,但它并不适用于所有平台,而r!凯特只是在工作。