学Linux - 上红联!
Linux系统教程_红联Linux门户
Linux帮助

解决Vim使用Winmanager插件时自动启动与自动退出方法

时间:2016-04-27来源:linux网站 作者:basaltZhang

相信大家对Vim的感情是又爱又恨,爱他的无比强大,但想要真正使用他进行开发确又得花费大量时间习惯他的操作,但同时他又有很多的不足。对熟悉Visual Studio的人来讲(我)很是不爽。安装插件就是解决方案。


背景

安装插件,第一个是使用pathogen进行插件管理,但是装完Nerdtree和Tagbar之后发现好难看,大概是这样:

解决Vim使用Winmanager插件时自动启动与自动退出方法

没办法,只有继续安装一个叫做Winmanager的插件,但是不能够自动启动,搜索了一下,于是有了以下解决方法:


一、自动打开

我们可以在~/.vimrc中设置:

let g:AutoOpenWinManager = 1

同时,修改~/.vim/plugin/winmanager.vim文件,加入:

"set auto open Winmanager
if g:AutoOpenWinManager
autocmd VimEnter * nested  call s:StartWindowsManager()|'q'|4wincmd w 
endif

我给大家解释一下,’q’解决出现空白窗口现象,后面4wincmd w表示模拟4次w按键使光标自动跳转到打开的文件,而不是Nerdtree或者Tagbar窗口。OK,现在打开一个文件之后直接长这样:

解决Vim使用Winmanager插件时自动启动与自动退出方法

但是退出此文件时,需要使用:qa命令,如何做到自动退出Winmanager呢?


二、自动退出

这个是一个比较近似的做法,和其它方法不同的是我修改了自动退出Nerdtree的语句。判断当前窗口包含几个子窗口,如果有2个的话自动退出。在~/.vimrc中加入:

"自动退出Winmanager
autocmd bufenter * if (winnr("$") == 2 && exists("b:NERDTreeType") &&b:NERDTreeType == "primary")  | qa | endif

至此结束。


本文永久更新地址:http://www.linuxdiyf.com/linux/20136.html

------分隔线------