/pidgin/main: eac4ec7a2532: Make NSIS translation processing mor...
Daniel Atallah
datallah at pidgin.im
Mon Oct 27 13:32:30 EDT 2014
Changeset: eac4ec7a253239b48eeb5a8a3d9cef08ea60321d
Author: Daniel Atallah <datallah at pidgin.im>
Date: 2014-10-27 13:30 -0400
Branch: release-2.x.y
URL: https://hg.pidgin.im/pidgin/main/rev/eac4ec7a2532
Description:
Make NSIS translation processing more robust - handle quotes within text
diffstat:
pidgin/win32/nsis/create_nsis_translations.pl | 24 +++++++++++++++++-------
1 files changed, 17 insertions(+), 7 deletions(-)
diffs (40 lines):
diff --git a/pidgin/win32/nsis/create_nsis_translations.pl b/pidgin/win32/nsis/create_nsis_translations.pl
--- a/pidgin/win32/nsis/create_nsis_translations.pl
+++ b/pidgin/win32/nsis/create_nsis_translations.pl
@@ -175,19 +175,29 @@ my %result;
open (MYFILE, $translations);
while (<MYFILE>) {
chomp $_;
- if ($_ =~ /Encoding=UTF-8/)
+ if ($_ =~ /^Encoding=UTF-8/ || $_ =~ /^\s*$/ || $_ =~ /^\[Desktop Entry\]/ || $_ =~ /^#/)
{
- next;
+ next;
}
elsif ($_ =~ /^(\w+)=(.*)/)
{
- my $line = "!define $1 \"$2\"\n";
- $result{"en"}{"$1"} = $line;
+ my $key = $1;
+ my $lang = "en";
+ my $value = $2;
+ $value =~ s/["]/\$\\"/g;
+ $result{"$lang"}{"$key"} = "!define $key \"$value\"\n";
}
- elsif ($_ =~ /^(\w+)\[(\w+)\]=(.*)/)
+ elsif ($_ =~ /^(\w+)\[([\w@]+)\]=(.*)/)
{
- my $line = "!define $1 \"$3\"\n";
- $result{"$2"}{"$1"} = $line;
+ my $key = $1;
+ my $lang = $2;
+ my $value = $3;
+ $value =~ s/["]/\$\\"/g;
+ $result{"$lang"}{"$key"} = "!define $key \"$value\"\n";
+ }
+ else
+ {
+ print "Found unrecognized line: '$_'\n";
}
}
close (MYFILE);
More information about the Commits
mailing list