From 7fa9927893fafc707c79d1dfa5ae653f9b637d9c Mon Sep 17 00:00:00 2001 From: pascal Date: Tue, 9 Sep 2008 09:45:54 +0000 Subject: =?UTF-8?q?uiae=20und=20asdf=20funktionieren=20nun=20mit=20allen?= =?UTF-8?q?=20Varianten=20(Textkonsole=20und=20X);=20au=C3=9Ferdem=20werde?= =?UTF-8?q?n=20eventuelle=20Probleme=20mit=20Num=5FLock=20bedacht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.neo-layout.org@852 b9310e46-f624-0410-8ea1-cfbb3a30dc96 --- linux/bin/asdf | 46 ++++++++++++++++++++++++++++++++++++++++------ 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 -- cgit v1.2.3