请注意,本文在Ubuntu 18.04.2 LTS下测试完成。以下命令中的参数,需要根据您的系统环境进行相应调整。
前置条件
首先确请认已安装Python3。关于安装和配置信息,请访问Python网站。
使用以下命令,安装 python3-dev、library
$ sudo apt-get install python3-dev
$ sudo apt-get install libncurses5-dev
使用以下命令,查看当前Python3安装情况:
$ which python3
/usr/bin/python3
$ whereis python3 # 查看安装目录
python3: /usr/bin/python3 /usr/bin/python3.6 /usr/bin/python3.6m /usr/bin/python3.6m-config /usr/lib/python3 /usr/lib/python3.6 /usr/local/lib/python3.6 6 /usr/share/man/man1/python3.1.gz
注意: 不要随意删除系统自带的python 至于为什么可以参考 删除系统 Python 引发的惨案
安装Vim
使用Git命令,将Vim源码复制到本地:
$ git clone https://github.com/vim/vim.git
切换到下载的Vim源码目录:
$ cd vim
$ git pull
编译安装 Vim:
$ cd src
$ sudo make distclean # 如果您以前构建Vim
$ ./configure --with-features=huge \
--enable-multibyte \
--enable-python3interp \
--enable-cscope \
--enable-gui=auto \
--enable-gtk2-check \
--enable-fontset \
--enable-largefile \
--disable-netbeans \
--with-compiledby="xxx@email.com" \
--enable-fail-if-missing \
--prefix=/usr/local
$ sudo make
$ sudo make install
你可以通过查看 src/auto/configure
来获得特性和包的列表。 下面是我用到的。
--with-features=huge # 支持最大特性
--enable-multibyte # 打开多字节支持,可以在Vim中输入中文
--enable-pythoninterp # 打开对 Python 编写的插件支持 默认内置支持 指定 dynamic 参数则动态支持
--with-python-config-dir # 指定 Python 路径
--enable-python3interp # 打开对 Python3 编写的插件支持 默认内置支持 指定 dynamic 参数则动态支持
--with-python3-config-dir # 指定 Python3 路径
--enable-cscope # 打开对cscope的支持
--enable-gui=auto # 根据可用的GUI库自动构建
--enable-gtk2-check # 如果自动选择GUI,请检查GTK default=yes
--enable-fontset # 包括X fontset输出支持
--enable-largefile # 提供对大文件的支持
--disable-netbeans # 禁用NetBeans集成支持。
--with-compiledby # 版本消息中显示的名称
--enable-fail-if-missing # 如果依赖于其他特性,则失败
--prefix # 用于指定生成可执行文件的位置
执行以下命令将显示已使用新编译的Vim:
$ which vim
/usr/local/bin/vim
执行以下命令,将显示新编译的 Vim 已包含的 Python 特性:
$ vim --version | grep python
+comments +libcall +python/dyn +visual
+conceal +linebreak +python3/dyn +visualextra
其中,与Python相关的特性主要包括:
- +python,内置支持Python 2;
- +python3,内置支持Python 3;
- +python/dyn,动态支持Python 2;
- +python3/dyn,动态支持Python 3;
根据以上步骤,我们保持/usr/bin目录下预装的Vim不变,另外在/usr/local/bin目录下安装了自已编译的Vim。
卸载Vim
使用以下命令,可以重置编译操作:
$ sudo make distclean
使用以下命令,可以卸载Vim:
$ sudo make uninstall