2016-04-15 40 views
0

我正在使用perlsupport插件對我的代碼執行語法檢查。當它進行語法檢查時,它將帶有警告和錯誤的文件放入緩衝區中。有時候,我要趕緊收出與其他緩衝區除了第一個,因爲它是我目前工作中的腳本。使用一條命令刪除第一個緩衝區以外的所有緩衝區

我試過2,:bd2,$:bd:bd 2 Quickfix\ List:bd 2 [Quickfix\ List]和其他變化沒有成功。謝謝。

我應該補充一點,我知道我可以列出緩衝區,找到最後一個緩衝區號並執行諸如2,N:bd之類的操作,但我寧願只有一個命令,我可以將它變成快捷方式。

+1

':2,999bd'?從http://stackoverflow.com/questions/4545275/vim-close-all-buffers-but-this-one - 可能重複。 – TessellatingHeckler

回答

0

你可以寫一個使用exec建立正確的bd命令的命令:

command! Bd exec '2,' . bufnr("$") . 'bd' 

bufnr("$")是最後一個緩衝區的數目。

作爲一個測試:

:badd foo 
:badd bar 
:Bd 

給出:

2 buffers deleted