Метод постоянной замены ключей и отключения [дубликат]

Я ищу способ переназначить определенные ключи в ubuntu.

то есть

Я бы хотел изменить PgUp на Home или PgDown в End .

Существует ли встроенная команда или инструмент переназначения ключей в Ubuntu / GNOME?

266
задан 14 August 2014 в 12:53

2 ответа

Использование запросных параметров конфигурации XKB

Если ваш Lucky , возможно, конкретный перенапряжение, вы хотите выполнить, уже интегрирован в набор предопределенных параметров, вы можете добавить в свою текущую конфигурацию с помощью SetXKBMAP .

  1. На терминале Откройте Manpage XKeyboard-Config : ~ $ Man xkeyboard-config
  2. Прокрутите вниз или поиск с \ для вашей конкретной опции конфигурации. В моем случае я хотел перенаправить клавиатуру Удалить ключ к запятую вместо периода, и мне повезло
 ┌─────────────────────────────────────────────────────────────────┐
 │Option               Description                                 │
 ├─────────────────────────────────────────────────────────────────┤
 │kpdl:dot             Legacy key with dot                         │
 │kpdl:comma           Legacy key with comma                       │
 │kpdl:dotoss          Four-level key with dot                     │
 │kpdl:dotoss_latin9   Four-level key with dot, Latin-9 only       │
 │kpdl:commaoss        Four-level key with comma                   │
 │kpdl:momayyezoss     Four-level key with momayyez                │
 │kpdl:kposs           Four-level key with abstract separators     │
 │kpdl:semi            Semicolon on third level                    │
 │                                                                 │
 └─────────────────────────────────────────────────────────────────┘
  1. Проверьте вашу текущую конфигурацию клавиатуры с : ~ $ setxkbmap -query
rules:      evdev
model:      pc105
layout:     es,gb
variant:    winkeys,
  1. Добавить Опция до текущей конфигурации: : ~ $ setxkbmap -option kpdl: commaoss
:~$ setxkbmap -query
rules:      evdev
model:      pc105
layout:     es,gb
variant:    winkeys,
options:    kpdl:commaoss
  1. Чтобы удалить все параметры, используйте пустой аргумент опции : ~ $ setXkbmap -option

Если вам требуется сопоставление, которое Не предварительно определено там, например, в качестве примера вы разместили, вам нужно будет написать его самостоятельно Как объяснено в этом ответе

0
ответ дан 19 March 2021 в 00:31

Неустойчивое извлечение с помощью ярлыка .desktop

В моем случае я хотел вернуть десятичную точку клавиатуры к запятой, но только временно, поэтому xmodmap удовлетворяет этому требованию в моем случае

  • Узнайте, что такое код клавиши для конкретной клавиши извлечения и клавиша , которую я также хочу отобразить на карте.
    • :~$ xev | grep keyycode
  • Нажмите интересующие вас клавиши и проследите за параметром stdout
    state 0x10, keycode 91 (keysym 0xffae, KP_Decimal), same_screen YES,
    XKeysymToKeycode returns keycode: 129
    state 0x10, keycode 59 (keysym 0x2c, comma), same_screen YES,
  • 1-я клавиша, которую я хочу сохранить, и 2-я клавиша, которую я хочу сохранить.

    • Клавиша, которую я хочу сохранить : ..., клавиша 91 (...
    • Клавиша, на которую я хочу наложить этот код: ...(клавиша 0x2c, запятая),...
  • Узнайте, какая текущая привязка к:

    • :~$ xmodmap -pke | grep "keycode\s*91"
keycode  91 = KP_Delete KP_Decimal KP_Delete KP_Decimal

Как указано в руководстве xmodmap: К ключу может быть прикреплено до восьми кейсимов. : Клавиша 1-я используется, когда клавиша модификатора нет , 2-я с Shift и т.д.... Это не совсем соответствует тому, что происходило в моём случае, но триал и ошибка позволили мне обнаружить, что 2-ой позиционный аргумент - это аргумент, которым я был после

  • Map to the new config.

    • :~$ xmodmap -e "keycode 91 = KP_Delete запятая KP_Delete KP_Decimal"
  • Карта обратно в оригинальный конфиг.

    • :~$ xmodmap -e "keyycode 91 = KP_Delete KP_Decimal KP_Delete KP_Decimal"
  • Я создал пару .desktop ярлыков в ~\. local\share\applications\, чтобы легко переключиться на ту или иную конфигурацию:

[Desktop Entry]
Name=KeyPad comma
Exec=xmodmap -e "keycode 91 = KP_Delete comma KP_Delete KP_Decimal"
Terminal=false
Type=Application
Icon=/home/paui/.icons/KP_comma.png

Дополнительная информация: поле состояния выход xev,

Поле состояния - это "сумма" текущих активных модификаторов. Это те, которые я расшифровал.

    0x01 Shift
    0x02 Caps
    0x04 Control
    0x08 Alt
    0x10 NumLock
    0x80 Alt Gr
0
ответ дан 19 March 2021 в 00:31

Другие вопросы по тегам:

Похожие вопросы: