Every Declaration Just Onceのスタイルに既存のCSSを変換し、どのような感じになるのかを確認するためのツールを書いてた。node-edjoとしてGitHubに公開しておいたので、Node.js互換の何かがあればnpmでインストールして誰でも使える。ただしnpmリポジトリーには公開されることはないので、READMEに書いてあるようにユーザー名とリポジトリー名を使ってインストールする。

完全な変換ツールではないので、これを使って移行とかは無理。ルールセットの順序が入れ替わっているので、CSSとしてちゃんと機能するかも未知数なものに変換されちゃう。あくまでもCSSがどのような感じになるのかがわかるだけのツールで、どれくらいのセレクターが集まってくるのかとか、定義はDRYだけどセレクターがDRYじゃないのはどの程度わかりづらそうなのかとかそういうものを感じるとっかかりという程度のツール。

実際にこのウェブサイトのCSSを変換すると、まぁまぁ想定通りの形に変換され(てホッとし)た。もっとアバンギャルドな感じになるかもしれないとヒヤヒヤしていたので、これくらいなら「とんでもない!」という程でもない気がする。ひいき目だけど。ところどころ変なところに改行が入っているのはSassのせいで、PostCSSでもこのツールのせいでもない。

EDJOのダメそうなところは改めてちゃんと書きたい。このツールを使いつつ色々考える。