compile-vim-with-clipboard-supported

从源码编译 vim,以支持使用系统粘贴板。

why

" + Y " + P 这两组组合键可以实现 vim 与系统粘贴板之间的共享数据。重要性可想而知,至少有时还是需要和外部交换粘贴板的。

如果不自己编译源码,唯一的办法就是额外安装GUI版本的 vim。很蠢,不是吗?

编译

  1. 下载源代码,
    https://github.com/vim/vim
    使用 git git clone https://github.com/vim/vim.git

  2. 安装依赖
    sudo apt-get install xorg-dev # 参考文档
    sudo apt-get install libncurses5-dev # 参考文档

  3. 编译
    cd vim
    ./configure --with-features=huge # 参考文档
    cd src/
    make && sudo make install

验证

vim --version | grep "clipboard"
看到 +clipboard 即是成功了。

其他

安装 YouCompleteMe 直接参考官方文档,先安装依赖。
http://valloric.github.io/YouCompleteMe/#ubuntu-linux-x64

如果出现下面错误(一定会):
YouCompleteMe unavailable: requires Vim compiled with Python (2.7.1 or 3.4 )
需要在编译 vim 时加入支持 python 的参数。
--enable-pythoninterp=yes --enable-python3interp=yes # 前面的时 python2 的后面是3的。
参考文档1参考文档2
使用 checkinstall 构建 deb 包。

1
2
3
sudo apt install checkinstall
cd ~/vim
sudo checkinstall

参考文档

图标

创建图标添加到右键列表。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
vim ~/.local/share/applications/vim.desktop 

[Desktop Entry]
Encoding=UTF-8
Name=Vim Text Editor (Console)
Comment=Edit text files in a console using Vim
Exec=vim %u
Terminal=true
Type=Application
Icon=/usr/share/pixmaps/vim.png # 此处设置图标路径
# 可以下载这个 http://pixelwhip.github.io/svg-flavors/img/logos/vim.png
Categories=Application;Utility;TextEditor;
StartupNotify=true
MimeType=text/plain;
NoDisplay=true

参考文档.
Set vim as your default editor with update-alternatives.

1
2
3
4
sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/vim 1
sudo update-alternatives --set editor /usr/local/bin/vim
sudo update-alternatives --install /usr/bin/vi vi /usr/local/bin/vim 1
sudo update-alternatives --set vi /usr/local/bin/vim

总结

vim 编译主要命令:

  1. ./configure --with-features=hug --enable-pythoninterp=yes --enable-python3interp=yes --enable-rubyinterp --enable-luainterp --enable-perlinterp --enable-multibyte=true --enable-cscope=true --prefix=/usr,
    --enable-gui=no GUI相关 --enable-gui=gtk2;
  2. cd src;
  3. make && sudo make install.

最后关于卸载以及 清理,(在源代码路径下)
使用 make clean 清理之间编译完成的;
使用 sudo make uninstall 卸载使用 make 安装的软件。
实在不行,先 whereis vim,使用 rm -rf 删掉文件即可。

---------本文结束感谢阅读---------
Title - Artist
0:00