Диагностика ошибок xmodmap

Я получаю эту ошибку при попытке использовать xmodmap чтобы избавиться от блокировки caps:

 $ xmodmap -e 'clear Lock' X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 118 (X_SetModifierMapping) Value in failed request: 0x17 Serial number of failed request: 8 Current serial number in output stream: 8 

Я запускаю xfce. Эта проблема не возникала до того, как я добавил апплет клавиатуры в панель; перед этим я смог запустить мой скрипт xmodmap для обмена Esc и CapsLock:

 !Remap Caps_Lock as Escape remove Lock = Caps_Lock keysym Caps_Lock = Escape 

Может быть, что я выбрал alt-caplock в качестве комбинации клавишных клавиш в настройках макетов клавиатуры.

У меня была аналогичная проблема, прежде чем на другой машине запустил openbox. На этой машине эта проблема началась, когда я перешел на Lucid. Я сообщил об ошибке в xorg. Однако остается неясным, действительно ли это проблема с xorg, или если я просто что-то не так с моей конфигурацией.

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

Обновить

Я обнаружил, что проблема специально вызвана добавлением варианта макета Канады «Многоязычный» (ca-multix). Если я вместо этого добавлю вариант «Многоязычный (первая часть)» (ca-multi), проблема не возникает. Я думаю, что это, вероятно, окажется полезным решением, но я пока не знаю, какая разница между этими вариантами.

Я зарегистрировал проблему freedesktop и комментирую связанную с ней проблему ubuntu .

3 Solutions collect form web for “Диагностика ошибок xmodmap”

Современный Xorg использует расширение XKB для поддержки раскладки клавиатуры. Xmodmap эмулируется через уровень совместимости, но он имеет причуды. Вы можете полностью отключить XKB, и Xorg вернется к использованию старых сопоставлений клавиатуры Xmodmap. Я думаю, что он устанавливает параметр XkbDisable в true в xorg.conf, но вы, вероятно, захотите сделать это методом XKB. Есть много настраиваемых опций, расположенных в /usr/share/X11/xkb/rules/xorg.xml, и я думаю, что вам нужны кепки: swapescape, который меняет Caps Lock и Escape. Попробуйте setxkbmap -option caps: swapescape

Проблема возникает, когда вы пытаетесь добавить keyym к модификатору, который уже добавлен в другой ключ-модификатор. Очень важно знать, что если вы добавите keyym к модификатору, все остальные ключи, которые добавят ключи в случае, добавляются также к этому модификатору.

Например:

 clear mod5 add mod5 = ISO_Level3_Shift Mode_switch 

может привести к

 mod5 backslash (0x33), Caps_Lock (0x42), ISO_Level3_Shift (0x5c), Mode_switch (0xcb) 

потому что у вас есть что-то вроде

 keycode 66 = Caps_Lock NoSymbol ISO_Level3_Shift 

в вашем ~ / .Xmodmap (или .xmodmap, … Вы можете просмотреть текущий код ключа для сопоставления клавиш через « xmodmap -pke »)

который приведет к ошибке BadValue, когда вы также попытаетесь сделать что-то вроде

 add lock = Caps_Lock 

потому что Caps_Lock уже добавлен в модификатор mod5.

 setxkbmap -option caps:escape # use caps as esc 

или

 setxkbmap -option caps:swapescape # to swap caps with esc 
  • Управление фокусом / событиями XFCE
  • Как отключить звуковой сигнал в xfce при нажатии кнопки удаления?
  • Предложения для поиска приложений Xubuntu (XFCE)
  • Почему thunderbird покидает рабочее пространство, когда я нажимаю на уведомление?
  • Как я могу создавать новые всплывающие окна для отображения на одном рабочем столе своего приложения?
  • Как создать точку доступа WLAN на ноутбуке в XFCE4?
  • Как отредактировать главное меню?
  • Как рассказать xfce (или приложение), куда поместить окно при запуске?
  • использование левой кнопки мыши для перемещения окна может вызвать замораживание (XFCE4 / Ubuntu 15.10)
  • Появится новое окно на соответствующем мониторе
  • Как предотвратить перекрытие рабочих столов Gnome и XFCE
  • Interesting Posts

    Bash: нажатие 4 раза

    установка debian – подключение к домашнему маршрутизатору для подключения к Интернету

    Клавиша Remap Return в терминале для предотвращения случайной команды на серверах производств

    Как получить отладочную информацию из rsyslog?

    Как создать каталог для каждого файла в родительском каталоге

    Есть что-то вроде «общих команд Linux»?

    Что такое хорошее приложение X, которое я могу использовать для тестирования X-сервера на Solaris?

    Cygwin X не работает с DISPLAY localhost: 0 на окнах 10

    найти наибольшие последние измененные файлы / dirA / file, / dirB / file

    Как отправить звук HDMI в ДРУГОЙ HDMI-порт?

    Греческие символы в боковой панели mutt (имена почтовых ящиков, полученные через offlineimap)

    KVM linux guest, второй жесткий диск, раздел LVM или весь диск

    Запускайте ненулевой код выхода, когда я выхожу из цикла

    Ловушка SNMP в Unix

    строка 24: командная команда unterminated `s '

    Linux и Unix - лучшая ОС в мире.