Сохраняйте раскладку клавиатуры при подключении внешней клавиатуры

Сохраняйте раскладку клавиатуры при подключении внешней клавиатуры

У меня есть пользовательская раскладка клавиатуры, которую я включаю с помощью следующих команд:

setxkbmap -verbose us -variant altgr-intl
xmodmap -verbose /home/coub/.myxmodmap

Это работает просто отлично, дело в том, что когда я подключаю внешнюю клавиатуру, она отменяет мои настройки и устанавливает раскладку по умолчанию "QWERTY". Я хотел бы сохранить свои настройки.

Я не знаю, как отключить этот возврат к "QWERTY" при подключении, поэтому я хотя бы попытался установить udevправило, чтобы снова включить мои настройки. Однако среда в udevне имеет доступа к Xorgсреде, поэтому команды не работают.

Чтобы обойти это, я написал наблюдателя, который использует inotifywaitдля наблюдения за файлом, а затем я изменяю этот файл, записывая в него из udevправила. Это почти работает, когда клавиатура подключена, она загружает мои настройки, но клавиши с третьим модификатором, то есть ALT-gr+ KEY, неправильно сопоставляются с какими-то странными клавишами, которых у меня нет в настройках.

Когда я изменяю файл (на echoing«something» > watching_file) из эмулятора терминала, он просто работает, и мои настройки клавиатуры загружаются правильно.

Связанный контент