[OPEN-ILS-DEV] Angular6 update / input needed on template translation options

Ben Shum ben at evergreener.net
Thu Aug 16 08:37:23 EDT 2018


Hi Bill,

Spinning up a Pootle instance has been on our community to-do list for
awhile as part of our ongoing discussions about the desire/plans to
switch off Launchpad.  I started playing with this during the last
couple conferences locally in a VM on my laptop, but we still have yet
to agree on the exact hosting infrastructures necessary to implement
this for the wider community.  So "quickly" is a matter of getting
everybody back to the table to discuss specific deployment options.

Can you provide us with some sample generated Angular xliff files?
I'd like to do some of my own experiments on the content that we're
going to need to work with.

Also, I found the translate-toolkit help page for xliff2po amusing
where it basically tells us to expect bugs.  I'm wondering if perhaps
this is a problem with the various versions of xliff (1.2? 2.0?) that
seem to be around and perhaps the toolkit not supporting specific
elements in the transitions between PO and xliff at this time.

Thanks for noting the issues though, all the more reason to get Pootle
up and going in my book!

-- Ben


On Wed, Aug 15, 2018 at 11:09 AM, Bill Erickson <berickxx at gmail.com> wrote:
> Hi All,
>
> Now that others have installed and run the Angular 6 code, and we're on the
> home stretch for 3.2, I have started putting the finishing touches on the
> code in hopes we can merge for 3.2.
>
> The biggest changes since my last wiki update [1] are related to continued
> locale support.  The client now has a translation dialog component, which
> can be plugged in anywhere, and is currently used from the auto-magic admin
> UI for translating in-grid data (e.g. billing type names).
>
> I also set about integrating Angular 6 template translations into the
> Evergreen translation tool chain.  Here I hit my first real road block.
> Angular template translation tools do not support .PO files.  I did not
> expect this to be an issue, because translate-tookit (which we already use
> for managing translations) has utilities for cross-walking to and from XLIFF
> files (for Angular) and PO files (for Launchpad translations).
>
> However, after a number of experiments I have found the process results in
> critical loss of information.  First, the message IDs are jumbled, which can
> be fixed with a little bit of Perl.  Second, and most problematic, the
> interpolation values (in-text variables) are not correctly translated into
> PO files.
>
> For example:
>
> XLIFF:
> Add Record #<x id="INTERPOLATION" equiv-text="{{recId}}"/> to Bucket
>
> Translates to PO:
> Add Record # to Bucket
>
> Unless I'm just missing something, xliff2po is simply not up to the task of
> migrating XLIFF files generated by Angular.  Or, more likely, the .PO file
> format is not up to the task of storing the needed data.
>
> That leaves us with limited options for translating angular 6 templates in
> the short term.
>
> 1. We quickly spin up a translation service (e.g. Pootle, Weblate).
>
> 2. Translators edit the Angular XLIFF files by hand.  The files contain lots
> of context data and are generally pretty easy to understand, but it requires
> editing XML by hand -- no UI.
>
> Any other suggestions?
>
> Thanks,
>
> -b
>
> [1]
> https://wiki.evergreen-ils.org/doku.php?id=dev:browser_staff:angjs_to_ang_migration&s[]=angular&s[]=migration#notes



-- 
Benjamin Shum
Evergreener


More information about the Open-ils-dev mailing list