diff options
Diffstat (limited to 'linux/bin')
| -rwxr-xr-x | linux/bin/asdf | 46 | ||||
| -rwxr-xr-x | linux/bin/uiae | 28 | 
2 files changed, 63 insertions, 11 deletions
diff --git a/linux/bin/asdf b/linux/bin/asdf index ef14b9a..2c06fd6 100755 --- a/linux/bin/asdf +++ b/linux/bin/asdf @@ -1,14 +1,48 @@  #!/bin/sh +NEO_X_VARIANTE="xkbmap" 					# xkbmap, xmoadmap, xprog, alternative, evdev + +CONSOLE_KEYMAP="/usr/share/kbd/keymaps/i386/neo/neo.map" +XMODMAP="$HOME/neo/neo_de.xmodmap" +XMODMAP_XPROG="$HOME/neo/neo_de_x-prog.xmodmap" +XMODMAP_ALTERNATIVE="$HOME/neo/neo_de_alternative.xmodmap" +XMODMAP_EVDEV="$HOME/neo/neo_de_evdev.xmodmap"  if [ -n "$SSH_CONNECTION" ]; then  	echo "Dude, du bist in einer SSH-Session. Wie soll ich das Tastaturlayout hier ändern?"  	exit 1  fi  if [ -z "$DISPLAY" ]; then -	echo "Dude, du bist auf der Textkonsole. Ich kann das Layout nur auf dem X-Server ändern!" -	exit 1 +	echo "Um das Tastaturlayout auf der Textkonsole zu ändern, muss man 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 "Die Variante "$NEO_X_VARIANTE "ist keine bekannte X-Variante des NEO-Layouts" +			exit 1 +			;; +	esac  fi - -xset -r 51 -xset -r 94 -setxkbmap de neo diff --git a/linux/bin/uiae b/linux/bin/uiae index c8716b6..aa04092 100755 --- a/linux/bin/uiae +++ b/linux/bin/uiae @@ -1,14 +1,32 @@  #!/bin/sh +CONSOLE_KEYMAP="/usr/share/kbd/keymaps/i386/qwertz/de.map.gz"	# leer für Standard-keymap (i.d.R. qwerty) + +NUM_LOCK_STATUS="ON"						# gewünschter Status für qwert  if [ -n "$SSH_CONNECTION" ]; then  	echo "Dude, du bist in einer SSH-Session. Wie soll ich das Tastaturlayout hier ändern?"  	exit 1  fi  if [ -z "$DISPLAY" ]; then -	echo "Dude, du bist auf der Textkonsole. Ich kann das Layout nur auf dem X-Server ändern!" -	exit 1 +	echo "Um das Tastaturlayout auf der Textkonsole zu ändern, muss man root-Rechte besitzen!" +	if [ $CONSOLE_KEYMAP ] ; then +		sudo loadkeys $CONSOLE_KEYMAP +	else +		sudo loadkeys -d +	fi +	if [ NUM_LOCK_STATUS="ON" ] ; then +		setleds +num +	else +		setleds -num +	fi +else +	xset r 51; xset r 94					# Modifier +	xset r 21; xset r 35; xset r 49				# tote Tasten (dead keys) +	setxkbmap de +	if [ NUM_LOCK_STATUS="ON" ] ; then +		numlockx on +	else +		numlockx off +	fi  fi -xset r 51 -xset r 94 -setxkbmap de  | 
