From ca4c75168a6f610240740b948bc53d9a1129b9f6 Mon Sep 17 00:00:00 2001 From: Martin Wurm Date: Wed, 3 Apr 2024 03:01:10 +0200 Subject: [PATCH] make homepage build deterministic :') --- content/{index.md => _index.md} | 0 layouts/index.html | 46 +++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) rename content/{index.md => _index.md} (100%) create mode 100644 layouts/index.html diff --git a/content/index.md b/content/_index.md similarity index 100% rename from content/index.md rename to content/_index.md diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..5f300bf --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,46 @@ +{{ define "body-class" }} + article-page + {{/* + Enable the right sidebar if + - Widget different from 'TOC' is enabled + - TOC is enabled and not empty + */}} + {{- $HasWidgetNotTOC := false -}} + {{- $TOCWidgetEnabled := false -}} + {{- range .Site.Params.widgets.page -}} + {{- if ne .type "toc" -}} + {{ $HasWidgetNotTOC = true -}} + {{- else -}} + {{ $TOCWidgetEnabled = true -}} + {{- end -}} + {{- end -}} + + {{- $TOCManuallyDisabled := eq .Params.toc false -}} + {{- $TOCEnabled := and (not $TOCManuallyDisabled) $TOCWidgetEnabled -}} + {{- $hasTOC := ge (len .TableOfContents) 100 -}} + {{- .Scratch.Set "TOCEnabled" (and $TOCEnabled $hasTOC) -}} + + {{- .Scratch.Set "hasWidget" (or $HasWidgetNotTOC (and $TOCEnabled $hasTOC)) -}} +{{ end }} + +{{ define "main" }} + {{ partial "article/article.html" . }} + + {{ if .Params.links }} + {{ partial "article/components/links" . }} + {{ end }} + + {{ partial "article/components/related-content" . }} + + {{ if not (eq .Params.comments false) }} + {{ partial "comments/include" . }} + {{ end }} + + {{ partialCached "footer/footer" . }} + + {{ partialCached "article/components/photoswipe" . }} +{{ end }} + +{{ define "right-sidebar" }} + {{ if .Scratch.Get "hasWidget" }}{{ partial "sidebar/right.html" (dict "Context" . "Scope" "page") }}{{ end}} +{{ end }}