在上一章我介紹完用Vundle來管理Vim中所有的插件后勘纯,今天我又要強推一個Vim的文件管理插件Nerdtree,相信所有使用Vim的同學(xué)都知道文件管理插件NerdTree,這個幾乎是所有擁護(hù)Vim的開發(fā)人員都會使用的插件论咏,今天就總結(jié)一下如何合理的使用NerdTree。
首先我們來看一下NerdTree的官方效果圖:
[圖片上傳失敗...(image-cb0a0-1513638846571)]
安裝的話就使用咱們上一篇講的Vundle插件進(jìn)行安裝袍嬉,至于安裝這樣的小細(xì)節(jié)咱們在此就不再贅述境蔼。
當(dāng)安裝完成后,我們會有疑惑冬竟,如何召喚神龍打開NerdTree的文件列表呢?
答案非常簡單民逼,在你的.vimrc
文件中添加map <C-n> :NERDTreeToggle<CR>
這樣一行語句泵殴,那么你便能通過ctrl+n
來開啟關(guān)閉Nerdtree了。
而如果你對Nerdtree已經(jīng)到達(dá)愛不釋手的地步拼苍,希望只要打開了vim笑诅,就能看到Nerdtree的可愛界面,那么你可以增加自動啟動的配置語句:
autocmd StdinReadPre * let s:std_in=1 autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | endif
ok疮鲫,把它寫入到你的.vimrc
文件中吆你,nerdtree就會跟著你的vim自動啟動了。
在增加了自動啟動之后俊犯,我們也會碰到比較煩人的事情妇多,就是有時我們編輯完文件退出后,窗口里就留下來nerdtree燕侠,還需要自己再退出一次者祖,除非用:qall。該怎么解決這個問題呢绢彤?
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
那么將上面的配置語句添加好之后七问,nerdtree就會在孤零零一個人的時候,悄悄地退去茫舶。
Nerdtree的基本操作械巡,附上給你喲:
?: 快速幫助文檔
o: 打開一個目錄或者打開文件,創(chuàng)建的是buffer饶氏,也可以用來打開書簽
go: 打開一個文件讥耗,但是光標(biāo)仍然留在NERDTree,創(chuàng)建的是buffer
t: 打開一個文件疹启,創(chuàng)建的是Tab葛账,對書簽同樣生效
T: 打開一個文件,但是光標(biāo)仍然留在NERDTree皮仁,創(chuàng)建的是Tab籍琳,對書簽同樣生效
i: 水平分割創(chuàng)建文件的窗口菲宴,創(chuàng)建的是buffer
gi: 水平分割創(chuàng)建文件的窗口,但是光標(biāo)仍然留在NERDTree
s: 垂直分割創(chuàng)建文件的窗口趋急,創(chuàng)建的是buffer
gs: 和gi喝峦,go類似
x: 收起當(dāng)前打開的目錄
X: 收起所有打開的目錄
e: 以文件管理的方式打開選中的目錄
D: 刪除書簽
P: 大寫,跳轉(zhuǎn)到當(dāng)前根路徑
p: 小寫呜达,跳轉(zhuǎn)到光標(biāo)所在的上一級路徑
K: 跳轉(zhuǎn)到第一個子路徑
J: 跳轉(zhuǎn)到最后一個子路徑
<C-j>和<C-k>: 在同級目錄和文件間移動谣蠢,忽略子目錄和子文件
C: 將根路徑設(shè)置為光標(biāo)所在的目錄
u: 設(shè)置上級目錄為根路徑
U: 設(shè)置上級目錄為跟路徑,但是維持原來目錄打開的狀態(tài)
r: 刷新光標(biāo)所在的目錄
R: 刷新當(dāng)前根路徑
I: 顯示或者不顯示隱藏文件
f: 打開和關(guān)閉文件過濾器
q: 關(guān)閉NERDTree
A: 全屏顯示NERDTree查近,或者關(guān)閉全屏