2

Я хотел бы изменить раскладку (отображение) клавиатуры Lenovo ThinkPad (которую я ненавижу), чтобы она была похожа на Acer TravelMate 8000 (которую я люблю).

Это в основном означает:

  • Поменяйте местами Fn и оставьте Ctrl
  • Tab-слева, чтобы действовать как PgUp
  • Fn '+ Tab-слева, чтобы действовать как дома
  • Tab-право вести себя как PgDown
  • Fn '+ Tab-вправо действовать как конец
  • PgUp действовать как Удалить
  • Дом, чтобы действовать как Вставка

Я пробовал xev чтобы увидеть коды.
Я нашел этот список символов: http://cs.gmu.edu/~sean/stuff/n800/keyboard/keysymdef.h
Это мой результат:

xmodmap -e 'keycode 112 = XF86Back'     # Remap PgUp to TabPrev
xmodmap -e 'keycode 117 = XF86Forward'  # Remap PgDn to Tabnext
xmodmap -e 'keycode 166 = Prior Home XF86Back'        # Remap TabPrev to PgUp.
xmodmap -e 'keycode 167 = Next End XF86Forward'       # Remap TabNext to PgDn.
xmodmap -e 'keycode 151 = Control_L'    # Remap FN to be Ctrl.
xmodmap -e 'keycode  37 = XF86WakeUp'   # Remap Ctrl to be FN.
xmodmap -e 'keycode  94 = Shift_L'      # Remap stupid left |\*& to be Shift too.

Однако это не совсем то, что мне нужно, поскольку он отображает Shift + Tab * на Home, что не позволяет мне использовать комбинацию Shift + Home' (для выделения текста) и работает только в некоторых приложениях (например, не работает в Firefox для перехода к Топ).

Итак, как мне это отобразить?


Обновление: я использовал setkeycodes и нашел эти коды сканирования:

                 Press            Release
TabLeft  - 158   ^[[5~0xe0 0x6a   0xe0 0xea 
TabRight - 159   ^[[6~0xe0 0x69   0xe0 0xe9
PgUp:            0xe0 0x49        0xe0 0xc9 
PgDn:            0xe0 0x51        0xe0 0xd1 

Ctrl:            0x1d             0x9d 
FN:              0xe0 0x63        0xe0 0xe3

Обновление: я также обнаружил, что dumpkeys показывает интересную информацию. Например, псевдонимы строк для некоторых ключей; например, здесь определяется ^[[5~ показанный showkey -s .


Обновление: я пробовал setkeycodes:

sudo setkeycodes 0xE063  29  ##  Fn   to Ctrl
sudo setkeycodes 0x1d   143  ##  Ctrl to Fn
sudo setkeycodes 0x56    42  ##  |\*& to Shift

showkeys -k показывает правильные коды клавиш, но они по-прежнему не работают - например, Ctrl+T не открывает вкладку в FF и т. д.
После отмены изменений все работает как прежде.

sudo setkeycodes 0xE063 143  ##  Fn   to Ctrl
sudo setkeycodes 0x1d    29  ##  Ctrl to Fn

Что мне не хватает?

1 ответ1

2

Наткнулся на это сообщение, ища статус проблемы, что коды клавиш> 128 не могут быть сопоставлены как ключ модификатора. В прошлый раз, когда я проверял это, я не мог поменять местами fn/ctrl.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .