Blogへ記事を投稿。ローカルの確認作業をがんばらない
編集している記事の内容を、即座にブラウザでプレビュー表示できるようにします。
またemacs引きこもりなので、ブラウザを自動的にリロードさせて最新のプレビューを表示するようにもします。
検証環境
- Mac
- chrome
作業フロー比較
Before
- プレビュー用にWEBrick起動
- console に移って
% rake preview
- browser に移って http://localhost:4000 にアクセスして確認
- console に移って
- console で記事を作る
% rake new_post
- 以下 めんどくさい ループ
- emacs で記事を編集
- console に移って
% rake preview
再起動で変更内容を反映 - browser に移って http://localhost:4000 にアクセスして確認
- okならば console から
% rake gen_deploy
で投稿
After
- 変更内容を自動的に読み込ませる。毎回の
% rake preview
が不要になる。- console に移って
% rake watch
- console に移って
- プレビュー用にWEBrick起動
- console に移って
% rake preview
- browser に移って http://localhost:4000 にアクセスして確認
- console に移って
- console で記事を作る
% rake new_post
- 以下 めんどくさくない emacs ひきこもりループ
- emacs で記事を編集・編集・編集! emacs で保存の度に browser が勝手にリロード。最新の内容をプレビュー表示
- okならば console から
% rake gen_deploy
で投稿
導入手順
まずは、 /octopress
に移動して、 % rake watch
で、 _posts
ディレクトリに変更があったら自動的に静的ページを public
以下へ生成するようにします。
次に、 gem gurad
(指定ディレクトリの変更を監視。変更があったら任意のコマンドを実行) の、任意コマンド→ browser の自動リロードを行う、
gem gurad-livereload
を使います。
gem gurad
の導入
% cd octopress
gem追加
% emacs Gemfile group :development do ... + gem 'guard' + gem 'guard-livereload' end
% bundle
console を新規に開く
Guardの設定。監視ディレクトリ指定
% guard init livereload % emacs Guardfile
guard 'livereload' do watch(%r{public/.+\.(css|js|html)}) end
browser にプラグイン導入
早速使ってみる
- console
- 記事の変更で静的コンテンツ自動生成仕込む
% cd octopress % rake watch
- 記事の静的コンテンツ自動生成監視でブラウザ自動リロード仕込む
% cd octopress % guard
- 記事の変更で静的コンテンツ自動生成仕込む
- browser
- chromeの場合は
livereload
の設定については特に不要。 右上のアイコンがconnectedのようになって、% guard
で、INFO - Browser connected.
といったメッセージが表示されていればOK
- chromeの場合は
- emacs
- 以降は、
.markdown
を保存すれば、フォーカスを移してブラウザのリロードボタンを押さずとも、 裏で自動的にブラウザがリロードされて、最新のプレビューが表示されます。
- 以降は、