Это не ответ, просто большое разъяснение, чтобы, возможно, помочь генерировать следующий вопрос.
Спасибо за добавление дополнительной детали. У Вас, вероятно, есть проблема полномочий, но к сожалению это вероятно в полномочиях, должен был соединиться с сокетом домена 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, но я знаю, что это не слишком полезно.
На самом деле, функциональность 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