回答:
ヘプタイトのソリューションと同じアイデアですが、1つのライナーとして。他の多くのことがこの方法で行われる可能性があります:バッファーの名前を取得(マップのおかげで)、パターンに一致するワイプアウトバッファー、https://stackoverflow.com/questions/2974192/how-can-i-pare-down- vims-buffer-list-to-only-include-active-buffers / 2974600#2974600nなど
echo len(filter(range(1, bufnr('$')), 'buflisted(v:val)'))
私の知る限り、Vimにはこれを行うための組み込みメソッドはありませんが、関数を作成できます。
function! NrBufs()
let i = bufnr('$')
let j = 0
while i >= 1
if buflisted(i)
let j+=1
endif
let i-=1
endwhile
return j
endfunction
上記のファイル名を.vim、:sourceで終わるテキストファイルに入力すると、次のようになります。
:let buffer_count = NrBufs()
:echo buffer_count
6月21日注: 2017年の時点でVimの最新バージョンをお持ちの場合、以下のGidの回答が最適なソリューションです。
あなたはおそらく探していますか?
:echo(bufnr('$'))