VIM配置攻略(最强干货加强版)

2021-10-09 10:37:18 浏览数 (1)

自己最近也在折腾这个VIM的配置,在网上也看了很多教程等,说真的看的一头雾水。主要是对于一个初学者来说对Vundle等根本没有什么了解,也不知道怎么用,并且由于本人的Linux系统是CentOs6.5的,所以版本也有限制,由于版本原因,竟然git都用不了!!!!这就很难受,所以费劲心思,找到了一篇对VIM配置比较详细的教程,只要按照的教程的步骤一步一步来,相信你也能配置一个十分满意的VIM,闲话不多说,进入正题。


vim配置全攻略

写在前面  折腾有风险, 作死请谨慎.

善用虚拟机的快照功能, 能够节省大把的时间.

vim低配版

简介

该份配置是基于我在2013年左右使用的一套配置, 改进而来. 当时使用的 vim 版本较低(7.0, redhat5), 因此该配置以兼容性为主. 插件功能一般. 安装过程简单.

折腾程度

安装过程: 2星

支持的系统

兼容 centos6.5 i686 和 x86_64, 兼容 centos7. vim版本 >= 7.0 即可.

折腾 git(1)

直接 yum install git 后, 发现 HTTP request failed 的问题.

原因是由于 git 版本态度(1.7.1), 需要升级到高版本.

由于 centos6.5无法通过yum源安装高版本git, 只好手动从源代码编译. 以下为安装步骤(以下步骤需要root权限):

先安装编译时依赖的包

代码语言:javascript复制
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install  gcc perl-ExtUtils-MakeMaker

从该链接上下载源码, 并解压缩

代码语言:javascript复制
cd ~
wget https://www.kernel.org/pub/software/scm/git/git-2.0.5.tar.gz
tar xzf git-2.0.5.tar.gz

进入源码, 开始编译.

代码语言:javascript复制
cd git-2.0.5
make prefix=/usr/local/git all
make prefix=/usr/local/git install

下面这两步, 需要退出 root 用户再操作. 否则就只有root用户内部才生效了.

代码语言:javascript复制
echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
source /etc/bashrc

检查安装结果:

代码语言:javascript复制
git --version

观察版本号是否符合预期.

安装过程参考 https://www.cnblogs.com/fuyuanming/p/5804695.html

折腾 git(2)

升级之后, 仍然出现问题:

代码语言:javascript复制
fatal: unable to access 'https://github.com/VundleVim/Vundle.vim.git/': SSL connect error

不能正确 clone 数据.

需要再执行指令安装以下软件包

代码语言:javascript复制
yum update openssh nss curl libcurl

vim配置

由于 centos6.5 i686 对应的vim和gcc环境都比较老, 因此很多新的插件并不支持. 尤其是代表性的 YouCompleteMe 插件. 因此我们为了简单不折腾, 推荐了以下插件集合, 能够比较好的兼容旧版本的vim

插件集合

auto-pairs.vim: 括号自动匹配  a.vim: 切换.h/.c文件  DoxygenToolkit.vim: 生成文档风格的注释  mark.vim: 高亮关键字  NERD_tree.vim: 文件列表  tagbar.vim: 函数列表  ctrlp.vim: 快速查找文件  gruvbox: 一个漂亮的主题  python-mode: 一组Python开发的工具集合  vim-airline: 漂亮的标签页和状态栏  vim-colorschemes: 一个主题集合包  vim-cpp-enhanced-highlight: 更精细的c/c 语法高亮  vim-surround: 快速给一段代码外面包裹括号/引号  Vundle.vim: vim的一个插件管理器  AutoComlPop OmniCppComplete SuperTab ctags: 代码补全  ctags: 代码跳转(这货不是vim插件, 是一个linux工具)  syntastic: 语法检查  snipMate vim-snippets: 代码片段

这里还准备了一个快速安装脚本. 大家直接执行, 即可完成该vim插件集合的安装.

快速安装

步骤一: 下载基础配置

代码语言:javascript复制
git clone https://gitee.com/HGtz2222/EasyVimConfig.git

步骤二: 执行安装脚本

代码语言:javascript复制
cd EasyVimConfig
sh install.sh

等待下载完毕后, 安装完成.(注意, 下载插件过程中界面是卡死的. 请耐心等待).

使用方法

详细的使用方法, 可以参考 ~/.vimrc 中的注释内容

vim高配版(1) – SpaceVim

简介

SpaceVim 是国内的一个大佬将一些NB的插件整合到一起的一个插件包. 一键式安装, 功能强大.

官网参见 https://spacevim.org/

折腾程度

安装过程: 3星

软件依赖

vim7.4 或 neovim 0.2.0 以上.

centos7 默认 vim 版本为 7.4, 默认 gcc 版本为4.8, 比centos6.5好了不少. 但还是不够. 要想装一些新版的插件, 仍然需要升级 vim(甚至gcc)

为了避免编译, 可以通过 yum 安装 neovim 以及 neovim 的 python 扩展来解决这个问题(centos7 x86_64

下面介绍 centos7 x86_64 上安装 SpaceVim 的过程.

安装过程

安装 neovim  先安装yum源的扩展

代码语言:javascript复制
yum -y install epel-release

然后安装 neovim

代码语言:javascript复制
yum install -y neovim.x86_64 python2-neovim.noarch

最后定义别名. 输入 vim 启动 neovim

代码语言:javascript复制
# 修改 /etc/bashrc
alias vim="nvim"

然后重启终端后生效. 此时敲下 vim, 启动的实际是 nvim.

安装 git

直接 yum install git 即可. 由于 centos7上的yum源git版本较高, 不需要涉及到前面的问题. 万一出现问题, 参考前方的解决方案.

安装 SpaceVim

下载安装基本配置

代码语言:javascript复制
curl -sLf https://spacevim.org/install.sh | bash

效果如图 

下载安装插件.

启动 vim, 等待插件下载完成. 由于插件数目较多, 因此下载时间也会很长. 万一下载中途出现界面卡死进度条下载缓慢的情况, 可以重启vim再次尝试下载. 

安装成功后, 打开会看到欢迎界面

但是这时候如果是使用 xshell 连接的话, 可能会出现颜色不正确的情况. 可以参考下面的解决方法.

使用方法

SpaceVim包含的插件体系非常丰富, 种类繁多. 因此在使用方面上作者有自己的一套设计体系. 具体可以参考官网文档.

一些问题

XShell 下颜色显示混乱问题  在 .SpaceVim.d/init.vim 中添加以下两句配置

代码语言:javascript复制
let g:spacevim_enable_guicolors = 0
set t_Co=256

相对行号问题

如果有些老铁不习惯相对行号, 可以将相对行号关闭.

代码语言:javascript复制
set norelativenumber

其他

由于 SpaceVim 的作者主要是写 Java 的. 个人感觉 SpaceVim 写 C 的感觉比较一般吧. 最主要是因为 SpaceVim 使用 deoplete 代替 YouCompleteMe 作为代码补全插件. 而后者目前对于 C 相关的代码补全更强一些.

vim高配版(2) – vimplus

简介

vimplus是国内的又一个大佬打造的一个vim开发工具包. 为 cpp 开发者量身定做. 界面漂亮.

官网参见github

https://github.com/chxuan/vimplus

折腾程度

安装过程: 4星

安装过程

可以参考github上的文档

代码语言:javascript复制
git clone https://github.com/chxuan/vimplus.git ~/.vimplus
cd ~/.vimplus
./install.sh

由于 vimplus 内置了 YouCompleteMe, 并且会自动进行编译, 省了不少心. 安装过程比较久, 请耐心等待. 但是仍然不能保证100%安装成功. 如果安装失败, 请自行百度. 

使用方法

官方github上有详细说明. 比spacevim简洁了不少.

vim作死版 – 尝试手动安装 YouCompleteMe

简介

YCM是vim史上最NB插件, 没有之一. 同时也是史上最难安装的插件, 也没有之一.

具备以下非常屌炸天的功能

精准的语义补全  客户端服务器异步IO架构, 非常高的性能以及非常流畅的用户体验.  语法检查  模糊匹配  跳转到声明/定义  进入 include 的头文件  支持很多其他的主流编程语言(不过C 支持的最好)

软件依赖

vim8.0或者neovim 0.2.0

只支持x86_64系统.

折腾程度

安装过程: 9星

当前网络上的大部分 YCM 安装的博客, 按照上面的步骤操作 “十有八九” 都不会成功.

要想手动安装成功, 必须有很大的耐心, 最准确最权威的资料就是读 github 上的官方文档, 以及遇到问题的时候使用 google(不要用baidu).

安装难点主要在这几个方面:

vim版本限制. 需要升级vim. 最好是vim8.0或者neovim  gcc版本限制. 需要升级gcc.  编译ycm_core. 这个是补全cpp代码的核心模块. 编译过程中可能会出现很多问题. 尤其是依赖的编译工具缺失. 如果遇到问题, 仔细阅读错误日志, 并且google(不要用baidu)  .ycm_extra_conf.py 的配置. 需要对其中的内容进行一定的修改和调整. 需要理解c 编译器的一些基本知识.  安装完毕后, 不能补全代码: 需要使用 :YcmDebugInfo 指令, 找到对应的错误日志文件. 然后根据错误日志中的信息, 结合google和YCM源码分析解决. 这个只能见招拆招.

所以建议还是使用 vimplus 能够帮助我们解决一部分问题.

0 人点赞