summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2013-02-15 07:28:39 +0100
committerAndras Timar <atimar@suse.com>2013-02-15 10:25:09 +0000
commit2c4d36b7d6da9f9b578d903499844930f90c8faf (patch)
tree7f4581cb9c8bb56ce07284054cec726178b7afae
parentf10bb02eb3083a089e3ca28c45983e616ef84d58 (diff)
fdo#58283 produce all translations for desktop files
Change-Id: Ie97e1ae7b2cc059630cba682a051eefff3ca044b (cherry picked from commit 4a6f1853a2a15b938575406feada108443257536) Reviewed-on: https://gerrit.libreoffice.org/2162 Reviewed-by: Andras Timar <atimar@suse.com> Tested-by: Andras Timar <atimar@suse.com>
-rwxr-xr-xsysui/desktop/share/translate.pl25
1 files changed, 14 insertions, 11 deletions
diff --git a/sysui/desktop/share/translate.pl b/sysui/desktop/share/translate.pl
index c55ee25131d4..f67cb587e630 100755
--- a/sysui/desktop/share/translate.pl
+++ b/sysui/desktop/share/translate.pl
@@ -85,6 +85,8 @@ while (<SOURCE>) {
# For every section in the specified ulf file there should exist
# a template file in $workdir ..
$entry{'outfile'} = "$workdir/$prefix$template.$ext";
+ my %translations;
+ $entry{'translations'} = \%translations;
$templates{$template} = \%entry;
} else {
# split locale = "value" into 2 strings
@@ -102,8 +104,7 @@ while (<SOURCE>) {
$locale=~s/-/_/;
- $templates{$template}->{'locale'} = $locale;
- $templates{$template}->{'value'} = $value;
+ $templates{$template}->{'translations'}->{$locale} = $value;
}
}
}
@@ -134,15 +135,17 @@ foreach $template (keys %templates) {
$keyline =~ s/^$key/$outkey/;
print OUTFILE $keyline;
if (/$key/) {
- my $locale = $templates{$template}->{'locale'};
- my $value = $templates{$template}->{'value'};
- print "locale is $locale\n";
- print "value is $value\n";
- if ($value) {
- if ($ext eq "desktop") {
- print OUTFILE "$outkey\[$locale\]=$value\n";
- } else {
- print OUTFILE "\t\[$locale\]$outkey=$value\n";
+ my $translations = $templates{$template}->{'translations'};
+ foreach my $locale (keys %{$translations}) {
+ my $value = $translations->{$locale};
+ print "locale is $locale\n";
+ print "value is $value\n";
+ if ($value) {
+ if ($ext eq "desktop") {
+ print OUTFILE "$outkey\[$locale\]=$value\n";
+ } else {
+ print OUTFILE "\t\[$locale\]$outkey=$value\n";
+ }
}
}
}