Xmodmap, повторно отображающий модификаторы, не работающие?

Я использую новую клавиатуру и пытаюсь настроить ее для имитации клавиатуры на моем ноутбуке. Я использую xmodmap на Ubuntu 14.04 и не могу заставить это работать. Я очистил модифицирующие клавиши как так:

xmodmap -e "clear mod1"
xmodmap -e "clear mod4"
xmodmap -e "clear Control"

И это хорошо работает, впоследствии модификаторы ничего не делают. После этого я пытаюсь присвоить ключ Alt_R для действия как супер ключ, как так:

xmodmap -e "add mod1 = Alt_R"

Однако кнопка высокого звука затем возвращается к поведению как кнопка высокого звука, вместо того, чтобы вести себя как супер и поднять поиск Единицы, когда это касается. Существует ли прием к получению модификаторов, работающих с xmodmap?

Кроме того, даже после очищающегося управления, с "xmodmap-e "очищают Управление", я могу все еще использовать ctrl.

Клавиатура, которую я использую, является клавиатурой десяти кубометров s окончательный, если это имеет значение вообще.

Править: Реализация я сделал при бездельничании с xev и попытке решить проблему: Когда я выполняю что-то как "xmodmap-e "код клавиши 133 = Alt_L" (код клавиши 133 обычно супер), и затем запустите xev, когда я смотрю на вывод, он показывает это:

KeyRelease event, serial 37, synthetic NO, window 0x2000001,
root 0x9e, subw 0x0, time 179020, (-382,66), root:(406,118),
state 0x40, keycode 133 (keysym 0xffe9, Alt_L), same_screen YES,
XKeysymToKeycode returns keycode: 64
XLookupString gives 0 bytes: 
XFilterEvent returns: False

Как Вы видите, это рассматривает нажатие клавиши как Alt_L. Однако ключ все еще ведет себя как супер ключ, активируя поиск Единицы при нажатии.

4
задан 7 August 2014 в 18:24

1 ответ

Я не эксперт сам, но я дам ему попытку. В первую очередь, давайте сделаем xmodmap сценарий в ~/.Xmodmap. Я понимаю, что Вы хотите, чтобы правильный высокий звук функционировал как супер ключ. Я предлагаю это:

clear mod1
clear mod4

!Make right alt to look like Super_R
!I'm assuming your right alt has keycode 108, you can check using xev
keycode 108 = Super_R NoSymbol Super_R

!Add the Super_L and Super_R keys to the modifier mod4
add mod4 = Super_L Super_R

Ваша другая клавиша Alt и супер ключи могут теперь быть испорчены, но можно присвоить их чему-либо, что Вы хотите аналогично. (Если Вы не хотите изменять их вообще, используйте xev для наблюдения то, что они сделали первоначально и присваивают их этому.) Просто соединяет весь clear с сначала, тогда назначения кодов клавиши к ключевым именам, тогда наконец назначения ключевых имен к модификаторам, и я думаю, что она должна работать. Обычно, ~/.Xmodmap должен быть выполнен автоматически на входе в систему, но в противном случае можно попытаться добавить строку

xmodmap ~/.Xmodmap

или

sleep 4 && xmodmap ~/.Xmodmap &

к ~/.bash_profile.

5
ответ дан 17 November 2019 в 19:59

Другие вопросы по тегам:

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