Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index

Hi *,

On Wed, Apr 20, 2011 at 2:15 AM, Christian Lohmaier
<> wrote:

[broken translations that break the build]
So please fix those "Expected Symbol: Close tag for <tagname>" ones as
fast as possible, and have Andras upload them, otherwise chances are
that your language will just be skipped.

For your convenience, I wrote a awk one-liner to turn the error-log
into clickable URLs that will take you to the translation unit in

all in one single line - example for the fr.err log:

awk -F'\t' '$10!="en-US" { n=split($2, fp, /\\/); up=""; for (i=3;
i<n; ++i)( up=up "/"  fp[i]  ); if ($6 == "") su = ""; else su = "."
$6; print ""; $10
"/libo34x_" $4 up ".po/translate/?sfields=locations&search="  $5 su}'
< fr.err

would result in

the one-liner explained:

awk -F'\t'
tab is field seperator (I used awk, but of course you could do the
same with perl, sed,....)

we're not interested in the english original strings when creating the
URL, as the original string is displayed in pootle anyway (and the
10th field in the error-log is the language tag)

{ n=split($2, fp, /\\/); up=""; for (i=3; i<n; ++i)( up=up "/"  fp[i]  );
assemble the path of the file, i.e. turn
"source\text\schart\01\04050100.xhp" into "/schart/01" (.po is appended later)

 if ($6 == "") su = ""; else su = "." $6;
when there is a "sub-unit" (no idea how else you call it - i.e. when
there is par_id<whatever>.<subunit>, also use it.

 print ""; $10 "/libo34x_"
$4 up ".po/translate/?sfields=locations&search="  $5 su}'

assemble & print the URL<languagecode>/<project>/<filepath>/translate/?sfields=location&search=<paragraph-id>[<subunit>]

< fr.err

read the file "fr.err" as input


Unsubscribe instructions: E-mail to
Posting guidelines + more:
List archive:
All messages sent to this list will be publicly archived and cannot be deleted


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.