#! /bin/bash
-APPLY=false
-if [ "$1" = --apply ]; then
- APPLY=:
- shift
-fi
+usage () {
+ [ "$1" = 0 ] || exec >&2
+ echo "Usage: $0 [--apply] [--keep-old] [--prefix PREFIX] SOURCE LANG"
+ exit "$1"
+}
-KEEP_OLD=false
-if [ "$1" = --keep-old ]; then
- KEEP_OLD=:
- shift
-fi
+die_getopt () {
+ echo "getopt failed" >&2
+ exit 1
+}
+APPLY=false
+KEEP_OLD=false
PREFIX=
-if [ "$1" = --prefix ]; then
- PREFIX="$2-"
- shift 2
-fi
+eval set -- "$(getopt -o '' -l apply,keep-old,prefix:,help -- "$@")" || die_getopt
+while :; do
+ case $1 in
+ --apply)
+ APPLY=:
+ shift
+ ;;
+ --keep-old)
+ KEEP_OLD=:
+ shift
+ ;;
+ --prefix)
+ PREFIX="${2%-}-"
+ shift 2
+ ;;
+ --help)
+ usage 0
+ shift
+ ;;
+ --) shift; break ;;
+ *) die_getopt ;;
+ esac
+done
+
+[ "$1" ] || usage 1
SOURCE="$1"
shift