xmodmap: `Shift+CapsLock` -> `Delete` возвращает сообщение об ошибке
Так как CapsLock
имеет раскладку клавиатуры 66 на моей раскладке клавиатуры English_US, команда
xmodmap -e "clear Lock" -e "keycode 66 shift = Delete BackSpace"
витки CapsLock
в Delete
ключ и Shift+CapsLock
в BackSpace
,
Если я хочу поменять отображения CapsLock
а также Shift+CapsLock
от
xmodmap -e "clear Lock" -e "keycode 66 shift = BackSpace Delete"
затем Shift+CapsLock
не удаляет символ под курсором, но выдает сообщение об ошибке. хотя xev
показывает что правильный кейсимбол Delete
передается в X. Почему?
1 ответ
Если
key <CAPS> { [ NoSymbol, Delete ] };
находится в ~/.Xkbmap, тогда <Shift-CAPS>
посылает <SHIFT-DELE>
,
Вместо этого, если
key <CAPS> { actions = [ NoAction(), Redirect(key=<DELE>,clearmods=all) ] };
затем <Shift-CAPS>
посылает <DELE>
,
Необходимость Redirect(...)
действие в этом случае остается для меня загадкой.