vim配置----YouCompleteMe配置
YouCompleteMe是一个功能极强的自动补全插件,安装这个插件折磨了我好久,找了很多博客查看都无果,最后还是感谢stack overflow。和其它的一些插件相比,YCM能够基于语法来给出相应的补全政策,而不是简单的通过文件的格式。运行效果的截图:


我把安装的过程分为几下几步:
1. 找一个比较好用的基础的vim配置,或者原来你电脑上就有的配置也行。我使用的是https://github.com/ma6174/vim,提供一键安装的办法进行安装。运行wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh -x即可。
2.检查自身环境是否符合要求:
- 首先是检查vim ,版本必须大于Vim 7.4.143,版本限制可能会更改,具体请查看git,检查版本信息通过vim --version。
- 由于YCM上层封装使用的是python,所以还需要检查版本信息。python2或者python3都支持。同样的通过python --version查看。
- 安装vundle,具体的安装过程见git,相当简单。
- 安装Cmake,sudo apt-get install build-essential cmake。
- 安装python, sudo apt-get install python-dev python3-dev。
- 完成上述步骤就可以开始检测clang,clang --version。现在YCM的版本需要Clang3.9的支持,如果系统版本小于3.9则可以通过apt进行更新,更新完成之后在/usr/bin下进行clang文件替换,替换成最新版本。
- 接下来开始进行YouCompleteMe的安装:
- 克隆git仓库: 在.vim/bundle/目录下进行克隆,命令如下:git clone https://github.com/Valloric/YouCompleteMe.git 完成之后会在此目录下生成YouCompleteMe文件
- 进行安装: 在cd ~/.vim/bundle/YouCompleteMe目录下执行./install.py --clang-completer --system-libclang 使用本地libclang库进行安装,这个过程中如果系统clang库为更新可能出错。
- 安装过程中会进行编译,时间估计比较长。
- 最后一步,其实当初自己安装的时候开始的这几步都不怎么迷糊,但是这一步总是出错。最后是添加YouCompleteMe自动提示的数据源,我们需要在~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm这个目录下找到.ycm_extra_conf.py文件,并编辑这个文件在flags部分添加如下内容:
'-isystem',
'/usr/include/',
'-isystem',
'/usr/include/c++/',
'-isystem',
'/usr/include/x86_64-linux-gnu/c++',
'-isystem',
'/usr/local/include/', 这个具体根据自己的文件来决定,现在所有的配置都已经完成了,enjoy it!!!
vim配置----YouCompleteMe配置的更多相关文章
- 【实习记】2014-08-19升级vim配置YouCompleteMe并debug的过程+qtcreator有语言包没法换语言
做了个小项目,有空闲可以做点事了. 偶然查资料看见YouCompleteMe的鼎鼎大名. 演示demo <img src="http://i.imgur.com/0OP4ood ...
- vim插件和配置
vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...
- Linux : Vim 使用与配置 (附 GitHub 自动化配置脚本)
由于经常使用 vim 编辑配置文件,有时候也会进行使用vim 编写一些脚本和c/c++ 程序,所以配置一个常用的 vim 是很是必要的.这篇博文主要是记录vim使用和配置相关的一些知识点. 关于vim ...
- Mac vim“装逼”配置
配置c++ 等编程语言补全等 from blog http://www.cnblogs.com/xiaobo-Linux/p/8909402.html 1. 安装 macvim brew instal ...
- vim的简单配置
本文大部分内容转载自:https://blog.csdn.net/lhy2932226314/article/details/69668891 vim是从 vi 发展出来的一个文本编辑器.功能丰富,在 ...
- vim安装与配置
vim 8.0 安装 git clone https://github.com/vim/vim.git sudo apt-get install libncurses5-dev # vim依赖一个n ...
- Linux c++ vim环境搭建系列(4)——vim插件安装配置使用
4. 插件 主要是c++相关的. ~/.vimrc文件在GitHub上有:https://github.com/whuwzp/vim_config 以下内容参考: https://github.com ...
- vim + ctags + taglist配置和使用
vim +ctags + taglist ,ctags+cscope 安装配置和使用 内容:VIM下ctags和taglist的安装配置方法:一键安装 ctags和cscope的方法 :vim语法高亮 ...
- Linux中vim的简单配置
本文主要分享Linux中vim的简单配置 ★配置文件的位置 在目录/etc.下面,有个名为vimrc的文件,这就是系统中公共的vim配置文件,对所有用户都开放.而在每个用户的主目录下,都可以自 ...
随机推荐
- 10分钟看懂, Java NIO 底层原理
目录 写在前面 1.1. Java IO读写原理 1.1.1. 内核缓冲与进程缓冲区 1.1.2. java IO读写的底层流程 1.2. 四种主要的IO模型 1.3. 同步阻塞IO(Blocking ...
- Hadoop集群部署-Hadoop 运行集群后Live Nodes显示0
可以尝试以下步骤解决: 1 ,分别删除:主节点从节点的 /usr/local/hadoop-2.6.2/etc/tmp 下得所有文件; 2: 编辑cd usr/local/hadoop-2.6. ...
- php下载并安装pear脚本
下载并安装pear脚本cd /usr/local/php/bin/curl -o go-pear.php http://pear.php.net/go-pear.phar ./php go-pear. ...
- 51nod 1225
题目 题解:看数据范围就估计是根号算法.考虑我们要求的式子: $ \sum\limits_{i = 1}^n {n - \left\lfloor {\frac{n}{i}} \right\rfloor ...
- JS继承的实现方式
JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一.那么如何在JS中实现继承呢?让我们拭目以待. JS继承的实现方式 既然要实现继承,那么首先我们得有一个父类,代码如下: // 定义一个动物类 ...
- RQNOJ 95 多多看DVD(加强版):01背包
题目链接:https://www.rqnoj.cn/problem/95 题意: 叔叔要陪多多看动画片. 有n张DVD可以买,第i张碟的打分为w[i],播放时间为t[i]. 爷爷规定他们只能在一定的时 ...
- python-常用内置函数与装饰器
1.常用的python函数 abs 求绝对值 all 判断迭代器中所有的数据是否为真或者可迭代数据为空,返回真,否则返回假 any ...
- 在node.js中建立你的第一个HTTp服务器
这一章节我们将从初学者的角度介绍如何建立一个简单的node.js HTTP 服务器 创建myFirstHTTPServer.js //Lets require/import the HTTP modu ...
- Java中内部类中使用外面变量为什么final修饰?
所以final从语法上约束了实际上两个不同变量的一致性(表现为同一变量). 我的理解: 例如这样的代码: public void test(String str){ str="abc&quo ...
- spring框架IOC原理分析代码
模拟ClasspathXmlApplication: package junit.test; import java.beans.Introspector; import java.beans.Pro ...