Gibt es eine Möglichkeit, den Viewport in vim zu "sperren"?

1728
breadjesus

Ich habe vor kurzem angefangen, Vim mit NERDTree zu verwenden. Das Ärgerliche daran ist, wenn ich den Puffer schließe, NERDTree den Rest des Bildschirms ausfüllt, und ich muss eine andere Datei öffnen und NERDTree erneut öffnen, um das alte Layout wiederherzustellen.

Gibt es eine Möglichkeit, NERDTree an Ort und Stelle zu "sperren"? Das Schließen eines Puffers würde im Idealfall durch einen anderen verborgenen Puffer ersetzt oder einen neuen leeren Puffer öffnen, wenn keine anderen Puffer geöffnet sind.

Vielen Dank!

8

3 Antworten auf die Frage

4
opsb

Werfen Sie einen Blick auf http://github.com/carlhuda/janus. Dies ist eine angepasste Version von vim, mit der Sie den Nerdtree auf der linken Seite gesperrt halten. Es enthält auch viele andere beliebte Plugins wie command-t, ctags und ack.

Wenn Sie nicht die gesamte Distribution verwenden möchten, können Sie einfach den Teil der vimrc, der NERDTree für Sie verwaltet, ausbeuten. Es ist ziemlich glatt! ELLIOTTCABLE vor 13 Jahren 1
Guter Anruf - es scheint in [janus / vim / tools / janus / after / plugin / nerdtree.vim] zu sein (https://github.com/carlhuda/janus/blob/master/janus/vim/tools/janus/ nach / plugin / nerdtree.vim). James McLaughlin vor 11 Jahren 0
Ok, [this] (https://gist.github.com/udp/5635717) ist das, was ich in meinen vimrc stecke, und es wirkt ein Vergnügen. Danke vielmals! James McLaughlin vor 11 Jahren 0
2
akira

i do not think so. the only solution which comes to mind is to create a new keybinding which

  • :vnew
  • ctrl-w left
  • ctrl-w q

instead of just closing the current buffer.

Es ist schade, dass Sie das nicht wirklich können, obwohl diese Lösung eine sehr schöne Problemumgehung ist. Vielen Dank! breadjesus vor 14 Jahren 0
2
idbrii

Versuchen Sie Bufkill . Es ist so gebaut, dass es genau dieses Problem löst.

Anstatt :bdden Puffer zu schließen, verwenden Sie :BD. Dadurch wird verhindert, dass das Fenster geschlossen wird, nur weil Sie den Puffer beendet haben. Wenn es keinen anderen verfügbaren Puffer gibt, um ihn zu ersetzen, wird ein leerer Puffer geöffnet.