Depend on console-tools; drop runit
[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 # Latest change: Mon Jun 04 22:33:29 CEST 2007 [mika]
8 ################################################################################
9
10 usage(){
11     echo "Usage: $0 <language>"
12     echo "supported values: at, de, dvorak, ch, jp, us"
13 }
14
15 if [ $# -lt "1" ] ; then
16    usage
17    exit -1
18 fi
19
20 if [ -z "$DISPLAY" ] ;then
21   if [ "$1" = "de" ] ; then
22     echo "Loading keymap for Germany..."
23     sudo loadkeys i386/qwertz/de-latin1-nodeadkeys.kmap.gz
24     echo -e "\nDone."
25   elif [ "$1" = "at" ] ; then
26     echo "Loading keymap for Austria..."
27     sudo loadkeys i386/qwertz/de-latin1-nodeadkeys.kmap.gz
28     echo -e "\nDone."
29   elif [ "$1" = "ch" ] ; then
30     echo "Loading keymap for Switzerland..."
31     sudo loadkeys i386/qwertz/sg-latin1.kmap.gz
32     echo -e "\nDone."
33   elif [ "$1" = "us" ] ; then
34     echo 'Loading keymap us...'
35     sudo loadkeys i386/qwerty/us-latin1.kmap.gz
36     echo -e "\nDone."
37   elif [ "$1" = "dvorak" ] ; then
38     echo 'Loading keymap dvorak...'
39     sudo loadkeys dvorak
40     echo -e "\nDone."
41   elif [ "$1" = "jp" ] ; then
42     echo 'Loading keymap jp...'
43     sudo loadkeys i386/qwerty/jp106.kmap.gz
44     echo -e "\nDone."
45   else echo "No valid parameter given.
46
47 Notice: Use loadkeys on console and setxkbmap when running X for
48 modifying keyboard layout. Adjust \$LANG and \$LC_ALL for setting locales." ; exit 1
49   fi
50   # switch to unicode mode on console
51   case $LANG in *UTF-8) kbd_mode -u ; ;; esac
52 else
53   if [ $# = 0 ] ; then
54      usage
55   else
56     if [ "$1" = "de" ] ; then
57       echo "Loading keymap for Germany..."
58       [ -r $HOME/.Xmodmap.german ] && xmodmap $HOME/.Xmodmap.german || setxkbmap de
59       echo -e "\nDone."
60     elif [ "$1" = "at" ] ; then
61       echo "Loading keymap for Austria..."
62       setxkbmap de
63       echo -e "\nDone."
64     elif [ "$1" = "ch" ] ; then
65       echo "Loading keymap for Switzerland..."
66       setxkbmap ch
67       echo -e "\nDone."
68     elif [ "$1" = "jp" ] ; then
69       echo "Loading keymap for Japan..."
70       setxkbmap -model jp106 -layout jp
71       echo -e "\nDone."
72     elif [ "$1" = "dvorak" ] ; then
73       echo "Loading keymap dvorak..."
74       setxkbmap dvorak
75       echo -e "\nDone."
76     elif [ "$1"  = "us" ] ; then
77       echo 'Loading keymap us...'
78       [ -r $HOME/.Xmodmap ] && xmodmap $HOME/.Xmodmap || setxkbmap us
79       echo -e "\nDone."
80     else
81       echo "No valid parameter given."
82       echo
83       usage
84       echo
85       echo "Notice: Use loadkeys on console and setxkbmap when running X for
86 modifying keyboard layout. Adjust \$LANG and \$LC_ALL for setting locales." ; exit 1
87     fi
88   fi
89 fi
90
91 ## END OF FILE #################################################################