X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=check-translations.sh;h=94a94f8e787e9a7e58fb0e4ebd5a6c9ccb63e411;hp=7e2ccf2023a934794a6f888ac69ddc4c88309345;hb=635a3c9a8a5c60e09e9449bf53128393d3355f20;hpb=33970c4865fd95c2cc984eca0e390ed05c071fc4 diff --git a/check-translations.sh b/check-translations.sh index 7e2ccf202..94a94f8e7 100755 --- a/check-translations.sh +++ b/check-translations.sh @@ -8,7 +8,7 @@ case "$1" in po) mode=po mail=true - language= + language=$2 ;; '') echo "Sorry, you are not supposed to use this script." @@ -41,8 +41,8 @@ for VM in menu csprogs; do if [ x"$VM" = x"csprogs" ]; then find qcsrc/server -type f -name w_\*.qc elif [ x"$VM" = x"menu" ]; then - find qcsrc/server -type f -name w_\*.qc | xargs grep ^REGISTER_WEAPON > /tmp/weapons.qc - echo "/tmp/weapons.qc" + find qcsrc/server -type f -name w_\*.qc | xargs grep ^REGISTER_WEAPON > weapons.qc.tmp + echo "weapons.qc.tmp" fi } | xgettext -LC -k_ -f- --from-code utf-8 -o "$VM".dat.pot >&2 fi @@ -54,22 +54,49 @@ for VM in menu csprogs; do if [ x"${X#*.dat.}" != x"$language.po" ]; then continue fi + else + if [ x"${X#*.dat.}" = x"en.po" ]; then + 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 + echo "Merging $Y..." + vim -E "$Y" </dev/null; then + echo "File $Y has syntax errors. Skipped." + continue + fi msgcat -F --use-first "$Y" "$X" > "$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" @@ -114,6 +141,9 @@ as you provided us with translations in the past, we kindly ask you to update the translation to match changes in the Xonotic source. Can you please work on them and provide updates to us? +For reference, the current version of the translation file is at: +http://git.xonotic.org/?p=xonotic/xonotic-data.pk3dir.git;a=blob;f=$X + If you do not wish to be contacted for translation updates any more, please tell us in a reply to this message. @@ -147,7 +177,7 @@ EOF -e "set use_envelope_from=yes" \ -s "Need update for translations: $X" \ -c "$cc" \ - -b "divVerent@xonotic.org" \ + -b "admin@xonotic.org" \ -a $attach -- \ "$to" break @@ -158,6 +188,8 @@ EOF esac done fi + else + echo "$X is complete!" fi done