你是怎么做到的?
答案 0 :(得分:196)
好的,以前的版本有点简洁,但您要找的答案是将下面的行添加到~/.vimrc
文件中。它告诉vim你想要在vim启动时设置一个命令来运行,但由于它依赖于要加载的各种插件,所以在完成所有初始化之前你不想运行它。下面这一行就是这样。
autocmd VimEnter * NERDTree
但是,如果您对光标始终在NERDTree窗口中启动这一事实感到恼火,您可以添加第二个自动命令,将光标移动到主窗口中,如下所示:
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p
答案 1 :(得分:20)
我喜欢在没有文件参数的情况下启动vim时看到NERDTree,所以我将它添加到我的.vimrc中:
autocmd VimEnter * if !argc() | NERDTree | endif
答案 2 :(得分:19)
您使用的是Windows还是unix-y系统?
如果您使用的是unix-y系统,则将插件放入~/.vim/plugin
。这是我的插件目录的样子:
$ ls ~/.vim/plugin
NERD_tree.vim scratch.vim scratchfind.vim
之后它立即开始工作。尝试像这样运行vim:
$ vim .
它应该在NERD树视图中打开当前目录。
如果您使用的是Windows,请在此处插入插件:C:\Program Files\Vim\vim70\plugin
要在启动vim时自动加载NERDTree,请从命令行运行它:
$ vim -c "NERDTree" some_file.txt
您可以在.bashrc
:
alias vimt='vim -c "NERDTree" $1'
现在每当您运行vimt
(而不是vim
)时,您也会在窗口左侧打开NERDTree。
您还可以添加快捷键以.vimrc
方式启动NERDTree:
function OpenNERDTree()
execute ":NERDTree"
endfunction
command -nargs=0 OpenNERDTree :call OpenNERDTree()
nmap <ESC>t :OpenNERDTree<CR>
现在,当您点击Esc
然后t
时,它会弹出NERDTree。
答案 3 :(得分:8)
根据https://github.com/scrooloose/nerdtree上的说明,您可以使用pathogen.vim(https://github.com/tpope/vim-pathogen)。安装病原体:
mkdir -p ~/.vim/autoload ~/.vim/bundle; \
curl -Sso ~/.vim/autoload/pathogen.vim \
https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
将此添加到您的vimrc:
execute pathogen#infect()
然后安装NERDTree:
cd ~/.vim/bundle
git clone https://github.com/scrooloose/nerdtree.git
如果您想在vim启动时自动打开NERDTree,请将以下内容添加到您的vimrc:
autocmd vimenter * NERDTree
答案 4 :(得分:7)
这里的答案有一个小问题。
如果您致电vim --noplugin
或使用使用--noplugin
模式的脚本,例如vimpager,则会导致此错误:
Error detected while processing VimEnter Auto commands for "*":
E492: Not an editor command: NERDTree
要避免这种情况,请将命令改为~/.vim/after/plugin/NERD_tree.vim
:
autocmd VimEnter * NERDTree
测试NERDtree
是否可用也是一个好主意,即:
if exists("loaded_nerd_tree")
autocmd VimEnter * NERDTree
endif
答案 5 :(得分:7)
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>