summaryrefslogtreecommitdiff
path: root/linux/bin/asdf
blob: 692b49866e0402f7b82fc6d3bf8faace11fc1d6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/sh


################################################################################
####################### persönliche Einstellungen ##############################
################################################################################
# hier einstellen, welche Variante von Neo geladen werden soll:
# xkbmap, xmoadmap, xprog, alternative, evdev
NEO_X_VARIANTE="xkbmap"

# hier angeben, wo sich die Neo-Dateien befinden:
PFAD="$HOME/neo"

# Ort, wo sich die Konsolen-Belegungen befinden:
#CONSOLE_KEYMAP="/usr/share/kbd/keymaps/i386/neo/neo.map"	# Suse
#CONSOLE_KEYMAP="/usr/share/keymaps/i386/neo/neo.map"		# Gentoo, Ubuntu
CONSOLE_KEYMAP="/lib/kbd/keymaps/i386/neo/neo.map"	# Fedora, Red Hat
################################################################################
################################################################################
################################################################################


XMODMAP="$PFAD/neo_de.xmodmap"
XMODMAP_XPROG="$PFAD/neo_de_x-prog.xmodmap"
XMODMAP_ALTERNATIVE="$PFAD/neo_de_alternative.xmodmap"
XMODMAP_EVDEV="$PFAD/neo_de_evdev.xmodmap"

if [ -n "$SSH_CONNECTION" ]; then
	echo -n "Dude, du bist in einer SSH-Session. Wie soll ich das "
        echo    "Tastaturlayout hier ändern?"
	exit 1
fi
if [ -z "$DISPLAY" ]; then
	echo -n "Um das Tastaturlayout auf der Textkonsole zu ändern, muss man"
        echo    " root-Rechte besitzen!"
	sudo loadkeys $CONSOLE_KEYMAP
	setleds +num
else
	numlockx off
	xset -r 51; xset -r 94			# Modifier
	xset -r 21; xset -r 35; xset -r 49	# tote Tasten (dead keys)
	
	case $NEO_X_VARIANTE in
		xkbmap)
			setxkbmap de neo
			;;
		xmodmap)
			setxkbmap ie
			xmodmap $XMODMAP
			;;
		xprog)
			setxkbmap ie
			xmodmap $XMODMAP_XPROG
			;;
		alternative)
			setxkbmap ie
			xmodmap $XMODMAP_ALTERNATIVE
			;;
		evdev)
			setxkbmap ie
			xmodmap $XMODMAP_EVDEV
			;;
		*)
			echo -n "Die Variante »${NEO_X_VARIANTE}« ist keine "
                        echo    "bekannte X-Variante des NEO-Layouts."
			exit 1
			;;
	esac
fi