diff options
-rwxr-xr-x | linux/bin/asdf | 7 | ||||
-rwxr-xr-x | linux/bin/uiae | 58 |
2 files changed, 45 insertions, 20 deletions
diff --git a/linux/bin/asdf b/linux/bin/asdf index d4dceea..d8218ff 100755 --- a/linux/bin/asdf +++ b/linux/bin/asdf @@ -76,7 +76,7 @@ die2() { } numlock_manually() { - echo -e "$1" >&2 + echo -e "${orange}$1${normal}" >&2 echo -e "Bitte jetzt ${orange}NumLock${normal} von Hand auf ${orange}$2${normal} schalten und ${orange}Enter${normal} drücken um fortzufahren…" >&2 read enter } @@ -107,6 +107,7 @@ set_keymap() { echo -e "${orange}Der Befehl ${red}loadkeys${orange} wurde nicht im angegebenen Verzeichnis gefunden, versuche es ohne explizite Angabe.${normal}" PATH_LOADKEYS=loadkeys fi + if [ -f "$@" ]; then if [ "${EUID}" = 0 ]; then "${PATH_LOADKEYS}" "$@" || die "Fehler beim Laden der Keymap ${orange}$@${red}." @@ -146,14 +147,14 @@ if [ -z ${DISPLAY} ]; then if [ -e "${PATH_SETLEDS}" ]; then "${PATH_SETLEDS}" +num || numlock_manually "Fehler beim setzen des Status von NumLock." an else - numlock_manually "Der Befehl ${red}setleds${normal} wurde nicht gefunden. Darum kann der Status von NumLock nicht automatisch geändert werden." an + numlock_manually "Der Befehl ${red}setleds${orange} wurde nicht gefunden. Darum kann der Status von NumLock nicht automatisch geändert werden." an fi 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${normal} wurde nicht gefunden. Darum kann der Status von NumLock nicht automatisch geändert werden." aus + 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 diff --git a/linux/bin/uiae b/linux/bin/uiae index c04f974..65a93a0 100755 --- a/linux/bin/uiae +++ b/linux/bin/uiae @@ -5,6 +5,13 @@ # Copyright 2008 Erik Streb del Toro # Distributed under the terms of the GNU General Public License v3 + +# colours in the Bash +normal="\033[0m" +red="\033[31m" +orange="\033[33m" +green="\033[32m" + if [ -f "${NEO_CONFIG}" ]; then . "${NEO_CONFIG}" || die "Failed to source ${NEO_CONFIG}" elif [ -f "${HOME}"/.neorc ]; then @@ -31,8 +38,23 @@ STD_XKBVARIANT=${STD_XKBVARIANT:-nodeadkeys} STD_CONSOLE_KEYMAP="${STD_CONSOLE_KEYMAP:-de-latin1-nodeadkeys}" NUM_LOCK_STATUS=${NUM_LOCK_STATUS:-on} +help() { +cat <<HELP +Aufruf: $0 [-q] +Aktiviert die Standard-Tastaturbelegung. + + -q, --quiet gibt – abgesehen von Fehlern – keine Meldungen aus + +NEO-Tastaturbelegung +Homepage: http://neo-layout.org/ + +HELP +exit 0 +} + die() { - echo "$@" >&2 + echo -e "${red}$@${normal}" >&2 + echo -e "${red}Die Belegung konnte nicht geändert werden.${normal}" exit 1 } @@ -57,38 +79,40 @@ set_xkbmap() { } set_keymap() { - if [ -e "${PATH_LOADKEYS}" ]; then - if [ -f "$@" ]; then - if [ "${EUID}" = 0 ]; then - "${PATH_LOADKEYS}" "$@" || die "Failed to set keymap $@." - elif [ -e "${PATH_SUDO}" ]; then - "${PATH_SUDO}" "${PATH_LOADKEYS}" "$@" || die "Failed to set keymap using sudo." - else - die "You need root priviliges to change the keymap." - fi + if [ ! -e "${PATH_LOADKEYS}" ]; then + echo -e "${orange}Der Befehl ${red}loadkeys${orange} wurde nicht im angegebenen Verzeichnis gefunden, versuche es ohne explizite Angabe.${normal}" + PATH_LOADKEYS=loadkeys + fi + + 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." else - die "keymap file $@ does not exist." + die "Die Belegung auf der Textkonsole kann nur mir Rootrechten geändert werden." fi else - die "loadkeys not found, cannot set keymap." + die "Die keymap-Datei ${orange}$@${red} gibt es nicht." fi + } if [ -n "$SSH_CONNECTION" ]; then - die "Cannot set keybord layout in a ssh session." + die "In einer ssh-session kann die Belegung nicht geändert werden." fi if [ -z ${DISPLAY} ]; then - set_keymap "${NEO_CONSOLE_KEYMAP}" + set_keymap "${STD_CONSOLE_KEYMAP}" if [ -e "${PATH_SETLEDS}" ]; then if [ "${NUM_LOCK_STATUS}" = "on" ]; then - "${PATH_SETLEDS}" -num || echo "Failed to set num lock status to on." >&2 + "${PATH_SETLEDS}" -num || echo -e "${orange}Fehler beim setzen des Status von NumLock.${normal}" >&2 else - "${PATH_SETLEDS}" +num || echo "Failed to set num lock status to off." >&2 + "${PATH_SETLEDS}" +num || echo "${orange}Fehler beim setzen des Status von NumLock.${normal}" >&2 fi else - echo "setleds does not exist, cannot set NUM status." >&2 + echo "${orange}Der Befehl ${red}setleds${orange} wurde nicht gefunden. Darum kann der Status von NumLock nicht automatisch geändert werden.${normal}" >&2 fi else if [ -e "${PATH_XSET}" ]; then |