From 17caeb985f606a7df18dd508aa1d15b74e8bfcdd Mon Sep 17 00:00:00 2001 From: "C. Lente" <7017340+clente@users.noreply.github.com> Date: Fri, 10 Feb 2023 16:31:47 -0300 Subject: [PATCH] Generalize translation menus --- .../content.pt/blog/markdown-syntax.md | 1 + exampleSite/content/blog/not-translated.md | 7 +++++ layouts/partials/nav.html | 26 ++++++++++++------- 3 files changed, 25 insertions(+), 9 deletions(-) create mode 100644 exampleSite/content/blog/not-translated.md diff --git a/exampleSite/content.pt/blog/markdown-syntax.md b/exampleSite/content.pt/blog/markdown-syntax.md index 59d8dd5..2e95a55 100644 --- a/exampleSite/content.pt/blog/markdown-syntax.md +++ b/exampleSite/content.pt/blog/markdown-syntax.md @@ -3,6 +3,7 @@ title: "Guia da sintaxe markdown" date: "2020-01-03" description: "Sample article showcasing basic Markdown syntax and formatting for HTML elements." tags: ["markdown", "syntax"] +slug: "sintaxe-markdown" --- For a quick cheatsheet, check out https://simplemde.com/markdown-guide. diff --git a/exampleSite/content/blog/not-translated.md b/exampleSite/content/blog/not-translated.md new file mode 100644 index 0000000..c7e0602 --- /dev/null +++ b/exampleSite/content/blog/not-translated.md @@ -0,0 +1,7 @@ +--- +title: "This File Was Not Translated" +date: "2023-02-03" +description: "An untranslated file" +--- + +Lorem ipsum. diff --git a/layouts/partials/nav.html b/layouts/partials/nav.html index b7e9f79..8e2dd90 100644 --- a/layouts/partials/nav.html +++ b/layouts/partials/nav.html @@ -1,15 +1,23 @@ {{ range .Site.Menus.main.ByWeight }} - <a href="{{ .URL | absLangURL }}">{{ .Name }}</a> + <a href="{{ absLangURL .URL }}">{{ .Name }}</a> {{ end }} -<a href='mailto:{{ .Site.Params.email }}?subject={{ i18n "email-subject" }}"{{ .Page.Title | default .Site.Title }}"'>Email</a> +<a href='mailto:{{ .Site.Params.email }}?subject={{ i18n "email-subject" }}"{{ default .Site.Title .Page.Title }}"'>Email</a> <a href="/index.xml">RSS</a> -{{ $pageLang := .Page.Lang }} -{{ if .IsTranslated }} - {{ range .Translations }} - {{ if ne $pageLang .Lang }} - <a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a> + +<!-- Convert this page's translations into a dict --> +{{ $translations := dict }} +{{ range .Translations }} + {{ $translations = merge $translations (dict .Language.Lang .) }} +{{ end }} + +<!-- Create a link to every translation --> +{{ range where .Site.Languages "Lang" "!=" .Page.Lang }} + {{ with (index $translations .Lang) }} + <a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a> + {{ else }} + <!-- The complicated setup was necessary to make a grayed out link --> + {{ if not .Params.hideUntranslated }} + <a class="disabled" href="">{{ .LanguageName }}</a> {{ end }} {{ end }} -{{ else if not .Site.Params.hideUntranslated }} - <a class="disabled" href="">{{ .Language.LanguageName }}</a> {{ end }}