LINUX.ORG.RU

Поменять местами клавиши в виртуальной консоли

 


1

1

В гноме с помощью gnome-tweaks я переставил клавиши CTRL на место клавиш ALT, и теперь ко́нтролы рядом с пробелом (что очень удобно), а а́льты рассовал как получилось – левую рядом с ко́нтролом, а правую в самый конец справа.

Получилось вот так:

[win][ALT][CTRL][SPACE][CTRL][fn][menu][ALT]

И ещё поменял местами CAPS_LOCK и ESC (что тоже крайне удобно оказалось).

Иногда бывает надо зайти в виртуальную консоль (это бывает крайне редко и в этом проблема) и починить иксы или гном, или что-то ещё, что не даёт загрузиться в DE, и наступает борьба с привычкой к вышеназванным расположениям клавиш , и если в баше ещё терпимо, то в виме становится совсем грустно…

Есть ли возможность поменять местами вышеназванные клавиши? Какие вообще есть варианты?

Предлагайте также всякие альтернативы и рассказывайте о своих фишках на эту тему, – это всё интересно!

★★★★★

Последнее исправление: papin-aziat (всего исправлений: 1)

Ответ на: комментарий от krasnh

И прежде чем писать надо вспоминать в какой ты раскладке или смотреть на панель? 😉

А я просто жму один раз соответствующий шифт: левый — en, правый — ru. Получается одно лишнее нажатие, зато голова свободна (правда надо привычку сформировать, но это не больно).

papin-aziat ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

Предлагаешь зырить по углам экрана, чтобы понять надо переключаться или нет? А нет, ты предлагаешь просто набирать, потом стирать, потом переключать, а потом уже…

papin-aziat ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

И как это в 99% работает, когда ты здесь, на ЛОРе, делаешь смешанный ввод? В телеге? Что у тебя есть ещё там?

Эта фигня хороша только для терминала да гномощели, ну может ещё найдётся программа, где только английский, хотя может ты писатель и целыми днями пишешь на одном языке, но тогда можно мышкой на панели переключать и ты только зря капс занял.

papin-aziat ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Спасибо, дорогой анон, вроде всё работает! Самое офигенное, что весь этот иксовый колхоз выкинул, теперь везде одинаково – и в иксах, и в консоли.

Если кому надо, то изложу вкратце для USB-клавиатур.

Ставим пакеты evemu и evtest, командуем sudo evemu-describe, и там запоминаем номер event-а для своей клавы. У меня так:

/dev/input/event4:	BY Tech Usb Gaming Keyboard

Командуем cat /sys/class/input/event<твой номер>/device/modalias. У меня так:

$ cat /sys/class/input/event4/device/modalias 
input:b0003v258Ap0016e0110-e0,1,4,11, bla-bla-bla...

Нужна часть выхлопа до дефиса.

Создаём файлик /etc/udev/hwdb.d/90-remap.hwdb (главное, чтобы оканчивался на .hwdb) и пишем туда как в этом примере:

evdev:input:b0003v258Ap0016e0110*

В терминал командуем sudo evtest /dev/input/event<твой номер> и жмём клавишу, которую хотим изменить, и в терминале выскочит такое (у меня для ESC):

Event: time 1710027969.260775, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70039
Event: time 1710027969.260775, type 1 (EV_KEY), code 1 (KEY_ESC), value 0

Здесь интересует только вот такая часть: (MSC_SCAN), value 70039, а точнее только число (это сканкод).

Открываем эту сслыку: https://hal.freedesktop.org/quirk/quirk-keymap-list.txt (это кейкоды).

Теперь в файл 90-remap.hwdb добавляем строки в которых будет KEYBOARD_KEY_сканкод=кейкод. Вот мой пример законченного файла:

evdev:input:b0003v258Ap0016e0110*
 KEYBOARD_KEY_70029=capslock
 KEYBOARD_KEY_70039=esc
 KEYBOARD_KEY_700e0=leftalt
 KEYBOARD_KEY_700e2=leftctrl
 KEYBOARD_KEY_700e6=rightctrl
 KEYBOARD_KEY_70065=rightalt
 KEYBOARD_KEY_700e4=rightmeta

Cохраняем, командуем sudo systemd-hwdb update и перезагружаем комп.

Там вроде всё слетит после обновления systemd: тогда повторить последний шаг или почитать по ссылке как это можно автоматизировать (мне пока без надобности).

papin-aziat ★★★★★
() автор топика
Последнее исправление: papin-aziat (всего исправлений: 2)
Ответ на: комментарий от krasnh

Кстати, evtest таки пришлось скомпилить — чёт не положили нигде в репы, так что чистый гедонизьм был нарушен 😁

(на самом деле нет. у меня давно настроенный mock — кидаешь ему пакетик из Федоры и он выплёвывает для EL, причём делает всё это в раме и исчезает после своей работы)

papin-aziat ★★★★★
() автор топика
Последнее исправление: papin-aziat (всего исправлений: 1)