summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Johannes Schindelin <Johannes.Schindelin@gmx.de>2007-10-30 11:24:37 +0000
committerLibravatar Shawn O. Pearce <spearce@spearce.org>2007-11-01 00:00:30 -0400
commitf94872dfc18c2670c9eb4ed8528ba45943213f39 (patch)
tree2f9167673a2c315c1944277067bdb56ca06f6edb
parentgit-gui: Protect against bad translation strings (diff)
downloadtgif-f94872dfc18c2670c9eb4ed8528ba45943213f39.tar.xz
po2msg: ignore entries marked with "fuzzy"
As Christian Stimming pointed out, entries which are "fuzzy" need to be checked by human translators, and cannot be used. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r--po/po2msg.sh13
1 files changed, 11 insertions, 2 deletions
diff --git a/po/po2msg.sh b/po/po2msg.sh
index da0765dd80..48a2669967 100644
--- a/po/po2msg.sh
+++ b/po/po2msg.sh
@@ -48,12 +48,16 @@ for {set i 1} {$i < $argc} {incr i} {
}
proc flush_msg {} {
- global msgid msgstr mode lang out
+ global msgid msgstr mode lang out fuzzy
if {![info exists msgid] || $mode == ""} {
return
}
set mode ""
+ if {$fuzzy == 1} {
+ set fuzzy 0
+ return
+ }
if {$msgid == ""} {
set prefix "set ::msgcat::header"
@@ -64,6 +68,7 @@ proc flush_msg {} {
puts $out "$prefix \"[u2a $msgstr]\""
}
+set fuzzy 0
foreach file $files {
regsub "^.*/\(\[^/\]*\)\.po$" $file "$output_directory\\1.msg" outfile
set in [open $file "r"]
@@ -73,7 +78,11 @@ foreach file $files {
set mode ""
while {[gets $in line] >= 0} {
if {[regexp "^#" $line]} {
- flush_msg
+ if {[regexp ", fuzzy" $line]} {
+ set fuzzy 1
+ } else {
+ flush_msg
+ }
continue
} elseif {[regexp "^msgid \"(.*)\"$" $line dummy match]} {
flush_msg