Rubyのマジックコメントを自動で付加する
VimやRubyMine等のエディタやIDEで新しくファイルを作成した時にマジックコメントを付加することはできるが、既存のファイルに対して適用することができないので別途手段を講じる必要に強くかられた。
有り体に言うとRailsのジェネレータが作成したファイルに日本語を含めたときにエラーになるという状況を繰り返すのにそろそろ飽きてきたという。
そこでまず自作しようとディレクトリを切ったところで、いやいや誰か作ってるのではないかと思い当たり、検索してみると案の定見つかった。
両方ともコマンドラインツールとして使用する。コマンドを打つとそのディレクトリ以下のRubyファイルを検索してマジックコメントを付加してくれる。
まず最初にmagic_commenterを試してみたが、こちらはマルチバイト文字列が含まれているファイルにしかマジックコメントを付加してくれなかった。うーん、どっちかと言うとこれから日本語が含まれるかもしれないファイルにも付加して欲しいのに。
対して次に試したmagic_encodingは問答無用ですべてのファイルにマジックコメントを付加するようになっていた。個人的にこちらの動作の方が望ましかったのでmagic_encodingを採用。
こうして車輪の再開発は免れた。
Railsに限って言うとカスタムのジェネレータを作成する手もあるのだろうけど、他にもファイルをジェネレートするフレームワークやツールがあることを考えると都度magic_encodingを利用するのが妥当な落としどころかと思う。