diff options
Diffstat (limited to 'tools/uplang')
-rwxr-xr-x | tools/uplang | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/tools/uplang b/tools/uplang index 4e581f600e..d290a79d37 100755 --- a/tools/uplang +++ b/tools/uplang | |||
@@ -8,7 +8,7 @@ MOO | |||
8 | exit; | 8 | exit; |
9 | } | 9 | } |
10 | 10 | ||
11 | my %ids; | 11 | my %ids, @ids; |
12 | open(ENG, "<$ARGV[0]"); | 12 | open(ENG, "<$ARGV[0]"); |
13 | while(<ENG>) { | 13 | while(<ENG>) { |
14 | if($_ =~ /^ *\#/) { | 14 | if($_ =~ /^ *\#/) { |
@@ -29,6 +29,7 @@ while(<ENG>) { | |||
29 | $all{$set{'id'}, 'voice'}=$set{'voice'}; | 29 | $all{$set{'id'}, 'voice'}=$set{'voice'}; |
30 | 30 | ||
31 | $ids{$set{'id'}}=1; | 31 | $ids{$set{'id'}}=1; |
32 | push @ids, $set{'id'}; | ||
32 | undef %set; | 33 | undef %set; |
33 | } | 34 | } |
34 | } | 35 | } |
@@ -62,21 +63,37 @@ while(<NEW>) { | |||
62 | if($set{'desc'} ne $all{$set{'id'}, 'desc'}) { | 63 | if($set{'desc'} ne $all{$set{'id'}, 'desc'}) { |
63 | print "### Description changed! Previous description was:\n", | 64 | print "### Description changed! Previous description was:\n", |
64 | "### \"".$set{'desc'}."\"\n"; | 65 | "### \"".$set{'desc'}."\"\n"; |
65 | $set{'desc'} = $all{$set{'id'}, 'desc'}; | 66 | print "desc: ".$all{$set{'id'}, 'desc'}."\n"; |
67 | } | ||
68 | else { | ||
69 | print "desc: ".$set{'desc'}."\n"; | ||
66 | } | 70 | } |
67 | print "desc: ".$set{'desc'}."\n"; | ||
68 | 71 | ||
69 | if($set{'eng'} ne $all{$set{'id'}, 'eng'}) { | 72 | if($set{'eng'} ne $all{$set{'id'}, 'eng'}) { |
70 | print "### English phrase was changed! Previous translation was made on:\n", | 73 | print "### English phrase was changed! Previous translation was made on:\n", |
71 | "### ".$set{'eng'}."\n"; | 74 | "### ".$set{'eng'}."\n"; |
72 | $set{'eng'} = $all{$set{'id'}, 'eng'}; | 75 | print "eng: ".$all{$set{'id'}, 'eng'}."\n"; |
76 | } | ||
77 | else { | ||
78 | print "eng: ".$set{'eng'}."\n"; | ||
73 | } | 79 | } |
74 | print "eng: ".$set{'eng'}."\n"; | ||
75 | 80 | ||
76 | if($set{'voice'} ne $all{$set{'id'}, 'voice'}) { | 81 | if($set{'id'} =~ /^VOICE_/) { # voice only, compare desc: |
77 | print "### Voice string was changed! Previous version was:\n", | 82 | if($set{'desc'} ne $all{$set{'id'}, 'desc'}) { |
78 | "### ".$set{'voice'}."\n"; | 83 | print "### Voice only: description changed! Voice set to english. Previous voice was:\n", |
79 | $set{'voice'} = $all{$set{'id'}, 'voice'}; | 84 | "### ".$set{'voice'}."\n"; |
85 | $set{'voice'} = $all{$set{'id'}, 'voice'}; | ||
86 | } | ||
87 | } | ||
88 | else { # standard entry, compare eng: | ||
89 | if($set{'eng'} ne $all{$set{'id'}, 'eng'} | ||
90 | #only if either original or translated voice: is non-empty | ||
91 | and ($set{'voice'} !~ /^(\"\")? *$/ | ||
92 | or $all{$set{'id'}, 'voice'} !~ /^(\"\")? *$/)) { | ||
93 | print "### English phrase was changed! Voice set to english. Previous voice was:\n", | ||
94 | "### ".$set{'voice'}."\n"; | ||
95 | $set{'voice'} = $all{$set{'id'}, 'voice'}; | ||
96 | } | ||
80 | } | 97 | } |
81 | print "voice: ".$set{'voice'}."\n"; | 98 | print "voice: ".$set{'voice'}."\n"; |
82 | 99 | ||
@@ -88,14 +105,15 @@ while(<NEW>) { | |||
88 | } | 105 | } |
89 | close(NEW); | 106 | close(NEW); |
90 | 107 | ||
91 | # output new phrases not already translated | 108 | # output new phrases not already translated , in english.lang order |
92 | for(sort keys %ids) { | 109 | for(@ids) { |
93 | if($ids{$_}) { | 110 | if($ids{$_}) { |
94 | my $id=$_; | 111 | my $id=$_; |
95 | print "\nid: $_\n"; | 112 | print "\nid: $_\n"; |
96 | print "desc: ".$all{$id, 'desc'}."\n"; | 113 | print "desc: ".$all{$id, 'desc'}."\n"; |
97 | print "eng: ".$all{$id, 'eng'}."\n"; | 114 | print "eng: ".$all{$id, 'eng'}."\n"; |
98 | print "### Not previously translated\n"; | 115 | print "### Not previously translated\n"; |
116 | print "voice: ".$all{$id, 'voice'}."\n"; | ||
99 | print "new: \n"; | 117 | print "new: \n"; |
100 | } | 118 | } |
101 | } | 119 | } |