JekyllからHexoに乗り換える

2018-02-17

ブログの環境をJekyllからHexoに乗り換えることにした。

GitHub Pagesで静的ファイルの公開ができて、さらにJekyllだと手元でビルドせずにGitHubにプッシュするだけで生成してくれるので便利だった。 のだけど、

  • 日付をファイル名に入れるのが面倒
  • Front Matterを書くのが面倒
  • 間があくとJekyllが動かなくなり、書く時にローカルで確認できない
  • Jekyllのアップデートがうまくいかない

ということがあって、ブログを書く以前にJekyllの環境を修正するところで力尽きることが多かった。 そこで別の静的サイトジェネレータのHexoに乗り換えてみた。 なぜHexoに、という理由もないんだけどなんとなく。

移行するにあたってしたことは、

  • ポストのファイル名から日付を削除
  • ページ間リンクをpost_urlからpost_linkに置き換え
  • 数式がちゃんと表示されるよう、プラグイン(スクリプト)を記述
  • インラインの数式を<script type="math/tex">~</script>でくくるよう内容を置換
  • アセットとして配置する生のhtmlにレイアウトが適用されないように、Front Matterを追加(layout: false

まだタグ一覧やサイトマップが作られてないという問題はあるものの、とりあえず乗せ換えは完了。 ファイル名から日付を取り除いてしまうことで、今度はファイル名がぶつからないように気をつけないといけなくなるという問題はありそうだけど…。

Jekyllのときはgitのmasterブランチでプッシュするだけでよかったが、Hexoだと自前でビルドして生成された内容をGitHubにプッシュする必要がある。 がhexo-deployer-gitを使えば任意のブランチにプッシュできるので、ソースブランチをmasterではなく別の名前にしてやればよい。