phpCBを使って、コード整形をする
emacsのM-x alignが便利すぎるとTwitterでつぶやいていたら、
phpCB(phpCodeBeautifier)というコード整形ツールも便利ですよと id:dix3 さんに教えてもらいました。
公式ページ:http://www.waterproof.fr/products/phpCodeBeautifier/
Ubuntu(バージョン9.10 64bit VMWare Fusion上の仮想環境)にインストールしようとしてハマったので、
メモを残しておきます。
ダウンロード
http://www.waterproof.fr/products/phpCodeBeautifier/download.php
のLinux版を落としてきます。2010/4/27現在、最新verは1.0.1です。
解凍
% tar zxvf phpCB-1.0.1-linux.tgz
解凍してできたディレクトリに移動
% cd phpCB-1.0.1-linux
phpCBをパスが通っているディレクトリ(自分は/usr/local/bin/以下にしました)に移動する
% cp phpCB /usr/local/bin/
一般ユーザも実行できるように権限を与えます
% cd /usr/local/bin
% sudo chmod 777 phpCB
実行権限も与えます
% sudo chmod +x phpCB
※Linuxの環境が32bitであれば
% phpCB オプション 変換したいファイル名 > 変換後のファイル名
のようにして実行できるようになるみたいなのですが、自分の環境が64bitだったため、
実行すると、
% unable to execute /usr/local/bin/phpCB
というメッセージが出て実行できません。。。
どうも、phpCBは32bit環境でしか動かないバイナリファイルのようです。
GWに32bit環境構築して試そうかとあきらめかけていたところに、
id:dix3 さんより救いの声が!
@ojimac 64bit でも aptitude install lsb-core lsb-core-noarch とかでいけないかな? この辺自信なしですが。。
ということで、
% sudo aptitude install lsb-core lsb-core-noarch
としてから、もう一度
% phpCB オプション 変換したいファイル名 > 変換後のファイル名
とするとうまく行きました!
ちなみに、どんな感じに整形されるかというと、
<?php function(){echo 'hoge';} ?>
上のようなコードが、
<?php function() { echo 'hoge'; } ?>
のように整形されます!
実行する時につけるオプションは、
http://www.waterproof.fr/products/phpCodeBeautifier/manual.php
にあるマニュアルで確認できます。
上の例は、マニュアルのExampleをオプションに付けた結果です。
これでスタイルの違うコードでも自分の使っているスタイルに合わせて(逆も)使う事が簡単にできるようになりました!
最後に、id:dix3 さん、ありがとうございました!
あとがきのようなもの
それにしても、前にATND検索の開発中に、分からないところをつぶやいていた(ぼやいていたとも言いますね><)ときにも助けてくれた方がいて、自分が得た事とか、分からない事とかを発信すると、それに応えてくれる土壌がネットの世界にはあるとしみじみ感じます。
ネットの世界はすばらしいですね。
自分も、せっかく教えてもらっておいて、自分の中だけに閉じ込めておいたのではもったいないので、
このメモが同じようにハマってしまって困っている人の助けになればうれしいです。