po plugin: added and documented PERCENTTRANSLATED template variable
[ikiwiki] / doc / translation.mdwn
1 If you want to translate your wiki into another language, there are
2 essentailly three peices needed for a complete translation:
3
4 1. The messages in the ikiwiki program itself need to be translated.
5    Ikiwiki is internationalised, and most such messages are already marked
6    with `gettext()`. THe source tarball includes a creates a `po/ikiwiki.pot`
7    that can be copied and translated as a po file. All very standard.
8
9    Note that a few things in the source are not currently translated. These
10    include:
11
12    * Error messages of the "should never happen" variety.
13    * Certian info in commit messages, which is not visible from inside the
14      wiki, but is visible in the commit logs. This needs to stay in English
15      so that ikiwiki can parse it back out of the logs.
16    * Some parts of FormBuilder forms, which should be translatable by
17      adding templates. Note that these forms don't need templates for the
18      English version.
19    * The name of the `index` page, which has a special meaning to browsers
20      anyway.
21    * The names of some other pages, like `sidebar` and `openid`.
22    * The names and values of parameters, both to the program, in the setup
23      file, and in preprocessor directives.
24
25 1. The templates also need to be translated. Some work has been done on an
26    infrastructure for maintaining translated templates, as documented in
27    [[todo/l10n]], but until that's complete, you'd need to copy and
28    translate the templates by hand.
29
30 1. The [[basewiki]] itself needs to be translated. Whether to only translate
31    the page contents, or also translate the page names, is an open
32    question.