Dictionaries
Contents
The dictionary name usually is something like `GermanDict` (some word ending with `Dict`). This default pattern can be changed (e.g. for non-english languages etc.), see page_dict_regex on HelpOnConfiguration.
The dict members are key/value pairs (both unicode strings).
Wiki Dicts
Defining them
You can create a dict definition for a dict named `GermanDict` by creating a page called `GermanDict` with this content:
#format wiki This translates some words from English to German: dog:: Hund cat:: Katze mouse: Maus
Important:
Dict members have to be on a first-level definition list (see HelpOnLists).
The leading space and the space after '::' are important.
- Everything else (other text, second-level items, etc.) is ignored.
Using them
Translation
MoinMoin uses `<Language>Dict` additionally to the builtin gettext based translations. E.g. if it wants to translate `cat` to German and doesn't find it in the .po file, it will try to look it up on `GermanDict` (and find `Katze` there, see the example above).
For the dictionary to work, the language name in `<Language>Dict` must match the value of the `x-language-in-english` header field, without spaces, which is found in the translation catalog for each language in `MoinMoin/i18n/` directory. For example, in `MoinMoin/i18n/pt-br.MoinMoin.po` you will find `"X-Language-in-English: Brazilian Portuguese\n"`. If you want to provide additional translations for that language, you create a page called `BrazilianPortugueseDict`.
Variables
See also HelpOnVariables.
Protecting them
You can use ACLs as usual to protect your dict pages.
Other ways to define dicts / access dict definitions
MoinMoin can also use dict definitions from other sources, but this needs to be configured in your wiki config. See `dicts` on HelpOnConfiguration.