ソフトタブが使われているプロジェクトのファイルをハードタブで編集する

au BufEnter,BufWritePost */soft_tab_proj/* setlocal ts=2 sts=2 sw=2 noet
au BufEnter,BufWritePost */soft_tab_proj/* %retab!
au BufEnter,BufWritePost */soft_tab_proj/* setlocal ts=4 sts=4 sw=4
au BufWritePre */soft_tab_proj/* setlocal ts=2 sts=2 sw=2 et
au BufWritePre */soft_tab_proj/* %retab

ts=2 sts=2 sw=2 et なプロジェクトだけど手元ではハードタブで編集したい、というとき用。

バッファ開くたびにタブ <-> スペースの変換が行われて modified フラグが立ってしまうので、開いてそのまま終了するときに bang つけないとエラーになるのがめんどうといえばめんどう。

タブとスペースの相互変換をしなければこんなにめんどうではないというのは重々承知していますが、ソフトタブによるインデントではインデントレベルがパッと見でわかりづらいので仕方なしにやっています。

余談ですが、YAMLとかPythonとかはスペースによるインデントを推し進めていてまことにクソ喰らえですね。そんな勝手な都合を押し付けられても、というかんじです。最近、殊にハードタブ派の肩身が狭いですね。