X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=check-translations.sh;h=155029cbd4bbc573b0ba7133acfaff1286787687;hb=d517785bc54f6c2d9e12ea6f3f0fb8c148c500fc;hp=db8f3114c210909e1a475f51b3f645f4def92a18;hpb=616650bb18362024afeed71fed91d33dc1708d09;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/check-translations.sh b/check-translations.sh index db8f3114c..155029cbd 100755 --- a/check-translations.sh +++ b/check-translations.sh @@ -55,21 +55,43 @@ for VM in menu csprogs; do continue fi fi + msgmerge -F -U "$X" "$VM".dat.pot >&2 + msgattrib --untranslated "$X" | grep . > "$X".untranslated || rm -f "$X".untranslated + msgattrib --fuzzy "$X" | grep . > "$X".fuzzy || rm -f "$X".fuzzy + nu=$((`grep -c ^#: "$X".untranslated 2>/dev/null` + 0)) + nf=$((`grep -c ^#: "$X".fuzzy 2>/dev/null` + 0)) + n=$(($nu + $nf)) + changed=false for Y in ~/check-translations/"$X".*; do [ -f "$Y" ] || continue + if ! msgcat "$Y" >/dev/null; then + echo "File $Y has syntax errors. Skipped." + continue + fi + vim -E "$Y" < "$X".new mv "$X".new "$X" + changed=true done - msgmerge -F -U "$X" "$VM".dat.pot >&2 - msgattrib --untranslated "$X" | grep . > "$X".untranslated || rm -f "$X".untranslated - msgattrib --fuzzy "$X" | grep . > "$X".fuzzy || rm -f "$X".fuzzy - nu=$((`grep -c ^#: "$X".untranslated` + 0)) - nf=$((`grep -c ^#: "$X".fuzzy` + 0)) - n=$(($nu + $nf)) + nu0=$nu + nf0=$nf + if $changed; then + msgmerge -F -U "$X" "$VM".dat.pot >&2 + msgattrib --untranslated "$X" | grep . > "$X".untranslated || rm -f "$X".untranslated + msgattrib --fuzzy "$X" | grep . > "$X".fuzzy || rm -f "$X".fuzzy + nu=$((`grep -c ^#: "$X".untranslated 2>/dev/null` + 0)) + nf=$((`grep -c ^#: "$X".fuzzy 2>/dev/null` + 0)) + n=$(($nu + $nf)) + fi if [ $n -gt 0 ]; then echo "TODO for translation $X:" - echo "Untranslated: $nu" - echo "Fuzzy: $nf" + echo "Untranslated: $nu (was: $nu0)" + echo "Fuzzy: $nf (was: $nf0)" ltr=`grep '^"Last-Translator: ' "$X" | cut -d ' ' -f 2- | cut -d '\\' -f 1 | egrep -v '|'` ltm=`grep '^"Language-Team: ' "$X" | cut -d ' ' -f 2- | cut -d '\\' -f 1 | egrep -v '|'` echo "Translators: $ltr, $ltm"