打开 Ubuntu 18 中 Vim 的系统剪切板功能
1. 查看 Vim 是否支持系统剪切板
有两种方法可以查看 Vim
是否支持系统剪切板功能。
方法一:在终端查看
- 在终端输入
vim --version | grep clipboard
回车:
jpch89@jpch89-Ubuntu:~$ vim --version | grep clipboard
+clipboard +jumplist +persistent_undo +virtualedit
-ebcdic +mouseshape +statusline +xterm_clipboard
- 假如
clipboard
前面都是-
号,说目前还不支持系统剪切板功能,请继续看下一节,如果都是+
号,可以直接跳到最后一节。
方法二:在 Vim
中查看
- 在终端输入
vim
回车进入Vim
- 输入
:echo has('clipboard')
回车 - 假如显示的是
0
则不支持系统剪切板,请继续看下一节,假如显示为1
则支持系统剪切板,可以直接跳到最后一节。
2. 开启系统剪切板功能
- 开启系统剪切板功能的方法也有很多,比较正统的应该是重新编译安装
Vim
源码,因为我怕麻烦(水平渣),所以选择简单的方法,即安装vim-gnome
。 - 一行指令即可搞定,在终端输入
sudo apt install vim-gnome -y
回车。 - 此时再次使用上述的两个方法验证,发现
Vim
已经支持系统剪切板功能。
3. 系统剪切板功能的使用
3.1 从终端复制到 Vim 文件
- 先在终端复制一句话,比如
print('Hello, world!')
。 vim hello.py
回车。:reg +
查看系统剪切板,如下图所示:"+p
粘贴,成功:
3.2 从 Vim 文件复制到终端
- 先在
Vim
里面复制一句话,比如ls
ctrl + alt + t
新开一个终端,ctrl + shift + v
粘贴,成功!
注意:这里如果把
Vim
所在终端关闭的话,就没法粘贴了!
3.3 设置系统剪切板为默认寄存器
- 在
Vim
中默认寄存器为无名寄存器(""
),我们可以通过修改vimrc
文件让它使用系统剪切板作为默认寄存器,以后不就不用每次都加"+
前缀了。 - 加入这一行到配置文件
set clipboard^=unnamed,unnamedplus
,搞定!
至于这行配置为什么这么写,主要是为了跨平台通用,具体如何我也没有去仔细研究,有兴趣的朋友可以参考下面的链接: stackoverflow.com/questions/3…
完成于 2019.6.27