perltidyを使ってみました

perltidyってのは整形ツールです。インデントとか改行とかカッコの位置とかを調整してくれる。
コードが変にならないのかすごく不安なんだけど。とりあえず使ってみる。常用するかどうかはわかんないけど。
インストールはこうする。

$ sudo apt-get install perltidy

設定は.perltidyrcをホームディレクトリに置けばそれが使われる(設定ファイル置き場は他にもあるよう)。設定内容はとりあえずPerl Best Practices: Standards and Styles for Developing Maintainable Codeに載ってるやつを使ってみた。

-l=78   # Max line width is 78 cols
-i=4    # Indent level is 4 cols
-ci=4   # Continuation indent is 4 cols
-st     # Output to STDOUT
-se     # Errors to STDERR
-vt=2   # Maximal vertical tightness
-cti=0  # No extra indentation for closing brackets
-pt=1   # Medium parenthesis tightness
-bt=1   # Medium brace tightness
-sbt=1  # Medium square brace tightness
-bbt=1  # Medium block brace tightness
-nsfs   # No space before semicolons
-nolq   # Don't outdent long quoted strings
-wbb="% + - * / x != == >= <= =~ !~ < > | & >= < = **= += *= &= <<= &&= -= /= |= >>= ||= .= %= ^= x="
        # Break before all operators 

こうやって使う。

$ perltidy foo.pl

結果は標準出力に出ます。-stの行を消すと元のファイル名 + .tdyというファイルが作成されます(これがデフォルト)。perltidyに-bオプションを指定して

$ perltidy -b foo.pl

とやると、結果がfoo.plに、元のファイルはfoo.pl.bakに出ます。
vimで保存するときにperltidyを実行とかできたらいいかも?

    • -

The Perltidy Home Page