Table of Contents
Localizing DokuWiki (the Software)
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
<strong>Update:</strong>. The word
Update:should be translated but the word
Howto add a new language
To prevent spam, https://translate.dokuwiki.org/ only has languages which exist in the source code DokuWiki. To initiate a new language you can send a pull request with some translated lines or if you do not program you can open an issue in our Bug tracker. Please use ISO 639-1 (2-letter) and ISO 639-3 (3-letter) language code format, see… When accepted the language becomes available for easier translation via the translation tool.
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.
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
- Edit the contained
.txtfiles in a UTF-8 capable text editor
- Zip up the new language folder and send it to the author for inclusion in future releases
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
and editing the copied content.
You can do the same thing for plugins and templates by copying
<name>.txt or some strings from
Copy only strings from
lang.php which you will modify. The remaining 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 of an English
lang.php file. This is possible for every language.
<?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.
- 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.