Как переназначить клавиатуру в режиме раскладки asciitilde

Как переназначить клавиатуру в режиме раскладки asciitilde

Я пытаюсь в настоящее время использовать xmodmap -eфункцию для переназначения моей клавиатуры. Я хочу заменить клавишу twosuperiorи greaterзависеть lessот активированного режима asciitilde.

Я говорю о режиме asciitildeили graveв отношенииэта конвенция

Интересно, как переназначить «раскладку режима asciitilde», поскольку я получаю один и тот же код клавиши для «раскладки режима grave» и «раскладки режима asciitilde».

Вот что я получаю в результате этого xevпроцесса:

// retrieving less
keycode 94 (keysym 0x3c, less)"<" 

// passing in asciitilde layout mode
keycode 50 (keysym 0xffe1, Shift_L),

// retrieving greater with asciitilde mode activated
keycode 94 (keysym 0x3e, greater)">"

 ------------------

// retrieving the code of twosuperior key 
keycode 49 (keysym 0xb2, twosuperior) "²"


// passing in asciitilde layout mode activated
keycode 50 (keysym 0xffe1, Shift_L)

// retrieving the code of twosuperior key with asciitilde being activated  
keycode 49 (keysym 0x0, NoSymbol)

Как вы видите, я получаю тот же код ключа длярежим расположения могилыирежим раскладки asciitilde.

Как я могу внести измененияasciitilde раскладка клавиш карта?

Спасибо

решение1

На самом деле все очень просто.

Первый аргумент относится к «раскладке в нижнем регистре», а второй аргумент — к «раскладке в верхнем регистре», поэтому синтаксис кода следующий:

xmodmap -e "keycode [keycode_number] = grave_mode_argument asciitilde_mode_argument" 

Таким образом, в нашем случае, чтобы поместить символы lessи greaterна место twosuperiorсимвола, мы можем просто запустить следующий код:

xmodmap -e "keycode 49 = less greater"

Кроме того, мы можем получить номера ваших кодов ключей с помощью [xev process][1].

Связанный контент