Extended --update-po option to take an optional argument specifying the po file to update.

This commit is contained in:
Sergey Poznyakoff
2004-08-08 14:19:49 +00:00
parent 56389381fc
commit df2c78e32b

View File

@@ -40,7 +40,7 @@ usage() {
--cvs-user=USERNAME Set the CVS username to be used when accessing --cvs-user=USERNAME Set the CVS username to be used when accessing
the gnulib repository. the gnulib repository.
--no-po Do not download po files. --no-po Do not download po files.
--update-po Update po files and exit. --update-po[=LANG] Update po file(s) and exit.
Running without arguments will suffice in most cases. It is equivalent Running without arguments will suffice in most cases. It is equivalent
to to
@@ -51,12 +51,21 @@ EOF
} }
update_po() { update_po() {
echo "$0: getting translations into po..." if [ $# = 1 ]; then
(cd po && case $1 in
rm -f dummy `ls | sed -n '/\.gmo$/p; /\.po/p'` && *.po) POFILE=$1;;
wget -nv -nd -r -l 1 -A .po -C off $TP_URL && *) POFILE=${1}.po;;
ls *.po | sed 's/\.po$//' >LINGUAS esac
) || exit echo "$0: getting translation for $1..."
wget -C off $TP_URL/$POFILE
else
echo "$0: getting translations into po..."
(cd po &&
rm -f dummy `ls | sed -n '/\.gmo$/p; /\.po/p'` &&
wget -nv -nd -r -l 1 -A .po -C off $TP_URL &&
ls *.po | sed 's/\.po$//' >LINGUAS
) || exit
fi
} }
# Parse options. # Parse options.
@@ -76,6 +85,8 @@ do
CVS_USER=`expr "$option" : '--cvs-user=\(.*\)'`;; CVS_USER=`expr "$option" : '--cvs-user=\(.*\)'`;;
--no-po) --no-po)
DOWNLOAD_PO=no;; DOWNLOAD_PO=no;;
--update-po=*)
DOWNLOAD_PO=`expr "$option" : '--update-po=\(.*\)'`;;
--update-po) --update-po)
DOWNLOAD_PO=only;; DOWNLOAD_PO=only;;
*) *)
@@ -84,10 +95,14 @@ do
esac esac
done done
if [ "$DOWNLOAD_PO" = "only" ]; then case $DOWNLOAD_PO in
update_po only) update_po
exit 0 exit 0
fi ;;
no|yes) ;;
*) update_po $DOWNLOAD_PO
exit 0
esac
echo "$0: Bootstrapping CVS tar..." echo "$0: Bootstrapping CVS tar..."