summaryrefslogtreecommitdiffstats
path: root/i18n-gen.sh
diff options
context:
space:
mode:
Diffstat (limited to 'i18n-gen.sh')
-rwxr-xr-xi18n-gen.sh108
1 files changed, 0 insertions, 108 deletions
diff --git a/i18n-gen.sh b/i18n-gen.sh
deleted file mode 100755
index a530281e..00000000
--- a/i18n-gen.sh
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/bin/bash
-
-#Calculates the direcory of the script in case it is run from another directory
-ROOT="${0%%i18n-gen.sh}"
-
-function usage() {
- cat <<EOT
-Usage: $0 <subcommand> language_code
-
-Available subcommands:
- init
- creates a new folder for a new language
- update
- updates an existing language file with new Strings from the sources
- gen
- generates the parsed language file
-
-update and gen also accept the wildcard language_code ALL
-
-Suggested Workflows (with XX as language_code):
- New Language
- 1. $0 init XX
- 2. translation of ${ROOT}i18n/XX/LC_MESSAGES/glances.po
- 3. $0 gen XX
- Update Language
- 1. $0 update XX
- 2. update translations of ${ROOT}i18n/XX/LC_MESSAGES/glances.po
- 3. $0 gen XX
-EOT
-exit
-}
-
-function gen_pot() {
- xgettext --language=Python --keyword=_ --output=${ROOT}i18n/glances.pot `find ${ROOT}glances/ -name "*.py"`
-}
-
-if [ $# != 2 ]; then
- usage
-fi
-
-OPERATION="$1"
-shift
-
-case "$OPERATION" in
- init)
- # If there is already a language file for specified language there is no need to generate a new one
- # doing so would result in a loss of all already translated strings for that language
- if [ -f "${ROOT}i18n/$1/LC_MESSAGES/glances.po" ]; then
- echo "Error:"
- echo "Language file for language $1 already exists"
- echo "Please run \"$0 help\" for more information"
- exit 1
- fi
- # Actual generation
- mkdir -p ${ROOT}i18n/$1/LC_MESSAGES/
- gen_pot
- msginit --locale="$1" --input=${ROOT}i18n/glances.pot --output=${ROOT}i18n/$1/LC_MESSAGES/glances.po
- exit 0
- ;;
- update)
- # When the language code is ALL fetch all language codes and save them
- # else test if the specified language code really exists
- if [ "$1" = "ALL" ]; then
- LANG_LIST="$(ls -d ${ROOT}i18n/*/ | awk -F / '{print $(NF-1)}')"
- else
- if [ ! -f "${ROOT}i18n/$1/LC_MESSAGES/glances.po" ]; then
- echo "Error:"
- echo "Language file for language $1 doesn't exists"
- echo "Please run \"$0 help\" for more information"
- exit 1
- fi
- LANG_LIST="$1"
- fi
- # regenerate the pot file so that it conatins the new strings and then update the language files accordingly
- gen_pot
- for i in $LANG_LIST; do
- msgmerge --update --no-fuzzy-matching --backup=off ${ROOT}i18n/$i/LC_MESSAGES/glances.po ${ROOT}i18n/glances.pot
- echo "Language file for language $i updated"
- done
- exit 0
- ;;
- gen)
- # When the language code is ALL fetch all language codes and save them
- # else test if the specified language code really exists
- if [ "$1" = "ALL" ]; then
- LANG_LIST="$(ls -d ${ROOT}i18n/*/ | awk -F / '{print $(NF-1)}')"
- else
- if [ ! -f "${ROOT}i18n/$1/LC_MESSAGES/glances.po" ]; then
- echo "Error:"
- echo "Language file for language $1 doesn't exists"
- echo "Please run \"$0 help\" for more information"
- exit 1
- fi
- LANG_LIST="$1"
- fi
- # compile the language files
- for i in $LANG_LIST; do
- msgfmt ${ROOT}i18n/$i/LC_MESSAGES/glances.po --output-file ${ROOT}i18n/$i/LC_MESSAGES/glances.mo
- echo "Compiled language file for language $i generated"
- done
- exit 0
- ;;
- *)
- # if anything other is entered as first argument print the usage overview
- # so, the message to run "i18n-gen.sh help" is a LIE but who cares since the cake was a lie in the first place!
- usage
- ;;
-esac