grml-lang and grml-quickconfig: add support for spanish keyboards
[grml-scripts.git] / usr_bin / grml-lang
1 #!/bin/sh
2 # Filename:      grml-lang
3 # Purpose:       load specific keyboard layout settings
4 # Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
5 # Bug-Reports:   see http://grml.org/bugs/
6 # License:       This file is licensed under the GPL v2.
7 ################################################################################
8
9 usage(){
10     echo "Usage: $0 <language>"
11     echo "supported values: at, ch, de, dvorak, es, jp, us"
12 }
13
14 if [ $# -lt "1" ] ; then
15    usage
16    exit -1
17 fi
18
19 if [ -z "$DISPLAY" ] ;then
20   if [ "$1" = "de" ] ; then
21     echo "Loading keymap for Germany..."
22     sudo loadkeys i386/qwertz/de-latin1-nodeadkeys.kmap.gz
23     echo -e "\nDone."
24   elif [ "$1" = "at" ] ; then
25     echo "Loading keymap for Austria..."
26     sudo loadkeys i386/qwertz/de-latin1-nodeadkeys.kmap.gz
27     echo -e "\nDone."
28   elif [ "$1" = "ch" ] ; then
29     echo "Loading keymap for Switzerland..."
30     sudo loadkeys i386/qwertz/sg-latin1.kmap.gz
31     echo -e "\nDone."
32   elif [ "$1" = "us" ] ; then
33     echo 'Loading keymap us...'
34     sudo loadkeys i386/qwerty/us-latin1.kmap.gz
35     echo -e "\nDone."
36   elif [ "$1" = "dvorak" ] ; then
37     echo 'Loading keymap dvorak...'
38     sudo loadkeys dvorak
39     echo -e "\nDone."
40   elif [ "$1" = "jp" ] ; then
41     echo 'Loading keymap jp...'
42     sudo loadkeys i386/qwerty/jp106.kmap.gz
43     echo -e "\nDone."
44   elif [ "$1" = "es" ] ; then
45     echo 'Loading keymap es...'
46     sudo loadkeys i386/qwerty/es.kmap.gz
47     echo -e "\nDone."
48   else echo "No valid parameter given.
49
50 Notice: Use loadkeys on console and setxkbmap when running X for
51 modifying keyboard layout. Adjust \$LANG and \$LC_ALL for setting locales." ; exit 1
52   fi
53   # switch to unicode mode on console
54   case $LANG in *UTF-8) kbd_mode -u ; ;; esac
55 else
56   if [ $# = 0 ] ; then
57      usage
58   else
59     if [ "$1" = "de" ] ; then
60       echo "Loading keymap for Germany..."
61       [ -r $HOME/.Xmodmap.german ] && xmodmap $HOME/.Xmodmap.german || setxkbmap de
62       echo -e "\nDone."
63     elif [ "$1" = "at" ] ; then
64       echo "Loading keymap for Austria..."
65       setxkbmap de
66       echo -e "\nDone."
67     elif [ "$1" = "ch" ] ; then
68       echo "Loading keymap for Switzerland..."
69       setxkbmap ch
70       echo -e "\nDone."
71     elif [ "$1" = "jp" ] ; then
72       echo "Loading keymap for Japan..."
73       setxkbmap -model jp106 -layout jp
74       echo -e "\nDone."
75     elif [ "$1" = "dvorak" ] ; then
76       echo "Loading keymap dvorak..."
77       setxkbmap dvorak
78       echo -e "\nDone."
79     elif [ "$1"  = "us" ] ; then
80       echo 'Loading keymap us...'
81       [ -r $HOME/.Xmodmap ] && xmodmap $HOME/.Xmodmap || setxkbmap us
82       echo -e "\nDone."
83     elif [ "$1" = "es" ] ; then
84       echo "Loading keymap es..."
85       setxkbmap es
86       echo -e "\nDone."
87     else
88       echo "No valid parameter given."
89       echo
90       usage
91       echo
92       echo "Notice: Use loadkeys on console and setxkbmap when running X for
93 modifying keyboard layout. Adjust \$LANG and \$LC_ALL for setting locales." ; exit 1
94     fi
95   fi
96 fi
97
98 ## END OF FILE #################################################################