Koozali.org: home of the SME Server

Attention translators - time to get organised

Offline gordonr

  • *
  • 646
  • +0/-0
    • http://www.smeserver.com.au/
Attention translators - time to get organised
« on: February 20, 2006, 12:43:11 AM »
Translators, we need your help. There is a Wiki page devoted to translations:

http://no.longer.valid/phpwiki/index.php/LanguageTranslationProject

However, it is quite out of date and refers to sites and lists which no longer appear to exist. In any case, all references should be to contribs.org, please.

If you would like to see your language included or updated, please edit  the Wiki page to add the language and nominate yourself as a coordinator or translator.

We need the following to ensure that translations can happen quickly and with minimum effort:

A translations manager
----------------------
This person would be responsible for:
- updating and maintaining the web page above
- monitoring the bug tracker for translation affecting changes
- splitting bugs for each language when changes are required
- liaising with the translation coordinators

Note: This person does not need to know any language other than English.

A nominated translation coordinator for each language
-------------------------------------------------------
This person would be responsible for:
  - liaising with all other translators for that language
  - attaching a complete updated translation to the relevant bug
  - working with the developers to get the translation updates packaged

NOTE: We need a translation coordinator for English. Yes, the base language is English, but the wording on the panels needs revision. We need someone to manage that, and then ensure the same changes are reflected in the other languages.

Any number of contributing translators for each language
--------------------------------------------------------
These people would work with the translation coordinator for their language to ensure complete and correct translations. They would also deal with regional language variations, preferably by achieving a translation suitable to all, if at all possible.

Someone to pull the translations into the smeserver-locale package
------------------------------------------------------------------
Gavin Weight and Franck Pierre have offered to do this. I have asked them to accept the files from the translation coordinators verbatim. After all, the coordinators are responsible for ensuring that their language files are correct.

A developer to work through the translations bugs
-------------------------------------------------
We have a few unlocalised strings, notably warnings in the server-manager header. We need someone to propose solutions to these issues (in the bug tracker).

Thanks,

Gordon

(unsticky covered in posting guidelines, how you can help)
............

Offline gregswallow

  • *
  • 651
  • +1/-0
Attention translators - time to get organised
« Reply #1 on: February 23, 2006, 12:42:42 AM »
I edited that wiki page a bit and removed the old info.  

Can someone that has done a full translation please create a short howto on how it is done please.

Offline grand-pa

  • *
  • 190
  • +0/-0
    • SME Server Fr
Attention translators - time to get organised
« Reply #2 on: February 24, 2006, 03:41:42 AM »
Quote from: "gregswallow"
Can someone that has done a full translation please create a short howto on how it is done please.
Sorry, I haven't enough time to learn the wiki language and edit the page. Hope someone will be able to update it with my little experience explanation (and correct all my english faults :-? ).
I don't know if this is the best way to work on translations, but here is what I did (or should have done) when v7.0b8 came out :

Work space :
I did all my work in a public i-bay. Here is my directories architecture :
Code: [Select]
html
  traduction      FYI, means translation in french
    fr_FR         contains all my working files but versions archives
      po          translated console .po files
      root        root directory
        etc       /etc directory with the translated manager files
          ...
    v7b8          first release I worked on
      po          original console POT files
      root        root directory
        etc       /etc directory with the original manager files
          ...
    v7b9          second release I worked on
      ...
    ...           et-caetera
If needed, you can see the content of my traduction directory.

Console translation :
This part is quite easy, you just have to copy and edit /usr/share/locale/en_US/LC_MESSAGES/*.po (let's call them POT). Each message has to be translated this way :
Code: [Select]
#: root/sbin/e-smith/console:134
msgid "Bad ttyname:"
msgstr "Nom de terminal TTY erroné :"

First line is a comment that tells where to find the message (/sbin/e-smith/console, line 134).
Second line is the original message. You mustn't change it !
Third line is the translation. Be careful not to use the double-quote character ("), or escape it.
If the message is too long, you can split it on as many lines as required. Be careful not to forget spaces at the end of the lines. For exemple :
Code: [Select]
#: root/sbin/e-smith/console:184
msgid "Consult the User Guide for further instructions."
msgstr ""
"Consultez la documentation utilisateur pour obtenir de plus amples "
"informations."

If your language translation doesn't exist, or needs corrections, you should consider working on a copy of the POT files and copy/paste relevant translations.
Otherwise, if it's the first time you work on the translation, you must verify that there is no missing messages on your version, compared to the original POT files.

I now consider you work on the server-console.po file (the most important file).
Once it is translated, you can test it. Here is what you can do to try it (modify the fr directory with the one for your language) :
- save existing translated file (same name, but .mo extension) : mv /usr/share/locale/fr/LC_MESSAGES/server-console.mo /usr/share/locale/fr/LC_MESSAGES/server-console.mo.saved
- compile your .po file : msgfmt -o /usr/share/locale/fr/LC_MESSAGES/server-console.mo server-console.po
- run the console and test as many panels as you can
If you find errors, modify .po file, compile it, test it, etc.
In case of problem, you can revert to the original file you saved.

Note 1 : if you need to work with your language .po files (yet translated POT files), you can obtain it one of these ways :
- de-compile .mo files : msgunfmt -o file.po file.mo
- get the latest source SRPM of smeserver-locale in the builds
Note 2 : on SME v6, msgfmt doesn't exist ; you must use msgfmt2.py (options are the same)
Note 3 : on SME v6, msgunfmt doesn't exist ; you must de-compile on SME v7

Manager translation :
All original files are XML files located in sub-directory of /etc/e-smith/locale/en-us/
If your language has yet been translated but need corrections, you can work on a copy of them and compare each entry of each file with the original ones. Otherwise, copy the tree structure of the original files and translate each message.
Here is an exemple of an original message in the starterwebsite panel :
Code: [Select]
 <entry>
 <base>SUCCESS</base>
 <trans>Successfully created starter web site (wrote file index.htm).
 You can visit your new website at the address below:</trans>
  </entry>
and its translation :
Code: [Select]
 <entry>
    <base>SUCCESS</base>
    <trans>Création réussie de votre premier site Web (écriture du fichier
    index.htm). Vous pouvez voir ce nouveau site Web à l'adresse suivante :</trans>
  </entry>
Warning : messages that need to include HTML tags must be tagged like this one :
Code: [Select]
 <entry>
    <base>DESC_SUBMIT</base>
    <trans><![CDATA[
      <p>Lorsque vous créerez cette page Web, le fichier "index.htm" sera
      écrasé dans le répertoire de votre site primaire.</p>

      <p><b>Voulez-vous continuer ?</b></p>
      ]]></trans>
  </entry>

To test your translated file, just copy it in its directory (eg. /etc/e-smith/locale/fr/etc/e-smith/web/functions/starterwebsite). You should save an existing file before copying it, in case of any problem.

Translations tested
Once you have tested your file(s), you can submit them to the bug tracker : create a new bug and submit an archive of the files (if possible, respect the tree structure described at the top of this message)
Gavin or I will update the smeserver-locale-* RPMs as soon as possible and after validation, it will be available via yum updates.

Original files modifications
As the SME development progresses, the original files may change ; and, of course, the translations must reflect these changes.
I personnaly backup original files of each developpment version of SME and then make a diff between the last and the previous version of the most interresting files (seen from the translator). This way, I can be (almost) sure not to forget any modification. See this message for more informations about the creation of the diif files.
In a neer future, I may create a new bug and attach all the diff files i have made, to help other translators to update their files.

Well, very tired (it's 5:30 AM here), need to go sleeping. I hope there aren't too much mistakes and i haven't forgotten too many things... :-o
SME Server v7.4 Server and gateway
Shuttle K45, Celeron E1400, 2x1Go DDR2, 2x250 Go SATA2 RAID-1

Offline Franco

  • *
  • 1,171
  • +0/-0
    • http://contribs.org
Attention translators - time to get organised
« Reply #3 on: February 25, 2006, 05:12:34 AM »
Quick question:
Are you having to translate at each release?

Offline grand-pa

  • *
  • 190
  • +0/-0
    • SME Server Fr
Attention translators - time to get organised
« Reply #4 on: February 25, 2006, 09:31:22 AM »
You only have to modify what have changed and to translate what have been added between two releases.

Between v6 and v7 there have had many additions, but most of the v6 translations are the same in v7. And between two minor releases, there is not a lot of differences. ;-)
SME Server v7.4 Server and gateway
Shuttle K45, Celeron E1400, 2x1Go DDR2, 2x250 Go SATA2 RAID-1

alejandro

Attention translators - time to get organised
« Reply #5 on: February 26, 2006, 05:04:19 AM »
Quote from: "grand-pa"

This part is quite easy, you just have to copy and edit /usr/share/locale/en_US/LC_MESSAGES/*.po (let's call them POT).


Grand-pa:
what programs should be used for editing and compiling in order not to have any problems with format and so....

I've being trying some files in spanish but I'd like to be sure before start.
 thanks

Gordon:
I'd like to volunteer as a translator / translator coordinator (spanish and it's variations) depending on skills (code related) and time required (specially for coordination tasks)  

Regards

Alejandro.

Offline grand-pa

  • *
  • 190
  • +0/-0
    • SME Server Fr
Attention translators - time to get organised
« Reply #6 on: February 26, 2006, 05:22:50 AM »
Quote from: "alejandro"
what programs should be used for editing and compiling in order not to have any problems with format and so....
As I mostly work on Windows, and I well know it, I use UltraEdit-32. But you could try poEdit, which is designed to work on .po files.
Otherwise, any text editor can do the trick. If you want to work directly on the server, vim is perfect. ;-)

Compiling (ie. converting .po <-> .mo files) is not required for translators as this will be automatically done while creating the RPMS.
For the moment, Gavin and I can create the smeserver-locale-*.rpm files.
SME Server v7.4 Server and gateway
Shuttle K45, Celeron E1400, 2x1Go DDR2, 2x250 Go SATA2 RAID-1

Offline grand-pa

  • *
  • 190
  • +0/-0
    • SME Server Fr
Attention translators - time to get organised
« Reply #7 on: March 17, 2006, 01:36:38 PM »
Please, all translators and translation coordinators, subscribe to the Translations mailing list.
SME Server v7.4 Server and gateway
Shuttle K45, Celeron E1400, 2x1Go DDR2, 2x250 Go SATA2 RAID-1

Offline Denbert

  • *
  • 156
  • +0/-0
    • hegnstoften.net
Attention translators - time to get organised
« Reply #8 on: April 08, 2006, 04:32:00 PM »
Hi,

I would like to give it a shot with a Danish translation, but I need some help getting started.

I’ve downloaded aspell-da-0.50-10.i386.rpm, but I need some guidance in the how to start up a brand new language on the SME 7.x

Anyone please guide me in the right directions?
/ Denbert
"Success is not final, failure is not fatal: it is the courage to continue that counts" - Sir Winston Churchill

Offline stephen noble

  • *
  • 607
  • +1/-0
    • Dungog
Attention translators - time to get organised
« Reply #9 on: April 09, 2006, 02:32:02 AM »
You may like to ask danish related questions here
http://bugs.contribs.org/show_bug.cgi?id=1082

this also goes on the translations mailing list so knowledgable users should be able to help

dkabanga

Attention translators - time to get organised
« Reply #10 on: May 10, 2006, 12:03:34 PM »
Would like to contribute for Indonesian language.

Thx,

Dkabanga

Offline Chrille

  • *
  • 45
  • +0/-0
Attention translators - time to get organised
« Reply #11 on: January 07, 2007, 03:49:55 AM »
Hi,

I have just finished the translation of 7.1 to Swedish and I would like to share my experience with you who is thinking about start the translating into your own language.

Starting point
I had an older version of the pot files for ver 7.0 pre 3 to start with and I updated those 5 files to SME 7.1 and then translated 35 files for the servermanager (both for SME 7.1 and some contribs, DAR, Subversion etc). It took me about 20-25 hours during two days. I'm have translated open-sorce software for approx 2 years now so I don't have any problems with the tools etc.

The guide in this thread helped me a lot, but I stumbled on some issues that wasn’t in the guide. Perhaps this will help others in translating the SME Server.

I had problems with contacting the people involved with the translation. I tried with normal e-mail a couple of times during several months but I got no contact.

However when I did a comment on the bugzilla for translations (in my case the Swedish translation bug http://bugs.contribs.org/show_bug.cgi?id=911 ) there was an almost immediate response.

Translation of LC-messagesin /usr/share/locale/en_US/LC_MESSAGES/*.po
I did as described in the post above.

For the translation of the LC_message files (5 at this time) I used WinMerge for comparing earlier versions of Swedish translation. I also did the update in WinMerge. After that I used the Microsoft Word spelling tool (with a copy of the file) to help me go through the text once more to find more typos. I updated the typos found, in WinMerg

At a last step I opened the files in poEdit and checked the files. There was one problem with a string that I found in poEdit that wasn’t discovered before.

I then posted the files in bugzilla, Swedish translation.

Translation of files for server manager in /etc/e-smith/locale/en-us/
I did as described in the forum above, but here I had some more questions

The translated files shall be put in a directory in /etc/e-smith/locale/ and in my case a new directory called “sv”

The server automatically switches to the language that is the language your browser has in the settings.

I started with putting all the en_us files in my “sv” directory and translated the files index.cgi and initial.cgi files. When I then browsed to the server manager and the text in the main frame was OK, but I got a error message in the left panel (and no admin links):

Quote

“Software error:
Couldn't open /home/e-smith/db/navigation/navigation.sv
For help, please send mail to the webmaster (admin), giving this error message and the time and date of the error. ”

In the navigation-files for other languages there was a text that sad: The links is automatically created and maintained by the SME server.


To have the SME server to create the navigational links for your server you have to (reference to mail answer in the bugtracker #911):


Quote

"....
Run /etc/e-smith/events/actions/navigation-conf

This happens during various events, but you'll need to do it manually during
testing. It's expensive, so we don't want to do it all the time. It will
probably be done a different way in future, but for now, just run the script
and the file should be created.

You'll also need to hack in a case entry in
/etc/e-smith/web/functions/pleasewait and thankfully this will be going away
soon.

.....



So when you have updated a new file you have to run the command:
Run /etc/e-smith/events/actions/navigation-conf
to be able to see the translated link in the left panel

In some files I can't find the string for the link and for the header in the left panel in the server manager. I'll continue my search for those strings in the morning. Perhaps the answer is here in the forum?


All for now..

:)

/Chrille

Offline stephen noble

  • *
  • 607
  • +1/-0
    • Dungog
Attention translators - time to get organised
« Reply #12 on: January 16, 2007, 05:40:18 AM »
there is a new wiki page for translations

http://smeserver.sourceforge.net/sme7/manual
http://smeserver.sourceforge.net/sme70/sme70/Manual/Chapter19

If grand-pa's instructions could be added by someone who has followed them it would probably make more sense than a copy and paste

Offline gordonr

  • *
  • 646
  • +0/-0
    • http://www.smeserver.com.au/
Attention translators - time to get organised
« Reply #13 on: January 16, 2007, 05:50:02 AM »
Quote from: "snoble"
there is a new wiki page for translations

http://smeserver.sourceforge.net/sme7/manual
http://smeserver.sourceforge.net/sme70/sme70/Manual/Chapter19

If grand-pa's instructions could be added by someone who has followed them it would probably make more sense than a copy and paste


I think the best eventual resting place for this information is the developer's guide.
............

Offline stephen noble

  • *
  • 607
  • +1/-0
    • Dungog
Attention translators - time to get organised
« Reply #14 on: January 16, 2007, 08:26:37 AM »
sure,
I'd hope your job could be made a easier by having the method explained clearer than it is now, hopefully you can correct it but not have to write it

same with the other changes, things can be moved around later
for now I'm after a one stop link for to get answers
and a place to write them up