Я думаю, проблема в том, что вы смешиваете xmodmap
команды с setxkbmap
командами (будь то в командной строке или с помощью меню графических настроек). Как вы заметили, setxkbmap
команды будут переопределять xmodmap
команды при изменении раскладки клавиатуры. Поэтому логичным решением было бы использовать setxkbmap
для изменения как раскладки, так и запятой клавиатуры на десятичный период.
При использовании setxkbmap
для изменения макета также будут применяться любые указанные настройки: полный список параметров доступен по адресу /usr/share/X11/xkb/rules/evdev.lst
. Я не знаю, какие языковые макеты вы используете, поэтому я поместил только два примера в конце следующей команды, которую вы можете использовать для переключения макетов с помощью ALt+ Shift. Если у вас есть еще какие-либо сопоставления клавиш или привязки, которые вы хотите активировать, просто добавьте их в команду:
setxkbmap -option '' -option kpdl:dot -option grp:switch,grp:alt_shift_toggle gb,nl
Первая команда switch ( -option ''
) удаляет все текущие настройки, так как при вводе новых настроек они добавляются и не заменяют никакие существующие, если не используется эта опция. Функция second ( -option kpdl:dot
) гарантирует, что соответствующая клавиша на клавиатуре является точкой или точкой; третья команда switch ( -option grp:switch,grp:alt_shift_toggle
) настраивает вашу способность переключать раскладки с помощью ALt+ Shift, а last ( gb,nl
) задает раскладки для переключения.
Чтобы проверить настройки, вы можете ввести
setxkbmap -query
что приводит к:
rules: evdev
model: pc105
layout: gb,nl
options: kpdl:dot,grp:switch,grp:alt_shift_toggle
Добавьте полную setxkbmap
строку выше как элемент автозагрузки, чтобы убедиться, что он активирован и доступен для использования.
Дополнительную информацию setxkbmap
можно получить, войдя в систему man setxkbmap
или просмотрев страницы Ubuntu в Интернете .