luci/build/i18n-add-language.sh
Jo-Philipp Wich e6604d7d84 build: add i18n-add-language.sh helper
This script helps to initialize a new translation language over
the entire source tree.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-10 10:37:52 +01:00

37 lines
853 B
Bash
Executable file

#!/usr/bin/env bash
LANG=$1
case "$LANG" in
[a-z][a-z]|[a-z][a-z]-[a-z][a-z]) : ;;
*)
echo "Usage: $0 <ISO_CODE>\n" >&2
exit 1
;;
esac
ADDED=0
for podir in ./*/*/po; do
[ -d "$podir/templates" ] || continue
mkdir "$podir/$LANG"
for catalog in $(cd "$podir/templates"; echo *.pot); do
if [ -f "$podir/templates/$catalog" -a ! -f "$podir/$LANG/${catalog%.pot}.po" ]; then
msginit --no-translator -l "$LANG" -i "$podir/templates/$catalog" -o "$podir/$LANG/${catalog%.pot}.po"
git add "$podir/$LANG/${catalog%.pot}.po"
ADDED=$((ADDED + 1))
fi
done
done
if [ $ADDED -gt 0 ]; then
echo ""
echo "Added $ADDED new translation catalogs for language '$LANG'."
echo "Please also edit 'luci.mk' and add"
echo ""
echo " LUCI_LANG.$LANG=Native Language Name"
echo ""
echo "to properly package the translation files."
echo ""
fi