Vim - バッファをタブのように表示するプラグイン

バッファとは何か?

Vimで開けるファイルは何も1画面に1ファイルだけじゃない。:vsplit とか、:split でウィンドウ分割したり、:vi で別ファイルを開くことができる。Viで開いているファイルのことをどうやらバッファと呼んでいるらしい。

minibufexpl.vim

eclipse とかの IDE のように、バッファがタブになってたら嬉しい。そんなプラグイン

ここからダウンロードして vim を plugin フォルダ以下に配置後 .vimrc に下記を追記

:let g:miniBufExplMapWindowNavVim = 1
:let g:miniBufExplMapWindowNavArrows = 1
:let g:miniBufExplMapCTabSwitchBuffs = 1
:nmap <Right> :bnext <CR>
:nmap <Left> :bprev <CR>
:nmap <S-Right> :blast <CR>
:nmap <S-Left> :bfirst <CR>

いろんなファイルを同じ画面で開くと、タブにバッファが表示されていく。バッファの移動が :bn とか :bp とかめんどいので → とか Shift + ← とかで移動できるようにする。ノーマルモードでは専ら h, l, k, j で移動する人でない場合は別のキーマップにしたほうがいいかも

buftabs.vim

タグだと崩れることがあるし、場所をとるからイヤ。って人向け。ステータスラインにバッファが表示される。

ここからダウンロードして vim を plugin フォルダ以下に配置後 .vimrc に下記を追記

let g:buftabs_only_basename=1 " ファイル名だけ表示
let g:buftabs_in_statusline=1 " ステータスラインに表示
:nmap <Right> :bnext <CR>
:nmap <Left> :bprev <CR>
nmap <C-h> <C-w>h " Ctrl+h, Ctrl+j, Ctrl+k, Ctrl+l でウィンドウ間を移動
nmap <C-l> <C-w>l
nmap <C-j> <C-w>j
nmap <C-k> <C-w>k

上のURLだとスペースにキーマップしてたけど、動作が遅くなるからあんまり好きじゃなかった。


このふたつのどちらか好きなのを使えば良いと思う。