Я выяснил, что xmodmap был правильным решением здесь. В файле .Xmodmap выключите сдвиг, затем добавьте правый сдвиг как переключатель режимов и добавьте левый сдвиг как shift:
clear Shift
keysym Shift_R = Mode_switch
add Shift = Shift_L
Теперь порядок первых нескольких столбцов клавиш - key, left_shift+key, right_shift+key. Так что для примера в круглых скобках:
keycode 18 = 9 parenleft 9 parenleft bracketright plusminus bracketright
Поскольку правый сдвиг больше не распознается как shift, он перестанет работать для всех клавиш до тех пор, пока вы не вернете его обратно в третий столбец, например, я хочу работать со сдвигом вправо, но не влево:
keycode 38 = a a A A ae AE ae
Подсказка: если вы что-то испортили во время игры с xmodmap, запустите
setxkbmap
, чтобы вернуть все в состояние по умолчанию.