HUGOのテーマをPaperModに

HUGOのテーマをPaperModに変えた。
Anankeよりいろいろと機能が揃っているので、導入までは大変だったが、いまは満足しているので、備忘のために記す。

PaperMod

以下の通り。
デモサイトもあるよ。

hugo PaperMod

インストール

以下サイトに沿って実行。

Installatoin

まずgit clonehugoのトップディレクトリで実施。

git clone https://github.com/adityatelange/hugo-PaperMod themes/PaperMod --depth=1

PaperModを更新するときは以下のように。

cd themes/PaperMod
git pull

設定

なんかPaperModの作者さん、tomlよりもymlがお好きなようで、サンプルもymlで書かれている。
それに合わせてもいいけど、Hugoのデフォルトに合わせてtomlで書く。
サンプルはconvertsimple.comなど、野良の変換サイトを使えばいいんじゃないかな。

以下、tomlに変換したサンプルを示す。
長くなるので特に重要な箇所のみに限る。

baseURL = "https://nobwak.github.io"
title = "nobwak's Lair"
paginate = 50
theme = "PaperMod"
enableRobotsTXT = true
buildDrafts = false
buildFuture = false
buildExpired = false
googleAnalytics = "UA-123-45"
<snip>
  [params.homeInfoParams]
  Title = "nobwak's Lair"
  Content = "Where nobwak lives"

  [[params.socialIcons]]
  name = "twitter"
  url = "https://twitter.com/nobwak"

  # [[params.socialIcons]]
  # name = "github"
  #  url = "https://github.com/"

[params.analytics.google]
SiteVerificationTag = "XYZabc"
<snip>
[[menu.main]]
identifier = "posts"
name = "posts"
url = "/posts/"
weight = 10
  
[[menu.main]]
identifier = "search"
name = "search"
url = "/search/"
weight = 12

[[menu.main]]
identifier = "categories"
name = "categories"
url = "/categories/"
weight = 15

[[menu.main]]
identifier = "tags"
name = "tags"
url = "/tags/"
weight = 20
  
[[menu.main]]
identifier = "nobwaklair"
name = "nobwak lair"
url = "https://nobwak.github.io"
weight = 30
  
[outputs]  ## 後述の検索ページにはこれが必要。
home = ["HTML", "JSON"]

searchページの用意

PageModはこれが楽。
ディレクトリ中、content直下に以下の内容でsearch.mdというファイルを置くだけで検索ページを作ってくれる。
具体的には./content/search.mdですね。
なんと楽ちん。

---
title: "Search"
layout: "search"
summary: "search"
---