Звук нажатия клавиш клавиатуры на русской раскладке

Можно не расскажывать наскольконеприятно, когда после написания некоего фрагмента текста вдруг замечаешь, что все это время раскладка была не та, которая нужна. С помощью ИИ удалось легко создать скрипт на Python для озвучки нажатия клавишь при активной раскладке "ru" и службу для запуска этого скрипта.

Архив с файлами


Пошаговая инструкция по установке и использованию скрипта на Linux Mint Xfce:

  1. Подготовка системы:
bash
sudo apt update
sudo apt install python3-pip python3-venv xkb-switch libasound2-dev python3-dev
  1. Создание рабочей директории:
bash
mkdir ~/keyboard
cd ~/keyboard
  1. Копирование файлов:
  • Скопируйте файлы keyboard_sound.pyrequirements.txt и звуковой файл keypress.wav в директорию ~/keyboard
  • Убедитесь, что у файлов есть права на выполнение:
bash
chmod +x keyboard_sound.py
  1. Настройка виртуального окружения Python:
bash
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
  1. Настройка системного сервиса:
  • Создайте файл сервиса:
bash
sudo nano /etc/systemd/system/keyboard-sound.service
  • Скопируйте содержимое файла keyboard-sound.service, но замените путь и имя пользователя:
  • Замените все упоминания /home/YourUser на ваш домашний каталог
  • Замените YourUser на ваше имя пользователя
  1. Активация сервиса:
bash
sudo systemctl daemon-reload
sudo systemctl enable keyboard-sound
sudo systemctl start keyboard-sound
  1. Проверка работы:
  • Проверьте статус сервиса:
bash
sudo systemctl status keyboard-sound
  • Переключитесь на русскую раскладку и попробуйте набрать текст - должен быть слышен звук при нажатии клавиш
  1. Устранение возможных проблем:
  • Если звук не работает, проверьте права доступа:
bash
sudo usermod -a -G audio,video,input $USER
  • Перезагрузите компьютер для применения изменений в группах
  • Проверьте логи сервиса:
bash
journalctl -u keyboard-sound

Теперь скрипт будет автоматически запускаться при старте системы и воспроизводить звук при наборе текста на русской раскладке.