vim插件汇总
2015-10-13 10:08
357 查看
vim 插件汇总
vundle
vundle是vim中很好的插件管理器,其安装及使用见链接[1]。YouCompleteMe
YouCompleteMe是vim的自动补全神器,其安装比较麻烦,见如下,1. 安装前准备
vim: 版本至少是7.3.584,可以用:version查看vim版本号。
python支持 :通过
echo has('python')的结果是否为1判定。
vundle插件
2. 安装
在vim.rc中添加Bundle 'Valloric/YouCompleteMe',之后在vim中执行
:BundleInstall。
3. 编译前准备
cmake: ubuntu下执行sudo apt-get install cmake,fedora下执行
sudo rpm install cmake。
python-dev/python-devel:ubuntu下执行
sudo apt-get install python-dev,fedora下执行
sudo rpm install python-devel。
clang: 版本需大于3.2,若采用下面编译方式1,则不需下载,采用方式2需下载。
4. 编译
编译方式1: 执行如下命令,YCM会自动下载clang包并完成编译。cd ~/.vim/bundle/YouCompleteMe ./install.py --clang-completer
编译方式2:手动编译,下载clang,解压到ycm_temp/llvm_root_dir下,之后执行如下命令:
cd ~ mkdir ycm_build cd ycm_build cmake -G "Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/ycm_temp/llvm_root_dir . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp ycm_core
5. 配置.ycm_extra_conf.py
文件
安装完ycm后,会产生默认的.ycm_extra_conf.py,不过还必须对此文件进行相应设置。若不设置,ycm强大的补全、语法检查功能不能完全施展。比如,将以下几行添加到该文件的flags部分(即设置c++库文件的路径),即可在c、c++程序中实现ycm的全部功能。
'-I', '.', '-isystem', '../BoostParts', '-isystem', '/usr/include', '-isystem', '/usr/include/c++/',
不过,要使该文件生效,必须得在每个项目下放一个,或是在vim中进行如下配置
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' "配置默认的ycm_extra_conf.py文件路径。
6. .vimrc中ycm的配置
"""""插件YouCompleteMe配置 Bundle 'Valloric/YouCompleteMe' let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' "配置默认的ycm_extra_conf.py文件路径 let mapleader = "," " 将leader就映射为逗号“,” nnoremap <leader>jd :YcmCompleter GoToDefinitionElseDeclaration<CR> "按,jd 会跳转到定义 let g:ycm_confirm_extra_conf=0 "打开vim时不再询问是否加载ycm_extra_conf.py配置 let g:ycm_collect_identifiers_from_tag_files = 1 "使用ctags生成的tags文件 let g:ycm_error_symbol = '>>' "错误的显示符号 let g:ycm_warning_symbol = '>*' "警告的显示符号
Syntastic
Syntastic是很好的语法检查插件,安装完后在vim中做如下配置即可set statusline+=%#warningmsg# set statusline+=%{SyntasticStatuslineFlag()} set statusline+=%* let g:syntastic_always_populate_loc_list = 1 let g:syntastic_auto_loc_list = 1 let g:syntastic_check_on_open = 1 let g:syntastic_check_on_wq = 0
Markdown插件
vim-markdown
vim-markdown是对markdown文件语法高亮的插件,安装很简单,直接在.vimrc中加上Plugin 'plasticboy/vim-markdown',之后在vim中执行
:BundleInstall即可。
vim-instant-markdown
vim-instant-markdown是通过浏览器对markdown文件进行实时预览的插件.不过此插件在安装前需安装node.js和npm.在Fedora21中直接通过以下代码安装:sudo yum install nodejs npm
不过安装完成后执行node会找不到该命令,切换到root即可.
执行npm会出现
Cannot find module 'inherits',尝试了github此问题解答的所有方法后都不行,仍然出现同样错误.后在stackoverflow此问题解答中找到一个解决办法--
sudo yum install nodejs-inherits*,采用此办法后虽然安装了模块"inherits",但又出现找不到其他模块的问题,索性将与nodejs相关联的模块一并安装--
sudo yum install nodejs*,问题解决.
附录
YouCompleteMe与Syntastic的关系
YouCompleteMe具有语法补全,语法检查,声明跳转的三大功能,而Syntastic仅具有语法检查功能针对语法检查功能,YouCompleteMe仅支持C语言家族,而Syntastic支持几乎所有的语言
在C文件中,两个插件因功能重和而冲突,YouCompleteMe会将Syntastic禁用掉,如下图所示.不过,因为Syntastic会默认启动,故打开C文件后,会出现两个插件共用的情况.
若仅想使用Syntastic检查c语言语法,可对YouCompleteMe进行如下配置
let g:ycm_show_diagnostics_ui = 0 "0表示禁用ycm自带的syntastic插件".
参考文章
[1]. 使用vundle管理vim插件[2]. Vim自动补全神器:YouCompleteMe+Syntastic
[3]. Ubuntu13.04配置:Vim+Syntastic+Vundle+YouCompleteMe
[4]. Vim智能补全插件YouCompleteMe安装
相关文章推荐
- sql sever 数据表
- 【线性代数】 03 - 行列式
- demo02
- HttpClient容易忽视的细节——连接关闭,使用不当服务器会出现大量的Close_Wait现象
- 1588: [HNOI2002]营业额统计
- 修改MAC过程
- stl之map容器的原理及应用
- python之函数用法__str__()
- 分享一个不错的mysql语句
- Tomcat 启动时 There is no Action mapped for namespace [/] and action name [] associated with context pa
- Tomcat 启动时 There is no Action mapped for namespace [/] and action name [] associated with context pa
- Tomcat 启动时 There is no Action mapped for namespace [/] and action name [] associated with context pa
- border-style有哪些值?这些值的作用
- 标准模板库(六):STL算法函数介绍
- VS2013常用快捷键
- C++中的顶层const和底层const
- 数据结构复习1——链表反转
- poj 1426
- UISearchController
- 017redis3.0集群部署