やりたいこと
Hugoが出すコードを綺麗に整形する方法です。 半分くらいは自己満足ですが、HTMLが見やすいとメンテナンスしやすいです。
前提条件
Hugo 0.31で確認しています。
手順
Goテンプレートの空白制御機能を使います。
{{-
: この区切りの前の空白を削除-}}
: この区切りの後の空白を削除
基本は以下のように、前を削除です({{-
)。
<ul>
{{- range . }}
<li><a href="{{ .URL }}">{{ .Title }}</a></li>
{{- end }}
</ul>
partial/shortcodeで余計な改行が付くのを修正する
以下のようにpartial/shortcodeを使う場合に、最後に無駄な改行が付く場合は、
partial/shortcodeの最後に{{ "" -}}
を付けると良い場合があります1。
<ul>
{{- range . }}
{{ partial "li" . }}
{{- end }}
</ul>
-
partial/shortcodeファイルの最後が改行で終わらないようにしてもいいですが、あまりよろしくないので。。。 ↩︎