Как изменить ключ CapsLock для получения «а»?

22

Во время набора текста я часто нажимаю CapsLockклавишу вместо aклавиши. (Клавиатура QWERTZU) Это довольно раздражает, потому что, как только я пойму, что нажал не ту клавишу, мне придется удалить несколько символов / строк текста и переписать их в нужной форме.

Я ищу способ предотвратить это.

Я нашел возможность отключения на CapsLockключ клавиатуры Параметры макета . Но в моем случае это означало бы, что вместо написания aя ничего не буду писать.

Положительный -> Мне не нужно переписывать целую строку, а только один символ

Отрицательный -> Не так очевидно, что я нажал не ту клавишу, поскольку пропущенный символ не воспринимается как строка текста в верхнем регистре.

Поэтому я предпочел бы возможность сопоставления CapsLockс a. Таким образом , при попадании CapsLockв aперсонажа будет написано.

Положительный -> Если я нажму CapsLockвместо того, aчтобы получить результат, который я действительно хотел напечатать.

Отрицательный -> Если я ударю CapsLockв любом другом контексте, я получу aперсонажа. Поскольку я никогда не использую этот ключ намеренно,CapsLock это не будет проблемой. (Я думаю, или это?)

Мой вопрос:

  1. Так как мне поменять на a?
  2. И есть ли случаи, когда это может быть опасно / провоцировать нежелательное поведение?
ямка
источник
3
Как у вас получилось, что CapsLock и a выглядят так модно и как кнопка?
djikyb
флейта флейта отредактировала мой вопрос, чтобы они выглядели так, но меня это тоже заинтересует.
Яма
7
Вы пишете <kbd>a</kbd>(это работает только в вопросах и ответах, а не в комментариях)
8128

Ответы:

21

В частности, я не знаю, как перейти CapsLockна a, потому что я не помню код ключа. Я найду это немного позже. Но, вообще говоря, вы можете использовать xmodmap.Xmodmap) для изменения раскладок клавиш. Когда GNOME впервые обнаружит ваш .Xmodmapфайл, он спросит, хотите ли вы всегда загружать его, и тогда все готово.

Я также думаю, что блокировка заглавных букв глупа. Однако ключевая позиция полезна. Мне нравится отображать его на клавишу управления. Я использую контролировать много , и это утомительно для моего мизинца , чтобы быть постоянно достигая вниз в этом неудобном положении. И, как я позже обнаружил, исторически Controlэто то, где Caps Lockсейчас находится. Так или иначе. Создайте файл в вашем домашнем каталоге, который будет называться .Xmodmapсо следующими строками:

remove Lock = Caps_Lock
keysym Caps_Lock = Control_L

Чтобы эти изменения вступили в силу прямо сейчас, запустите xmodmap ~/.Xmodmap.

Вы можете найти коды клавиш по своему усмотрению xev. aПолучается, что ключевой код для 38 или гекс 0x61. Таким образом, вместо этого .Xmodmap может быть:

remove Lock = Caps_Lock
keysym Caps_Lock = 0x61

Я настоятельно рекомендую прочитать справочную страницу, много интересного.

djeikyb
источник
Нужно ли использовать только последние строки, которые вы опубликовали? Я получаю следующую ошибку: xmodmap: /home/pit/.Xmodmap:1: bad keysym in remove modifier list 'Caps_Lock', no corresponding keycodes xmodmap: /home/pit/.Xmodmap:2: bad keysym target keysym 'Caps_Lock', no corresponding keycodes xmodmap: 2 errors encountered, aborting. я не увидел ничего на странице руководства, объясняющей это поведение. Я также попытался выполнить команду как sudo, но это не изменило ошибки.
Яма
2
Lol, у меня все еще была отключена клавиша CapsLock из моего предыдущего теста в параметрах раскладки клавиатуры. После повторного включения это работает. Спасибо.
Яма
Просто примечание: я использовал это руководство, чтобы получить caps lock для сопоставления, чтобы контролировать, но мне пришлось вставить add Control = Caps_Lockмежду линиями remove и keysym, чтобы заставить его работать.
Брайан Хед
2

Посмотрев man xmodmap, оказывается, есть идемпотентный способ определить это:

clear Lock
keysym Caps_Lock = Caps_Lock Control_L

После перезапуска X вы должны иметь возможность xmodmap ~/.Xmodmapмногократно запускаться, не получая ошибок «bad keysym».

Обновление : К сожалению, это не кажется переносимым и идемпотентным .

l0b0
источник