У меня есть пользовательское ключевое отображение в файле ~/.Xmodmap
который может быть активирован путем выполнения xmodmap ~/.Xmodmap
.
Однако я хочу, чтобы это произошло автоматически, когда я вхожу в систему. Я попробовал следующее без успеха:
~/.xinitrc
с содержанием xmodmap ~/.Xmodmap
, как предложено здесь~/.xsession
с содержанием xmodmap ~/.Xmodmap
, как предложено здесь~/.xsessionrc
с содержанием xmodmap ~/.Xmodmap
, как предложено здесьОчевидно, что-то идет не так, как надо, но что? И как я могу зафиксировать это?
Очевидно, что для gnome это должно быть ~/.xprofile
, но этот файл выполняется слишком рано, чтобы xmodmap
сработало.
Итак, я заставил его работать, создав .config/autostart/xmodmap.desktop
[Desktop Entry]
Type=Application
Exec=/home/tvbox/bin/modmap
Hidden=false
X-GNOME-Autostart-enabled=true
Name=xmodmap
Comment=xmodmap script
И в /home/tvbox/bin/modmap
у меня есть:
xmodmap ~/.Xmodmap
Я попробовал решение, найденное здесь, но почему-то оно не сработало. После нескольких дней поисков и экспериментов я наконец нашел виновника, то есть Уэйленда.
Моя система - Ubuntu 18.10, и я по умолчанию входил в систему. Однако недавно я перешел на Ubuntu на Wayland в менеджере входа, и с тех пор мой ~ / .Xmodmap перестал работать.
Как я читал на других сайтах, Wayland использует xkb вместо xmodmap. Однако все еще громоздко настраивать xkb. Поэтому для обычного пользователя, такого как я, временное решение - переключиться обратно на Ubuntu на экране входа. Я надеюсь, что это поможет другим людям, которые сталкиваются с подобной проблемой.
Я столкнулся с той же проблемой и обнаружил, что решение, предоставленное MuadDev, сработало (в Ubuntu 20.04, но я думаю, это также может относиться к 18.04 и выше).
В /usr/share/X11/xkb/symbols/pc
Просто добавьте строку:
modifier_map Mod3 { Scroll_Lock };
Под разделом // Начало сопоставлений модификаторов.
Тогда вам просто нужно сделать перезагрузку, и все готово.
Спасибо за подсказку, MuadDev!