Я решил, что мой ключ caps-lock должен работать как клавиша ctrl, поэтому я добавил XKBOPTIONS="caps:ctrl_modifier"
в свой файл /etc/defaults/keyboard
. Этот файл на данный момент имеет следующее содержимое:
XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="nodeadkeys"
XKBOPTIONS="caps:ctrl_modifier"
BACKSPACE="guess"
Кроме того, после перезагрузки $ setxkbmap -query
возвращает
rules: evdev
model: pc105
layout: us
variant: nodeadkeys
options: caps:ctrl_modifier
, как и ожидалось (это pc105
, так как изначально это немецкая клавиатура ).
Однако, по какой-то причине это не устанавливает поведение caps так, как я хотел ... Если я пытаюсь запустить $ setxkbmap -option "caps:ctrl_modifier"
вручную, я получаю Error loading new keyboard description
; и независимо от того, какой вариант я пишу, я получаю ту же ошибку. Я также заметил, что если я буду запускать $ setxkbmap -layout us
самостоятельно после этого, то $ setxkbmap -option "caps:ctrl_modifier"
снова будет работать, и caps теперь работает как положено.
Вопрос: Что я сделал не так и как я могу сделать это правильно?
Хорошо, я нашел корень своих проблем: это использует дополнительную клавиатуру (возможно, это имеет отношение к тому, что это - беспроводная связь, не уверенная в этом).
Если после ручного решения проблемы, как описано я затем повторно включаю клавиатуру - я вхожу в ту же ситуацию с $ setxkbmap -option
не работа и ограничения, не ведущие себя.
По-видимому, конфигурация читается, прежде чем клавиатура обнаруживается или что-то как этот. Теперь вопрос состоял бы в том, как зафиксировать это, но я предполагаю, что поиск с помощью Google поможет.
На данный момент я могу просто записать крошечный сценарий с
setxkbmap -layout us -option caps:ctrl_modifier
внутри, и выполненный, что после перезапуска (или возможно даже вставленный в это .bashrc
).