久しぶりに tDiary のプラグインを作りました。相変わらずの微妙系。likecolors.rb です。
昔話題にした 「日替わりテーマ」プラグイン に近いかな。日記登録やツッコミ受理時などにテーマ css を自動的に再生成します。新しいテーマの配色は、ランダムに選択した色相の同系色でデザインされます。
動作デモサイトも公開中。ツッコミを入れると色が変わります。ローカルで適当にまわして、好みの配色を探すのも悪くないかもしれません。ちなみにプラグイン名通り、同系色のデザインしか出てきません。予めご了承下さい。
テーマ生成用に、tDiary 添付の default.css をテンプレートとして使用しています。css 中の色指定の部分を列挙して検討してみた結果、主色・主色(暗)・背景色・背景色(暗)・境界色・境界色(暗) の六色に絞り込んでグループ分けすれば十分かなと思いました。もともとシンプルな良いデザインだったので剪定が楽でした。もちろんテンプレートは自作可能です。
実装の方は、ランダムで任意の色相角度を定めて、そこから彩度・強度を変えたバリエーション色を六つ算出してるだけ。そして default.css 中で色指定している部分にタグを打ち込んでおいて、テーマ再生成時に ERb で書き換えています。
色相角度を制限するオプションを付けたり、モデレーション機能で不人気色の周りは選択される確率を減らすとかしてみたら面白いかなとか思いましたが、単純なコードとランダム生成の割には卒のない配色になるのでそんな機能はいらないようです。あとは設定で彩度を 75-80% 程度に制限しておくと、より落ち着いたデザインになってさらにいいと思います。デモサイトでは彩度 100% のままです。