This is an old revision of the document!
Table of Contents
Localizing DokuWiki (the Software)
DokuWiki's user interface can be configured to use any language by setting the appropriate option in the config.
You can help translating DokuWiki to your language by visiting the DokuWiki Localization Hub. We recommend to join the I18N Mailing List to be informed when new strings are added and need to be translated.
Localizing DokuWiki and its plugins and templates
Most of DokuWiki and its plugins and templates only provide localization for English and some other languages. We encourage you to translate them into your native language.
Important things to keep in mind when translating:
- Please try to complete your countries main official language before starting another dialect.
- If you do major translation work it is recommended to check your translations in the development snapshot. This gives you the opportunity to correct errors and verify the layout in your language.
- In some languages words and sentences tend to get longer than the original English words. Keep in mind that your translation needs to work on any screen size and it often looks better if words are in line with other items on the page.
- When translating technical descriptions of external origin like the API's delivered by Github,Twitter , Google etc please read the external manual first. This is especially important for translating interfaces. Maybe a localized version of the manual or helppages is already at the external source and you can use all or part of these.
- As DokuWiki wants to be standards-compliant, consider learning about these regarding your language first. You can learn about correct spelling and interpunction from dictionaries or webpages maintained by public institutions.
- Always keep the format strings intact, i.e. identical. Strings like these
%1$d
and<i>%s</i>
and<strong>Update:</strong>
. The wordUpdate:
should be translated but the word<strong>
not.
Directions for consistent translations
At the consistent translations page you can find:
- some preferred translations for regularly used words
- and how to handle placeholder order in non-english strings.
Plugins
Plugin authors can register their plugin at the DokuWiki Localization Hub where you can easily help to translate the plugin.
If a plugin is not translatable via the hub you can do it manually:
- Copy the content of
lib/plugins/<pluginname>/lang/en/
to
lib/plugins/<pluginname>/lang/<ISO-code>/
- Zip up the new language folder and send it to the author for inclusion in future releases
For any further questions or general help you could send a mail to the I18N-Mailinglist or ask for help in the IRC-Channel.
Changing some localized texts and strings in your installation
There are many localized texts in DokuWiki like emails that are sent on registration, password forgotten, the text above the edit form, and more. Also the strings used in the buttons and links are translated. You can modify these by creating custom files with your version of the texts. This way your changes aren't overwritten on upgrades.
You can change these texts by copying the <name>.txt
files or copying some strings from lang.php
:
- from
inc/lang/<ISO-code>/
- to
conf/lang/<ISO-code>/
and editing the copied content.
You can do the same thing for plugins and templates by copying <name>.txt
or some strings from lang.php
:
- from
lib/plugins/<plugin>/lang/<ISO-code>/
- to
conf/plugin_lang/<plugin>/<ISO-code>/
- from
lib/tpl/<template>/lang/<ISO-code>/
- to
conf/template_lang/<template>/<ISO-code>/
Copy only strings from
lang.php
which you will modify. The remains strings are read from the original file.
Translating txt-files is possible since “Rincewind” 2011-04-22. Translating some strings from lang.php
since Release 2014-09-29 “Hrun”.
Example
Example of an English lang.php
file. This is possible for every language.
- conf/lang/en/lang.php
<?php /** * Customization of the english language file * Copy only the strings that needs to be modified */ $lang['btn_admin'] = 'Admin Panel';
Translating DokuWiki.org (the documentation)
Translating the DokuWiki documentation here at dokuwiki.org is encouraged. Translated pages are to be named like their English counterparts and stored in a separate namespace based on their ISO code. To make this easier the translation plugin adds links to existing and missing translations in the upper left corner of every page.
Only languages manually configured by the administrator are shown in the selector. If you want to add translations for a language currently not shown, just manually create the pages in the appropriate language subnamespace and send a mail to the I18N mailing list asking for your language to be added.
Translation Guidelines
- Feel free to create any missing translation
- Only pages in the top namespace should be translated
- Translated pages need to have the same (English) name as the original page
- Translated pages have to be stored in a sub namespace of the root namespace named by the ISO language code
- Please don't add stubs saying the page does not exist, yet.
- Please refrain from cluttering translations with credit lines – if you want to be recognized as translator, log in first
- A good starting point for translations is the manual
- You may also want to translate the sidebar to your language
Disabling translation feature for certain pages
Where translation is not sensible the ~~NOTRANS~~ macro should be inserted into the page.
See also
- Directions for consistent translations
- The I18N Team (translation team)