Как добавить NERDTree в ваш vimrc?



Как вы это делаете?

649   6  

6 ответов:

хорошо, предыдущая версия была немного краткой, но ответ, который вы ищете, - это добавить строку ниже в свой . Он сообщает vim, что вы хотите настроить команду для запуска при запуске vim, но поскольку она зависит от различных плагинов, которые будут загружены, вы не хотите запускать ее до завершения всей инициализации. Строка ниже делает это.

autocmd VimEnter * NERDTree

Если, однако, вас раздражает тот факт, что курсор всегда запускается в окне NERDTree, вы можете добавить второй автокоманда, которая будет перемещать курсор в Главное окно, например:

autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p

Мне нравится видеть NERDTree только тогда, когда я запускаю vim без аргументов файла, поэтому я добавил Это к моему .vimrc:

autocmd VimEnter * if !argc() | NERDTree | endif

вы находитесь в системе Windows или unix-y?

если вы находитесь в системе unix-y, вы вставляете плагины в ~/.vim/plugin. Вот как выглядит мой каталог плагинов:

$ ls ~/.vim/plugin
NERD_tree.vim  scratch.vim  scratchfind.vim

после этого он начинает работать сразу. Попробуйте запустить vim следующим образом:

$ vim .

он должен открыть текущий каталог в представлении дерева ботаников.

если вы находитесь на Windows, вы ставите Плагины здесь: C:\Program Files\Vim\vim70\plugin


для автоматической загрузки NERDTree когда вы запускаете vim, запустите его так из командной строки:

$ vim -c "NERDTree" some_file.txt

вы можете установить псевдоним для этого в вашем .bashrc:

alias vimt='vim -c "NERDTree" '

теперь всякий раз, когда вы запускаете vimt (вместо vim) вы также откроете NERDTree с левой стороны окна.

вы также можете добавить комбинацию клавиш для запуска NERDTree в вашем .vimrc таким образом:

function OpenNERDTree()
  execute ":NERDTree"
endfunction
command -nargs=0 OpenNERDTree :call OpenNERDTree()

nmap <ESC>t :OpenNERDTree<CR>

теперь, когда вы нажмете Esc затем t он откроет NERDTree.

ответы здесь есть небольшая проблема.

если вы называете 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
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>

согласно инструкциям на https://github.com/scrooloose/nerdtree, Вы можете просто использовать патоген.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

Comments

    Ничего не найдено.