Hugo V0.109.0がリリースされていた
2022-12-24Hugoがマイナーヴァージョンアップしていた。
Release v0.109.0 · gohugoio/hugo
主な機能追加としてはこんな感じ。
- SASS/SCSSに変数を渡せるようになった。
- Go言語のWorkspace機能が使えるようになった。
.Ancestors
メソッドの追加- PostCSS で
/public
へのパスが使えるようになった。
SASS/SCSSやPostCSS周りの変更はextend版を使わないと恩恵なさそうだし(もう、そちらの方が一般的なのだろうか)、Go言語のWorkspace機能はユーズケースがわからない。ただ、.Ancestors
は地味に便利そうで、公式ではパン屑リストの実装方法を紹介している。
<ol>
<ul>
{{- range .Ancestors.Reverse }}
<li><a href="{{ .Permalink }}">{{ .Title }}</a></li>
{{- end }}
<li class="active" aria-current="page">
<a href="{{ .Permalink }}">{{ .Title }}</a>
</li>
</ul>
</ol>
これは従来の公式だと、このように紹介されていた。
<ol class="nav navbar-nav">
{{ template "breadcrumbnav" (dict "p1" . "p2" .) }}
</ol>
{{ define "breadcrumbnav" }}
{{ if .p1.Parent }}
{{ template "breadcrumbnav" (dict "p1" .p1.Parent "p2" .p2 ) }}
{{ else if not .p1.IsHome }}
{{ template "breadcrumbnav" (dict "p1" .p1.Site.Home "p2" .p2 ) }}
{{ end }}
<li{{ if eq .p1 .p2 }} class="active" aria-current="page" {{ end }}>
<a href="{{ .p1.Permalink }}">{{ .p1.Title }}</a>
</li>
{{ end }}
{{ define "breadcrumbnav" }}
で定義されている部分を.Ancestors.Reverse
で定義できてしまう。セクションの階層構造を作るときに利用できそうな機能だ。