Vimスクリプト(:bdelete)

~/tmp $ vim

Vimを起動してすぐに:new

:new

上下に画面をスプリットしましたが、 カーソルが上のバッファにあるので
:newで追加になったのは上のバッファですね。
lsも確認してみます。

:ls

lsの表示は、下にある2番のバッファが、追加したバッファなので少々ややこしいです。

さらに:newします。

:new
:ls

一番上の画面が、ls表示の3番のバッファです。
%が付いているので、カレントバッファの意味ですね。

もう一画面追加してみます。

:new
:ls

#がついているバッファは、alternateバッファで、前回カレントバッファだったバッファ
を表しているようです。
あと、全部にaの表記がありますが、activeを表しています。

次は、1番のバッファを削除してみます。

:bd 1
:ls

一番最初のバッファ、1番のバッファが削除されました。

次に、再度newをしてみます。1番のバッファが削除された状態ですが、
次のバッファは、1番になるでしょうか、5番になるでしょうか。

:new
:ls

5番になりました。
次は、5番のバッファを削除後、:newしてみます。

:bd 5
:new
:ls

まあ予想はしていましたが、6番になりました。

以前削除したバッファ番号についてbufexistsを使ってみたら、TRUEが返ってきたことがありましたが、何か関連しているのでしょうか。
内部でバッファ存在している気がしてなりません。
そんなことを考えながら、ヘルプを探していると、とあるコマンドを見つけました。
:bwipeout
名前から想像するに、バッファをぬぐいとってくれるのでは?

使ってみます。省略形で:bwで良いです。

:bw 1
:new
:ls

変わりませんでした。

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA