Vim基础篇(六)——文件管理插件NEARDTree
前言:
对目录和文件进行管理的插件,比较好用的是NEARDTree,这篇文章介绍该插件的使用。
1 安装NEARDTree
通过plug-vim插件管理器安装 NEARDTree ,修改.vimrc配置文件如下。
1
| Plug 'Preservim/nerdtree'
|
然后在Vim中执行指令 :PlugInstall
等待安装完成。
2 配置NEARDTree
以下是我对NEARDTree的配置,将其添加到.vimrc文件中重启vim后生效。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" "preservim/nerdtree let g:NEARDTreeShowHidden = 1 "显示隐藏文件 let g:NEARDTreeWinPos = 'left' "左侧显示 let NEARDTreeMinimalUI = 1 "不显示帮助信息
autocmd VimEnter * NERDTree "启动Vim时启动NEARDTree
"当启动Vim未指定文件时,启动NEARDTree autocmd StdinReadPre * let s:std_in = 1 autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | endif
"Bug: 与ntpeters/vim-better-whitespace冲突。导致其保存删除空格功能失效, "需要将光标移到其他Window再移回才能生效。 "如果启动时指定了文件,光标跳转到指定文件的Window "autocmd StdinReadPre * let s:std_in = 1 "autocmd VimEnter * NERDTree | if argc() > 0 || exists("s:std_in") | wincmd p | endif
"指定目录启动Vim时启动NEARDTree autocmd StdinReadPre * let s:std_in = 1 autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in') | \ execute 'NERDTree' argv()[0] | wincmd p | enew | execute 'cd '.argv()[0] | endif
"当NEARDTree是最后一个窗口时关闭Vim autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | \ quit | endif
"防止其他缓存取代NEARDTree窗口 autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 | \ let buf = bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer'.buf | endif
|
NEARDTree启动后还可对其进行操作,将光标移动到NEARDTree所在窗口中,输入 ?
在帮助信息和目录展示界面间切换。
NEARDTree默认是不显示隐藏文件的,如果要显示隐藏文件可以修改配置文件 NEARDTreeShowHidden = 1
,或将光标移动到NEARDTree窗口中键入 I
切换显示或不显示隐藏文件。更多信息可查看 ?
显示的帮助信息。
Vim基础篇(六)——文件管理插件NEARDTree
前言:
对目录和文件进行管理的插件,比较好用的是NEARDTree,这篇文章介绍该插件的使用。
1 安装NEARDTree
通过plug-vim插件管理器安装 NEARDTree ,修改.vimrc配置文件如下。
1
| Plug 'Preservim/nerdtree'
|
然后在Vim中执行指令 :PlugInstall
等待安装完成。
2 配置NEARDTree
以下是我对NEARDTree的配置,将其添加到.vimrc文件中重启vim后生效。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" "preservim/nerdtree let g:NEARDTreeShowHidden = 1 "显示隐藏文件 let g:NEARDTreeWinPos = 'left' "左侧显示 let NEARDTreeMinimalUI = 1 "不显示帮助信息
autocmd VimEnter * NERDTree "启动Vim时启动NEARDTree
"当启动Vim未指定文件时,启动NEARDTree autocmd StdinReadPre * let s:std_in = 1 autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | endif
"Bug: 与ntpeters/vim-better-whitespace冲突。导致其保存删除空格功能失效, "需要将光标移到其他Window再移回才能生效。 "如果启动时指定了文件,光标跳转到指定文件的Window "autocmd StdinReadPre * let s:std_in = 1 "autocmd VimEnter * NERDTree | if argc() > 0 || exists("s:std_in") | wincmd p | endif
"指定目录启动Vim时启动NEARDTree autocmd StdinReadPre * let s:std_in = 1 autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in') | \ execute 'NERDTree' argv()[0] | wincmd p | enew | execute 'cd '.argv()[0] | endif
"当NEARDTree是最后一个窗口时关闭Vim autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | \ quit | endif
"防止其他缓存取代NEARDTree窗口 autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 | \ let buf = bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer'.buf | endif
|
NEARDTree启动后还可对其进行操作,将光标移动到NEARDTree所在窗口中,输入 ?
在帮助信息和目录展示界面间切换。
NEARDTree默认是不显示隐藏文件的,如果要显示隐藏文件可以修改配置文件 NEARDTreeShowHidden = 1
,或将光标移动到NEARDTree窗口中键入 I
切换显示或不显示隐藏文件。更多信息可查看 ?
显示的帮助信息。

建议设置以下快捷键。
1
| nnoremap <F2> :NEARDTreeToggle<CR>
|
建议设置以下快捷键。
1
| nnoremap <F2> :NEARDTreeToggle<CR>
|