International Website Translation: How to push po to website

Hi all,

For the http://zh-cn.libreoffice.org website, I found in the Pootle
server that almost all of the strings are translated, but on the website
it shows many strings untranslated, or out of date.

How can the translated po files on Pootle be pushed to the website? Is
there any further steps needed, just like the "pushing po in Pootle to GIT"?

Thanks

Kevin Suo 锁琨珑

Hi Rimas,

Hi Kevin,

2014.03.17 04:36, 锁琨珑 wrote:

For the http://zh-cn.libreoffice.org website, I found in the Pootle
server that almost all of the strings are translated, but on the website
it shows many strings untranslated, or out of date.

How can the translated po files on Pootle be pushed to the website? Is
there any further steps needed, just like the "pushing po in Pootle to GIT"?

website is a special type of project. For your translation to appear on
the website, someone has to check it out, convert to a
SilverStripe-specific PHP array format, and commit it to a certain
github repo (or clone that repo and make a pull request). That someone
is usually me, but it's not something I enjoy, so I only do that very
rarely. :slight_smile:

So to answer your question, you can either poke me to make the missing
steps, or you can do that yourself. I would prefer the latter, but if
that is too troublesome for you, I can help.

Is it documented somewhere so we can try to do it without bothering you
or if one day you're not available? Does the infra team have some notes
about the process?
Cheers
Sophie

Hi Kevin,

your updates, along with all others, have now been pushed to the git
repository. That doesn't mean they will appear in our website right
away, but they're much closer to that now.

Regards,
Rimas

2014.03.17 04:36, 锁琨珑 wrote:

Hi Sophie,

2014.03.19 17:38, Sophie wrote:

Hi Rimas,

website is a special type of project. For your translation to appear on
the website, someone has to check it out, convert to a
SilverStripe-specific PHP array format, and commit it to a certain
github repo (or clone that repo and make a pull request). That someone
is usually me, but it's not something I enjoy, so I only do that very
rarely. :slight_smile:

So to answer your question, you can either poke me to make the missing
steps, or you can do that yourself. I would prefer the latter, but if
that is too troublesome for you, I can help.

Is it documented somewhere so we can try to do it without bothering you
or if one day you're not available? Does the infra team have some notes
about the process?

No, this is not documented anywhere, and each time I do that, I rebuild my own knowledge about how I did it the last time. :slight_smile:

However, it seems that the last time I worked on this project, I wrote a couple shell scripts to reduce the amount of boring manual work. Also, I talked to Christian on IRC today, and he'll probably take over maintenance of this project from me, so I'll send the scripts to him.

BTW it might be better to create a new project (or split it into separate microprojects) instead. The four files that the website project currently hosts actually belong to three different websites: the main one, the extensions one and Google Play. Among these, the files for the main website are being altered and converted from php array format to gettext .po outside Pootle (that's what my shell scripts do). I think it might make sense to split resources that aren't originally in .po format into separate projects.

Rimas

Hi Sophie,

2014.03.19 17:38, Sophie wrote:

Hi Rimas,

website is a special type of project. For your translation to appear on
the website, someone has to check it out, convert to a
SilverStripe-specific PHP array format, and commit it to a certain
github repo (or clone that repo and make a pull request). That someone
is usually me, but it's not something I enjoy, so I only do that very
rarely. :slight_smile:

So to answer your question, you can either poke me to make the missing
steps, or you can do that yourself. I would prefer the latter, but if
that is too troublesome for you, I can help.

Is it documented somewhere so we can try to do it without bothering you
or if one day you're not available? Does the infra team have some notes
about the process?

No, this is not documented anywhere, and each time I do that, I rebuild
my own knowledge about how I did it the last time. :slight_smile:

oh, you're hard with yourself :wink: but thanks a lot for your work on this.

However, it seems that the last time I worked on this project, I wrote a
couple shell scripts to reduce the amount of boring manual work. Also, I
talked to Christian on IRC today, and he'll probably take over
maintenance of this project from me, so I'll send the scripts to him.

ok, great

BTW it might be better to create a new project (or split it into
separate microprojects) instead. The four files that the website project
currently hosts actually belong to three different websites: the main
one, the extensions one and Google Play. Among these, the files for the
main website are being altered and converted from php array format to
gettext .po outside Pootle (that's what my shell scripts do). I think it
might make sense to split resources that aren't originally in .po format
into separate projects.

ok I understand, did you talk about to Cloph too?
Cheers
Sophie

HI Rimas, Sorry for the late reply, but I was very busy these days.

于 2014年03月20日 03:58, Rimas Kudelis 写道:

Hi Kevin,
your updates, along with all others, have now been pushed to the git
repository. That doesn't mean they will appear in our website right
away, but they're much closer to that now.

Someone in our zh_cn website team has updated the zh_cn.php lang file
and made a pull request here on Mar 18:
https://github.com/tdf/cms-code/pull/11
We hope that is the right place to make a request. He did it by editing
the zh_cn.php file manually based on the po file in pootle, not using a
convert script. Until now seems the request has not yet been accepted,
no translation updates are appearing on the website.

I am confused that why it is so difficult for a change in the website
translation to take effect. Maybe it's better to directly edit the php
array on github, not using a po file on pootle?

Thank you very much for your help!

Kevin Suo 锁琨珑

Hello Kevin,

2014.03.22 03:04, Kevin Suo wrote:

HI Rimas, Sorry for the late reply, but I was very busy these days.

于 2014年03月20日 03:58, Rimas Kudelis 写道:

Hi Kevin,
your updates, along with all others, have now been pushed to the git
repository. That doesn't mean they will appear in our website right
away, but they're much closer to that now.

Someone in our zh_cn website team has updated the zh_cn.php lang file
and made a pull request here on Mar 18:
https://github.com/tdf/cms-code/pull/11
We hope that is the right place to make a request. He did it by editing
the zh_cn.php file manually based on the po file in pootle, not using a
convert script. Until now seems the request has not yet been accepted,
no translation updates are appearing on the website.

Yes, it is the right place to make a pull request. The reason it hasn't
been accepted is because (most likely) it has been obsoleted by my pull
request which has been accepted three days ago. You can find the diff
for your file here:
https://github.com/tdf/cms-code/pull/12/files#diff-24. Above the diff,
there is a link to view the file at its current status. If you still
want something changed, you should most probably rebase your diff on the
current version of the file.

I am confused that why it is so difficult for a change in the website
translation to take effect. Maybe it's better to directly edit the php
array on github, not using a po file on pootle?

It's not your fault. And yes, editing the array directly on github is
faster (or at least it was faster until now), but working with Git and
PHP arrays is not something that every localizer should figure out, so
we have Pootle. If you want to maintain your locale file directly on
Github, that's fine, but in that case, I would advise to have your
language disabled for the website project in Pootle, in order to avoid
confusion and possible translation conflicts.

Thank you very much for your help!

You are welcome!
Rimas