vim bundle安装
一、准备工作
安装Git(因为下面我们选择的插件管理器需要使用到它)
安装其他插件前首先需要选择一个Vim插件管理器,我这里选择的是Vundle,Vundle的工作过程中需要通过Git自动从远程创库同步插件安装包到本地仓库(Vundle的默认本地仓库位置是~/.vim/bundle/) 通过Git下载Vundle安装包:$ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim 在~/.vimrc中添加Vundle的配置内容:
01.
1
set nocompatible " be iMproved, required
02.
2
filetype on " required
03.
3
04.
4
" set the runtime path to include Vundle and initialize
05.
5
set rtp+=~/.vim/bundle/Vundle.vim
06.
6
call vundle#begin()
07.
7
" alternatively, pass a path where Vundle should install plugins
08.
8
"call vundle#begin(
'~/some/path/here'
)
09.
9
10.
10
" let Vundle manage Vundle, required
11.
11
Plugin
'gmarik/Vundle.vim'
12.
12
13.
13
" plugin from http:
//vim-scripts.org/vim/scripts.html
14.
14
Plugin
'L9'
15.
15
" Git plugin not hosted on GitHub
17.
17
" git repos on your local machine (i.e. when working on your own plugin)
19.
19
" The sparkup vim script is in a subdirectory of
this
repo called vim.
20.
20
" Pass the path to set the runtimepath properly.
21.
21
" Plugin
'rstacruz/sparkup'
, {
'rtp'
:
'vim/'
}
22.
22
" Avoid a name conflict with L9
23.
23
" Plugin
'user/L9'
, {
'name'
:
'newL9'
}
24.
24
25.
25
" All of your Plugins must be added before the following line
26.
26
call vundle#end() " required
27.
27
filetype plugin indent on " required
28.
28
" To ignore plugin indent changes, instead use:
29.
29
"filetype plugin on
30.
30
"
31.
31
" Brief help
32.
32
" :PluginList - list configured plugins
33.
33
" :PluginInstall(!) - install (update) plugins
34.
34
" :PluginSearch(!) foo - search (or refresh cache first)
for
foo
35.
35
" :PluginClean(!) - confirm (or auto-approve) removal of unused plugins
36.
36
"
37.
37
" see :h vundle
for
more details or wiki
for
FAQ
38.
38
" Put your non-Plugin stuff after
this
line
有两种方式安装新插件,通过命令行参数的方式如:$ vim +PluginInstall +qall或者直接运行:$vim,然后按:PluginInstall进入命令模式,直到左下方状态栏出现Done!提示说明插件安装成功,退出再进入就可以使用我们在~/.vimrc中配置的插件了 安装ctags软件:$ yum install ctags
二、生成tags文件
为了可以利用Vim本身提供的tag功能来定位程序里面出现的宏定义和方法定义(源文件之间跳转),在你的工程根目录运行命令:$ ctags -R --language-force=c++ *,这里语言要指定为c++,如果指定为c则不会生成.h文件的tag。操作成功后在当前目录就可以发现一个tags文件了,在~/.vimrc中添加一行配置信息如:set tags=/opt/dev/4.4BSD-Lite/tags来告诉vim tag索引文件的位置。再次运行vim就可以通过按Ctrl+]来快速跳转到光标下方的函数或宏的定义处,查看代码非常方便。通过]+d可以在vim状态栏显示当前文件中定义的宏的内容(不用跳转)
三、按需添加插件
(1)显示目录树插件(NERDTree)
在~/.vimrc的Plugin段中添加一行安装配置:Plugin 'scrooloose/nerdtree' 在~/.vimrc里面修改该插件的打开命令按键映射:map <F4> :NERDTree<cr> 保存被修改的配置文件,重新运行vim,如:$ vim /opt/dev 按F4功能键即可调用该插件显示当前工作目录的目录树,按?或者帮助信息,按q退出该插件(当打开多个tab时可以通过gt或窗口index+gt在tab之间快速切换,按T以安静方式打开新tab即打开新tab后继续留在当前tab)
(2)文件查找插件(CtrlP)
在~/.vimrc的Plugin段中添加一行安装配置:Plugin 'kien/ctrlp.vim' 在~/.vimrc里面修改该插件的打开命令按键映射及配置:
1.
let g:ctrlp_map =
'<c-p>'
"hotkey Ctrl+p open ctrlp plugin
2.
let g:ctrlp_cmd =
'CtrlP'
3.
let g:ctrlp_working_path_mode =
'0'
"disable work path mode
保存被修改的配置文件,重新运行vim,如:$ vim /opt/dev 按Ctrl+p即可调用该插件(每次运行第一次打开需要稍微等一下,该插件对工作目录进行扫描创建缓存,如果目录结构有变化按F5进行缓存刷新,我找了下没有发现保存扫描缓存的功能),按ESC退出该插件(Ctrl+t在新tab中打开选中的文件);:CtrlPMRU 在最近使用最多的文件里面查找结果;:CtrlPBuffer在find buffer里面查找结果;按..进入上一级目录中
(3)函数名列表(CtrlPFunky),该插件是CtrlP插件的一个扩展,必须先装CtrlP
在~/.vimrc的Plugin段中添加一行安装配置:Plugin 'tacahiroy/ctrlp-funky' 在~/.vimrc里面修改该插件的命令按键映射及配置:
1.
map <F6> :CtrlPFunky<cr>
2.
let g:ctrlp_extensions = [
'funky'
]
3.
let g:ctrlp_funky_syntax_highlight =
1
保存被修改的配置文件,重新运行vim打开一个c源文件,按F6键即可看到当前文件的函数列表,上下键移动选择条目按回车即可跳到函数定义处
(4)源文件中函数、变量、结构体、宏等元素的列表(taglist)
在~/.vimrc的Plugin段中添加一行安装配置:Plugin 'vim-scripts/taglist.vim' 在~/.vimrc里面修改该插件的命令按键映射及配置:
1.
map <F5> :Tlist<cr>
2.
let Tlist_Show_One_File =
1
3.
let Tlist_Exit_OnlyWindow =
1
4.
let Tlist_Use_Right_Window =
1
5.
let Tlist_GainFocus_On_ToggleOpen =
1
保存被修改的配置文件,重新运行vim打开一个c源文件,按F5键即可在右边子窗口看到当前文件的个元素的列表,上下键移动选择条目按回车即可跳到函数定义处,F1查看帮助信息,在选择的对象上按<space>可以在状态栏看到各元素的定义;按减号(-)关闭一个节点,按*打开关闭的结点
四、后记
上面四个插件就是我当前阅读源代码的IDE配置,对于我来说已经足够满足我的工作需要了;由于这次时间仓促Vim里面还有很多人性化的配置及插件没来得及发现,随着我对Vim更深入的了解及在使用过程中遇到的新问题,还会有更多优秀的功能及插件,到时候再来分享。
为了方便的保存每次的工作状态及再次运行Vim的时候恢复上次工作状态需要在~/.vimrc中添加如下两行配置(也就是Vim的Session管理功能):
1.
map <F2> :mksession! ~/vim_session <cr> " Quick write session with F2
2.
map <F3> :source ~/vim_session <cr> " And load session with F3
vim bundle安装的更多相关文章
- Ubuntu下VIM的安装及其配置——Linux篇
一.Ubuntu系统默认内置: 实际上ubuntu默认没有安装老版本的vi,只装了vim.vi是vim.tiny(vim的最小化版本,不含 GUI,并且仅含有一小部分功能,并且默认与vi兼容.此软件包 ...
- Ubuntu Vim YouCompleteMe 安装
0. 必要工具安装 sudo apt-get install build-essential cmake 1. 安装 vundle mkdir ~/.vim/bundle git clone http ...
- vim插件安装总结
vim插件安装总结 vim 插件 vundle 插件对于vim来说是一个杀手级别的神器助手,能自动补全,语法高亮,文件搜索等等,有效地提升了编程效率.下面就个人的一些安装和使用进行一个总结. 自动管理 ...
- Vim YouCompleteMe 安装配置
YouCompleteMe是很强大的vim插件,可以提供强大的补齐功能,曾经多次尝试安装,都没有配置成功,最近在一个契机下,看到有同事的配置,自己在边尝试和边咨询后,终于也搞定了,遂记录下. 官网有最 ...
- MarkDown的vim插件安装
作用:可以使markdown语法高亮.1.安装.使用pathogen插件管理. cd ~/.vim/bundle git clone https://github.com/plasticb ...
- 【原创】vim插件安装简介
一.安装vundle(vim插件管理软件): git clone https://github.com/VundleVim/Vundle.vim 拷贝目录到 ~/.vim/bundle/Vundle. ...
- vim 插件安装
一.pathogen简介 通常情况下安装vim插件,通常是将所有的插件和相关的doc文件都安装在中一文件夹中,如将插件全部安装在/usr/share/vim/vim73/plugin/目录下,将帮助文 ...
- vundle就是vim bundle的插件管理成ide
如何配置一个高效的php编辑环境, 很好 对vundle的操作, 除了仓库名称是vundle.git (*.git就是仓库) 和 本地目录名是 vundle之外, 其他的操作都是bundle git ...
- Linux c++ vim环境搭建系列(4)——vim插件安装配置使用
4. 插件 主要是c++相关的. ~/.vimrc文件在GitHub上有:https://github.com/whuwzp/vim_config 以下内容参考: https://github.com ...
随机推荐
- 005_FreeRTOS任务挂起和恢复
(一) (二)使用,参数是任务句柄 //key任务函数 void key_task(void *pvParameters) { u8 key; ) { key=KEY_Scan(); switch(k ...
- java监测硬盘空间大小
package com.zuidaima.util.file; import java.io.File; public class FreeDiskSpace { public static void ...
- 串结构练习——字符串连接(SDUT 2124)
Problem Description 给定两个字符串string1和string2,将字符串string2连接在string1的后面,并将连接后的字符串输出. 连接后字符串长度不超过110. Inp ...
- 使用appium+python做UI自动化的demo
使用appium+python做UI自动化的demo 案例使用的知乎app,下载最新的知乎apk,存在了电脑上,只需要配置本机上app目录,不需要再配置appPackage和appActivity # ...
- python 监听键盘事件
#coding=utf- from tkinter import * root=Tk() def callback(event): print("点击键盘",repr(event. ...
- go结构体的方法和普通函数
package main import ( "fmt" "math" ) type vertex struct { X, Y float64 } //值接收者是 ...
- Python进行Redis数据迁移
Python进行Redis数据迁移 由于开发时的误操作,导致redis数据损坏,所以需要进行redis的数据迁移,网上大佬的教程基本都是需要下载附加工具,亦或是需要一些复杂的操作,个人觉得麻烦还不如写 ...
- COM组件双接口对象模型
模型如下: 这里COM对象一共实现了三个接口,IUnknown,IDispatch, Ixxx. 每个COM都必须实现IUnknown,不考虑在内的话共实现了IDispatch和自定义接口Ixxx两个 ...
- linux 中gcc的·安装、编译过程
一.安装gcc编译器 通过命令gcc -v查看当前的GCC版本 [root@localhost /]# gcc -v Reading specs from /usr/i386-glibc-2.1-li ...
- 五一 DAY 4
DAY 4 2019.5.1 PART 1 进制转化 10 = 23+21= 1010(2) = 32+30= 101(3) 进制转化常见问题: 1.十进制数 x ----&g ...