Dictionaries

A dictionary is a simple data structure that maps a dictionary name to a set of key/value pairs. It can be used e.g. to provide additional translations.

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:

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.