Я обновил свой ответ. Я не уверен, что вы можете добавить его в свой .vimrc, чтобы делать то, что хотите, но я знаю, что вы можете запустить vim из командной строки таким образом, чтобы NERDTree открывался автоматически. Взгляните :)
Стивен Крыскалла
Ответы:
199
Хорошо, предыдущая версия была немного краткой, но ответ, который вы ищете, - это добавить строку ниже в свой ~/.vimrcфайл. Он сообщает Vim, что вы хотите настроить команду для запуска при запуске Vim, но поскольку это зависит от загружаемых плагинов, вы не хотите запускать ее, пока не будет завершена вся инициализация:
autocmd VimEnter * NERDTree
Если, однако, вас раздражает то, что курсор всегда начинается в окне NERDTree, вы можете добавить вторую автокоманду, которая переместит курсор в главное окно:
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p
Не знаю почему, но у меня это не работает. Мне нужно позвонить: NERDTreeToggle внутри vim, чтобы все равно показывать nerdtree
hgf
Если вы используете скрипт, например vimpager, вам следует переместить эти строки в свой /.vim/after/plugin/NERD_tree.vimскрипт, чтобы он не запускался с отключенными плагинами.
Джошуа Олсон
9
Вам не нужны две отдельные команды autocmd:autocmd VimEnter * NERDTree | wincmd p
Дэйв Джеймс Миллер,
Могу я просто указать реальный путь, с которого я хочу начать? - Да работает с папкой (только без косой черты в конце)
AturSams
1
Я предпочитаю делать следующее: autocmd VimEnter * NERDTreeа затем autocmd VimEnter * if argc() | wincmd p | endif. Таким образом, курсор находится на NERDTree, если я не открыл конкретный файл, но если я выбрал файл, он запускается в главном окне.
user2275806
20
Мне нравится видеть NERDTree только тогда, когда я запускаю vim без аргументов файла, поэтому я добавил это в свой .vimrc:
Я запускаю машину Unix-y. У меня установлено NERDTree, мне нужно, чтобы NERDTree запускался, когда я набираю vim в командной строке. Чтобы файловый браузер всегда открывался слева, как в Textmate. Я не знаю, что добавить в vimrc, чтобы сделать это, я попробовал: NERDTree, но он, похоже, не распознает команду ...
chutsu
2
Думаю, я бы добавил, что есть: NERDTreeToggle, встроенный в сопоставление, которое вы можете сопоставить, что делает вашу пользовательскую функцию довольно избыточной.
Хороший ... Я также использую Vim в качестве пейджера и просто добавил аргумент для отключения автокоманд ... export MANPAGER='col -bx | mvim -c ":set ft=man nonu nolist" -c ":autocmd!" -M -R - > /dev/null 2>&1'
Эдди Б.
7
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>
Ответы:
Хорошо, предыдущая версия была немного краткой, но ответ, который вы ищете, - это добавить строку ниже в свой
~/.vimrc
файл. Он сообщает Vim, что вы хотите настроить команду для запуска при запуске Vim, но поскольку это зависит от загружаемых плагинов, вы не хотите запускать ее, пока не будет завершена вся инициализация:Если, однако, вас раздражает то, что курсор всегда начинается в окне NERDTree, вы можете добавить вторую автокоманду, которая переместит курсор в главное окно:
источник
/.vim/after/plugin/NERD_tree.vim
скрипт, чтобы он не запускался с отключенными плагинами.autocmd VimEnter * NERDTree | wincmd p
autocmd VimEnter * NERDTree
а затемautocmd VimEnter * if argc() | wincmd p | endif
. Таким образом, курсор находится на NERDTree, если я не открыл конкретный файл, но если я выбрал файл, он запускается в главном окне.Мне нравится видеть NERDTree только тогда, когда я запускаю vim без аргументов файла, поэтому я добавил это в свой .vimrc:
источник
Вы работаете в системе Windows или unix-y?
Если вы используете unix-y систему, вы вставляете плагины
~/.vim/plugin
. Вот как выглядит мой каталог плагинов:После этого сразу начинает работать. Попробуйте запустить vim вот так:
Он должен открыть текущий каталог в дереве NERD.
Если вы используете Windows, вы помещаете сюда плагины:
C:\Program Files\Vim\vim70\plugin
Чтобы NERDTree загружался автоматически при запуске vim, запустите его из командной строки следующим образом:
Вы можете установить для этого псевдоним в своем
.bashrc
:Теперь всякий раз, когда вы запускаете
vimt
(вместоvim
), вы также открываете NERDTree в левой части окна.Вы также можете добавить комбинацию клавиш для запуска NERDTree
.vimrc
следующим образом:Теперь , когда вы нажмете ,
Esc
тоt
это будет поп открыть NERDTree.источник
alias vimt='vim -c "NERDTree" $1'
В соответствии с инструкциями NERDTree вы можете просто использовать pathogen.vim . Установите его с помощью:
Добавьте это в свой .vimrc:
затем установите NERDTree:
И если вы хотите автоматически открывать NERDTree при запуске Vim, добавьте в свой .vimrc следующее:
источник
Здесь есть небольшая проблема.
Если вы вызовете
vim --noplugin
или используете сценарий, который использует--noplugin
такой режим, как vimpager , это вызовет эту ошибку:Чтобы этого избежать, введите
~/.vim/after/plugin/NERD_tree.vim
вместо этого команду :И также может быть хорошей идеей протестировать то,
NERDtree
что также доступно, например:источник
export MANPAGER='col -bx | mvim -c ":set ft=man nonu nolist" -c ":autocmd!" -M -R - > /dev/null 2>&1'
источник