Language¶
With the help of contributors, templates are localized into more than 60 languages, making it easy to create documentation sites in your preferred language.
Configuration¶
Site language¶
You can set the site language in your configuration file with:
HTML5 only allows to set a single language per document, which is why Zensical only supports setting a canonical language for the entire project.
The following languages are supported:
-
Afrikaans
afComplete -
Albanian
sqComplete -
Arabic
arComplete -
Armenian
hyComplete -
Azerbaijani
azComplete -
Bahasa Malaysia
msComplete -
Basque
euComplete -
Belarusian
beComplete -
Bengali (Bangla)
bnComplete -
Bulgarian
bgComplete -
Burmese
my27 translations missing -
Catalan
caComplete -
Chinese (Simplified)
zhComplete -
Chinese (Taiwanese)
zh-TWComplete -
Chinese (Traditional)
zh-HantComplete -
Croatian
hrComplete -
Czech
csComplete -
Danish
daComplete -
Dutch
nlComplete -
English
enComplete -
Esperanto
eoComplete -
Estonian
etComplete -
Finnish
fiComplete -
French
frComplete -
Galician
glComplete -
Georgian
ka27 translations missing -
German
deComplete -
Greek
elComplete -
Hebrew
heComplete -
Hindi
hiComplete -
Hungarian
huComplete -
Icelandic
isComplete -
Indonesian
idComplete -
Italian
itComplete -
Japanese
jaComplete -
Kannada
knComplete -
Korean
koComplete -
Kurdish (Soranรฎ)
ku-IQ13 translations missing -
Latvian
lvComplete -
Lithuanian
ltComplete -
Luxembourgish
lbComplete -
Macedonian
mkComplete -
Mongolian
mnComplete -
Norwegian Bokmรฅl
nbComplete -
Norwegian Nynorsk
nnComplete -
Persian (Farsi)
faComplete -
Polish
plComplete -
Portuguese
ptComplete -
Portuguese (Brasilian)
pt-BRComplete -
Romanian
roComplete -
Russian
ruComplete -
Sanskrit
saComplete -
Serbian
srComplete -
Serbo-Croatian
shComplete -
Sinhalese
si25 translations missing -
Slovak
skComplete -
Slovenian
slComplete -
Spanish
esComplete -
Swedish
svComplete -
Tagalog
tl3 translations missing -
Tamil
taComplete -
Telugu
teComplete -
Thai
thComplete -
Turkish
trComplete -
Ukrainian
ukComplete -
Urdu
urComplete -
Uzbek
uzComplete -
Vietnamese
viComplete -
Welsh
cyComplete
Site language selector¶
If your documentation is available in multiple languages, a language selector pointing to those languages can be added to the header. Alternate languages can be defined via configuration:
The following properties are required for each alternate language:
alternate.name-
This value of this property is used inside the language selector as the name of the language and must be set to a non-empty string.
alternate.link-
This property must be set to an absolute link, which might also point to another domain or subdomain not necessarily generated with Zensical. If it includes a domain part, it's used as defined. Otherwise the domain part of the
site_urlas set in your configuration is prepended to the link. alternate.lang-
This property must contain an ISO 639-1 language code and is used for the
hreflangattribute of the link, improving discoverability via search engines.
Directionality¶
While many languages are read ltr (left-to-right), Zensical also
supports rtl (right-to-left) directionality which is deduced from the
selected language, but can also be set with:
Click on a tile to change the directionality:
Customization¶
Custom translations¶
If you want to customize some of the translations for a language, just follow
the guide on theme extension and create a new partial in the overrides
folder. Then, import the translations of the language as a fallback and only
adjust the ones you want to override:
<!-- Import translations for language and fallback -->
{% import "partials/languages/de.html" as language %}
{% import "partials/languages/en.html" as fallback %} <!-- (1)! -->
<!-- Define custom translations -->
{% macro override(key) %}{{ {
"source.file.date.created": "Erstellt am", <!-- (2)! -->
"source.file.date.updated": "Aktualisiert am"
}[key] }}{% endmacro %}
<!-- Re-export translations -->
{% macro t(key) %}{{
override(key) or language.t(key) or fallback.t(key)
}}{% endmacro %}
-
Note that
enmust always be used as a fallback language, as it's the default theme language. -
Check the list of available languages, pick the translation you want to override for your language and add them here.