# License: This file is licensed under the GPL v2.
################################################################################
-CONFFILE=/etc/sysconfig/keyboard
+CONFFILE=/etc/default/keyboard
PN="$(basename $0)"
usage(){
echo "Usage: $0 <language>"
- echo "supported values: at, ch, de, dvorak, es, jp, us, fr"
+ echo "supported values: at, ch, de, dvorak, es, fr, it, jp, us"
}
setvalue(){
[ -n "$2" ] || return 1
- # already present in conffile?
- if grep -q ${1} $CONFFILE 2>/dev/null ; then
- sudo sed -i "s#^${1}.*#${1}=${2}#" $CONFFILE
- else
- echo "$1=${2}" | sudo tee -a $CONFFILE >/dev/null
- fi
+ sudo sed -i "s#^${1}=.*#${1}=\"${2}\"#" "${CONFFILE}"
}
if [ $# -lt "1" ] ; then
- usage
+ usage >&2
exit 1
fi
-[ -d /etc/sysconfig ] || sudo mkdir /etc/sysconfig
-
-
LANGUAGE="$1"
-
. /etc/grml/language-functions
-if [ ! -z "$KEYTABLE" ] ; then
- setvalue KEYTABLE "$KEYTABLE"
+if [ -n "$XKEYBOARD" ] ; then
+ setvalue XKBLAYOUT "$XKEYBOARD"
fi
-if [ ! -z "XKEYBOARD" ] ; then
- setvalue XKEYBOARD $XKEYBOARD
-fi
-
-
if [ -z "$DISPLAY" ] ;then
if [ "$1" = "de" ] ; then
echo "Loading keymap for Germany..."
echo "Loading keymap for Switzerland..."
sudo loadkeys i386/qwertz/sg-latin1.kmap.gz
echo -e "\nDone."
+ elif [ "$1" = "it" ] ; then
+ echo "Loading keymap for Italy..."
+ sudo loadkeys i386/qwerty/it.kmap.gz
+ echo -e "\nDone."
elif [ "$1" = "us" ] ; then
echo 'Loading keymap us...'
sudo loadkeys i386/qwerty/us-latin1.kmap.gz
else
if [ "$1" = "de" ] ; then
echo "Loading keymap for Germany..."
- [ -r $HOME/.Xmodmap.german ] && xmodmap $HOME/.Xmodmap.german || setxkbmap de
+ if [ -r "${HOME}"/.Xmodmap.german ] ; then
+ xmodmap "${HOME}"/.Xmodmap.german || setxkbmap de
+ else
+ setxkbmap de
+ fi
echo -e "\nDone."
elif [ "$1" = "at" ] ; then
echo "Loading keymap for Austria..."
echo "Loading keymap for Switzerland..."
setxkbmap ch
echo -e "\nDone."
+ elif [ "$1" = "it" ] ; then
+ echo "Loading keymap for Italy..."
+ setxkbmap it
+ echo -e "\nDone."
elif [ "$1" = "jp" ] ; then
echo "Loading keymap for Japan..."
setxkbmap -model jp106 -layout jp
echo -e "\nDone."
elif [ "$1" = "us" ] ; then
echo 'Loading keymap us...'
- [ -r $HOME/.Xmodmap ] && xmodmap $HOME/.Xmodmap || setxkbmap us
+ if [ -r "${HOME}"/.Xmodmap ] ; then
+ xmodmap "${HOME}"/.Xmodmap || setxkbmap us
+ else
+ setxkbmap us
+ fi
echo -e "\nDone."
elif [ "$1" = "es" ] ; then
echo "Loading keymap es..."