Contents
- MoinMoin Translation
-
Introduction for new translators
- The master wikis
- What needs translation?
- How to work on the master wikis?
- Working online and offline
- Getting notified when something changes
- Check what needs to be done
- Creating a new translation from scratch
- Creating new pages
- Tips & Tricks, Questions and Answers
- Specific language topics, contacts and coordination
MoinMoin Translation
If you are new here, please begin reading with the Introduction for new translators below. We try to keep the important and current stuff at the top of this page.
master wikis
master19: was cloned from master18 at 2008-11-16 - we will do major docs changes for moin 1.9 (mostly WSGI / installation related) there.
- master18: you can still work on updates for next 1.8.x minor release there. for bigger work maybe rather use master19.
Fixes to do for 1.9
your SystemPagesIn<YourLanguage>Group defined the set of your translated system and help pages up to moin 1.8 - for moin 1.9, we don't use these group pages any more, but we moved those page names into the .po file (visible on the MoinI18n/xx page). So please, move the page names from your group page to your MoinI18n/xx page to the appropriate place (== the translation of the original english pagename). It is essential that you have the names of the pages you translated there, otherwise they won't be included in the page package for your language. - if you are editing your MoinI18n/xx page, there is a new "Check Translation" action in the menu - use it to see how moin maps the english page names to your page names
- please update your MoinI18n/xx page on master19 wiki
- Kill (for now) everything you translated from:
HelpOnInstalling and its subpages (will get a complete rewrite)
DesktopEdition page (already gone)
HelpOnConfiguration/IntegratingWithApache
HelpOnConfiguration/ApacheVoodoo
HelpMiscellaneous*
- smaller changes on other pages:
HelpOnConfiguration - remove references to deleted sub pages
HelpForAdministrators (remove sentence referencing DesktopEdition)
remove links to (your translation of) SyntaxReference
link to (your translation of) HelpOnMoinWikiSyntax
remove your translation of SyntaxReference
remove links to (your translation of) MoinMoin/TextFormatting
link to (your translation of) HelpOnMoinWikiSyntax
remove your translation of MoinMoin/TextFormatting
Fixes to do for 1.8
All master17 content was cloned into master18 wiki at 2008-08-30.
We want to release 1.8 at about 2008-11-01 - please help updating the translations there and concentrate your work on 1.8 (of course you can also do minor, but important fixes to master17 content, but in case you don't want to do everything twice, we recommend you do most stuff in master18 wiki).
Some translators obfuscated their email address in last-translator field in the po file. While I can understand the reasons for doing this, I just want to note that by doing this, you make it impossible to get automated notifications sent to you. See moin maint mailtranslators script - I usually run this once or twice when a new major release is at the horizon. If you are regularly watching moinmaster wikis, you maybe don't need "wakeup" mails, but in case you do not regularly watch, maybe better do not obfuscate your email address there. -- ThomasWaldmann 2008-09-20 08:48:14
Alternatively, you could also subscribe to the MoinI18n/de page to get notified if stuff changes there (usually this is one of the first languages that gets updated, as it is maintained by moin development).
The editor quickhelp translation needs fixing for quite some languages - just remove the <<Verbatim( and )>> from the quickhelp section about headlines.
Fixes to do for 1.7
This section is about 1.7 ONLY - the stuff your read here might NOT apply to 1.8.
most languages are rather incomplete - if you know a non-english language, go to http://master17.moinmo.in/MoinI18n and check if your language's subpage shows complete translation (if it tells about untranslated or fuzzy strings, there is work to do!).
please check your language's MoinI18n subpage on master17 again, we had to do some late changes to fix some bugs/problems.
please fix pages on master17 which contain "Action(edit&template" to the new syntax of the macro (see the english pages)
Please make sure we don't have to re-open this bug: MoinMoinBugs/SystemPagesInXXGroupIncomplete
The editor quickhelp translation needs fixing for quite some languages - just remove the <<Verbatim( and )>> from the quickhelp section about headlines.
Verbatim with attachment message not needed in 1.7
# old (1.5 and 1.6): msgid "attachment:%(filename)s of %(pagename)s" msgstr "<<Verbatim(attachment:)>>%(filename)s für %(pagename)s" # new (1.7) - Verbatim macro not needed any more: msgid "attachment:%(filename)s of %(pagename)s" msgstr "attachment:%(filename)s für %(pagename)s"
Please have a correct ##master-page: line!
Please help fixing missing entries for master-page, master-date.
Please make sure that your pages have a correct ##master-page: line. That line is a comment to identify which original page you used for translation. The scripts that are used to build the underlay archive automatically fix ACLs based on that line (and it won't put ACLs on Template pages!).
We have lots of pages incorrectly telling ##master-page:HelpTemplate. Of course this is not correct, except for the single page that was created as a translation of HelpTemplate for your language.
Do a full text search like this:
-#acl "#language en"
It should only show the english versions of FrontPage, WikiSandBox and *Template, but not any non-english pages. Fix the #language xx line to have the correct language identifier for your language.
Then run the full text search again like this:
-#acl "#language xx"
(xx being your language identifier) and fix all pages that are not translations of FrontPage, WikiSandBox and *Template to have a correct ##master-page: originalpagenameinenglish line.
Please check your category pages
The way category search works has slightly changed, see the english pages (e.g.: CategoryCategory ) and fix your translated pages.
Introduction for new translators
MoinMoin is translated into many languages (thanks to our translators!).
The master wikis
The texts that need to be translated are all kept on the MoinMaster wikis (these are separate wiki sites, that only keep the master copies of the translations - no homepages, no discussion, no other stuff there).
To make it easier to maintain and develop different releases at the same time, we have multiple master wikis (and we try to run the master wikis with the respective software version, if possible):
http://master16.moinmo.in/ - this is for moin 1.6 release
http://master17.moinmo.in/ - this is for moin 1.7 release
Hints for choosing the right master wiki:
- If you like to quickly improve the current stable release, do it in the respective wiki - your changes are likely contained in 1.x.y+1 release then.
If you like to have those changes also in future release, you will have to do your changes in the development master wiki also.
- If you do major changes, it is recommended to use the current development master wiki.
- Expect some fluctuations on the master wiki of the development version while we develop it.
What needs translation?
The MoinMoin software has some texts built-in into the software. Those texts are in English and we use xgettext to extract those texts into so-called *.po-Files. Those files are text files and contain the original english text (msgid) and the translator then adds his translation below (msgstr). For easy editing and updating those files, we import them into the master wikis as pages MoinI18n/xx where xx is the 2 char language code of the target language. E.g. the French (fr) PO file is at MoinI18n/fr.
We also have text to translate on so-called system pages (wiki pages that are used by the wiki system to realize some functionality). E.g. the page RecentChanges is a system page and needs to get translated into the target language - for german. These pages are also kept on the master wikis.
There is another kind of wiki pages needing translation: the help pages (this is MoinMoin's documentation), e.g. HelpContents.
How to work on the master wikis?
Before working on the master wikis, please read EditingOnMoinMaster.
Please keep and maintain all internationalization (short: i18n) content there:
*.po files' content is kept on the MoinI18n/xx pages
- help and system pages
This makes sure they get into the distribution automatically.
Working online and offline
The master wikis use utf-8 encoding and the preferred way for doing translations is doing them using the wiki (if you prefer using your own offline editor, then leave a remark on that wiki page before starting, download the content (raw action), edit it, remove the remark, and upload it again - and don't keep uncommitted work off the wiki for more than a few hours. If you have to stop working on it, commit your changes to the wiki page, so other's can work while you do other things).
From time to time, we include the content of the master wikis into the moin code repository we us for development.
Be aware of that you won't see realtime updates in the wiki you are working in with the i18n work you have done.
Getting notified when something changes
- subscribe to THIS page
- subscribe to the
subscribe to the MoinI18n/de page on the master wikis. Many moin core developers speak german (Language code "de") and update that page rather quickly if there is something to do.
put a correct email address into the metadata section of your MoinI18n/xx page - you will receive notifications when we are preparing a new release then.
Check what needs to be done
To see the status of system texts, look at MoinI18n/xx (xx is the language code of your language). We use a special parser for those pages that tells you how complete the translation of system texts is, how many fuzzy strings there are, how many untranslated strings, errors, etc.
To see status of system and help page translation, see the SystemPagesGroup and SystemPagesInXxxGroup pages on the master wikis.
You can check whether your SystemPagesInXXXXXGroup is complete by looking on TitleIndex from time to time - when not including system pages, it should be almost empty (at least you should not see any of your translated pages). Please add your translated "FrontPage" to your SystemPagesInXXXGroup - as we have underlay now, there is no reason to handle it separately any longer.
You do NOT need to translate pages intended only for system administrators (including HelpForAdministrators, HelpOnConfiguration, HelpOnInstalling, HelpOnAdministration, and HelpOnSynchronisation).
Creating a new translation from scratch
Make an equivalent page of SystemPagesInEnglishGroup for your language, listing all system pages of your translation (and also common pages you use untranslated, like SystemInfo).
Add a link to that group page to SystemPagesGroup.
create a page MoinI18n/xx (xx being your language code) with the contents of MoinMoin/i18n/MoinMoin.pot (you could also use a copy of a different and already translated MoinI18n/xx page, especially if that helps you with translating, because that language is better understood than just English is).
translate!
start with the system texts (MoinI18n/xx)
continue with important system pages (like translation of RecentChanges etc.)
- finally do the help pages
Creating new pages
Mark each new page with its language, by adding a line like "#language:en" to the very top of the page (replace en with the appropriate ISO language tag). Also, add lines "##master-page:NameOfMaster" and "##master-date:ISO date stamp of master page".
Order is not important - but all #xxx lines have to be at top.
Example (Danish translation "HjemmesideSkabelon" of the master page "HomepageTemplate"):
##master-page:HomepageTemplate ##master-date:2001-11-30 21:30:20 #language:da == Dit Navn == Email: dig@dem.dk ... ---- KategoriHjemmeside
Those tags are not used by moin yet, but can be used by grep or by translators to see if a page is outdated.
Tips & Tricks, Questions and Answers
Note that <<GetText(text)>> was added to enable help pages to refer to features as the user sees them, e.g. "EditText".
- How should i18n of templates be done?
Q: Should translated HelpTemplate be named HjaelpTemplate (templates for all languages are listed together) or HjaelpSkabelon (requires setting page_template_ending)? Maybe add "Template" as SYSTEM_PAGE, so that page_template_ending changes automagically?
- A: When doing the system pages group stuff, I found setting the group regex to ([a-z]Gruppe$)([a-z]Group$) is best for German.
Q: I'm going to upload the Galician translation, but what happens if the translated page has the same name in other language? How to upload to MoinMaster? (InterWiki, WebWikiWiki in French, NomeWiki in Italian)
- A: Currently there is no other way than finding a different page name for the translation or just using the English (or other language's) page "as is".
If you have to make URL examples (http or mailto), be sure to use ONLY the reserved domain names example.(com|net|org) (i.e. http://www.example.com or user@example.com ), or the .example TLD, as defined in RfC 2606 – do not translate them to beispiel.com or whatever.
Specific language topics, contacts and coordination
All language specific stuff about translation, language maintainer contacts, discussion, etc. should be kept on a page in this wiki that ends with Translation, just like those in the following list:
- ArabicTranslation
- BengaliTranslation
- BrazilianPortugueseTranslation
- BulgarianTranslation
- CatalanTranslation
- CategoryTranslation
- ChineseTranslation
- CroatianTranslation
- CzechTranslation
- DanishTranslation
- DutchTranslation
- EasyToDoTranslation
- FeatureRequests/PrecedenceTranslation
- FeatureRequests/PrecedenceTranslation/current_translation
- FinnishTranslation
- FrenchTranslation
- GalicianTranslation
- GermanTranslation
- HebrewTranslation
- HindiTranslation
- HindustaniTranslation
- IrishTranslation
- ItalianTranslation
- JapaneseTranslation
- KhadyaNiti/hiContextTranslation
- KhadyaNiti/hiTermsTranslation
- KhadyaNiti/hiWordsTranslation
- KoreanTranslation
- KurdishTranslation
- LatvianTranslation
- MoinDev/Translation
- MoinDev/VietnameseTranslation
- MoinMoinTranslation
- MongolianTranslation
- NorwegianTranslation
- PolishTranslation
- RomanianTranslation
- RussianTranslation
- SerbianTranslation
- SlovakTranslation
- SlovenianTranslation
- SpanishTranslation
- SwedishTranslation
- TurkishTranslation
- UkrainianTranslation
- VietnameseTranslation
