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っていう概念があって、これを使うと色々面白いことができそうな気がする。