Erbcop

SlimcopのERB版、Erbcopをつくってみた。

Slimcopのコードを再利用(要するにコピペ)することで、小一時間でまともに動くものができた。コードをコピーしてくる作業は、作者が自分でなければかなり躊躇われるところだ。

SlimcopとErbcopに共通する処理をTemplatecopみたいなライブラリにまとめると、Hamlcopみたいなものをつくるときにも楽だろう。ただ、Hamlのパーサーは埋め込まれるRubyコードの文字単位での位置情報を持たないから、Slimiのように別実装をつくる必要があるかもしれない。少し大変すぎるように思うので、Hamlの開発者とこの件について相談してみたい気持ちがある。

それから、この手のテンプレート言語に対するサポートがRuboCopにあれば、SlimcopとかErbcopとかつくらなくてもRuboCopのプラグインという形で実装できてWin-Winなはずなので、RuboCopの開発者とも相談してみたいところ。Rubyを、Rubyを埋め込めるテンプレートエンジンであるとみなすと、Rubycopみたいなものがつくれるはず。それがRuboCopのデフォルト実装であり、他のテンプレートエンジンについてはプラグインで提供できる、という構造にするのはどうだろうか。