Я хотел бы изменить поведение Caps Lock в виртуальных терминалах (например, tty CtrlAltF3), чтобы он действовал как модификатор Control. В идеале, я бы хотел, чтобы он действовал как Escape, когда нажимается один, но просто получить поведение Control оказывается трудным.
Я использую Ubuntu 17.04. Я прочитал и попробовал множество подходов к внесению этого изменения, но ни один из них, похоже, не применим к моей системе, как описано. Я чувствую, что systemd играет в этом роль, но детали неясны.
Я написал файл caps_control.kmap
, который отображает заглавные буквы для контроля,
keymaps 0-255
keycode 58 = Control
Если я запускаю loadkeys caps_control.kmap
с виртуальной консоли, это работает. Теперь я хочу, чтобы он загружался автоматически при загрузке / входе в систему / что угодно ...
Я нашел ссылки на использование , /etc/rc.local
чтобы сделать это, но моя система не имеет такого файла, хотя у него есть несколько каталогов , например /etc/rc0.d/
, /etc/rc1.d/
...
Похоже, так как Ubuntu 17 использует sytemd, я должен использовать localectl
для управления такими вещами, но мне не ясно, как это сделать. Например,
$ localectl status
System Locale: LANG=en_US.UTF-8
VC Keymap: n/a
X11 Layout: us
X11 Model: pc105
$ localectl list-keymaps
Couldn't find any console keymaps.
Страница localectl
справочника для упоминаний /etc/locale.conf
и /etc/vconsole.conf
ни одна из которых не существует в моей системе.
Я в полном недоумении. Может кто-то указать мне верное направление?
loadkeys caps_control.kmap
которая будет выполняться при входе в систему.
loadkeys
из ~ / .profile кажется проблематичным. Когда я вхожу в систему, я получаю сообщение об ошибке «Не удалось получить дескриптор файла, ссылающийся на консоль».