vim配置文件和插件管理

本文经过总结零碎的资料总结而成,更可能是去引导学习vim配置文件及插件使用。javascript

.vimrc配置文件,内容以下(备注清晰)

"引入插件pathogen使用
execute pathogen#infect()
call pathogen#helptags()
"禁用vi兼容模式
set nocompatible
"vim的内部编码
set encoding=utf-8
"vim在与屏幕和键盘交互师傅使用的编码(取决于实际的终端的设定)
set termencoding=utf-8
"vim打开文件时的尝试使用的编码
set fileencodings=utf-8,gbk,gb2312,default,latin1
"开启语法高亮功能
syntax enable
"容许用指定高亮替换方案
syntax on
"显示行号
set nu
"括号匹配
set showmatch
"自动检测文件类型
filetype plugin indent on 
"在缩进和遇到Tab键时使用空格替代
set expandtab
"根据文件类型设置缩进格式
au FileType html,vim,javascript setl shiftwidth=2
au FileType html,vim,javascript setl tabstop=2
au FileType java,php,pathon setl shiftwidth=4
au FileType java,php,pathon setl tabstop=4
"启动vim时不要自动折叠代码
set foldlevel=100
"自动对齐
set ai
"根据下面的格式对齐
set si
set smarttab
set wrap
set lbr
set tw=0
set foldmethod=syntax
"老是显示状态栏
set laststatus=2
"显示光标当前位置
set ruler
"高亮显示当前行
set cursorline
"高亮显示搜索结果
set hlsearch
"禁止拆行
set nowrap
"设置快捷键前最,即<Leader>
let mapleader=":"
"设置快捷键将选中文本块复制到系统剪贴板
map <Leader>y "+y
"设置快捷键将系统剪贴板内容粘帖到vim
map <Leader>p "+p
noremap <F9> :!ctags -R<CR>
"设置tags文件为当前目录下的tags,默认状况也是
"set tags+=./tags
"配置文件.vimrc更改后自动从新载入使设置生效
autocmd! bufwritepost .vimrc source ~/.vimrc
"vim对一些流行的编程语言的语法提供自动完成的功能,可是默认是没有启用。
autocmd FileType php set omnifunc=phpcomplete#CompletePHP
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
"vim对一些语言实现的格式化命令
"在命令模式下直接输入“gg=G”。
"
"如下为插件设置参数
"
"-----------------------------------------------------------------
"auto-pairs插件,用于自动补全括号,引号等
"
"-----------------------------------------------------------------
"vim-surroun.vim插件,处理分隔符,包括添加、修改、删除。
"添加"",选择内容,输入S"。
"修改""为'',在分隔符内部,输入cs"'。
"删除"",在分隔符内部,输入ds"。
"删除<>xml标签时,t能够代替<>xml标签。
"
"-----------------------------------------------------------------
"nerdtree插件,目录树。
"设置默认开启
autocmd vimenter * NERDTree
"打开关闭快捷键
map <F3> :NERDTreeToggle<CR>
"当只剩下目录树时,自动关闭vim。
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") &&b:NERDTreeType == "primary") | q | endif
"
"-----------------------------------------------------------------
"xptemplate插件,代码片断补全
"提示方式:Ctrl+\。
"
"vim-Markdown插件,实现markdown高亮。
"
"tagbar插件显示方法属性列表
map <silent> <F4> :TagbarToggle<CR>
let g:tagbar_width=30
let g:tagbar_autofocus=1
"
"-----------------------------------------------------------------
"NERD_commenter.vim   注释代码用的,
"[count]<Leader>cc 光标如下count行逐行添加注释(7,cc)
"[count]<Leader>cu 光标如下count行逐行取消注释(7,cu)
"[count]<Leader>cm 光标如下count行尝试添加块注释(7,cm)
"<Leader>cA 在行尾插入 /* */,而且进入插入模式。 这个命令方便写注释。
"注:count参数可选,无则默认为选中行或当前行
"-----------------------------------------------------------------
let NERDSpaceDelims=1       " 让注释符与语句之间留一个空格
let NERDCompactSexyComs=1   " 多行注释时样子更好看"

这份配置文件只能是基础使用,开始是简单的字符编码设置,再是语法高亮(VIM自带javascript语法高亮,可是自带的那个位于syntax目录下的javascript.vim那个配置文件比较弱,有不少关键词没有高亮。咱们能够到www.vim.org搜索最新的javascript.vim代替了原来的那个文件的),其次是对Tab键的设置,而且能够设置根据不一样文件区分Tab键宽度。最后是对快捷键的设置,注意这里的复制粘帖是指vim以外电脑自己的剪切板。
以上就是.vimrc配置文件,一些基本的引导,能够本身作适合本身的快捷键或设置。php

接下来具体记录如何处理插件

(注:作一样的事确定存在多种选择,插件也是,相同功能有不少不一样插件能够实现,如下是我我的的选择)css

正常安装插件较为繁琐,须要到/usr/share/vim/vim**/文件下操做,插件比较很差管理,因此推荐使用插件管理器。pathogen和vundle都是用来管理vim插件的,可是其做用的方面不一样。html

  • pathogen是为了解决每个插件安装后文件分散到多个目录很差管理而存在的。
  • vundle是为了解决自动搜索及下载插件而存在的。

我我的使用的是apthogen插件,当插件过多时,条理的安置插件才是最好的,另外大部分使用的插件能够看到并不会短时间内更新。介绍pathogen插件:首先,在用户目录的.vim目录下创建autoload目录和bundle目录,autoload目录中放pathogen.vim。能够在~/.vim/autoload/目录下,用以下命令下载java

curl –Sso pathogen.vim https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim

而后在配置文件的首行添加以下命令execute pathogen#infect(),回头看看上方.vimrc配置文件开头。linux

有了pathogen后,下载的插件就直接把它们放到bundle目录下便可,而不须要管理相应的autoload、colors、plugin等目录。添加help文件,在vim下用命令:helptags ~/.vim/doc/便可经过help命令查看插件文档。
(注:哪怕插件只是一个.vim文件,也能够先新建一个文件夹,而后再建plugin文件夹,最后将该插件放入便可)git

有了这么好的插件管理器,安装插件就变得很是方便,由于vim毕竟是IT开发人员开发出来的,因此vim最终受益者还会是开发人员,配置IDE开发环境插件。github

文件浏览插件

一个好的文件浏览确定少不了目录树,而且可以方便切换。我推荐使用NERDTree。咱们先安装而后后续能够本身多看文档,正如我前面所说的有了好的插件管理器,就能够很方便完成安装使用。咱们能够直接去到官网http://www.vim.org/scripts/script.php?script_id=1658选择最新版本直接下载便可。咱们将压缩包解压之后,经过cp命令行将文件夹直接复制到~/.vim/bundle/下便可,能够打开vim,并在并在命令行输入:NERDTree,并能够看到左边跳出当前文件下的目录树,为了便于方即可以设置每次打开vim自动跳出NERDTree因此咱们能够在.vimrc文件中设置,同时能够设置打开关闭快捷键。是否是很方便!数据库

对齐文本插件

对于常常写代码来讲,有Tabular会很方便,文本能够按等号,冒号等来对齐文本。咱们仍是先直接安装插件,到https://github.com/godlygeek/tabular下载,此次是git上的一个项目,不用慌仍是直接下载便可,获得安装包后解压到~/.vim/bundle/便可直接使用。编程

显示方法属性列表

tagbar插件显示方法属性列表,帮助开发人员查看当前文件中的宏、全局变量、函数等标签,先经过http://www.vim.org/scripts/script.php?script_id=3465安装,而后在.vimrc文件中配置插件,参考上面文档内容,就能够自定义显示方式。经过选择标签也能够实现直接跳转功能,具体实现能够查看帮助文档。

NERD_commenter注释代码

xptemplate插件,代码片断补全

auto-pairs插件,用于自动补全括号,引号等

vim-Markdown插件,实现markdown高亮。

vim-surroun.vim插件,处理分隔符,包括添加、修改、删除。

函数跳转(没有使用插件)

对于IDE而言也算最基本也是最方便的功能之一了吧。正常状况下能够下载插件,可是我选择使用vim自带的跳转,快捷键:control+]跳入,control+o返回。

可是任何方法都要基于tags来实现。这里很少加解释,须要本身慢慢去啃。。。http://www.java123.net/v/583584.html,这篇文章将tags介绍的很详细,简单的说tags是一个linux上很广泛的源码分析工具, 能够将代码中的函数变量等定义的位置记录在一个名称为tags的文件,相似于数据库记录功能,而接下来的插件就是须要用的这些标签,能够经过命令sudo apt-get install ctags进行安装(Ubuntu下),而后在工做目录下生成tags标签文件,最方便的命令是ctags -R直接根据目录下全部文件来获取标签,相似于函数名,变量名等,最后在.vimrc文件中添加路径:set tags+=/home/user/tags就可让vim在每次启动的时候自动找到tags标签文档。

vim使用建议(重要)

  1. 以上只是带领你们简单了解和配置vim,你们能够按照前面介绍的把后面几个推荐的插件安装到本身的vim中。在之后学习中能够慢慢的不断完善配置文档和插件的选择,最后但愿能有真正属于本身而且适合本身的.vimrc。
  2. 在使用vim过程当中尽可能使用vim自带的快捷键或功能,也尽可能不要过多的依赖使用不少插件,能够避免在别人的电脑上原装的vim什么也不会操做。
  3. 若是换了主机,能够经过将,.vim文件夹和.vimrc文件放置到github之类的代码托管上,下次不管在谁的电脑上均可以很快拉取下来使用。下面是我本身托管在github上的连接,推荐你们使用:https://github.com/wuxiwei/vim

转载请注明出处。
做者:wuxiwei
出处:http://www.cnblogs.com/wxw16/p/6259292.html

相关文章
相关标签/搜索