Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/lib/common.sh
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@parabola.nu>2013-05-02 15:12:42 -0400
committerLuke Shumaker <lukeshu@parabola.nu>2017-04-20 00:23:50 -0400
commit24b7799d315d10d339c99ef05e438b2dfd1421c6 (patch)
tree616edf2d30a0cd5e53ebc6106ec4dcea7b5858af /lib/common.sh
parent0a4b64cef91b26180aaa6fd83d3376b206641a3f (diff)
lib/common.sh: Internationalize.
Diffstat (limited to 'lib/common.sh')
-rw-r--r--lib/common.sh32
1 files changed, 21 insertions, 11 deletions
diff --git a/lib/common.sh b/lib/common.sh
index cc9e75d..46a0640 100644
--- a/lib/common.sh
+++ b/lib/common.sh
@@ -6,8 +6,18 @@
[[ -z ${_INCLUDE_COMMON_SH:-} ]] || return 0
_INCLUDE_COMMON_SH=true
-# Avoid any encoding problems
-export LANG=C
+[[ -n ${TEXTDOMAIN:-} ]] || export TEXTDOMAIN='libretools'
+[[ -n ${TEXTDOMAINDIR:-} ]] || export TEXTDOMAINDIR='/usr/share/locale'
+
+if type gettext &>/dev/null; then
+ _() { gettext "$@"; }
+else
+ _() { echo "$@"; }
+fi
+
+_l() {
+ TEXTDOMAIN='librelib' TEXTDOMAINDIR='/usr/share/locale' "$@"
+}
shopt -s extglob
@@ -34,44 +44,44 @@ fi
readonly ALL_OFF BOLD BLUE GREEN RED YELLOW
plain() {
- local mesg=$1; shift
+ local mesg="$(_ "$1")"; shift
# shellcheck disable=2059
printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}
msg() {
- local mesg=$1; shift
+ local mesg="$(_ "$1")"; shift
# shellcheck disable=2059
printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}
msg2() {
- local mesg=$1; shift
+ local mesg="$(_ "$1")"; shift
# shellcheck disable=2059
printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}
warning() {
- local mesg=$1; shift
+ local mesg="$(_ "$1")"; shift
# shellcheck disable=2059
printf "${YELLOW}==> WARNING:${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}
error() {
- local mesg=$1; shift
+ local mesg="$(_ "$1")"; shift
# shellcheck disable=2059
printf "${RED}==> ERROR:${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}
stat_busy() {
- local mesg=$1; shift
+ local mesg="$(_ "$1")"; shift
# shellcheck disable=2059
printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}...${ALL_OFF}" "$@" >&2
}
stat_done() {
# shellcheck disable=2059
- printf "${BOLD}done${ALL_OFF}\n" >&2
+ printf "${BOLD}$(_l _ "done")${ALL_OFF}\n" >&2
}
_setup_workdir=false
@@ -90,7 +100,7 @@ cleanup() {
}
abort() {
- error 'Aborting...'
+ _l error 'Aborting...'
cleanup 255
}
@@ -263,7 +273,7 @@ find_cached_package() {
return 0
;;
*)
- error 'Multiple packages found:'
+ _l error 'Multiple packages found:'
printf '\t%s\n' "${results[@]}" >&2
return 1
esac