{{ if ne .Title .Site.Title }}{{ .Title }} - {{ end }} {{ .Site.Title }}
-
+{{- /* Description for the meta tag and the Open Graph card: the page's
+ description, else its summary, else the site description. */ -}}
+{{ $description := "" -}}
+{{ if .Description }}{{ $description = .Description }}{{ else if .IsPage }}{{ $description = .Summary }}{{ else }}{{ $description = site.Params.description | default "" }}{{ end -}}
+{{ $description = $description | plainify | htmlUnescape | replaceRE "\\s+" " " | strings.TrimSpace }}
+
-
-
+{{/* Open Graph is what link previews read (Mastodon, Bluesky, LinkedIn,
+ Facebook, Slack, and X, which falls back to it), so it is the only set of
+ social tags we emit. */ -}}
+
+
-
+
-
-
-
-
+
+
+
{{ with site.Home.OutputFormats.Get "RSS" -}}
{{- end }}