# NERDTree 文件资源管理器
NERDTree 是 Vim 编辑器的文件系统资源管理器。使用此插件,用户可以直观地浏览复杂的目录层次结构,快速打开文件以进行读取或编辑,以及执行基本的文件系统操作。
默认的可以使用 :NERDTreeToggle
指令来打开和关闭目录树,为了方面你可以设置自己喜欢的按键映射:
# .vimrc
map <C-n> :NERDTreeToggle<CR>
# 常用配置
以下是我们经常会配置的选项:
# .vimrc
autocmd vimenter * NERDTree # 自动打开 NERDTree
NERDTreeMinimalUI = 1 # 关闭目录树上面的 `..` 和帮助提示
对于自动打开可以更有好点:
# .vimrc
autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
使用这里的配置替代上面的 autocmd vimenter * NERDTree
就可以只在使用 Vim 且没有指定文件时自动打开。
另外,如果左边只剩下目录树时,使用 q
关闭时还是会剩下一个窗口,当然你可以使用 qa
来进行关闭,或者是做一下额外的配置:
# .vimrc
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
最后,需要说明的是默认情况下不会显示以点开头的文件,需要的话,可以使用快捷键 I 进行切换。
# 常用快捷键
ctrl + w + h # 光标 focus 左侧树形目录
ctrl + w + l # 光标 focus 右侧文件显示窗口
ctrl + w + w # 光标自动在左右侧窗口切换
x # 合拢选中结点的父目录
X # 递归合拢选中结点下的所有目录
o # 在已有窗口中打开文件、目录或书签,并跳到该窗口
t # 在新 Tab 中打开选中文件/书签,并跳到新 Tab
m # 显示更多的操错菜单
u # 以上级目录为根
C # 以当前目录作为根
# 操作命令
按键 | 说明 |
---|---|
? | 切换快速帮助的显示 |
m | 显示 NERDTree 菜单(ESC 退出) |
树根 | |
cd | 将 CWD 更改为所选节点的目录 |
CD | 树根更改为 CWD |
u | 将树根向上移动一个目录 |
U | 与 u 相同,但旧的根节点保持打开状态 |
r | 递归刷新当前目录 |
R | 递归刷新当前根 |
显示 | |
I | 切换是否显示隐藏文件 |
F | 切换是否显示文件 |
节点 | |
p | 跳转到当前节点 parent |
P | 跳转到根节点 |
移动 | |
j | 向下移动 |
k | 向上移动 |
J | 在当前树深度的内部目录中向下跳转 |
K | 在当前树深度的内部目录中向上跳转 |
目录 | |
o | 打开文件(当前窗口),目录和书签 |
O | 递归打开所选目录 |
x | 关闭当前节点父节点 |
X | 递归关闭当前节点的所有子节点 |
文件 | |
i | 在拆分(水平)窗口中打开所选文件 |
gi | 与 i 相同,但将光标留在 NERDTree 上 |
s | 在拆分(垂直)窗口中打开所选文件 |
gs | 与 s 相同,但将光标留在 NERDTree 上 |
t | 在新选项卡中打开选定的节点/书签 |
T | 与 t 相同,但将焦点保持在当前选项卡上 |
# 参考
← 常用插件 ctrlp.vim 文件搜索 →