fix LANG+LANGUAGE

This commit is contained in:
pvincent
2026-09-02 16:54:25 +04:00
parent cc73cb5b26
commit 61910b1b14
+19 -12
View File
@@ -1,4 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck source=/dev/null
# SHEBANG alternative:
#!/usr/bin/env -S -- bash -x #!/usr/bin/env -S -- bash -x
# constants # constants
@@ -632,20 +635,24 @@ function read {
} }
function load_locale { function load_locale {
MIAOU_LOCALE="${LANG%%_*}" # Get 'fr' from 'fr_FR.UTF-8' miaou_debug "<load_locale LANG=$LANG>"
if [[ $MIAOU_LOCALE =~ en|es|fr ]]; then MIAOU_LOCALE="${LANG:0:2}" # Get 'fr' from 'fr_FR.UTF-8'
miaou_debug "<load_locale language=$MIAOU_LOCALE LANG=$LANG/>" case "$MIAOU_LOCALE" in
else en) LANG=en_US.utf8 ;;
# fallback C/POSIX => en.sh es) LANG=es_ES.utf8 ;;
fr) LANG=fr_FR.utf8 ;;
*)
miaou_debug "<fallback LANG=$LANG convert_to=C/>"
MIAOU_LOCALE=en MIAOU_LOCALE=en
miaou_debug "<load_locale fallback=$MIAOU_LOCALE LANG=$LANG convert_to=C/>"
LANG=C LANG=C
export LANG ;;
fi esac
local locale_file export LANG
locale_file="${MIAOU_BASH_DIR}/locales/${MIAOU_LOCALE}.sh" unset LANGUAGE LC_ALL LC_MESSAGES
# shellcheck source=/dev/null local translation="${MIAOU_BASH_DIR}/locales/${MIAOU_LOCALE}.sh"
source "$locale_file" miaou_debug "<resource file=$translation/>"
source "$translation"
miaou_debug "</load_locale MIAOU_LOCALE=$MIAOU_LOCALE>"
} }
## main ## main