X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~cjwatson/git?p=bin.git;a=blobdiff_plain;f=rosetta-merge;h=2e8c1dab1e8f1ec88bb7c6e5b9de0fb60fb982d9;hp=9119bc9a6547d9174afcdaa266c3d02162823d3a;hb=cdb79bca0737bc6c9e39cad2076d392387bc0ff0;hpb=b30d72d311d269ce75c942c990af37e63e11fba7;ds=sidebyside diff --git a/rosetta-merge b/rosetta-merge index 9119bc9..2e8c1da 100755 --- a/rosetta-merge +++ b/rosetta-merge @@ -1,3 +1,29 @@ #! /bin/bash -[ -e ../../../rosetta-$1/$2.po ] || exit -msgmerge -q <(msgconv -t UTF-8 ../../../rosetta-$1/$2.po | msgattrib --no-obsolete -) <(msgconv -t UTF-8 $2.po | msgattrib --no-obsolete -) | msgmerge -q - <(msgconv -t UTF-8 $2.po | msgattrib --no-obsolete -) | diff -u --label $2.po <(msgconv -t UTF-8 $2.po) - + +APPLY=false +if [ "$1" = --apply ]; then + APPLY=: + shift +fi + +case $2 in + pa_IN) + ROSETTA_LANG=pa + ;; + *) + ROSETTA_LANG="$2" + ;; +esac + +[ -e $1/$ROSETTA_LANG.po ] || exit +msgmerge -q -N <(msgconv -t UTF-8 $1/$ROSETTA_LANG.po | msgattrib --no-obsolete -) *.pot | msgattrib --no-obsolete $MSGATTRIB_OPTS - | \ + if [ -e $2.po ]; then + msgmerge -q -N - <(msgconv -t UTF-8 $2.po | msgattrib --no-obsolete -) | msgattrib --no-obsolete - + else + cat + fi | \ + if $APPLY; then + sponge $2.po + else + diff -u --label $2.po <(msgconv -t UTF-8 $2.po) - + fi