読者です 読者をやめる 読者になる 読者になる

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

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