1 zen coding
功能就不多说了!看下图:
首先下载zencoding!
官方下载地址:http://code.google.com/p/zen-coding/
zecoding.vim放到Vim\vimfiles\plugin文件夹下。
zencoding.txt放到Vim\vimfiles\doc文件夹下。
将autoload文件夹下文件拷贝到相应目录下即可。(当初就是缺少这一操作,导致一直安装失败)
2 NERDTree
将NERDTree下载下来后,解压放到Vim\vimfiles\plugin目录下即可。下面看下配置:
"NERDTree execute quick key setup
map <F4> :NERDTree<CR>
"将NERDTree放置在编辑区右边
"let NERDTreeWinPos=1
"设置NERDTree的宽度,默认为30
let NERDTreeWinSize=25
"let NERDTreeMinimalUI=1
"是否显示书签
let NERDTreeShowBookmarks=0
"显示隐藏文件
"let NERDTreeShowHidden=1
let NERDTreeStatusline=0
let NERDChristmasTree=1
3 javacomplete
可能很多人都要想去用代码提示。毕竟用ide用多了嘛!可是貌似vim没有带java 的自动提示功能。
那么怎么办呢!
这个时候javacomplete就有用处了。
先去vim官网下载下来javacomplete.解压缩后将javacomplete.doc放到Vim\vimfiles\doc目录下。
然后将autoload中的javacomplete.vim放到autoload目录下。
Reflection.java编译后的class文件也放到autoload目录下。同时将class文件放到jdk的lib目录下。
同时将你的vim中的autoldo目录配置到环境变量classpath中。比如我的就是C:\Program Files\Vim\vim73\autoload;
然后在你的_vimrc文件中加入:
"包括其他各种语言,如php java javascript 都能自动补全
filetype plugin indent on "打开文件配置
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complete
if has("autocmd") && exists("+omnifunc")
autocmd Filetype *
\ if &omnifunc == "" |
\ setlocal omnifunc=syntaxcomplete#Complete |
\ endif
endif
let g:rubycomplete_buffer_loading = 1
let g:rubycomplete_classes_in_global = 1
"let g:rubycomplete_rails = 1
autocmd FileType java inoremap <buffer> . .<C-X><C-O><C-P>
然后用vim打开你的文件,到输入模式下,输入<c-x><c-o><c-p>就能看到自动补全效果。
这里说下本人刚开始配置不成功的几个原因:
第一个由于没有打开文件配置:
filetype plugin indent on "打开文件配置
还有就是一下一段语句没写:
if has("autocmd") && exists("+omnifunc")
autocmd Filetype *
\ if &omnifunc == "" |
\ setlocal omnifunc=syntaxcomplete#Complete |
\ endif
endif
由于开始没有配置最后一句
autocmd FileType java inoremap <buffer> . .<C-X><C-O><C-P>
导致没次提示都会自动选中第一个选择,每次都要去删除。
最后一句能够实现自动选择。
4 Taglist
同样先去下载Taglist包
将文件夹中的文件放到相应的目录下。
然后在_vimrc文件中如下配置:
"taglist配置
let Tlist_Show_One_File=1
"只有taglist一个窗口时退出vim
let Tlist_Exit_OnlyWindow=1
"taglist出现的右边
let Tlist_Use_Right_Window=1
let Tlist_WinHeight = 30
"设置宽度
let Tlist_WinWidth=20
"减少标签列表窗口中的空白行
let Tlist_Compact_Format=1
"让当前不被编辑的文件的方法列表自动折叠起来
let Tlist_File_Fold_Auto_Close=1
"显示taglist菜单
let Tlist_Show_Menu=1
"如果Taglist窗口是最后一个窗口时退出VIM
let Tlist_Exit_OnlyWindow = 1
"配置快捷
map <F3> :TlistToggle <CR>
4 minibufexpl
先去官网下载:minibufexpl,解压后拷贝到Vim\vimfiles\plugin目录下。
然后在_vimrc文件中加入:
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
let g:miniBufExplMoreThanOne=0
5 winManager合并NERDTree和Taglist
下载winManager解压缩后文件拷贝到Vim\vimfiles\plugin
然后在_vimrc文件中配置如下:
let g:NERDTree_title="[NERDTree]"
let g:winManagerWindowLayout="NERDTree|TagList"
function! NERDTree_Start()
exec 'NERDTree'
endfunction
function! NERDTree_IsValid()
return 1
endfunction
nmap wm :WMToggle<CR>
如果需要自动开启:
"自动开启,可以选择开启vim即启用winmanaer,那么将需要将vimmanager.vim中的AutoOpenWinManger的注释取消。
"let g:AutoOpenWinManager = 1
那么这里winManager会有一个小bug,就是开启的时候会出现一个空白页。如果需要去清除掉。
用两种办法。
如果是自动启动那么需要一个在vimManager.vim中最后加一段代码如下:
"set auto open Winmanager
"if g:AutoOpenWinManager
" "NERDTree放置在左边配置方式
" autocmd VimEnter * nested call s:StartWindowsManager()|1wincmd q
" "NERDTree放置在右边配置方式
" "autocmd VimEnter * nested call s:StartWindowsManager()|1wincmd w|q
"endif
这里如果是winManager放在在编辑区的左边则用第一种方式,如果在右边则用第二种。
当然默认是第一种。
如果不是自动启动:
刚去winManager.vin中将ToggleWindowsManager修改为如下即可:
function! <SID>ToggleWindowsManager()
if IsWinManagerVisible()
call s:CloseWindowsManager()
else
call s:StartWindowsManager()
"exe 'q'
end
endfunction
6 在vim实现editplus中在浏览器中查看的功能。(能够查看多种文件哦,如php html jsp 等)
在_vimrc中配置如下:
"直接在vim中输入run 调用浏览器访问页面
function! ViewInBrowser(name)
let file = expand("%:p")
exec ":update " . file
let l:browsers = {
\"cr":"D:/WebDevelopment/Browser/Chrome/Chrome.exe",
\"ff":"D:/WebDevelopment/Browser/Firefox/Firefox.exe",
\"op":"D:/WebDevelopment/Browser/Opera/opera.exe",
\"ie":"C:/progra~1/intern~1/iexplore.exe",
\"ie6":"D:/WebDevelopment/Browser/IETester/IETester.exe -ie6",
\"ie7":"D:/WebDevelopment/Browser/IETester/IETester.exe -ie7",
\"ie8":"D:/WebDevelopment/Browser/IETester/IETester.exe -ie8",
\"ie9":"D:/WebDevelopment/Browser/IETester/IETester.exe -ie9",
\"iea":"D:/WebDevelopment/Browser/IETester/IETester.exe -all"
\}
let htdocs='C:\\AppServ\\www\\'
let strpos = stridx(file, substitute(htdocs, '\\\\', '\', "g"))
if strpos == -1
exec ":silent !start ". l:browsers[a:name] ." file://" . file
else
let file=substitute(file, htdocs, "http://localhost:81/", "g")
let file=substitute(file, '\\', '/', "g")
exec ":silent !start ". l:browsers[a:name] file
endif
endfunction
:command Runie call ViewInBrowser("ie")
这里只要你的文件是在 htdocs 的目录下,那么都会以http协议的方式去访问。也就是会去用浏览器的方式打开它。
7 Tcomment
从vim的官网上下载Tcomment.vba
用vim打开它,输入:so%,vim将会自动将该插件放入到~/.vim/plugin下 .
然后用vim打开文件,选中你需要注释的行,在normal模式下输入gc即可注释。
8 snipmate
将从那官网上下载的snipmate放到相应的目录下。
然后打开一个java 文件,输入 main 然后按tab键
则会出现如下代码:
public static void main (String [] args)
{
/* code */
}
其显示方案可以在snippets文件夹中相应的文件中自定义修改。
如图:
最后附上一张配置了一天的vim界面。自己感觉还不错吧!