reST で blog を書く理由

今回、このドメインで blog を再開することを決めた際に考えていたこと(今も考えていること)を書いてみます。

動的生成と静的生成

まず、個人で書く blog のような一度書いたエントリはその後変更されることがあまりないようなタイプのサイトで、(キャッシュの仕組みはあるのでしょうが)アクセスがあるたびに毎回動的に HTML を生成するのはナンセンスというか、コンピューター資源の無駄遣いというか、個人的にはあまりしっくりこないなぁと感じていて、やるなら静的生成がいいと考えていました。

最近のトレンドというか傾向を参考にしたならば、独自ドメインで blog をやるなら WordPress が順当な選択肢となっているという認識を持っていますが、WordPress は動的生成だし、以前に使用していたときに本体やプラグインのアップデートがけっこう頻繁にあって煩わしかった記憶もあるし、"WordPress" のスペルを強制する関数が本体に含まれていること を知って以来、[1] あまり好ましい印象を持っておらず、積極的に避けたいと思っていました。 (まぁ猫も杓子も WordPress という流れに逆らいたい、というマイナー志向の顕れという側面も否定できません 笑)

blog の前に Sphinx

blog エンジンとして Pelican の前には Nikola を検討していました。どちらも Python で書かれているので何かいじる際に都合がいいというのが主な理由です。また、blog とは別に Sphinx で自分用に(非公開で)いろいろなドキュメントをまとめていきたいとも考えていて、そちらで reST を使うので、blog の方も reST で書ける方がいいなという思いもありました。

他者に公開するものではなく自分のために、調べたことや勉強したこと、個人的なメモ、覚書などについてどういう形でまとめるのがよいか、という問題意識を以前から持っていて Wiki や Google Site や Emacs の org-mode などを検討したり試用していました。

自分用のドキュメントをまとめる仕組み

自分用のドキュメントをまとめていく上で必要な要件としては以下のようなことを考えています。

  • 手軽に更新できる
  • 構造的な文書を管理できる(他の文書へのリンクなど)
  • どのマシンからでもアクセスできる

MediaWiki などを自分でホストするとしたら更新がおっくうになりそうですし、Google Site や PBWorks(旧 PBWiki)などの WYSIWYG なリッチテキストエディターだとドキュメント全体で見出しのフォントサイズなどを統一することが難しそうだと感じていました。

org-mode は単独ページの HTML を作成するにはよいのですが、複数ページ間でリンクがあるような wiki 的なサイトを作成できるのかどうか心もとない部分があったり、複数ページを一括で更新することが可能なのか、という点も不安があります。

それらを踏まえると、私の目的には Sphinx が一番適しているように思えています。ドキュメント内の検索が少々弱いようですが、代替案を公開されている方もいらっしゃったため、なんとかなるのではないかと期待を持っています。

Sphinx -> Pelican

そういうわけで Sphinx と同じ reST で書ける Pelican で blog を書いて、自分用の文書は Sphinx で管理して、Dropbox においていくのが正着打ではないかと思っているのでした。

[1]ちょっと頭の片隅においておくといいかもしれないWordPress関連の2つの論争 | Waviaei