最近在玩vim,但是遇到copy的内容无法粘贴到其他地方。找了很多答案,自己尝试了一下,原来是自己没有开启clipboard功能特性。 os: ubuntu 20.04
查看clipboard是否开启
$ vim --version| grep "clipboard"
-clipboard +keymap +printer +vertsplit
+emacs_tags +mouse_gpm -sun_workshop -xterm_clipboard
-clipboard 为-,说明功能还没有开启!
开启clipboard
$ sudo apt-get install vim-gtk3 -y
$ vim --version| grep "clipboard"
+clipboard +keymap +printer +vertsplit
+emacs_tags +mouse_gpm -sun_workshop +xterm_clipboard
+clipboard 已经为+号
如何复制内容到系统粘贴板
正常模式下输入,拷贝当前行到系统粘贴板,然后就可以ctrl+v粘贴到其他地方了,就像平常一样使用。 正常模式是什么?就是vim 打开一个文件查看的时候就是正常模式。
"+y
p
以上只是最简单的操作。
寄存器
vim会有一些存储空间来暂存内容,vim中将这些存储空间叫寄存器。此寄存器非我们硬件所说的寄存器,可以理解为是一种cache。
例如我们在vim中y操作复制的内容,实际就是暂存到寄存器中。
:reg
TO COPY Use the register "+ to copy to the system clipboard (i.e. "+y instead of y).
TO PASTE Use "+ to get text from the system clipboard (i.e. “+p instead of p). 简而言之就是”+ 开启跨窗口复制粘贴。
参考: vim与系统剪切板之间的复制粘贴 How to copy from vim to clipboard on ubuntu 20.04
|