Надежная смена ключа на неисправной клавиатуре

У меня есть клавиатура, на которой ключ «P» не работает, но я не вижу смысла отбрасывать ее на один дефект. Поэтому я хочу сопоставить один из рабочих клавиш с «P». Это оказалось мощным, почти круглым вызовом. Как и в Linux, существует множество решений, все из которых работают, но не очень. В идеале я хочу, чтобы ключи менялись каждый раз, когда я загружался, будь то терминал (CLI) или X / Desktop (GUI).

«Круговая» проблема заключается в правильной миссии ввести символ «P» в исправлениях ниже, если у вас на самом деле нет символа P.

  • Как использовать управление bash на клавиатуре
  • Карта Capslock для управления на Wayland
  • Пользовательская раскладка клавиатуры сбрасывается до значения по умолчанию после ожидания или перезагрузки
  • Исправлять болтовню / отскок клавиатуры со стороны программного обеспечения
  • Как настроить zkbd (привязки клавиатуры zsh) на сервере?
  • Как навсегда отключить ключ Insert в Linux?
  • Как лучше всего сопоставить рабочий ключ (например, раздел / градусы) с нерабочим ключом типа «P»?

  • Карта Super + в начало / конец
  • Как игнорировать входной буфер клавиатуры между двумя `read`
  • Ошибка клавиатуры в Fedora 20 (виртуальный бокс)
  • Korn Shell: конец, pgup, pgdown и ключ удаления не работают
  • Почему setxkbmap создает ключ с другими ключами?
  • Отправка ключевых сигналов нажатия на фоновый процесс
  • One Solution collect form web for “Надежная смена ключа на неисправной клавиатуре”

    1. Определите «код ключа» вашего рабочего ключа (в моем случае § называется «секция» или «шелка»):

      showkey

    Запустите это, затем нажмите рабочий ключ. Он должен показать что-то вроде:

    keycode 41 press keycode 41 release 

    Таким образом, «41» – это ключевой код моего рабочего ключа.

    1. Сопоставьте этот физический ключ с вашим отсутствующим ключом.

      keycode 41 = p | sudo loadkeys

    Теперь, если вы не можете набрать свой отсутствующий ключ (например, «p»), он получит … интересный …

    Лучшее решение, которое я нашел, – это echo $'\x70' в файл (скрипт bash), а затем зайти туда и использовать его в команде сценария. Предположим, вы хотите добавить сопоставление в свою процедуру загрузки – вы добавили бы его в файл ~/.bashrc .

     echo keycode 41 = p >> ~/.bashrc 

    Теперь вам нужно отредактировать .bashrc и изменить последнюю строку:

     echo keycode 41 = p 

    в

     echo keycode 41 = p | sudo loadkeys 

    Теперь, если вы перезагрузитесь, нужно перевести ключ 41 (раздел) в «P».

    Примечание 1: Следующее решение:

     xmodmap -e "keycode 49 = P" 

    это хороший метод, но он работает только при загрузке X (Desktop). Это хорошо, потому что это не требует страшного sudo, поэтому вы можете добавить его в свой запуск ~/.bashrc .

    Примечание 2: Использование Ctrl + Shift + u и ввод 0050 (код ASCII для «P») не работает.

    Linux и Unix - лучшая ОС в мире.