高效vim插件,vim插件


 

目录[-]

  • 高效vim插件
  • 插件管理利器
  • 高效插件集
  • NerdTree
  • snipMate
  • tagbar
  • jedi-vim
  • eclim 
  • c.vim
  • vim-colorschemes
  • vim配置
  • 一个实例

高效vim插件

     如果不熟悉vim的,请在使用vim插件之前,请先阅读 Vim学习指南, 建议通过前3个层次。以及有一个有趣的vim练习游戏http://vim-adventures.com/。

插件管理利器

    vim的插件原始安装容易混乱,而且管理起来,不方便。那么就渴望一个插件管理工具:pathogen

简单安装:

?
1 2 3 mkdir -p ~/.vim/autoload ~/.vim/bundle; \ curl -Sso ~/.vim/autoload/pathogen.vim \     https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim

详细请查看:https://github.com/tpope/vim-pathogen

配置:

在vimrc文件的filetype plugin之前·「没有的就在最前面」添加:

?
1 2 call pathogen#infect() filetype plugin indent on
,记住,一定是vimrc,而不是gvimrc。可以参考我的vimrc配置

高效插件集

  • nerdtree
  • snipMate
  • tagbar
  • vim-multiple-cursors
  • jedi-vim [python]
  • eclim [java]
  • c.vim[C/C++]
  • vim-colorschemes
请将这插件安装在$HOME/.vim/bundle目录下:

NerdTree

The NERD tree allows you to explore your filesystem and to open files and directories. It presents the filesystem to you in the form of a tree which you manipulate with the keyboard and/or mouse. It also allows you to perform simple filesystem operations.

你可以使用Git这样安装:

 

?
1 2 cd $HOME/.vim/bundle git clone https://github.com/scrooloose/nerdtree.git

snipMate

这个可以有。想快速写或者减少重复写代码,那么code snippets就是必须的,而对于vim来说,snipMate,你值得拥有。[ps:你可以在其snippets目录下找到对应语言的snippets,可以修改相应的snippets]。请到vim官网下载http://www.vim.org/scripts/script.php?script_id=2540。

tagbar

 

如果你使用过eclipse,那么它右边有个叫做Outline函数列表,对,tagbar就是这个效果。

你可以使用Git这样安装:

?
1 2 cd $HOME/.vim/bundle git clone https://github.com/majutsushi/tagbar.git

 

vim-multiple-cursors

这个插件具有Sublime Text的多光标编辑功能哟。

你可以使用Git这样安装:

?
1 2 cd $HOME/.vim/bundle git clone https://github.com/terryma/vim-multiple-cursors.git

jedi-vim

如果使用python的,有了它,爽歪歪。它拥有强大的提示能力。

注意,刚开始我安装这个插件,总是报错,主要是vim没有--enable-pythoninterp 和没有安装jedi·「pip install jedi」,而且后来 在jedi-vim开发者David Halter提示下,在.bashrc中设置·「export PYTHONSTARTUP="$(python -m jedi repl)" 」就可以让python具有ipython的功能。很强大!

你可以使用Git这样安装:

 

?
1 2 cd $HOME/.vim/bundle git clone https://github.com/davidhalter/jedi-vim.git

eclim 

eclim 就是 eclipse 和 vim的有机结合。它充分利用了eclipse强大的提示功能,快捷键<c-x><c-u>

按照官网安装之后,它会在.vim目录下生成eclim和plugin目录,请在bundle目录新建一个目录eclim,然后将这两个目录剪切到bundle/eclim目录中.这时它没有启动,还需要执行ECLIPSE目录中的eclimd。这个并没有列举出来。

其实还可以加一个supertab插件,但是我习惯使用tab来代替空格,实际上一个tab是4个空格。所以并没有列举出来。

你可以使用git这样安装:

?
1 2 cd $HOME/.vim/bundle git clone https://github.com/ervandew/supertab.git

c.vim

请到这里去下载,这个不解释,很强大,官网有很详细的解释和帮助文档,对于c/c++来说不可缺少。

vim-colorschemes

保护视力,请从一个好的主题开始。那么vim-colorschemes中集成了很多的主题,个人比较爱好cobalt,不过有些主题只能在gvim中才能显示效果,而在vim中没有背景颜色等等问题。github去下载

 

?
1 2 cd $HOME/.vim/bundle git clone https://github.com/upsuper/vim-colorschemes.git

 

vim配置

 

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 " Uncomment the next line to make Vim more Vi-compatible " NOTE: debian.vim sets 'nocompatible'.  Setting 'compatible' changes numerous " options, so any other options should be set AFTER setting 'compatible'. "set compatible set nocompatible   " Vim5 and later versions support syntax highlighting. Uncommenting the next " line enables syntax highlighting by default. if has("syntax")   syntax on endif   " If using a dark background within the editing area and syntax highlighting " turn on this option as well "set background=dark   " Uncomment the following to have Vim jump to the last position when " reopening a file "if has("autocmd") "  au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif "endif   " Uncomment the following to have Vim load indentation rules and plugins " according to the detected filetype. "if has("autocmd") "  filetype plugin indent on "endif   call pathogen#infect()   filetype plugin indent on   " The following are commented out as they cause vim to behave a lot " differently from regular Vi. They are highly recommended though. set showcmd     " Show (partial) command in status line. "set showmatch      " Show matching brackets. "set ignorecase     " Do case insensitive matching set smartcase       " Do smart case matching "set incsearch      " Incremental search "set autowrite      " Automatically save before commands like :next and :make "set hidden             " Hide buffers when they are abandoned set mouse=a     " Enable mouse usage (all modes) set nu set tabstop=4 set softtabstop=4 " set shiftwidth=4 set expandtab           " use whitespace instead of tab set autoindent set smartindent set cindent shiftwidth=4 " set autoindent shiftwidth=4 set foldmethod=indent set backspace=indent,eol,start set colorcolumn=80     " === tagbar setting ======= nmap <F4> :TagbarToggle<CR>   " shortcut let g:tagbar_width = 20      " tagbar's width, default 20 autocmd VimEnter * nested :call tagbar#autoopen(1)  "automate to open tagbar let g:tagbar_left = 1       " on the left side "let g:tagbar_right = 1     " on the right side let NERDTreeIgnore=['\.pyc', '\.pyo', '\.swp', '\~'] " ignore *.py[co], *.swp and *~ " =======end==================   " switch window nnoremap <c-h> <c-w>h nnoremap <c-j> <c-w>j nnoremap <c-k> <c-w>k nnoremap <c-l> <c-w>l   " ===== brace autocompletion ========= inoremap ( ()<Esc>i inoremap [ []<Esc>i inoremap { {<CR>}<Esc>O autocmd Syntax html,vim inoremap < <lt>><Esc>i| inoremap > <c-r>=ClosePair('>')<CR> inoremap ) <c-r>=ClosePair(')')<CR> inoremap ] <c-r>=ClosePair(']')<CR> inoremap } <c-r>=CloseBracket()<CR> inoremap " <c-r>=QuoteDelim('"')<CR> inoremap ' <c-r>=QuoteDelim("'")<CR>   function ClosePair(char)  if getline('.')[col('.') - 1] == a:char  return "\<Right>"  else  return a:char  endif endf   function CloseBracket()  if match(getline(line('.') + 1), '\s*}') < 0  return "\<CR>}"  else  return "\<Esc>j0f}a"  endif endf   function QuoteDelim(char)  let line = getline('.')  let col = col('.')  if line[col - 2] == "\\"  "Inserting a quoted quotation mark into the string  return a:char  elseif line[col - 1] == a:char  "Escaping out of the string  return "\<Right>"  else  "Starting a string  return a:char.a:char."\<Esc>i"  endif endf     " Source a global configuration file if available if filereadable("/etc/vim/vimrc.local")     source /etc/vim/vimrc.local endif

 

 

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 <span></span>                <div>                  </div>

一个实例

这是我在写python nose插件nose-colorxunit时截图:

 

 

 

http://my.oschina.net/swuly302/blog/156784

相关内容