Модификатор очистки xmodmap не работает

Это не ответ, просто большое разъяснение, чтобы, возможно, помочь генерировать следующий вопрос.

Спасибо за добавление дополнительной детали. У Вас, вероятно, есть проблема полномочий, но к сожалению это вероятно в полномочиях, должен был соединиться с сокетом домена DBus Unix.

Подтвердить это выполнение как некорневое:

$ strace -o /tmp/ns.out notify-send "why will this not connect"
$ grep '^connect' /tmp/ns.out
connect(4, {sa_family=AF_FILE, path=@"/tmp/dbus-6AIOJVWzCC"}, 23) = 0

кроме Вы, вероятно, получите что-то как

connect(…) = -1 ECONNREFUSED  (Connection refused)

Почему?Понятия не имею. Я действительно знаю, что подсистема уведомления привлекла намного больше внимания в сообществе разработчиков GNOME, чем я когда-нибудь думал, что такая поверхностно простая функция должна. Я подозревал бы некоторый конфигурационный файл приблизительно в огромном количестве местоположений конфигурации GTK, но я знаю, что это не слишком полезно.

4
12.05.2015, 13:26
1 ответ

На самом деле, функциональность CapsLock привязана к значению keysym нажатой клавиши. Чтобы увидеть отображение кодов клавиш на keysyms, выполните xmodmap -pke. Отображение CapsLock (ключевой код 66) должно быть таким (| grep 'keycode 66'):

keycode  66 = Caps_Lock NoSymbol Caps_Lock

Вы можете немного поиграть с xev. Подробнее читайте в ArchWiki: Xmodmap#Introduction.

Как я могу отсоединить клавиши (коды клавиш), чтобы отключить их функцию как модификаторов?

Вам нужно изменить отображение CapsLock.

  • Чтобы отключить CapsLock, нужно снять его отображение:

    xmodmap -e 'keycode 66 = NoSymbol NoSymbol NoSymbol NoSymbol'
    
  • Чтобы включить CapsLock, нужно снова отобразить его на значения по умолчанию:

    xmodmap -e 'keycode 66 = Caps_Lock NoSymbol Caps_Lock'
    

Что на самом деле делает команда clear?

Она очищает отображение модификатора, а не отображение кодов клавиш. Подробнее на ArchWiki: Xmodmap#Modifier_keys

2
27.01.2020, 21:00

Теги

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