vim的插件管理与配置
vim作为我做喜欢的编辑器,可扩展性几乎是没有尽头的,前阵子一直在配置这.vimrc文件,原来搞过配色文件,现在主要就自动补全来设置下,同时作为自己配置的记录文档。……………………………………………………………………………………………………
Vundle
//管理vim插件的插件 ,其特色在于使用git来管理插件,更新方便。
Nerdtree
//树形目录插件,可以方便查看目录
DoxygenToolkit
//用它可以很方便地添加 Doxygen 风格的注释,可以节省大量时间和精力,提高写代码的效率。
Taglist
//TagList插件是一款基于ctags,在vim代码窗口旁以分割窗口形式显示当前的代码结构概览,增加代码浏览的便利程度的vim插件。
nerdcommenter
//快速注释插件,可以很方便的注释代码
vim-airline
//状态栏美化插件
YouCompleteMe
//代码自动补全插件
……………………………………………………………………………………………………
一、必须先安装Vundle插件,作为一个插件,又可以管理插件,这是这个插件必须第一个安装的原因,需要先安装git,
mkdir ~/.vim/bundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
二、修改.vimrc文件,
将需要的插件,以YouCompleteMe 为例子,.vimrc文件片段,将插件写入vim配置文件中,必须在
"call vundle#begin('~/some/path/here')和call vundle#end() 语句之间
……………………………………………………………………………………………………
set nocompatible " 去除VI一致性,必须
filetype off " 必须 " 设置包括vundle和初始化相关的runtime path
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" 另一种选择, 指定一个vundle安装插件的路径
"call vundle#begin('~/some/path/here') " 让vundle管理插件版本,必须
Plugin 'VundleVim/Vundle.vim' " 以下范例用来支持不同格式的插件安装.
" 请将安装插件的命令放在vundle#begin和vundle#end之间.
" Github上的插件
" 格式为 Plugin '用户名/插件仓库名' Plugin 'Plugin 'Valloric/YouCompleteMe' " 你的所有插件需要在下面这行之前
call vundle#end() " 必须
……………………………………………………………………………………………………
三、安装插件,两种方式,其他的都可以,但是YouCompleteMe不一样
(1)下载源码,运行vim再运行:PluginInstall
或通过命令行直接安装 vim +PluginInstall +qall
建议采用下面的方式:
git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe(需要一点时间)
git submodule update --init --recursive (需要很长时间)
(2)编译代码:
cd ~/.vim/bundle/YouCompleteMe
sudo pacman -Syyu
sudo ./install.py --clang-completer
(3)配置.yum_extra_conf.py文件,将.yum_extra_conf.py复制一份到 ~/下:
cp ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py ~/打开.yum_extra_conf.py,在flags中添加以下代码
'-isystem',
'/usr/include',
'-isystem',
'/usr/include/c++/',
'-isystem',
'/usr/include/i386-linux-gnu/c++' 同时把flags中‘home/xxx’更改为’home/你的用户名’
(4)修改vim配置文件.vimrc中添加:let g:ycm_global_ycm_extra_conf='~/.ycm_extra_conf.py' "设置全局配置文件的路径let g:ycm_seed_identifiers_with_syntax=1 " 语法关键字补全
let g:ycm_confirm_extra_conf=0 " 打开vim时不再询问是否加载ycm_extra_conf.py配置
let g:ycm_key_invoke_completion = '<C-a>' " ctrl + a 触发补全
set completeopt=longest,menu "让Vim的补全菜单行为与一般IDE一致(使用bash的补全方式)
应该就算是成功了,难度不大,就是太耗时间了点,可能是我选择时间不多,大晚上,网速不快。
vim的插件管理与配置的更多相关文章
- Vim Vundle 插件管理器
/********************************************************************** * Vim Vundle 插件管理器 * 说明: * 话 ...
- 【vim】插件管理及代码智能提示与补全环境的配置
1. 引言 可以使用脚本/插件来给vim添加各种神奇的功能,从更换颜色主题.到代码智能提示,甚至项目管理.无数开发者通过开源社区贡献自己开发的插件,使得vim有可能变得无比强大.这儿http://vi ...
- vim 常用插件功能跟配置
在之前的公司,一直是使用别人配置好的vim 环境,他当时配置的功能很强大,查看源码的时候,非常的方便.至少我一直都是用它来看源码,从来没有使用过source insight.现在换了工作,但之前养成的 ...
- vim利用插件管理工具-管理配置文件
目前被广泛应用的2各插件管理工具Pathogen和Vunble,我先说Pathogen Pathogen Pathogen完全用vim脚本编写,不用其他的代码(Vunble就用了python),所以安 ...
- Vim常用插件安装及配置方法
Vundle 安装 git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 配置 vimrc首部添 ...
- vim插件管理器的安装和配置-windows
# vim插件管理器的安装和配置-windows ### 前言------------------------------ vim做一框功能强大的编辑器,扩展功能令人称奇,插件机制非常灵活- 本篇推荐 ...
- VIM的配置以及插件管理
VIM的配置详细说明参考:http://www.ruanyifeng.com/blog/2018/09/vimrc.html 此外VIM的插件管理比如 Vundle可以参考这个博客: https:// ...
- Vim插件管理器Vundle使用
参考地址:http://www.linuxidc.com/Linux/2012-12/75684.htm Vundle(Vim bundle) 是一个vim的插件管理器. 其Github地址为: ht ...
- Vim插件之插件管理器Vundle
Vim插件之插件管理器Vundle 1.介绍下载 相比Sublime.Text2等现代编辑器,Vim缺乏默认的插件管理器,所有插件的文件都散布在~/.vim下的几个文件夹中,配置Vim的过程, 就是在 ...
随机推荐
- 在Kotlin编写RecyclerView适配器(KAD 16)
作者:Antonio Leiva 时间:Mar 14, 2017 原文链接:https://antonioleiva.com/recyclerview-adapter-kotlin/ 通过创建Recy ...
- CodeForces - 948C(前缀和 + 二分)
链接:CodeForces - 948C 题意:N天,每天生产一堆雪体积 V[i] ,每天每堆雪融化 T[i],问每天融化了多少雪. 题解:对 T 求前缀和,求每一堆雪能熬过多少天,再记录一下多余的就 ...
- JQuery UI 日历加时间
写一个面试时间通知.用jquery ui 具体功能已经可以了,不过样式还没调 一.需要引入的文件,这些可以到官网下载 <link rel="stylesheet" href= ...
- Android Studio的初体验
在机缘巧合之下遇到了安卓开发,接触了Android Studio开始了漫长的改bug的道路,以下为简易版心酸历程 首先我需要成功安装Android Studio,由于我过于叛逆以及为了避免出错于是从一 ...
- 【历史】- 一段关于 Unix、Linux 和 Windows 的暗黑史
“SCO在言语上变得越来越好斗,而且还拒绝展示有关诉讼的任何证据,一切都似乎在表明,SCO只不过是在那里拉虎皮做大旗地狂言乱语.但是,微软决不会轻易放弃这么可以一个利用这些狂言乱语的好机会.”2003 ...
- javascript 数组以及对象的深拷贝
如果 let arr2 = arr1: 那么只是赋值的引用,改变arr2也会相应的改变arr1: 如果 let arr2 = [].concat(arr1): 如果arr1里面不是引用类型,那么ar ...
- el-table中操作一栏怎么根据当前行的信息显示编辑、删除、编辑完成按钮
对每个按钮是否显示,使用v-show绑定变量,因为每一行的v-show绑定的变量必须是唯一的(不然的话操作此行,其他行的状态也会跟着变化),所以不可能提前在.ts中对变量进行初始化,只能使用本行的字段 ...
- Delphi xe7组件和控件的安装方法
暂时我所遇到的所有控件安装方法大体与下面两种相同. 若有不同大家提出来,一起想办法解决. .dproj格式的组件安装方法: raise组件 安装详细步骤如下: 一.设置搜索路径1. 将本包中的文件连同 ...
- SQLAlchemy技术文档(中文版)(上)
在学习SQLAlchemy的过程中,好多时候需要查官方Tutorial,发现网上并没有完整的中文版,于是利用这两天空余时间粗略翻译了一下. 翻译效果很差....但也算是强迫自己通读一遍Tutorial ...
- Xcode 6.0中彻底关闭ARC
对整个项目关闭ARCproject -> Build settings -> Apple LLVM complier 3.0 - Language -> objective-C Au ...