VIM 打造自己的VIM界面!

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界面。自己感觉还不错吧!

 

 

 

转载于:https://www.cnblogs.com/yangzhi/archive/2012/10/29/3576599.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值