今回ブログを再開するにあたってブログツールを書き起こした。もちろん2016年の現在において新しくブログ用のプログラムを書く必要など全くなく世にあるサービスを使えばいいのだが、それはそれ、ブログが趣味ならブログツールも趣味である。
そんなわけでこの数週間、空き時間にちまちま Rails を書き進めていた。Rails と言うのはよく言われるように Rails のお作法に沿って書いている分には結構快適に形ができていくのだが、それは逆に言えばなにかやろうと思ったら Rails のお作法をひとつひとつ調べる必要があるということでもある。そういうわけで「画像のアップロードがしたい」と思えばググり、「タグを付けたい」と思えばググり、多分コードを書いている時間よりも何かを調べている時間の方がだいぶ長かったと思う。
それでも一応いまのところこれくらいは実装できたのでまあよしとする。
- Markdown による記事の記載 (Redcarpet)
- Markdown 内コードの色つけ (Albino)
- 画像の Drag & Drop アップロード (PaperClip + Dropzone)
- タグ付け (act-as-taggable-on, bootstrap-tagsinput)
- Pagination (will_paginate, bootstrap-will_paginate)
サーバは Rails + Unicorn + Nginx の構成。Let’s Encrypt で SSL を設定。一応複数のブログ管理やユーザ管理もあるものの、まだ個人で使うものを脱していないのでそこをどうするかは少し悩ましい。UIの修正や足りていない機能もまだまだあるので趣味としてボチボチいじろうと思う。
なお Trackback はもちろん今更実装していないし、コメントも Facebook Comment Plugin の埋め込みにしていて、コメント機能を認証ありにするのはそのつもりなのだけど、認証つきコメント欄機能として Facebook はちょっと out of date な感がある一方で代替案が思い当たらない。
ところで一番苦労したのは Google Custom Search を Bootstrap の navbar に収めることだった。今もまだ割とアドホックである。なんでこんなにまでCSSカスタマイズの固まりなんだ…