Вот как я это сделаю. быть полезным / поучительным.
#!/bin/bash
menu() {
cat >&2 <<EOF
PROGRAM MENU
1 - display free disk space
2 - display free memory
0 - exit program
EOF
}
while true; do
menu
read -p "Enter selection: " selection
case "$selection" in
1)
echo df
df
;;
2)
echo free
free
;;
0)
echo exit
exit
;;
*)
echo "Please enter 1, 2 or 0" >&2
;;
esac
done
Я бы попробовал xmodmap
. Попробуйте так:
1 - Тестируем код клавиш
xmodmap -pke | grep -w J
Предположим, что результат будет
keycode 44 = j J j J j J j J
2 - Переназначаем код клавиш для тестирования
xmodmap -e "keycode 44 = j J k K l L m M n N o O"
3 - Проверьте, можете ли вы получить любую букву, отличную от j, с помощью ваших любимых модификаторов (Alt+whatever)
Если да, отредактируйте команду в пункте 2) так, чтобы Js был таким, каким он был изначально, за исключением того места, где вы нашли правильный модификатор - замените на Down
.
Если нет, то, возможно, вам нужно изменить расположение модификаторов. Опубликуйте вывод
xmodmap -pm
и мы посмотрим.
Обратите внимание, что команда xmodmap
отображает клавиши до тех пор, пока вы не выйдете из системы. Поместите команду в простой сценарий оболочки и вызывайте этот сценарий каждый раз, когда вы входите в систему (может быть автоматизировано в зависимости от вашего оконного менеджера).