このブログをHugoで作った

2020-02-02

Hugo + GitHub Pages

このブログは Hugo + github pages で公開しています.テンプレートのカスタムをしてると意外と情報が無かったです.ということで,Hugo のインストールからブログの更新まで簡単にメモしたいと思います.



そもそもなにそれ

Hugo は静的ブログジェネレータというやつです.テンプレートと markdown の記事を用意すればhugoで index.html なんかを生成してくれます.Go 製です.早いです.
github pages はリポジトリに置いておいた静的ファイルをホストしてくれるサービスです.



Hugo のインストール

Windows10 の場合です. https://github.com/gohugoio/hugo/releasesから最新リリースをダウンロードしてパスを通します.Hugo\binなんかにHugo.exeを移して PATH を通します.
そういえばこのとき PATH の上限 2000 文字くらいを超えてて GUI だとうまくいかないというのに出会った.とりあえずユーザ環境変数にしておいた.



Hugo のテーマ適用

hugo new site myblog

これでわーっと一式生成してくれます.
その後,https://themes.gohugo.io/で適当なテーマをダウンロードし,\themes\直下に適当な名前(テーマ名とか)にリネームしてディレクトリごとコピーします.
\config.tomlに設定を色々書いていきます.と言っても基本はコピペです.絶対に変えるのは

baseURL = "例 https://pishiko.github.io"
theme = "さっきリネームしたテンプレート名"

で,あとは(テンプレートによると思いますが,)\themes\適当なテンプレート名\exampleSite\config.tomlにテンプレート固有の設定があったのでコピペして適宜変更しました.



Hugo でブログ生成

hugo new content\posts\test.md

するとひな形が生成されます. ひな形はこんな感じにすれば OK

---

title: "Hello, world!"

date: 2020-02-01T23:08:52+09:00

draft: false

tags: ["memo"]

---

注意すべきはdraftで,trueだと非公開状態(= debug モード)のみ公開なので false にしないとデプロイしても反映されなくて泣く.
あとは適当に Markdown で記事を書く.
ここまで上手くいっていれば, hugo server -D で debug モードでサーバを起動できるので,localhost:1313でブログを確認できます.手直ししても更新検知して再起動してくれるので便利です.



公開まで

hugo

これで\publicに index.html ファイル一式が生成されます.これを公開しましょう.
まずは github で新規リポジトリを作成.その時のリポジトリ名はGITHUBのUSERNAME.github.ioにします.あとは

cd public
git init
git remote add origin git@github.com:/HOGEHOGE.git
git add -A
git commit -m init
git push origin master

で数秒で反映されます.



その他詰まったとことかメモ

  • github のリポジトリ名を間違えてて後から pishiko.github.io に変更してもうまく機能してくれなかった.
  • 画像とかは static ディレクトリにぶちこむ
  • テンプレートはそのまま弄っちゃだめ
  • https://realfavicongenerator.net/でファビコンレスポンシブ対応

これくらいですかね.テンプレートのカスタマイズは少し癖があるのですが,長くなったのでまた書きたいと思います.それ以外はシンプルで楽しいです.