只要VIM还活着,Bram Moolenaar就还活着。
看到这句话特别有触动,VIM改变了我们很多,成为十几年的VIM重度用户,我们一点点的小努力也能让VIM变得更好用。
这个PO文的主要内容,是介绍如何让VIM YouCompleteMe插件在基于华为麒麟990芯片的LINUX系统上跑起来, 让这样的设备成为VIM工作和开发利器 。
ENV:
MACHINE: HUAWEI LAPTOP L410/L420
CPU: KIRIN 990/9006c, aarch64
作为特别受欢迎的VIM插件,YCM已经在Ubuntu20.04 AARCH64架构上验证能安装了,这也是很好的消息,预计可以在其他类Debian/Ubuntu系统上完美运行,当然也期待这个设备 驱动可以充分开放给社区,可以适配Fedora就最好了。
https://github.com/ycm-core/YouCompleteMe#installation-1
存在的主要困难/BUG:
1. 旧版本的VIM没有编译启用PYTHON支持。
以L410使用的操作系统版本为例,VIM版本低且没有启用PYTHON支持,直接没有办法启用YCM。L420使用的新版本已经启用该PYTHON3支持,可以按第2个问题方案解决 。
解决办法:卸载自带VIM, 自行编译最新版本。
2. 最新的YCM插件不支持低版本的VIM。
作为Ubuntu 1804LTS, CENTOS 8.2类似的系统,不再支持Vim 8.1.2269+以下版本。
https://github.com/ycm-core/YouCompleteMe/issues/3764
解决办法:使用旧的YCM, 或升级VIM到最新。
示例,在.vimrc中更新使用旧的YCM commit:
1 |
Plug 'Valloric/YouCompleteMe', { 'commit':'d98f896' } |
3. VIM 8.1版本编译不识别PYTHON 3.10更新。
版本编译时,验证PYTHON 3.10会被识别为3.1, 该问题在更新版本中修复。
https://github.com/vim/vim/issues/8356
解决办法:卸载自带VIM, 自行编译最新版本。
SOLUTION:
- 编译最新的PYTHON版本, 建议不使用系统PYTHON版本,使用:
pyenv install 3.11
- 卸载旧版本VIM软件包:
apt remove vim*
- 编译最新的VIM版本:
git clone https://github.com/vim/vim.git
cd vim
./configure --enable-python3interp=yes
make
make install - 编译最新的YCM
下载YCM插件后, 需要使用 system libclang参数编译,目前还不能支持最新的在线libclang库。python3 ./install.py --clang-completer --system-libclang --verbose
WORKING.
题外, 重新翻了一下几年前的文章,发现很多年前就在和VIM/YOUCOMPLETEME打交道了,很幸运很多年前还能帮到别人,长久以来我的工具也一直没怎么改变,过了很多很多年,更新一下,愿大家的VIM更好。
Install cmake-2.8.12 on EL7
https://www.shisaihua.com/install-cmake-2-8-12-on-el7/
Fedora15 VIM安装Vundle和YouCompleteMe
https://www.shisaihua.com/fedora15-vim-install-vundle-and-youcompleteme/
