macOS Sierra に Perl::Tidy をインストールする

macOS Sierra に Perl のソースコードを整形してくれる Perl::Tidy をインストールしたので、その方法をメモします。

Movable Type のプラグインを書いていて、他人と共有する場合は、リポジトリにコミットする前に perltidy でコードを綺麗にしてからコミットするのが最低限のマナーだそうです。

ということで、今さらながら macOS Sierra に Perl::Tidy をインストールしてみました。Mac を買い換えるときのためのメモです。

cpanm をインストール

まずは cpanm をインストールします。

sudo su -
mkdir bin
cd bin
curl -LO http://xrl.us/cpanm
chmod +x cpanm

Perl::Tidy をインストール

次に Perl::Tidy をインストールします。

/var/root/bin/cpanm Perl::Tidy

インストールができたかの確認と使い方を眺めます。

perltidy --help

Perl::Tidy の設定

root を抜けます。

exit

Perl::Tidy の設定ファイルを作ります。

cd
vi .perltidyrc

下記の内容をペーストします。

-l=98 # Max line witdh is 78 cols
-i=4 # Indent level is 4 cols
-ci=4 # Continuation indent is 4 cols
-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 bracket tightness
-bbt=1 # Medium block brace tightness
-nsfs # No space before semicolons
-nolq # Don't outdent long quoted strings
-wbb="% + - * / x != == >= <= =~ !~ < > | & >= < = **= += *= &= <<= &&= -= /= |= >>= ||= .= %= ^= x="
-ole=unix # output line endings
-nolq # Don't outdent long block comment line
-nolc # Don't outdent a long block comment line
-nst # Don't output to STDOUT
-b # Modify original with saving back up

ベストプラクティスは 1 行あたり 78 文字のようですが、それだとちょっと短いので 98 にします。

Perl::Tidy を使う

perltidy ファイル名

のようにしてコマンドを打てば綺麗にしてくれます。または、perl ファイルのあるディレクトリに移動して、

perltidy *.pm

のようにしてまとめて綺麗にすることもできるようです。

find コマンドと組み合わせて一気に実行する

プロジェクトディレクトリに移動して、find コマンドを組み合わせて一気に実行するのもありだと思います。

cd プロジェクトディレクトリ
find ./ -type f -name '*.pm' -exec perltidy {} +

以上です。

参考

perltidy - Perlソースコード整形ツール - Qiita

Published 2017-01-25
Updated 2021-04-23