Guard::NanocとPowで快適Nanoc生活
Guard::Nanocで更新を即コンパイルしつつ、Powで確認するという流れ。Powの時点でMac限定でございます。Guard::Nanocはいけるはず。
こないだのNanocとFont Awesomeのサンプルに手を入れて実践してみましょう。
必要なGemの準備
動いている環境から取ってきたものなので余計なものがあるかもしれないけど、だいたい以下のような感じで。
Gemfile
source 'http://rubygems.org' gem 'bundler' gem 'rake' gem 'nanoc', '3.6.4' gem 'rack' gem 'rack-rewrite' gem 'mime-types' gem 'adsf' gem 'i18n' gem 'powder' gem 'guard' gem 'guard-bundler' gem 'guard-nanoc' gem 'rb-fsevent' gem 'growl'
そしておもむろにインストール。
$ bundle
Guard::Nanoc
更新を逐次自動コンパイルするにはGuard::Nanocを使うのが主流のようだ。
昔からあったAutoCompilerは公式的にもオワコンとなった。
ちなみに以前はメンテされておらずフォークして手を入れないと使えなかったが最近は問題ない。
Guardfileを以下のコマンドで作成する。
$ bundle exec guard init nanoc
次の行がGuardfileに追加されていればOK。
Guardfile
guard 'nanoc' do
watch('nanoc.yaml') # Change this to config.yaml if you use the old config file name
watch('Rules')
watch(%r{^(content|layouts|lib)/.*$})
end
問題なければGuardを開始。
$ bundle exec guard
Pow
Powのインストールは公式参照。
それが済んだらconfig.ruを用意する。
config.ru
# -*- coding: utf-8 -*-
Encoding.default_external = 'UTF-8'
require 'rubygems'
require 'bundler'
Bundler.setup
require 'rack'
require 'adsf'
app = Rack::Builder.new do
use Rack::CommonLogger
use Rack::ShowExceptions
use Rack::Head
use Adsf::Rack::IndexFileFinder, :root => 'output'
run Rack::File.new('output')
end.to_app
run app
powderを使って
$ bundle exec powder link $ bundle exec powder open
これでブラウザでhttp://nanoc-with-font-awesome-sample.dev/が開いて表示されるはず。
以上。
更新が即時にコンパイルされブラウザをリロードするだけですぐに内容を確認できるようになる。
お好みでLiveRealodなどを追加で入れてもいいかもしれない。
それではよいNanocライフを!
