comilablog

Hexoに移行しようと思ったけどやっぱりHugoにした

半分放置してたtumblrを手入れしようと思ったんだけど、やっぱりちょっとtumblrは仕様的に気になる所が多くて、モチベが上がらなかったので、他に移ることにした。

前にHexoで遊んだことがあったし、普段jsばっか使ってるし、ってことでHexoにしようと思ったんだけど、なんというか…重い。めちゃくちゃ重い。びっくりするくらい時間がかかる。サーバ立ち上げるのに数秒は余裕でかかる。記事が大量にあるとかじゃなくて、たった1記事だけ。それでこの遅さ。前に遊んでた時はこんなに遅くなかったと思うんだけど、一体何があったのか…。

ともかく、ちょっとこの遅さはつらすぎるので、早いと評判?の、Hugoを使ってみることにした。Go製のアプリを使うのは初めて。

インストール

公式のDocsにだいたい書いてある。

わたしはHomebrewでインストールした。Goの入ってる人はそっちのコマンドでもいいかもしれない。

$ brew install hugo
$ hugo new site blog

楽だなー。

テーマ

hugo newで記事を書いて、hugo serverでサーバ立ち上げ…たんだけど、画面が真っ白になる。あれー?と思ったら、テーマを入れないと何も出力されないっぽい。なるほど。

テーマに関するDocsはこのへん。公開されてるテーマを一気に入れる方法もあるみたいだけど、それもちょっとなーと思ったので、ショーケースを見ながら気になったテーマだけcloneした。

テーマをいじる場合は、layoutsフォルダにテーマと同じ配置になるようにテンプレートファイルを作れば上書きされるっぽい。cssとかjsとか足したい場合はstaticフォルダに配置。
とりあえずシンタックスハイライト用にhighlight.jsを置きたかったので、テーマからヘッダとフッタファイルを引っ張ってきて、適当に書き換えた。あとはちょろっとcssをいじったりとか。

デプロイ

Hexoはコマンド1発でデプロイできる機能があったんだけど、Hugoにはそれがない。ので、自力でどうにかしないといけない。

自動化したりとか色々やってる人もいるみたいだけど、とりあえずさくっと公開してしまいたかったので、ビルド→rsyncでVPSにアップロード、っていうスクリプトを書いた。落ち着いたらgitとかでうまく管理できるようにしたい。かもしれない。

感想

本当に動作が早い。あと導入も楽。Goさっぱり分からないのでやや不安だったけど、ちょっとしたカスタマイズくらいなら全然問題なかった。

テーマはあるっちゃあるけど、そんなに数が多いわけではないので、ピンと来ない場合は自作した方がいいかもしれない。

あとSectionsっていう概念があって、これを使うと色々面白いことができそうな気がする。