Re: Transifex
Patrick Gerken <do3ccqrv-gM/[email protected]> Mon, 20 May 2013 10:37:01 +0200
| Newsgroups | gmane.comp.web.zope.plone.internationalization |
|---|---|
| Message-ID | <CAFefbnEu8qEwxq-7yr-X5p1RtSSVA1APhvTO_-ZK=MfQ48ZoTA@mail.gmail.com> |
--===============6003367401363748251==
Content-Type: multipart/alternative; boundary=089e013a020ebc4c4004dd223d3c
--089e013a020ebc4c4004dd223d3c
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
H
=E2=80=8Bi,
based on the admix command of i18ndude, I created a trmerge command for
i18ndude. Trmerge accepts two po files.
It takes the first po file as the base and updates all translations from
the second po file. Translations existing only in the seconde po file are
added too. Comments of any sort are kept.
Shortcomings so far:
Fuzzy translations stay fuzzy.
Its the job of the committer to ensure that transifex contains the latest
version from github. Else one could accidentally override newer
translations with older translations from transifex.
The file gets rebuild, formattings in it get lost. Long strings that have
been broken into multiple lines become one string again, and the
information gets or5dered in specific ways. If comments and code comments
were ordered differently, i18ndude reorders them.; But the ordering is not
random so doing the import twice will not result in many changes.
I added the i18ndude as the source to experimental/i18n.cfg and added an
i18ndude part to install i18ndude.
I did not add i18ndude to autocheckout. If you want to try my changes, co
and activate i18ndude locally.
i'd love to get comments on this. I am going to use the toolchain to update
german translations.
Best regards,
Patrick
On Sun, May 19, 2013 at 4:47 PM, <do3cc-Hgn/qBBDvdzwVR/[email protected]> wrote:
> Based on the admix command of i18ndude, I created a trmerge command for
> i18ndude
> trmerge accepts two po files.
> It takes the first po file as the base, and updates all translations from
> the second po file. Translations existing only in the second po file are
> added too. Comments of any sort are kept.
>
> Shortcomings I identified so far:
> Fuzzy translations stay fuzzy.
> Its the job of the committer to ensure that transifex contains the latest
> version from github. Else one could accidently override newer translation=
s
> with
> older translations from transifex.
> The file gets rebuild, formattings in get lost. Long strings that have
> been broken into multiple lines become one string again, and the
> information
> gets ordered in specific ways. If comments and code comments were ordered
> differently, i18ndude reorders them. But the ordering is not random so
> doing the import twice will not result in many changes.
>
> I added i18ndude as the source to experimental/i18n.cfg and added an
> i18ndude part to install i18ndude.
> I did NOT add i18ndude to autocheckout. If you want to try my changes, co
> and activate i18ndude locally.
>
> I'd love to get comments on this. I am going to use the toolchain to upda=
te
> german translations.
>
> Best regards,
>
> Patrick
>
> Quoting Patrick Gerken (2013-05-18 10:50:49)
> > Yes, context info still gets lost in the po files. The importer only
> handles
> > msgid msgstr and fuzzy.
> >
> > Am 18.05.2013 08:42 schrieb "Jean-Michel FRANCOIS" <[email protected]>:
> >
> >
> > Hi,
> >
> > the last time we try it we found many issues with the plone process
> other
> > than just name of files but cab t remember it.
> >
> > may be msgid with real id instead of english like label_title_id an=
d
> the
> > fact that generated file remove the comments that we use to provide
> > context.
> >
> > Vincent Fretin do you remeber other issues ?
> >
> > it lakes quite a long time may be 2years so if you can spend times
> on this
> > to assure we can use it for plone core and or addons it would ve
> very nice.
> >
> > Le 17 mai 2013 18:15, "Patrick Gerken" <do3ccqrv-gM/[email protected]> a
> =C3=A9crit :
> >
> > Hi,
> >
> > I am playing with transifex for translating plone to german, an=
d
> I am
> > quite impressed.
> > Last time I looked at it, it had automatic svn integration and
> some
> > usable UI, but apparently things have changed.
> >
> > Nowadays I can import pot and po files and after that, I can
> configure
> > transifex to automatically download newer versions from any url=
,
> for
> > example the raw links from github.
> >
> > Additionally, it provides a command line client that is already
> > integrated in ubuntu repositories. With this command line
> client, I can
> > download updated translations from transifex to my local
> machine. I can
> > also upload new files, but I didn't try that.
> >
> > With these features, we can decide to use transifex on a per
> language
> > basis, without the need to implement anything special on github=
.
> >
> > The Translation UI is also nice, it has keyboard shortcuts and
> it tries
> > to offer suggestions for translations. I linked a screenshot I
> made
> > while translating that gives a good example. This helps a lot t=
o
> make
> > consistent translations.=E2=80=8B
> > [icon_10_ge] Screenshot from 2013-05-17 18:05:39.png
> > =E2=80=8B
> >
> > Throw dirt at me if this is old news, but I was quite surprised
> by the
> > functionality.
> >
> > For completeness sake, I had to modify the plone.pot file local=
ly
> > because of a msg id with empty lines, and the po files
> downloaded with
> > the command line client had not the right names and the directo=
ry
> > structure did not match the one of plone.app.locales, but if
> that is
> > not configurable I'd just script the renaming of updated po
> files.
> >
> > Best regards,
> >
> > Patrick
> >
> >
> -------------------------------------------------------------------------=
-----
> > AlienVault Unified Security Management (USM) platform delivers
> complete
> > security visibility with the essential security capabilities.
> Easily
> > and
> > efficiently configure, manage, and operate all of your security
> > controls
> > from a single console and one unified framework. Download a fre=
e
> trial.
> > http://p.sf.net/sfu/alienvault_d2d
> > _______________________________________________
> > Plone-i18n mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/plone-i18n
>
--089e013a020ebc4c4004dd223d3c
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">H<div class=3D"gmail_default" style=3D"font-family:courier=
new,monospace;display:inline">=E2=80=8Bi,<br><br></div><div class=3D"gmail=
_default" style=3D"font-family:courier new,monospace;display:inline">based =
on the admix command of i18ndude, I created a trmerge command for i18ndude.=
Trmerge accepts two po files.<br>
It takes the first po file as the base and updates all translations from th=
e second po file. Translations existing only in the seconde po file are add=
ed too. Comments of any sort are kept.<br><br></div><div class=3D"gmail_def=
ault" style=3D"font-family:courier new,monospace;display:inline">
Shortcomings so far:<br></div><div class=3D"gmail_default" style=3D"font-fa=
mily:courier new,monospace;display:inline">Fuzzy translations stay fuzzy.<b=
r></div><div class=3D"gmail_default" style=3D"font-family:courier new,monos=
pace;display:inline">
Its the job of the committer to ensure that transifex contains the latest v=
ersion from github. Else one could accidentally override newer translations=
with older translations from transifex.<br></div><div class=3D"gmail_defau=
lt" style=3D"font-family:courier new,monospace;display:inline">
The file gets rebuild, formattings in it get lost. Long strings that have b=
een broken into multiple lines become one string again, and the information=
gets or5dered in specific ways. If comments and code comments were ordered=
differently, i18ndude reorders them.; But the ordering is not random so do=
ing the import twice will not result in many changes.<br>
<br>I added the i18ndude as the source to experimental/i18n.cfg and added a=
n i18ndude part to install i18ndude.<br></div><div class=3D"gmail_default" =
style=3D"font-family:courier new,monospace;display:inline">I did not add i1=
8ndude to autocheckout. If you want to try my changes, co and activate i18n=
dude locally.<br>
<br>i'd love to get comments on this. I am going to use the toolchain t=
o update german translations.<br><br></div><div class=3D"gmail_default" sty=
le=3D"font-family:courier new,monospace;display:inline">Best regards,<br><b=
r>
</div><div class=3D"gmail_default" style=3D"font-family:courier new,monospa=
ce;display:inline">=C2=A0 =C2=A0 =C2=A0=C2=A0 Patrick <br></div></div><div =
class=3D"gmail_extra"><br><br><div class=3D"gmail_quote">On Sun, May 19, 20=
13 at 4:47 PM, <span dir=3D"ltr"><<a href=3D"mailto:do3cc@patrick-gerke=
n.de" target=3D"_blank">do3cc-Hgn/qBBDvdzwVR/[email protected]</a>></span> wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">Based on the admix command of i18ndude, I cr=
eated a trmerge command for i18ndude<br>
trmerge accepts two po files.<br>
It takes the first po file as the base, and updates all translations from<b=
r>
the second po file. Translations existing only in the second po file are<br=
>
added too. Comments of any sort are kept.<br>
<br>
Shortcomings I identified so far:<br>
Fuzzy translations stay fuzzy.<br>
Its the job of the committer to ensure that transifex contains the latest<b=
r>
version from github. Else one could accidently override newer translations =
with<br>
older translations from transifex.<br>
The file gets rebuild, formattings in get lost. Long strings that have<br>
been broken into multiple lines become one string again, and the informatio=
n<br>
gets ordered in specific ways. If comments and code comments were ordered<b=
r>
differently, i18ndude reorders them. But the ordering is not random so<br>
doing the import twice will not result in many changes.<br>
<br>
I added i18ndude as the source to experimental/i18n.cfg and added an i18ndu=
de part to install i18ndude.<br>
I did NOT add i18ndude to autocheckout. If you want to try my changes, co a=
nd activate i18ndude locally.<br>
<br>
I'd love to get comments on this. I am going to use the toolchain to up=
date<br>
german translations.<br>
<br>
Best regards,<br>
<br>
=C2=A0 =C2=A0 =C2=A0 Patrick<br>
<br>
Quoting Patrick Gerken (2013-05-18 10:50:49)<br>
<div><div class=3D"h5">> Yes, context info still gets lost in the po fil=
es. The importer only handles<br>
> msgid msgstr and fuzzy.<br>
><br>
> Am 18.05.2013 08:42 schrieb "Jean-Michel FRANCOIS" <<a hr=
ef=3D"mailto:[email protected]">[email protected]</a>>:<br>
><br>
><br>
> =C2=A0 =C2=A0 Hi,<br>
><br>
> =C2=A0 =C2=A0 the last time we try it we found many issues with the pl=
one process other<br>
> =C2=A0 =C2=A0 than just name of files but cab t remember it.<br>
><br>
> =C2=A0 =C2=A0 may be msgid with real id instead of english like label_=
title_id and the<br>
> =C2=A0 =C2=A0 fact that generated file remove the comments that we use=
to provide<br>
> =C2=A0 =C2=A0 context.<br>
><br>
> =C2=A0 =C2=A0 Vincent Fretin do you remeber other issues ?<br>
><br>
> =C2=A0 =C2=A0 it lakes quite a long time may be 2years so if you can s=
pend times on this<br>
> =C2=A0 =C2=A0 to assure we can use it for plone core and or addons it =
would ve very nice.<br>
><br>
> =C2=A0 =C2=A0 Le 17 mai 2013 18:15, "Patrick Gerken" <<a =
href=3D"mailto:do3ccqrv-gM/[email protected]">do3ccqrv-gM/[email protected]</a>> a =
=C3=A9crit=C2=A0:<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Hi,<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 I am playing with transifex for translatin=
g plone to german, and I am<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 quite impressed.<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Last time I looked at it, it had automatic=
svn integration and some<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 usable UI, but apparently things have chan=
ged.<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Nowadays I can import pot and po files and=
after that, I can configure<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 transifex to automatically download newer =
versions from any url, for<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 example the raw links from github.<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Additionally, it provides a command line c=
lient that is already<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 integrated in ubuntu repositories. With th=
is command line client, I can<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 download updated translations from transif=
ex to my local machine. I can<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 also upload new files, but I didn't tr=
y that.<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 With these features, we can decide to use =
transifex on a per language<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 basis, without the need to implement anyth=
ing special on github.<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 The Translation UI is also nice, it has ke=
yboard shortcuts and it tries<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 to offer suggestions for translations. I l=
inked a screenshot I made<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 while translating that gives a good exampl=
e. This helps a lot to make<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 consistent translations.=E2=80=8B<br>
</div></div>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 [icon_10_ge]=C2=A0Screenshot f=
rom 2013-05-17 18:05:39.png<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =E2=80=8B<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Throw dirt at me if this is old news, but =
I was quite surprised by the<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 functionality.<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 For completeness sake, I had to modify the=
plone.pot file locally<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 because of a msg id with empty lines, and =
the po files downloaded with<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 the command line client had not the right =
names and the directory<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 structure did not match the one of plone.a=
pp.locales, but if that is<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 not configurable I'd just script the r=
enaming of updated po files.<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Best regards,<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Patrick<br>
><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 ------------------------------------------=
------------------------------------<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 AlienVault Unified Security Management (US=
M) platform delivers complete<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 security visibility with the essential sec=
urity capabilities. Easily<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 and<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 efficiently configure, manage, and operate=
all of your security<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 controls<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 from a single console and one unified fram=
ework. Download a free trial.<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"http://p.sf.net/sfu/alienvault_=
d2d" target=3D"_blank">http://p.sf.net/sfu/alienvault_d2d</a><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 __________________________________________=
_____<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Plone-i18n mailing list<br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"mailto:[email protected]=
orge.net">[email protected]</a><br>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"https://lists.sourceforge.net/l=
ists/listinfo/plone-i18n" target=3D"_blank">https://lists.sourceforge.net/l=
ists/listinfo/plone-i18n</a><br>
</blockquote></div><br></div>
--089e013a020ebc4c4004dd223d3c--
--===============6003367401363748251==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
--===============6003367401363748251==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Plone-i18n mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/plone-i18n
--===============6003367401363748251==--