hugo/docs/content/en/functions/lang.Merge.md
2018-12-12 09:06:42 +01:00

1,015 B

title description godocref workson date categories keywords menu toc signature workson hugoversion relatedfuncs deprecated draft aliases comments
lang.Merge Merge missing translations from other languages.
2018-03-16
functions
multilingual
docs
parent
functions
false
lang.Merge FROM TO
false false

title: lang.Merge description: "Merge missing translations from other languages." godocref: "" workson: [] date: 2018-03-16 categories: [functions] keywords: [multilingual] menu: docs: parent: "functions" toc: false signature: ["lang.Merge FROM TO"] workson: [] hugoversion: relatedfuncs: [] deprecated: false draft: false aliases: [] comments:

As an example:

{{ $pages := .Site.RegularPages | lang.Merge $frSite.RegularPages | lang.Merge $enSite.RegularPages }}

Will "fill in the gaps" in the current site with, from left to right, content from the French site, and lastly the English.

A more practical example is to fill in the missing translations from the other languages:

{{ $pages := .Site.RegularPages }}
{{ range .Site.Home.Translations }}
{{ $pages = $pages | lang.Merge .Site.RegularPages }}
{{ end }}

{{% note %}} Note that the slightly ugly .Scratch construct will not be needed once this is fixed: https://github.com/golang/go/issues/10608 {{% /note %}}