________________________________________ HOW TO DO A GOOD TRANSLATION FOR MPLAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ We always welcome new translations, but please be aware that translations are not just one time jobs. They have to be maintained in order to be useful. Otherwise they quickly get outdated and become obsolete, useless cruft. That said, we would be happy if you could maintain a new documentation translation. Documentation related discussions happen on the MPlayer-DOCS mailing list, while documentation translation related discussions happen on the MPlayer-translations mailing list. If you want to maintain a translation you should subscribe to both, as the English documentation Subversion changelogs, which you need to keep the translation up to date, are sent to MPlayer-DOCS. You can subscribe here: http://lists.mplayerhq.hu/mailman/listinfo/mplayer-docs http://lists.mplayerhq.hu/mailman/listinfo/mplayer-translations Send updates and patches to this mailing list or directly to the translation coordination maintainer, see DOCS/tech/MAINTAINERS for details. Experience shows that translations work best when done by teams. Not only can the workload be shared, but there is also the chance to review the translation. So if possible try to find more people to help out with translating. Furthermore, if you take over an unmaintained translation, bring the existing parts up-to-date before translating new ones. Outdated information is worse than missing information. For console messages and the XML documentation missing parts are automatically replaced by the English versions. Translations of MPlayer documentation consist of 3 parts in descending order of importance: 1) console messages (help/help_mp-XX.h) 2) man page 3) XML documentation Please note that only doing 1) or 1) + 2) is perfectly fine. You can find the latest versions of the help_mp-XX.h files in Subversion or here: http://svn.mplayerhq.hu/mplayer/trunk/help/ help_mp-en.h is the master file that you should use as a base for translations. If you are adopting an already existing translation, please check it from top to bottom once. Later it should suffice to just translate missing messages. Additionally, please make sure that your translated messages fit on an 80 character wide display to avoid overflowing output. TOOLS/mphelp_check.py is a small tool to check translated files. It will report conflicting arguments, strings not present in the master file and (optionally) strings missing from the translation. Running it as mphelp_check.py help_mp-en.h help_mp-XX.h will output errors to the screen, just substitute XX with your language code. mphelp_check.py -missing help_mp-en.h help_mp-XX.h will additionally print untranslated messages to the screen. If you do not translate all messages at once, please do not leave untranslated messages in your translated file, just leave them out instead. The MPlayer build system automatically checks for missing messages and uses the English ones instead. This has the added advantage of providing the latest versions of the English messages, since English messages in translations may be outdated. Furthermore, running help_diff.sh on your translated file will immediately show missing messages, which eases further translation. If no messages are missing, please add a line similar to /* Synced with help_mp-en.h rXXX */ to the file header, replacing XXX with the revision of help_mp-en.h that your translation is in sync with. This way we can easily tell if the translation is up to date or not. Please note that the help_mp files and the XML documentation are both encoded in UTF-8. Editing these files in a program which uses a different encoding will result in breaking console messages and HTML. Translations are for documentation what porting is for code. Many more eyes see it and get to find mistakes. If you stumble over mistakes, inaccuracies, clumsy wording, spelling/grammar errors or if you notice that something is incomplete, please let us know, we'll fix it. Patches are more than welcome, of course. Do not, however, change the translation first, please get your update into the English version first. If you have Subversion write access and commit a translation update file, use something like "synced with rXXX" as first line of the commit message so that it is possible to tell with a glance at the Subversion log or ViewVC if the translation is outdated and which revision of the English master file it is equivalent to. If you make (spelling/wording/consistency/etc) changes to a file without adapting parts that changed in the English master file, leave the sync tag as it is. If you make changes to the XML documentation, doublecheck that the documentation still builds by running make.