2013-07-12 15 views
7

デフォルトでは、VIM :eコマンドは、指定されたファイルを持つ新しいバッファを作成し、現在のバッファを残します。これにより、バッファ数が非常に大きくなります(一部のバッファ表示プラグインが使用されている場合は便利です(例:人気のあるminibufexplorer)。 VIMを変更して:eコマンドが現在のバッファを再利用できるようにすることは可能ですか?私は2つのバッファが必要な場合、私はいつも:enewコマンドで2番目のバッファを作成することができます。VIM:現在のバッファで新しいファイルを開くには?

答えて

11

あなたは、vimのバッファが

ファイル編集用のメモリにロードされていない「再利用」のバッファであることができます。

それはあなたのバッファを保つようにするには、新しいを開き、現在のバッファを削除することができ回数:

:bd!|e /path/file 

ノートを!と、現在のバッファの変更が破棄されること。

+1

ありがとうございました!これはVIMのドキュメントで、これについては '|'表記法?私はこのような命令を連鎖できることを知らなかった。 – grigoryvp

+3

[':help:bar'](http://vimdoc.sourceforge.net/htmldoc/cmdline.html#:bar)を参照してください。 –

8
:bd!|e file 

は最も直感的な方法ですが、分割しているとウィンドウが消えます。だから... ...

function! ReplaceBuffer(bang, newfile) 
    let curbuf = bufnr('%') 
    exec "e " . a:newfile 
    exec "bd" . a:bang . " " . curbuf 
endfunction 
command! -nargs=1 -complete=file -bang -bar BDE call ReplaceBuffer('<bang>', <f-args>) 

次に、あなたの.vimrcをアップロードし、ウィンドウをいじってなくて、あなたがたバッファを殺すために

:BDE ~/.vimrc 

または

:BDE! ~/.vimrc 

を行うことができます。

+0

':bd!| eファイル'は分割を殺すという良い言い伝えです!私はスプリットレイアウトを維持する何かを探していた – jazzyfresh

関連する問題