こんにちは、tamaoki (@t0shiya) です。
2016/06/06(現地時間)に、静的サイトジェネレータ Hugo の v0.16 がリリースされました。
今回は、新バージョンの変更点をご紹介します。
リリースノーツ をみたところ、Hugoの開発着手からちょうど 3 年だそうです。
前バージョンである v0.15 からは約 6 ヶ月ぶりのアップデートになります。
バージョン番号こそ 0.16 ですが、不具合も少なく、十分に安定して使用できています。
アップデート
Mac の Homebrew を利用している場合は、簡単にアップデートできます。
$ brew update
$ brew upgrade hugo
$ hugo version
Hugo Static Site Generator v0.16 BuildDate: 2016-06-06T21:37:59+09:00
debian / ubuntu linuxは、公式リポジトリに登録されましたので、以下のコマンドでインストールできます。
$ apt-get install hugo
Window版は こちら からダウンロードして exe ファイルを置き換えてください。
主な新機能
Partial Builds
前バージョンまでは、サイトのプレビュー中(hugo server
)にコンテンツの変更点を感知した時、サイト全体を再生成していましたが、今バージョンからは、ファイルシステムを監視し変更されたファイルだけを再読み込みすることで、必要な部分だけを再生成するように変更されています。
テストの結果、ビルド回数が 10% から最大 90% を減少したと記載されています。
Template の改善
今バージョンでは、Go 1.6 で導入された block
キーワードに対応しました。
その他の機能改善・修正
その他、小さいけれども重要な機能改善・修正事項が多数記載されていました。
- 設定ファイルの Live Reload 対応
- エラー終了時のエラーコード出力
- 環境変数からオプションを取得
- themesDir オプションを追加
- ソースファイルベースの相対リンク
- ソート関数 ByLastmod を追加
- ソート関数 ByCount の一貫性改善
- テンプレート関数の追加
readFile
countword
jsonify
slice
… - 404.html のページ生成無効化オプションを追加
- content, layout, static, theme のシンボリックリンク対応
- server 起動時に指定ポートが使用中の場合は起動中止
この中ではエラーコード出力とserver起動時のポートチェックが特に嬉しいです。シェルスクリプトからの起動やエラー判定に役立ちます!
他には、設定ファイルのリロード、ByCountの一貫性改善、テンプレート関数の追加でしょうか。
他にもまだまだ変更点がありますので、気になった点は動作検証してまた改めてご紹介したいと思います。
feedtailor では、静的サイトジェネレータの利用に限らず、ウェブサイト静的化の御相談を承っておりますのでお気軽にお問い合わせください。