Я создал .Xmodmap
для переназначения моего Caps_Lock
в Mode_switch
.
Это позволяет мне переназначить блок стрелки / навигации клавиатуры на домашний ряд.
Все работало нормально, пока я не понял, что программы, написанные на платформе Java и использующие Swing
(как редакторы Jetbrains), не распознают эти изменения.
Теперь я хочу перенести эти настройки в xkb
, поскольку рекомендуется использовать xmodmap
.
(Я думаю, что это может быть решением этой проблемы, но я действительно не знаю, как сделать то же самое с xkb.) Конфигурация xkb
сбивает меня с толку и кажется очень сложным подходом только для этих нескольких повторов.
Итак, как я могу это сделать?
Я действительно предпочел бы другой подход / обходной путь для проблемы Java, чтобы я мог сохранить свою конфигурацию xmodmap.
Вот мой .Xmodmap
:
! Disable Caps Lock and use it as mode switch
keycode 66 = Mode_switch Mode_switch
! Toggle Caps Lock with <Mode_switch> + <Control_R>
keysym Control_R = Control_R Control_R Caps_Lock
! Remap navigation block to ijkl...
keysym j = j J Left Left
keysym l = l L Right Right
keysym i = i I Up Up
keysym k = k K Down Down
keysym u = u U Home Home
keysym o = o O End End
! ö Ö
keycode 47 = odiaeresis Odiaeresis BackSpace BackSpace
keysym h = h H Delete Delete
keysym n = n N Prior Prior
! enable mu for use with Iso_Level_3 (the right alt key on german keyboards)
keysym m = m M Next Next mu mu
! Space to Escape
keysym space = space space Escape
И вот мой вывод xmodmap:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Mode_switch (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)