X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=usr_bin%2Fgrml-lang;h=ee8bcd3178282ca985bcc4665703e729759cfb06;hb=c08b156abb0b2b1b1335cb1ada0c08758553238b;hp=9d6992912fb6db08f3906569d88e01b5358a4ac3;hpb=7fdef6630fa17a57c8bbb8f0f222ebfed79bfd15;p=grml-scripts.git diff --git a/usr_bin/grml-lang b/usr_bin/grml-lang index 9d69929..ee8bcd3 100755 --- a/usr_bin/grml-lang +++ b/usr_bin/grml-lang @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # Filename: grml-lang # Purpose: load specific keyboard layout settings # Authors: grml-team (grml.org), (c) Michael Prokop @@ -6,16 +6,46 @@ # License: This file is licensed under the GPL v2. ################################################################################ +CONFFILE=/etc/sysconfig/keyboard +PN="$(basename $0)" + usage(){ echo "Usage: $0 " echo "supported values: at, ch, de, dvorak, es, 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 +} + if [ $# -lt "1" ] ; then usage - exit -1 + exit 1 fi +[ -d /etc/sysconfig ] || sudo mkdir /etc/sysconfig + + +LANGUAGE="$1" + + +. /etc/grml/language-functions + +if [ ! -z "$KEYTABLE" ] ; then + setvalue KEYTABLE "$KEYTABLE" +fi + +if [ ! -z "XKEYBOARD" ] ; then + setvalue XKEYBOARD $XKEYBOARD +fi + + if [ -z "$DISPLAY" ] ;then if [ "$1" = "de" ] ; then echo "Loading keymap for Germany..."