Nanoc以外の静的サイト生成ツールを調べてみた

最近自分の中で静的サイト生成ツールが静かなブームを呼んでいるのでNanoc以外にも何かないのかなと他のツールを探してみることにした。ついてはWordPressのバージョンアップが面倒になってきたので運用しているもろもろのサイトの移行も考えていたりして。

ポピュラーなツールやライブラリを探すにはとりあえずThe Ruby Toolboxだよね、ということでNanocで検索してNanocの属しているStatic Web Generationをポチ。

けっこうたくさん出て来たが勢いのある上の方のやつだけチェックしてみた。

  • Jekyll
  • Middleman
  • High Voltage
  • Nanoc
  • Stasis

Jekyll

mojombo/jekyll GitHub

GitHubで採用されているだけあってダントツのスコア。単にページを作成するほか、ブログ形式でポストを追加していく機能も持っている。WordPress等の他のCMSからの移行ツールが用意されているのは興味深い。試したらイマイチ期待通りに動かなかったけど。

ところで基本のディレクトリ構成を最初に自分で組み立てないといけないのだが、これのせいでちょっと取っつきにくい。自動で作ってくれるようなものはないのだろうか?と思ったらpull requestがあった。けど取り込まれてないみたい。ポリシー的にこういう機能を取り込む気はなさげ?

簡単に試す意味ではチュートリアルとして紹介されているJekyll Bootstrapはなかなか良かった。テーマの仕組みも作れるとは。ともかくJekyllのスタートにはこれ激しくオススメ。

プラグイン機構も持っていてすでに多くのプラグインがある。このユーザーベースの大きさはメリットかもしれない。

参考

Middleman

Middleman: Hand-crafted frontend development

Sinatraベースの静的サイトジェネレーター。
プログラマブルで柔軟性はありそうだが、これにブログを移行するとしたら逆に自分で書くことが多くなりすぎるぽい。

Dynamic Pagesという仕組みはデータを元に静的ページをたくさん作るには便利そうだ。同じようなことはNanocではDataSource、JekyllならプラグインでGeneratorsを作ればできそうだが。
それと出力の加工にRack Middlewareも使えるのは面白い。要はSinatraということなのかな。

参考

High Voltage

thoughtbot/high_voltage GitHub

Rails engineということでRailsとの組み合わせで使うようだ。
Railsのバージョンアップに引きずられて面倒なことになりそうなのでパス。

Nanoc

nanoc: a Ruby site compiler that generates static HTML » home

昨年から使っている静的サイトジェネレーター。
ヘルパーとフィルターをごりごり書けば割と何でもできてしまうので実は不足を感じていない。

Statis

Stasis – Static Sites Made Powerful

基本的な静的ファイル生成に加えて何かフィルター的な処理をしたければプロジェクト直下のcontroller.rbの中でまとめてやるようだ。ある意味シンプル。しかしブログっぽい物を作ろうとしたら相当頑張る必要がありそう。

さて、どれがいいだろう

JekyllかNanocかな。
NanocのバックグラウンドがなければJekyllを選択しただろう。しかしNanocを使い慣れているので積極的に移行する必要性を感じない。

要はMarkdownで書けてちょっとプログラムで出力をいじれたらそれでいいってことなんです。
それがNanocより楽できるものがひょっとしてあったりしないかなと思って調べてみたけれど、思い通りのレイアウトやページ構成にするには結局自分で色々書かないといけないようだ。

前の記事

Rubyで短縮URLを展開

次の記事

RubyMotionがすごい