TABの設定の仕方
:set ts=4 sw=4 sts=0
失敗例
ts=4とだけ設定して、残りのswとstsを設定しなかった場合、インデントのたびに2個分のTabが挿入されてしまいます。
なるほど。
'tabstop'、'shiftwidth'、'softtabstop'の違い
インデントには'tabstop'、'shiftwidth'、'softtabstop'の3つのオプションがあります。
- 'tabstop' (短縮名'ts')
- ファイル中の
文字(キャラクターコード9)を、画面上の見た目で何文字分に展開するかを指定する。既にあるファイルをどのように表示するのか指定したい時に便利。 - 'shiftwidth' (短縮名 'sw')
- cindentやautoindent時に挿入されるタブの幅。vimが挿入するインデント('cindent')やシフトオペレータ(>>や<<)で挿入/削除されるインデントの幅を、画面上の見た目で何文字分であるか指定する。自動的に挿入される量、と覚えておくと便利。
- 'softtabstop'(短縮名 'sts')
- キーボードで
キーを押した時に挿入される空白の量。'softtabstop'が0以外の時には、例え'ts'を4に設定していても、 を1度押しても'softtabstop'分だけ空白が挿入されます。逆に'softtabstop'が0の場合には挿入されるのは'ts'で指定した量になります。 の量にも影響を与えます