mirror of
https://github.com/preservim/nerdtree.git
synced 2025-11-10 20:33:50 -05:00
Changed markup to make questions more visible. Added another answer to a question.
41
F.A.Q..md
41
F.A.Q..md
@@ -1,24 +1,20 @@
|
|||||||
> How do I switch between the different windows?
|
## How do I switch between the different windows?
|
||||||
|
|
||||||
Press `Ctrl+ww`.
|
Press `<C-W>w`.
|
||||||
|
|
||||||
> Is there any support for `git` flags?
|
## Is there any support for `git` flags?
|
||||||
|
|
||||||
Yes, install [nerdtree-git-plugin](https://github.com/Xuyuanp/nerdtree-git-plugin).
|
Yes, install [nerdtree-git-plugin](https://github.com/Xuyuanp/nerdtree-git-plugin).
|
||||||
|
|
||||||
> Can I have the nerdtree on every tab automatically?
|
## Can I have the nerdtree on every tab automatically?
|
||||||
|
|
||||||
Nope. If this is something you want then chances are you aren't using tabs and
|
Nope. If this is something you want then chances are you aren't using tabs and buffers as they were intended to be used. Read this http://stackoverflow.com/questions/102384/using-vims-tabs-like-buffers. If you are interested in this behaviour then consider [vim-nerdtree-tabs](https://github.com/jistr/vim-nerdtree-tabs)
|
||||||
buffers as they were intended to be used. Read this
|
|
||||||
http://stackoverflow.com/questions/102384/using-vims-tabs-like-buffers
|
|
||||||
|
|
||||||
If you are interested in this behaviour then consider [vim-nerdtree-tabs](https://github.com/jistr/vim-nerdtree-tabs)
|
## How can I open a NERDTree automatically when vim starts up?
|
||||||
|
|
||||||
> How can I open a NERDTree automatically when vim starts up?
|
|
||||||
|
|
||||||
Stick this in your vimrc: `autocmd vimenter * NERDTree`
|
Stick this in your vimrc: `autocmd vimenter * NERDTree`
|
||||||
|
|
||||||
> How can I open a NERDTree automatically when vim starts up if no files were specified?
|
## How can I open a NERDTree automatically when vim starts up if no files were specified?
|
||||||
|
|
||||||
Stick this in your vimrc:
|
Stick this in your vimrc:
|
||||||
|
|
||||||
@@ -27,32 +23,37 @@ Stick this in your vimrc:
|
|||||||
|
|
||||||
Note: Now start vim with plain `vim`, not `vim .`
|
Note: Now start vim with plain `vim`, not `vim .`
|
||||||
|
|
||||||
> How can I open NERDTree automatically when vim starts up on opening a directory?
|
## How can I open NERDTree automatically when vim starts up on opening a directory?
|
||||||
|
|
||||||
autocmd StdinReadPre * let s:std_in=1
|
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
|
autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | endif
|
||||||
|
|
||||||
This window is tab-specific, meaning it's used by all windows in the tab. This trick also prevents NERDTree from hiding when first selecting a file.
|
or
|
||||||
|
|
||||||
> How can I map a specific key or shortcut to open NERDTree?
|
autocmd StdinReadPre * let s:std_in=1
|
||||||
|
autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | wincmd p | ene | exe 'NERDTree' argv()[0] | endif
|
||||||
|
|
||||||
|
The difference between the two is: The first example places the cursor in the empty buffer, while the second example puts it in the NERDTree. This window is tab-specific, meaning it's used by all windows in the tab. This trick also prevents NERDTree from hiding when first selecting a file.
|
||||||
|
|
||||||
|
## How can I map a specific key or shortcut to open NERDTree?
|
||||||
|
|
||||||
Stick this in your vimrc to open NERDTree with `Ctrl+n` (you can set whatever key you want):
|
Stick this in your vimrc to open NERDTree with `Ctrl+n` (you can set whatever key you want):
|
||||||
|
|
||||||
map <C-n> :NERDTreeToggle<CR>
|
map <C-n> :NERDTreeToggle<CR>
|
||||||
|
|
||||||
> How can I close vim if the only window left open is a NERDTree?
|
## How can I close vim if the only window left open is a NERDTree?
|
||||||
|
|
||||||
Stick this in your vimrc:
|
Stick this in your vimrc:
|
||||||
|
|
||||||
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
|
autocmd BufEnter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
|
||||||
|
|
||||||
> Can I have different highlighting for different file extensions?
|
## Can I have different highlighting for different file extensions?
|
||||||
|
|
||||||
See here: https://github.com/scrooloose/nerdtree/issues/433#issuecomment-92590696
|
See here: https://github.com/scrooloose/nerdtree/issues/433#issuecomment-92590696 or https://github.com/tiagofumo/vim-nerdtree-syntax-highlight, referenced in the comment.
|
||||||
|
|
||||||
> How can I change default arrows?
|
## How can I change default arrows?
|
||||||
|
|
||||||
Use these variables in your vimrc. Note that below are default arrow symbols
|
Use these variables in your vimrc. Note that below are default arrow symbols.
|
||||||
|
|
||||||
let g:NERDTreeDirArrowExpandable = '▸'
|
let g:NERDTreeDirArrowExpandable = '▸'
|
||||||
let g:NERDTreeDirArrowCollapsible = '▾'
|
let g:NERDTreeDirArrowCollapsible = '▾'
|
||||||
Reference in New Issue
Block a user