diff options
-rwxr-xr-x | linux/bin/asdf | 61 | ||||
-rwxr-xr-x | linux/bin/uiae | 61 | ||||
-rw-r--r-- | linux/etc/neo.conf | 12 |
3 files changed, 37 insertions, 97 deletions
diff --git a/linux/bin/asdf b/linux/bin/asdf index 2535589..c29fb06 100755 --- a/linux/bin/asdf +++ b/linux/bin/asdf @@ -5,6 +5,8 @@ # Copyright 2008 Erik Streb del Toro # Distributed under the terms of the GNU General Public License v3 +#prevent CapsLock while ›asdf‹ is running +#xmodmap -e "clear Lock" 2> /dev/null # colours in the Bash normal="\033[0m" @@ -22,14 +24,6 @@ else echo "${red}Keine Konfigurationsdatei für NEO gefunden. Das Verwenden der Standardwerte kann fehlschlagen!${normal}" fi -# Default paths -PATH_XMODMAP=${PATH_XMODMAP:-/usr/bin/xmodmap} -PATH_SETXKBMAP=${PATH_SETXKBMAP:-/usr/bin/setxkbmap} -PATH_LOADKEYS=${PATH_LOADKEYS:-loadkeys} -PATH_SUDO=${PATH_SUDO:-/usr/bin/sudo} -PATH_SETLEDS=${PATH_SETLEDS:-setleds} -PATH_NUMLOCKX=${PATH_NUMLOCKX:-/usr/bin/numlockx} -PATH_XSET=${PATH_XSET:-/usr/bin/xset} # Default values NEO_XKBMAP=${NEO_XKBMAP:-de} @@ -82,34 +76,24 @@ numlock_manually() { } set_xmodmap() { - if [ -e "${PATH_XMODMAP}" ]; then - if [ -f "$@" ]; then - set_xkbmap lv - "${PATH_XMODMAP}" "$@" || die2 $@ - else - die "Die Xmodmap-Datei $@ gibt es nicht." - fi + if [ -f "$@" ]; then + set_xkbmap lv + xmodmap "$@" || die2 $@ else - die "Der Befehl ${orange}xmodmap${red} wurde nicht gefunden, die Belegung kann nicht verändert werden." + die "Die Xmodmap-Datei $@ gibt es nicht." fi } set_xkbmap() { - if [ -e "${PATH_SETXKBMAP}" ]; then - "${PATH_SETXKBMAP}" "$@" || die "Die xkbmap $@ wurde nicht gefunden." - else - die "Der Befehl ${orange}setxkbmap${red} wurde nicht gefunden, die Belegung kann nicht verändert werden." - fi + setxkbmap "$@" || die "Die xkbmap $@ wurde nicht gefunden." } set_keymap() { if [ -f "$@" ]; then if [ "${EUID}" = 0 ]; then - "${PATH_LOADKEYS}" "$@" || die "Fehler beim Laden der Keymap ${orange}$@${red}." - elif [ -e "${PATH_SUDO}" ]; then - "${PATH_SUDO}" "${PATH_LOADKEYS}" "$@" || die "Fehler bei der Verwendung von ${orange}sudo${red}, um die Belegung zu ändern." + loadkeys "$@" || die "Fehler beim Laden der Keymap ${orange}$@${red}." else - die "Die Belegung auf der Textkonsole kann nur mir Rootrechten geändert werden." + sudo loadkeys "$@" || die "Fehler bei der Verwendung von ${orange}sudo${red}, um die Belegung zu ändern." fi else die "Die keymap-Datei ${orange}$@${red} gibt es nicht." @@ -139,25 +123,18 @@ if [ -n "$SSH_CONNECTION" ]; then fi if [ -z ${DISPLAY} ]; then - "${PATH_SETLEDS}" +num || numlock_manually "Fehler beim setzen des Status von NumLock." an + setleds +num || numlock_manually "Fehler beim setzen des Status von NumLock." an + setleds -caps set_keymap "${NEO_CONSOLE_KEYMAP}" else - if [ -e "${PATH_NUMLOCKX}" ]; then - "${PATH_NUMLOCKX}" off || numlock_manually "Fehler beim setzen des Status von NumLock." aus - else - numlock_manually "Der Befehl ${red}numlockx${orange} wurde nicht gefunden. Darum kann der Status von NumLock nicht automatisch geändert werden." aus - fi - - if [ -e "${PATH_XSET}" ]; then - for modifier in 51 94; do - "${PATH_XSET}" -r ${modifier} || echo "Fehler beim Ausschalten von Autorepeat beim Modifier ${modifier}." >&2 - done - for deadkey in 21 35 49; do - "${PATH_XSET}" -r ${deadkey} || echo "Fehler beim Ausschalten von Autorepead bei der toten Taste ${deakey}." >&2 - done - else - echo "Der Befehl ${red}xset${normal} wurde nicht gefunden. Der Status von autorepeat kann für Modifier und tote Tasten nicht geändert werden." >&2 - fi + numlockx off || numlock_manually "Fehler beim setzen des Status von NumLock." aus + + for modifier in 51 94; do + xset -r ${modifier} || echo "Fehler beim Ausschalten von Autorepeat beim Modifier ${modifier}." >&2 + done + for deadkey in 21 35 49; do + xset -r ${deadkey} || echo "Fehler beim Ausschalten von Autorepead bei der toten Taste ${deakey}." >&2 + done case "${NEO_X_VARIANTE}" in xkbmap) diff --git a/linux/bin/uiae b/linux/bin/uiae index 25d64e9..ae9792a 100755 --- a/linux/bin/uiae +++ b/linux/bin/uiae @@ -22,14 +22,6 @@ else echo "No configuration file found. Using default values, this might fail!" fi -# Default paths -PATH_XMODMAP=${PATH_XMODMAP:-/usr/bin/xmodmap} -PATH_SETXKBMAP=${PATH_SETXKBMAP:-/usr/bin/setxkbmap} -PATH_LOADKEYS=${PATH_LOADKEYS:-loadkeys} -PATH_SUDO=${PATH_SUDO:-/usr/bin/sudo} -PATH_SETLEDS=${PATH_SETLEDS:-setleds} -PATH_NUMLOCKX=${PATH_NUMLOCKX:-/usr/bin/numlockx} -PATH_XSET=${PATH_XSET:-/usr/bin/xset} # Default values STD_X_VARIANTE=${STD_X_VARIANTE:-xkbmap} @@ -59,32 +51,22 @@ die() { } set_xmodmap() { - if [ -e "${PATH_XMODMAP}" ]; then - if [ -f "$@" ]; then - "${PATH_XMODMAP}" "$@" || die "Failed to set xmodmap $@." - else - die "Cannot use $@ for xmodmap." - fi + if [ -f "$@" ]; then + xmodmap "$@" || die "Failed to set xmodmap $@." else - die "xmodmap not found, cannot set xmodmap." + die "Cannot use $@ for xmodmap." fi } set_xkbmap() { - if [ -e "${PATH_SETXKBMAP}" ]; then - "${PATH_SETXKBMAP}" "$@" || die "Failed to select xkbmap $@." - else - die "setxkbmap not found, cannot set xkbmap." - fi + setxkbmap "$@" || die "Failed to select xkbmap $@." } set_keymap() { if [ "${EUID}" = 0 ]; then - "${PATH_LOADKEYS}" "$@" || die "Fehler beim Laden der Keymap ${orange}$@${red}." - elif [ -e "${PATH_SUDO}" ]; then - "${PATH_SUDO}" "${PATH_LOADKEYS}" "$@" || die "Fehler bei der Verwendung von ${orange}sudo${red}, um die Belegung zu ändern." + loadkeys "$@" || die "Fehler beim Laden der Keymap ${orange}$@${red}." else - die "Die Belegung auf der Textkonsole kann nur mir Rootrechten geändert werden." + sudo loadkeys "$@" || die "Fehler bei der Verwendung von ${orange}sudo${red}, um die Belegung zu ändern." fi } @@ -96,22 +78,19 @@ if [ -z ${DISPLAY} ]; then set_keymap "${STD_CONSOLE_KEYMAP}" if [ "${NUM_LOCK_STATUS}" = "on" ]; then - "${PATH_SETLEDS}" -num || echo -e "${orange}Fehler beim setzen des Status von NumLock.${normal}" >&2 + setleds -num || echo -e "${orange}Fehler beim setzen des Status von NumLock.${normal}" >&2 else - "${PATH_SETLEDS}" +num || echo "${orange}Fehler beim setzen des Status von NumLock.${normal}" >&2 + setleds +num || echo "${orange}Fehler beim setzen des Status von NumLock.${normal}" >&2 fi else - if [ -e "${PATH_XSET}" ]; then - for modifier in 51 94; do - "${PATH_XSET}" r ${modifier} || echo "Failed to set repeat for modifier ${modifier}." >&2 - done - for deadkey in 21 35 49; do - "${PATH_XSET}" r ${deadkey} || echo "Failed to set repeat for deadkey ${deakey}." >&2 - done - else - echo "xset not found, cannot set modifiers and dead keys." >&2 - fi + for modifier in 51 94; do + xset r ${modifier} || echo "Failed to set repeat for modifier ${modifier}." >&2 + done + for deadkey in 21 35 49; do + xset r ${deadkey} || echo "Failed to set repeat for deadkey ${deakey}." >&2 + done + case "${STD_X_VARIANTE}" in xkbmap) @@ -126,14 +105,10 @@ else ;; esac - if [ -e "${PATH_NUMLOCKX}" ]; then - if [ "${NUM_LOCK_STATUS}" = "on" ]; then - "${PATH_NUMLOCKX}" on || die "Failed to set num lock status to on." - else - "${PATH_NUMLOCKX}" off || die "Failed to set num lock status to off." - fi + if [ "${NUM_LOCK_STATUS}" = "on" ]; then + numlockx on || die "Failed to set num lock status to on." else - die "numlockx not found, cannot turn off Numlock." + numlockx off || die "Failed to set num lock status to off." fi fi diff --git a/linux/etc/neo.conf b/linux/etc/neo.conf index 4dfbfc4..8816291 100644 --- a/linux/etc/neo.conf +++ b/linux/etc/neo.conf @@ -44,15 +44,3 @@ NEO_X_VARIANTE="xmodmap" # Set the standard console keymap to switch back to #STD_CONSOLE_KEYMAP="de-latin1-nodeadkeys" - - -# If you installed one of these programs in a non-standard path you may, -# uncomment the variable and change the path to the executable: -#PATH_XMODMAP=/usr/bin/xmodmap -#PATH_SETXKBMAP=/usr/bin/setxkbmap -#PATH_LOADKEYS=loadkeys -#PATH_SUDO=/usr/bin/sudo -#PATH_SETLEDS=setleds -#PATH_NUMLOCKX=/usr/bin/numlockx -#PATH_XSET=/usr/bin/xset - |