Измените aphostrohe с помощью AltGr + P, используя xmodmap

Я пытаюсь изменить одну комбинацию клавиш с помощью xmodmap. AltGr + P выводит þ, но я бы хотел изменить его на выход '.

xmodmap -pm выводит:

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

Кажется, я не могу прикрепить Alt_R как один из модификаторов (если его нет как ISO_Level3_Shift или Mode_switch). Вот что показывает xev:

# - p
KeyRelease event, serial 41, synthetic NO, window 0x4800001,
    root 0x2b8, subw 0x0, time 194353, (300,-235), root:(366,280),
    state 0x10, keycode 33 (keysym 0x70, p), same_screen YES,
    XLookupString gives 1 bytes: (70) "p"
    XFilterEvent returns: False      


# - altgr
KeyRelease event, serial 41, synthetic NO, window 0x4800001,
    root 0x2b8, subw 0x0, time 216040, (249,-329), root:(315,186),
    state 0x90, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
    XKeysymToKeycode returns keycode: 92
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

# - altgr+p
KeyPress event, serial 41, synthetic NO, window 0x4800001,
    root 0x2b8, subw 0x0, time 230879, (218,-187), root:(284,328),
    state 0x90, keycode 33 (keysym 0xfe, thorn), same_screen YES,
    XLookupString gives 2 bytes: (c3 be) "þ"
    XmbLookupString gives 2 bytes: (c3 be) "þ"
    XFilterEvent returns: False

Всякий раз, когда я пытался изменить привязку, он либо добавляет ' вместо p, либо комбинация ничего не делает.

Обновление:

В настоящее время отображается апостроф, когда я нажимаю AltGr + J .

Обновление 2:

xmodmap -e "keysym THORN = apostrophe" изменяет P на ', даже если xev выдает THORN после нажатия AltGr + P

3
задан 15.04.2020, 10:05

1 ответ

См. Выходные данные xmodmap -pke, чтобы понять, как назначаются «значения» клавиш. Например, по умолчанию, если вы используете английскую (британскую) раскладку клавиатуры, xmodmap -pke | grep "thorn" вернет:

keycode  33 = p P p P section NoSymbol Greek_pi Greek_PI U03E1 U03E0 p P thorn THORN

При этом, предполагая, что вы используете английскую (британскую) раскладку клавиатуры, используйте Следующая команда для ввода апострофа при нажатии AltGr + P :

xmodmap -e "keycode 33 = p P p P section NoSymbol Greek_pi Greek_PI U03E1 U03E0 p P apostrophe quotedbl"

Чтобы получить это изменение для каждой сессии, создайте файл с именем .xmodmap , с помощью следующей команды:

xmodmap -pke > .xmodmap

Затем создайте файл с именем .xinitrc в вашем домашнем каталоге, содержащий следующую строку / команду:

xmodmap .xmodmap
0
ответ дан 15.04.2020, 10:06

Теги

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