Как вы это делаете?
Как добавить NERDTree к вашему vimrc?
Ответ 1
Хорошо, предыдущая версия была немного точной, но ответ, который вы ищете, - это добавить строку ниже в ваш файл ~/.vimrc
. Он сообщает vim, что вы хотите настроить команду для запуска при запуске vim, но поскольку это зависит от различных загружаемых плагинов, вы не хотите запускать ее до завершения всей инициализации. Следующая строка делает это.
autocmd VimEnter * NERDTree
Если, однако, вас раздражает тот факт, что курсор всегда запускается в окне NERDTree, вы можете добавить вторую автокоманду, которая переместит курсор в главное окно, например:
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p
Ответ 2
Вы находитесь в системе 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
Чтобы загружать NERDTree автоматически при запуске vim, запустите его так, как показано в командной строке:
$ vim -c "NERDTree" some_file.txt
Вы можете установить псевдоним для этого в .bashrc
:
alias vimt='vim -c "NERDTree" $1'
Теперь, когда вы запускаете vimt
(вместо vim
), вы также откроете NERDTree в левой части окна.
Вы также можете добавить комбинацию клавиш для запуска NERDTree в .vimrc
следующим образом:
function OpenNERDTree()
execute ":NERDTree"
endfunction
command -nargs=0 OpenNERDTree :call OpenNERDTree()
nmap <ESC>t :OpenNERDTree<CR>
Теперь, когда вы нажмете Esc
, затем t
, откроется NERDTree.
Ответ 3
Мне нравится видеть NERDTree только тогда, когда я запускаю vim без аргументов файла, поэтому я добавил это в мой .vimrc:
autocmd VimEnter * if !argc() | NERDTree | endif
Ответ 4
В ответах здесь есть небольшая проблема.
Если вы вызываете vim --noplugin
или используете script, который использует режим --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
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>
Ответ 6
В соответствии с инструкциями 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
И если вы хотите открыть NERDTree автоматически при запуске vim, добавьте следующее в свой vimrc:
autocmd vimenter * NERDTree