хочу поделиться опытом. У меня была заменена клавиатура на ноутбуке, клавиатура не родная, и некоторые клавиши нажимались неправильно:
вместо 3 - ц/w и наоборот
вместо у/e - пробел
до появления wayland стояла программка xkeycaps, но с последними обновлениями, как я ни старался тянуть с обновлениями, все работать перестало.
Два дня мучал дипсика, вот примерный алгоритм действий по приведению клавиатуры в нужный вид.
может кому-то пригодится... не бейте сильно, первый раз пишу)))
Решение для нестандартных клавиатур в Manjaro KDE Plasma (Wayland)
Проблема
Физическая клавиатура с перепутанными клавишами:
Клавиша 3 → выдает w
Клавиша W → выдает 3
Клавиша E → выдает пробел
Клавиша ПРОБЕЛ → выдает e
Решение через keyd (работает на уровне ядра)
Установите keyd:
bash
sudo pacman -S keyd
Создайте/отредактируйте конфигурационный файл:
bash
sudo nano /etc/keyd/default.conf
Вставьте конфигурацию:
ini
[ids]
*
[main]
Исправляем перепутанные клавиши
3 = w # Физическая 3 → w
w = 3 # Физическая W → 3
e = space # Физическая E → пробел
space = e # Физический пробел → e
Включите и запустите службу:
bash
sudo systemctl enable --now keyd
Перезагрузитесь или перезапустите службу:
bash
sudo systemctl restart keyd
Настройка раскладок в KDE Plasma
Установите стандартные раскладки:
Откройте Системные настройки → Ввод → Клавиатура → Раскладки
Удалите все старые раскладки
Добавьте: English (US) и Russian
Настройте переключение (обычно Alt+Shift)
- Или через терминал:
bash
Установите раскладки
kwriteconfig5 --file ~/.config/kxkbrc --group Layout --key LayoutList "us,ru"
kwriteconfig5 --file ~/.config/kxkbrc --group Layout --key Options "grp:alt_shift_toggle"
Проверка
После перезагрузки:
Английская раскладка: 3→3, W→w, E→e, ПРОБЕЛ→пробел
Русская раскладка: W→ц, E→у
Альтернативные методы
Для Wayland через xkb (сложнее):
Создайте кастомную раскладку в /usr/share/X11/xkb/symbols/ и зарегистрируйте в evdev.xml.
Поиск и устранение неисправностей
Проверьте keycodes клавиш:
bash
sudo evtest /dev/input/event4 # выберите клавиатуру
Проверьте логи keyd:
bash
sudo journalctl -u keyd -f
Если keyd не работает:
Убедитесь, что конфигурационный файл синтаксически правильный
Проверьте, нет ли ошибок в логах
Попробуйте перезагрузиться
Примечания
keyd работает на уровне ядра, поэтому исправляет проблему для всех приложений
Решение сохраняется после перезагрузки
Работает как в Wayland, так и в X11
Не мешает работе стандартных раскладок
Дополнительные настройки
Если нужно больше кастомных правок, keyd поддерживает:
Слои (layers)
Модификаторы
Макросы
Профили для разных устройств
Пример слоя для CapsLock:
ini
[main]
capslock = layer(capslock_layer)
[capslock_layer]
# Ваши кастомные назначения
Важно: После настройки keyd, используйте стандартные раскладки системы. Keyd исправляет физическое расположение клавиш, а система уже применяет выбранные языковые раскладки.
Теперь ваша нестандартная клавиатура должна работать корректно! 🎉