Есть ли способ заблокировать область просмотра в vim?


8

Я недавно начал использовать Vim с NERDTree. Раздражает то, что когда я закрываю буфер, NERDTree расширяется, чтобы заполнить остальную часть экрана, и мне приходится открывать другой файл и снова открывать NERDTree, чтобы вернуть его к старому макету.

Есть ли способ "заблокировать" NERDTree на месте? В идеале, закрытие буфера заменяет его другим скрытым буфером или открывает новый пустой буфер, если другие буферы не открыты.

Спасибо!

Ответы:


2

я так не думаю. единственное решение, которое приходит на ум, - это создать новое связывание клавиш, которое

  • : vnew
  • Ctrl-W слева
  • ctrl-w q

вместо того, чтобы просто закрыть текущий буфер.


Отстой, что вы не можете это сделать, хотя это решение - очень хороший обходной путь. Спасибо!
breadjesus

4

Взгляните на http://github.com/carlhuda/janus , это настраиваемая версия vim, которая позволяет держать ботаник слева заблокированным. Он также включает в себя множество других популярных плагинов, таких как command-t, ctags и ack.


1
Или, если вы не хотите использовать весь этот дистрибутив, вы можете просто подключить часть этого vimrc, которая поддерживает NERDTree для вас. Это довольно гладко!
ELLIOTTCABLE

Хороший вызов - кажется, что он находится в janus / vim / tools / janus / after / plugin / nerdtree.vim .
Джеймс Маклафлин

Хорошо, это то, что я положил в свой vimrc, и это работает удовольствие. Большое спасибо!
Джеймс Маклафлин

2

Попробуйте bufkill . Он построен для решения именно этой проблемы.

Вместо того, :bdчтобы закрыть свой буфер, вы используете :BD. Это предотвращает закрытие окна только потому, что вы убили буфер. Если нет другого доступного буфера для его замены, открывается пустой буфер.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.