# Filename:      /usr/share/grml-autoconfig/language-functions
# Purpose:       language data used by grml-lang, grml-setlang
# Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports:   see http://grml.org/bugs/
# License:       This file is licensed under the GPL v2.
################################################################################

# Defaults. XKBLAYOUT is not defaulted, so caller can determine unhandled values.
XKBVARIANT=","  # comma is necessary to avoid bug in Xorg server when switching from nodeadkeys to "".
XKBOPTIONS=""
LC_COLLATE=""
LC_TIME=""
TZ="UTC"

# The default language/keyboard to use. This CAN NOT be autoprobed.
case "$LANGUAGE" in
        C|POSIX)
                LANG="C.UTF-8"
                LANGUAGE="C"
                XKBLAYOUT="us"
                ;;
        at|at-utf8)
                # Austrian
                LANG="de_AT.UTF-8"
                LANGUAGE="de_AT:de"
                XKBLAYOUT="de"
                XKBVARIANT="nodeadkeys"
                TZ="Europe/Vienna"
                ;;
        au|au-utf8)
                # Australian
                LANG="en_AU.UTF-8"
                LANGUAGE="en_AU:en"
                XKBLAYOUT="us"
                TZ="Australia/Sydney"
                ;;
        be|be-utf8|bed|bed-utf8)
                # Belgian (default and dutch)
                LANG="nl_BE.UTF-8"
                LANGUAGE="nl_BE:nl"
                XKBLAYOUT="be"
                TZ="Europe/Brussels"
                ;;
        bef|bef-utf8)
                # Belgian French
                LANG="fr_BE.UTF-8"
                LANGUAGE="fr_BE:fr"
                XKBLAYOUT="be"
                TZ="Europe/Brussels"
                ;;
        beg|beg-utf8)
                # Belgian German
                LANG="de_BE.UTF-8"
                LANGUAGE="de_BE:de"
                XKBLAYOUT="be"
                TZ="Europe/Brussels"
                ;;
        bg|bg-utf8)
                # Bulgarian
                LANG="bg_BG.UTF-8"
                LANGUAGE="bg_BG:bg"
                XKBLAYOUT="bg"
                TZ="Europe/Sofia"
                ;;
        br|br-utf8)
                # Brazilian
                LANG="pt_BR.UTF-8"
                LANGUAGE="pt_BR:pt"
                XKBLAYOUT="br"
                TZ="America/Sao_Paulo"
                ;;
        ch|ch-utf8)
                # Swiss German
                LANG="de_CH.UTF-8"
                LANGUAGE="de_CH:de"
                XKBLAYOUT="ch"
                XKBVARIANT="de_nodeadkeys"
                TZ="Europe/Zurich"
                ;;
        cn|cn-utf8)
                # Simplified Chinese
                LANG="zh_CN.UTF-8"
                XKBLAYOUT="us"
                XKBVARIANT="altgr-pinyin"
                TZ="Asia/Shanghai"
                ;;
        cf)
                # French Canadian
                LANG="fr_CA.UTF-8"
                LANGUAGE="fr_CA:fr"
                XKBLAYOUT="ca"
                XKBVARIANT="multix"
                TZ="America/Montreal"
                ;;
        cs|cz|cs-utf8|cz-utf8)
                # Czech
                LANG="cs_CZ.UTF-8"
                LANGUAGE="cs_CZ:cs"
                XKBLAYOUT="cz"
                TZ="Europe/Prague"
                ;;
        de|de-utf8)
                # German
                LANG="de_DE.UTF-8"
                LANGUAGE="de_DE:de"
                XKBLAYOUT="de"
                XKBVARIANT="nodeadkeys"
                TZ="Europe/Berlin"
                ;;
        de-neo)
                # German with Neo Layout (https://neo-layout.org/)
                LANG="de_DE.UTF-8"
                LANGUAGE="de_DE:de"
                XKBLAYOUT="de"
                XKBVARIANT="neo"
                TZ="Europe/Berlin"
                ;;
        dk|da|dk-utf8|da-utf8)
                # Dansk
                LANG="da_DK.UTF-8"
                # Workaround: "dk" broken in gettext, use da:da_DK
                LANGUAGE="da_DK:da"
                XKBLAYOUT="dk"
                TZ="Europe/Copenhagen"
                ;;
        dvorak|dvorak-utf8)
                # American Dvorak
                LANG="en_US.UTF-8"
                LANGUAGE="us"
                XKBLAYOUT="us"
                XKBVARIANT="dvorak"
                ;;
        en|en-utf8)
                # "Grml english" AKA defaults (see us + uk for plain american and english versions)
                LANG="en_US.UTF-8"
                LANGUAGE="en"
                XKBLAYOUT="us"
                LC_TIME="en_DK.UTF-8"
                ;;
        el|el-utf8)
                # Greek
                LANG="el_GR.UTF-8"
                LANGUAGE="el_GR:el"
                XKBLAYOUT="us,gr"
                XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"
                TZ="Europe/Athens"
                ;;
        es|es-utf8)
                # Spanish
                LANG="es_ES.UTF-8"
                LANGUAGE="es_ES:es"
                XKBLAYOUT="es"
                TZ="Europe/Madrid"
                ;;
        fi|fi-utf8)
                # Finnish
                LANG="fi_FI.UTF-8"
                LANGUAGE="fi_FI:fi"
                XKBLAYOUT="fi"
                TZ="Europe/Helsinki"
                ;;
        fr|fr-utf8)
                # French
                LANG="fr_FR.UTF-8"
                LANGUAGE="fr_FR"
                XKBLAYOUT="fr"
                TZ="Europe/Paris"
                ;;
        ga|ga-utf8)
                # Irish Gaeilge
                LANG="ga_IE@UTF-8"
                LANGUAGE="ga_IE:ga"
                XKBLAYOUT="ie"
                TZ="Europe/Dublin"
                ;;
        he|il|he-utf8|il-utf8)
                # Hebrew
                LANG="he_IL.UTF-8"
                LANGUAGE="he_IL:he"
                XKBLAYOUT="us,il"
                XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"
                TZ="Asia/Jerusalem"
                ;;
        hu)
                # Hungarian
                LANG="hu_HU.UTF-8"
                LANGUAGE="hu_HU:hu"
                XKBLAYOUT="hu"
                TZ="Europe/Budapest"
                ;;
        ie|ie-utf8)
                # Irish (English)
                LANG="en_IE.UTF-8"
                LANGUAGE="en_IE:en"
                XKBLAYOUT="uk"
                TZ="Europe/Dublin"
                ;;
        it|it-utf8)
                # Italian
                LANG="it_IT.UTF-8"
                LANGUAGE="it_IT"
                XKBLAYOUT="it"
                TZ="Europe/Rome"
                ;;
        ja|ja-utf8|jp|jp-utf8)
                # (limited) Japanese
                LANG="ja_JP.UTF-8"
                LANGUAGE="ja_JP:ja"
                XKBLAYOUT="jp"
                TZ="Asia/Tokyo"
                ;;
        nl|nl-utf8)
                # Dutch
                LANG="nl_NL.UTF-8"
                LANGUAGE="nl_NL:nl"
                XKBLAYOUT="nl"
                TZ="Europe/Amsterdam"
                ;;
        no|nb|nn|no-utf8|nb-utf8|nn-utf8)
                # Norwegian
                LANG="nb_NO.UTF-8"
                LANGUAGE="no:nb_NO"
                XKBLAYOUT="no"
                TZ="Europe/Oslo"
                ;;
        pl|pl-utf8)
                # Polish
                LANG="pl_PL.UTF-8"
                LANGUAGE="pl_PL:pl"
                XKBLAYOUT="pl"
                TZ="Europe/Warsaw"
                ;;
        pt|pt-utf8)
                # Portuguese
                LANG="pt_PT.UTF-8"
                LANGUAGE="pt_PT:pt"
                XKBLAYOUT="pt"
                TZ="Europe/Lisbon"
                ;;
        ru|ru-utf8)
                # Russian
                LANG="ru_RU.UTF-8"
                LANGUAGE="ru_RU:ru"
                XKBLAYOUT="us,ru"
                XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"
                TZ="Europe/Moscow"
                ;;
        se|se-utf8)
                # Swedish
                LANG="sv_SE.utf8"
                LANGUAGE="sv_SE:sv"
                XKBLAYOUT="se"
                TZ="Europe/Stockholm"
                ;;
        sk|sk-utf8)
                # Slovak
                LANG="sk_SK.UTF-8"
                LANGUAGE="sk_SK:sk"
                XKBLAYOUT="sk"
                XKBVARIANT="qwerty"
                TZ="Europe/Bratislava"
                ;;
        sl|sl-utf8)
                # Slovenian
                LANG="sl_SI.UTF-8"
                LANGUAGE="sl_SI:sl"
                XKBLAYOUT="si"
                TZ="Europe/Ljubljana"
                ;;
        tr|tr-utf8)
                # Turkish
                LANG="tr_TR.UTF-8"
                LANGUAGE="tr_TR"
                XKBLAYOUT="tr"
                XKBVARIANT="alt"
                TZ="Europe/Istanbul"
                ;;
        tw|tw-utf8)
                # Taiwanese
                LANG="zh_TW.UTF-8"
                LANGUAGE="zh_TW:zh"
                XKBLAYOUT="tw"
                TZ="Asia/Taipei"
                ;;
        uk|uk-utf8)
                # British English
                LANG="en_GB.UTF-8"
                LANGUAGE="en_GB:en"
                XKBLAYOUT="gb"
                TZ="Europe/London"
                ;;
        us|us-utf8)
                # American English
                LANG="en_US.UTF-8"
                LANGUAGE="en_US:en"
                XKBLAYOUT="us"
                TZ="America/New_York"
                ;;
esac

## END OF FILE #################################################################
