summaryrefslogtreecommitdiff
path: root/libre/icedove-l10n/updatelanglist.sh
diff options
context:
space:
mode:
Diffstat (limited to 'libre/icedove-l10n/updatelanglist.sh')
-rw-r--r--libre/icedove-l10n/updatelanglist.sh17
1 files changed, 15 insertions, 2 deletions
diff --git a/libre/icedove-l10n/updatelanglist.sh b/libre/icedove-l10n/updatelanglist.sh
index 1d9ad9583..840cac697 100644
--- a/libre/icedove-l10n/updatelanglist.sh
+++ b/libre/icedove-l10n/updatelanglist.sh
@@ -17,13 +17,26 @@ echo "_sha512sums=(" > "sha512sums.$CARCH.pkgnew"
mkdir -p src
+# prepare list of translated language names from en-US locale
+curl -s -o src/en-US.xpi "${url%/}/en-US.xpi"
+unzip -p src/en-US.xpi localization/en-US/toolkit/intl/{languageNames,regionNames}.ftl > src/langnames
+
+# prepare list of translations
for lang in $(curl -sL "$url" | grep '\.xpi' | cut -d'"' -f2 | rev | cut -d'/' -f1 | cut -d'.' -f2 | rev | sort); do
printf "\r %-3s..." "${lang%%-*}"
curl -s -o src/"$lang.xpi" "${url%/}/$lang.xpi"
sha512sum="$(sha512sum "src/$lang.xpi" | cut -d' ' -f1)"
- name="$(unzip -p "src/$lang.xpi" manifest.json | grep " \"name" | cut -d':' -f2- | cut -d'"' -f2)"
- printf " '%-5s \"%s\"'\n" "$lang" "$name" \
+ native_name="$(unzip -p "src/$lang.xpi" manifest.json | grep " \"name" | cut -d':' -f2- | cut -d'"' -f2)"
+ english_name="$(grep "^language-name-${lang%-*} =" src/langnames | cut -d' ' -f3-)"
+ if [ "$lang" != "${lang#*-}" ]; then
+ english_name+=" ($(grep -i "^region-name-${lang#*-} =" src/langnames | cut -d' ' -f3-))"
+ fi
+ english_name+=" Language Pack"
+
+ #printf " '%-5s \"%s\"'\n" "$lang" "$native_name" \
+ # >> "languages.$CARCH.pkgnew"
+ printf " '%-5s \"%s\"'\n" "$lang" "$english_name" \
>> "languages.$CARCH.pkgnew"
printf " '%s'\n" "$sha512sum" \
>> "sha512sums.$CARCH.pkgnew"