Hugo再び

自分のブログをWordPressからHugoに戻すことにした。
WordPressはCMSとしてとても優れているが私には過剰だった。
機能が豊富で便利過ぎるが故に使いづらかった。

久しぶりにHugoをインストールした。
HugoはGitHubのReleasesからバイナリファイルをダウンロードした。
インストール先とバージョンは以下の通り。

1
2
3
4
5
$ which hugo
/usr/local/bin/hugo

$ hugo version 
hugo v0.100.2-d25cb2943fd94ecf781412aeff9682d5dc62e284+extended darwin/arm64 BuildDate=2022-06-08T10:25:57Z VendorInfo=gohugoio

Hugoはgoを必要とする。
goのページからインストーラーをダウンロードした。
インストール先とバージョンは以下の通り。

1
2
3
4
5
$ which go
/usr/local/go/bin/go

$ go version
go version go1.18.3 darwin/arm64

新しい記事を起こしたい時は以下のコマンドを使う。
後述する archetypes/default.org の用意が前提だ。

1
hugo new post/2022-06-11/index.org

このコマンドはHugoの仕組みのarchetype templateを使って所定の場所にファイルを作成する。
上の例では content/post/2022-06-11/index.org を作成する。

archetype templateは以下を使っている。
これは ./archetypes/default.org で保存している。

1
2
3
4
5
6
7
8
9
#+title: {{ replace .Name "-" " " | title }}
#+date: {{ .Date }}
#+slug:
#+draft: t
#+summary:
#+description:
#+categories[]:
#+tags[]:
#+keywords[]:

Front Matterの値はorg-mode形式でも使える。
https://gohugo.io/content-management/front-matter/ に以下の案内がある。

a group of Org mode keywords in the format ‘#+KEY: VALUE’. Any line that does not start with #+ ends the front matter section. Keyword values can be either strings (#+KEY: VALUE) or a whitespace separated list of strings (#+KEY[]: VALUE_1 VALUE_2).

話は変わるが改行をするために #+options: \n:t を使っても効果がなかった。
バックスラッシュを2つ入れれば改行はできる。

以下の資料を参照した。