ngym.org

Hugoでブログを書く

SNS とに投稿するのも楽しいんだけど、他所様のプラットフォームの上で踊ってる感じもするので、自前でブログを書こうと思って、はてなブログのテーマを作る環境とか作ってたんだけど、そいえば Go で書かれたHugo という Static Site Generatorが気になっていたんだってことで、インストールして使ってみる事にした。

インストール

go get -v github.com/spf13/hugo

でインストールして

hugo new site SITENAME

でサイトのテンプレートを生成する。

設定ファイルは TOML っていうので書く。 TOML ってなんやとおもって検索したらmojombo さんでてきた。 Go ではよく使われる形式なのかな?YAML とか JSON でも設定できるみたいだけど。

とりあえず vim でシンタックスハイライトされたいので vim-toml も入れる。 あとはこの辺みながら設定。タイトルとかパーマリンクとか設定した。

記事を書く

hugo new FILENAME

でファイルを作成。拡張子も書く必要があるので hugo new filename.md とかする。 生成されたファイルには front matter 形式で個別の設定が書ける。生成されるファイルの雛形は architype ってディレクトリに置く。

ビルトインサーバもあるので

hugo server

ってするとブラウザで確認できるし、 -w でファイルの変更を検知してリロードしてくれる。

記事書きながら使うのは

hugo server -wvD

かな(watch して verbose して下書きを出力する)

Sass とか

最近はめっきり素の CSS を書くのがしんどくなってきたので、Sass 使いたいし、他にもいろいろ自動でやってほしいってことで、とりあえずgulp で sass と coffeescript とか、browsersync とかをうごかすようにした

とても面倒だったのだけど、テーマ作る時くらいしか使わないので、無駄な努力だったかもれしれない…。

テンプレート

layouts ってディレクトリに_default/single.html と_default/list.html というを作ればとりあえずは動く。

Ace っていう Jade とか Slim みたいなテンプレートエンジンが使えるっぽかったんだけど、構文とか調べながら書くのがダルいので、無難に Go Template にした。

デプロイ

GitHub Pages へデプロイする手順とか見て設定。 そのうちワッキャーで github に push したらデプロイしてくれるみたいにしたい。