summaryrefslogtreecommitdiff
path: root/doc/todo/language_definition_for_the_meta_plugin.mdwn
blob: da1be7b933cac93ea7d686c973d944f54aa2cb66 (plain)

Here is a patch for the [[plugins/meta]] plugin. It adds the possibility to define the language used for a page, with [[meta lang="ja"]]

It doesn't insert the langage information in the xhtml meta elements, but defines a LANG variable to use in the templates, for example with

<html xmlns="http://www.w3.org/1999/xhtml"
      lang="<TMPL_IF NAME="LANG"><TMPL_VAR LANG><TMPL_ELSE>fr</TMPL_IF>"
      xml:lang="<TMPL_IF NAME="LANG"><TMPL_VAR LANG><TMPL_ELSE>fr</TMPL_IF>">

This way also allows to define a language for a subset of the final page, with custom templates and inclusion.

This may be useful for sites with a few pages in different languages, but no full i18n.

Looks good, but the need to modify the template and include a default language in it is a bit problimatic, I think. --[[Joey]]

--lang=XX could be a setup option, with a default value, then the template would be

            <html xmlns="http://www.w3.org/1999/xhtml" lang="<TMPL_VAR LANG>" xml:lang="<TMPL_VAR LANG>">

Yes, that seems reasonable. I guess there's no problem with defaulting to en if it can be overridden in the setup. --[[Joey]]

Yes, english default makes sense. I guess we should use the $config{lang}, defined from the setup file or command-line options to define the default language ($config{lang} defaults to en which is fine) if the html pages, and override it from the meta directive. — [[NicolasLimare]]

ikiwiki already has a $config{locale}, which is a full locale (ie, "en_US.UTF-8". This just needs to be parsed for the lang. --[[Joey]]

My mistake, I meant $config{locale} --[[NicolasLimare]]

[[tag wishlist patch plugin/meta translation]]