vim - タブストップ

 
1. 作業中に変更する
2. 全ファイルのタブストップ設定
3. タイプ別のタブストップ設定

1. 作業中に変更する

 vim のタブストップはデフォルト 8 になっています。  unix 本来の動きがこうなっているのですが、最近はファイルによって異なることもあります。  作業中にタブストップを変更するには : でコマンドモードにして

:set tabstop=タブ幅

2. 全ファイルのタブストップ設定

 全ファイルに対してタブストップを設定するには ~/.vimrc に以下のように記述します。

set tabstop=タブ幅

3. タイプ別のタブストップ設定

 これは「ファイルの拡張子によって、vimに自動でインデント幅を変えてもらおう!」を参考にさせていただきました。  .sh のタブストップを 4 にしたかったので・・・。  ~/.vimrc に以下のように記述します。

augroup fileTypeIndent
	autocmd!
	autocmd BufNewFile,BufRead *.sh setlocal tabstop=4 softtabstop=4 shiftwidth=4
augroup END
 大事なのが、複数の拡張子を定義するときは、上記の例では「*.sh」の後ろにカンマで区切って列挙するのですが・・・。  「*.cpp」を加えるとして

augroup fileTypeIndent
	autocmd!
	autocmd BufNewFile,BufRead *.sh, *.cpp setlocal tabstop=4 softtabstop=4 shiftwidth=4
augroup END
 と、カンマの後ろに空白を空けては行けません、詰めて書かないと無視されてしまいます。