高效vim插件,vim插件
高效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
|
高效插件集
- nerdtree
- snipMate
- tagbar
- vim-multiple-cursors
- jedi-vim [python]
- eclim [java]
- c.vim[C/C++]
- vim-colorschemes
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
评论暂时关闭