diff options
Diffstat (limited to 'lib/locale.sh')
-rw-r--r-- | lib/locale.sh | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/lib/locale.sh b/lib/locale.sh deleted file mode 100644 index b3f54f4..0000000 --- a/lib/locale.sh +++ /dev/null @@ -1,94 +0,0 @@ -# pro-archman -# lib/locale.sh -# Locale functions -# -# Copyright (C) 2012, 2013 Patrick "P. J." McDermott -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -[ "x${_LOCALE_SM+set}" = 'xset' ] && return 0 -_LOCALE_SM=1 - -LOCALEDIR='@@LOCALEDIR@@' -LOCALE_PATH='%s/%s/LC_MESSAGES/%s.ms' -DEFAULT_LOCALE='en_US' -TEXT_DOMAIN='pro_archman' - -load_locale() -{ - local localedir= - local localepath= - - # Make sure LC_MESSAGES is set. - if [ "x${LC_MESSAGES+set}" != 'xset' ]; then - if [ "x${LC_ALL+set}" = 'xset' ]; then - LC_MESSAGES="${LC_ALL}" - elif [ "x${LANG+set}" = 'xset' ]; then - LC_MESSAGES="${LANG}" - else - LC_MESSAGES="${DEFAULT_LOCALE}" - fi - fi - - if [ "${ARCHMAN_LOCALEDIR+set}" = 'set' ]; then - localedir="${ARCHMAN_LOCALEDIR:-.}" - localepath='%s/%s/%s.ms' - else - localedir="${LOCALEDIR}" - localepath="${LOCALE_PATH}" - fi - - # Try to load the locale. - if ! _try_load_locale "${localedir}" "${localepath}" \ - "${LC_MESSAGES%.*}"; then - if ! _try_load_locale "${localedir}" "${localepath}" \ - "${LC_MESSAGES%_*}"; then - if ! _try_load_locale "${localedir}" "${localepath}" \ - "${DEFAULT_LOCALE}"; then - warn 'Cannot load locale' - return 1 - fi - fi - fi - - return 0 -} - -get_msg() -{ - local msgid="${1}" - - eval "printf '%s' \"\${msg_${TEXT_DOMAIN}_${msgid}}\"" - - return 0 -} - -_try_load_locale() -{ - local localedir="${1}" - local localepath="${2}" - local locale="${3}" - local ms= - - ms="$(printf "${localepath}" \ - "${localedir}" "${locale}" "${TEXT_DOMAIN}")" - - if [ -f "${ms}" ]; then - . "${ms}" - else - return 1 - fi - - return 0 -} |