NERDTree: A tree explorer plugin for vim.
https://github.com/preservim/nerdtree| Installer Source| Releases (json) (tab)
NERDTree: A tree explorer plugin for vim.
https://github.com/preservim/nerdtree| Installer Source| Releases (json) (tab)
To update (replacing the current version) run webi vim-nerdtree
.
These are the files / directories that are created and/or modified with this install:
~/.vim/pack/plugins/start/nerdtree.vim/
~/.vim/plugins/nerdtree.vim
~/.vimrc
The NERDTree is a file system explorer for the Vim editor. Using this plugin, users can visually browse complex directory hierarchies, quickly open files for reading or editing, and perform basic file system operations.
This installer also includes a few reasonable defaults from the project's README:
Key | Action |
---|---|
Global Key Bindings | |
<Leader>n |
Move cursor to NERDTree |
<ctrl>+t or <Leader> t |
Toggle NERDTree window on/off |
<ctrl>+f or <Leader> f |
Move to current file in NERDTree |
NERDTree Window Bindings | |
o |
Open a directory to reveal children |
x |
Close directory and go to parent |
shift+o |
Open directory and all children dirs, recursively |
shift+x |
Close all child directories, recursively |
p |
Go to parent directory |
gt |
Go to next Tab (gT for previous, naturally) |
/ |
Search matches of visible files (use shift+o first to see all) |
Normal Vim Stuff | |
ctrl+w , w |
Rotate between open windows |
:e **/api.js<tab> |
Open and edit file matching api.js, in any subfolder |
(if you've installed vim-leader
then <Leader>
is Space)
Place NerdTree into your ~/.vim/pack/plugins/start
:
mkdir -p ~/.vim/pack/plugins/start/
git clone --depth=1 https://github.com/preservim/nerdtree.git ~/.vim/pack/plugins/start/nerdtree
Create the file ~/.vim/plugins/nerdtree.vim
. Add the same contents as
https://github.com/webinstall/webi-installers/blob/master/vim-nerdtree/nerdtree.vim.
That will look something like this:
~/.vim/plugins/nerdtree.vim
:
" default mappings for nerdtree
nnoremap <leader>n :NERDTreeFocus<CR>
nnoremap <C-n> :NERDTree<CR>
nnoremap <C-t> :NERDTreeToggle<CR>
nnoremap <C-f> :NERDTreeFind<CR>
" also map with Leader, since ctrl is hard to reach on Mac
nnoremap <leader>t :NERDTreeToggle<CR>
nnoremap <leader>f :NERDTreeFind<CR>
" show hidden files
let NERDTreeShowHidden=1
" keep ignoring .git, node_modules, vendor, and dist
let NERDTreeIgnore=["\.git", "node_modules", "vendor", "dist"]
" Start NERDTree when Vim is started without file arguments.
autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | endif
" Exit Vim if NERDTree is the only window left.
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() |
\ quit | endif
You'll then need to update ~/.vimrc
to source that plugin:
" nerdtree: reasonable defaults from webinstall.dev/vim-nerdtree
source ~/.vim/plugins/nerdtree.vim