The POT in the zip has been uploaded to Templates and propagated across langs.

Project-Home.pot

The following langs have been populated with the provided strings:

de, es, fr, ja, pt, pt_BR, zh_CN

I will also do the three English variants (en, en_US, en_GB).

So at least now there is a means of capturing the strings in Pootle
via translating the Project-Home.po for a given language. Building the
.pr is left as a manual process for the moment.

Daniel, ask the Armenian team translate these few words:

http://translate.sugarlabs.org/hy/etoys_new/

On Wed, Oct 9, 2013 at 7:52 AM, Bert Freudenberg <b...@freudenbergs.de> wrote:
> On 09.10.2013, at 12:31, Chris Leonard <cjlhomeaddr...@gmail.com> wrote:
>
>> Bert,
>>
>> Would this POT capture everything that is needed?
>>
>> I can add it to Templates in Etoys and propagate it across langs.
>>
>> If you set it up in an SVN directory, we could even work on pushing it
>> to your repo, in the meantime, it would at least be in Pootle.
>
>
> I'm attaching a zip resulting from running the snippet below which exports 
> all translated strings from a project. In theory that could be used to 
> automate project translations in the future. And if someone makes the gallery 
> and tutorial projects translatable (by turning on the "translatable" property 
> on the right strings and providing one translation at least) we could use the 
> snippet to gather those strings, too.
>
> - Bert -
>
> | original translations msgids msgid msgstr ext |
> original := LocaleID isoString: 'en'.
> translations := Dictionary new.
> msgids := Dictionary new.
> World allMorphs do: [:m | (m isTextMorph and: [m translatable]) ifTrue: [
>         msgid := (m translations at: original) asString.
>         msgids at: m externalName put: msgid.
>         m translations keysAndValuesDo: [:k :v |
>                 (translations at: k ifAbsentPut: [Dictionary new])
>                         at: msgid put: v asString]]].
> translations keysAndValuesDo: [:locale :trans |
>         ext := locale = original ifTrue: ['.pot'] ifFalse: ['-', locale 
> asString,'.po'].
>         FileStream fileNamed: 'Project-', Project current name, ext do: [:f |
>                 f lineEndConvention: #lf.
>                 msgids keys asSortedCollection do: [:name |
>                         msgid := msgids at: name.
>                         msgstr := trans at: msgid.
>                         locale = original ifTrue: [msgstr := ''].
>                         f nextPutAll: '#: ', Project current name, '.pr ', 
> name; cr.
>                         f nextPutAll: 'msgid "', (msgid copyReplaceAll: 
> String cr with: '\n'), '"'; cr.
>                         f nextPutAll: 'msgstr "', (msgstr copyReplaceAll: 
> String cr with: '\n'), '"'; cr.
>                         f cr.]]]
>
_______________________________________________
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel

Reply via email to