Правильне місце для розміщення xmodmap ~/.Xmodmap
(щоб ваші зміни були прочитані при запуску) знаходиться ~/.xinitrc
(див. Пояснення нижче), хоча ви можете по черзі розміщувати xmodmap
команду як елемент запуску ( /usr/bin/xmodmap /home/user/.Xmodmap
). Я можу сказати, що на 12.04 (і, імовірно, на 12.10) ці дві альтернативи безумовно спрацьовують, оскільки в будь-якому випадку вони читаються після входу в систему lightdm
. (Я змінив Повернення до правої зміни , і зміна набрала чинності лише після введення пароля та входу в систему).
Зверніть увагу: якщо ви перебуваєте на Xfce, на офіційному поширеному запитанні Xfce зазначено, що вам, можливо, доведеться створити елемент запуску замість використання ~/.xinitrc
, і що вам, можливо, доведеться затримати виконання, щоб xmodmap
зміни не були перезаписані setxkbmap
. Ви можете скористатися затримкою, щоб досягти цього у своєму запуску:
/bin/bash -c "sleep 20; /usr/bin/xmodmap /home/$USER/.Xmodmap"
(Для запису при запуску потрібно вказати абсолютні шляхи)
Кожен раз, коли setxkbmap
запускається, щоб змінити розкладку клавіатури, вам доведеться запускати xmodmap ~/.Xmodmap
знову в терміналі.
Створення ~/.xinitrc
Створіть файл у вашому будинку папки .xinitrc
з
touch .xinitrc
і розмістіть у ньому:
xmodmap ~/.Xmodmap
У вашому Xmodmap
файлі не повинно бути записів у xmodmap -e " "
стилі, який використовується у терміналі для тимчасового встановлення значень. У ньому повинні бути записи в такому форматі:
keycode 65 = Tab
keycode 23 = Space
Часто заплутано, хто з різних X
файлів (таких як .xprofile
, .xinitrc
тощо) читається при запуску, але .xinitrc
, здається, все ще читається під 12.04, тоді як .Xmodmap
чи .xinputrc
не читаються самі по собі.