普段タブ幅4のタブインデントなファイルをよく弄ります。
僕としてはタブ幅は2もあれば十分で切り替えたいのですが、いかんせん行末のコメントなどでタブを使っている場合などに、見た目の整合性が取れなくなるため自重していました。
ただ、逆に言えばコミット時などにサクっと切り替えさえ出来れば普段タブ幅2でも生きていけると思い、ざっくりと切り替える用のマッピングを用意しました。
VimL
function!s:toggle_indent()if&tabstop==2setlocalshiftwidth=4setlocaltabstop=4setlocalsofttabstop=4elsesetlocalshiftwidth=2setlocaltabstop=2setlocalsofttabstop=2endifendfunctionnnoremap<silent><Space>ot :<C-u>call<SID>toggle_indent()<CR>
ビックリするくらいアナログですね!
ノーマルモードで「スペース → o → t」と押すとタブ幅が2と4で切り替わります。
既存のタブ幅を半分にしたり戻したり出来るプラグインを作ると良さそうとか思いつつ、↑の用な設定だけして誤魔化してます。
スペースインデント派だった僕ですが、こういう設定をするとタブインデントも悪くないかなと思うようになりました。