Pow経由でNanocのプレビューサーバーを動かす

PowでNanocのオートコンパイル付きプレビューサーバーにアクセスできたら素敵なのではないかと思い、それ用のconfig.ruを書いた。

config.ru
# -*- coding: utf-8 -*-

Encoding.default_external = 'UTF-8'

require 'rubygems'
require 'bundler'
Bundler.setup

require 'nanoc3'
run Nanoc3::Extra::AutoCompiler.new('.')

これをNanocのディレクトリに置いて.pow以下にシンボリックリンクを作ればPow経由で以下ようなURLでアクセスできるようになる。

  • http://my_nanoc_site.dev(ディレクトリ名がmy_nanoc_siteの場合)

これでいつでもブラウザにアドレスを打ち込むだけでNanocのオートコンパイラが動き始める。
Nanocを動作させることを意識せずに、ブラウザでプレビューしつつ文書をガシガシ更新していくことができるようになった。
なかなかいい使い勝手だ。
更にGuard::LiveReloadとの組み合わせで無敵に見える。

ちなみにPowはとても便利なのでRailsやSinatraで開発していてまだ使ったことない人がいたら是非試してみてください。

参考

2011/03/12追記

ファイル数が増えるとアクセスの都度すべてのファイルがコンパイルされてえらいことになるという罠が。

2013/08/02追記

最近は、というか2年くらい前から以下のような感じでやってますた。

Guard::NanocとPowで快適Nanoc生活