Debian Stretch 9: Что изменилось в конфигурации клавиатуры (в X)?
До Debian 8 я мог настроить клавиатуру следующим образом:
setxkbmap -model pc105 -layout us -variant alt-intl
Как мне добиться того же эффекта в Debian Stretch? Что изменилось?
Я помню, что в какой-то версии Debian мне приходилось делать эту команду после каждого X
начать, но это все еще было хорошо для меня.
Поскольку я установил Debian Stretch, эта команда больше не будет действовать. Да, он думает, что работает:
setxkbmap -query
rules: evdev
model: pc105
layout: us
variant: alt-intl
options: terminate:ctrl_alt_bksp
Но это не так.
Мне удалось заставить это работать в конечном счете с:
ibus-setup #interactive
sudo ibus-daemon --xim &
Но, помимо интерактивности, эта вещь случайна. Иногда клавиатура просто возвращается к сумасшедшей раскладке по умолчанию, которую, по ее мнению, она должна применить (один раз даже в середине собеседования по программированию!). Я использую английский язык:
echo $LANG
en_US.UTF-8
Я выбрал нидерландский часовой пояс и международный макет с мертвыми клавишами; это все. Я никогда не пытался установить что-либо, связанное с локалями, которые не являются стандартными для США.
Я надеюсь, что причина, по которой это было изменено, очень полезна для многих людей, потому что трудно понять, почему настройка такой простой вещи, как она работала десятилетиями, стала настолько сложной в наше время.
Вещи, которые я уже пробовал и не имел никакого эффекта, даже после перезапуска:
1)
sudo dpkg-reconfigure keyboard-configuration
2)
setupcon
3)
sudo setupcon
4)
udevadm trigger --subsystem-match=input --action=change
5)
sudo apt-get install -y console-data console-setup console-locales keyboard-configuration
6)
sudo apt-get remove ibus -y
с последующим перезапуском X.
7)
rm /var/lib/xkb/*.xkm
rm: cannot remove '/var/lib/xkb/*.xkm': No such file or directory
8)
setxkbmap -rules evdev -model evdev -layout us -variant alt-intl
Ничто из этого не сделало конфигурации, сделанные первыми setxkbmap
чтобы вступить в силу снова и сохранить тот же странный по умолчанию.
Вещи, которые я уже попробовал и вернул клавиатуру ванили us
(без акцентов / тупиков):
1)
setxkbmap -rules evdev -model evdev -layout us -variant altgr-intl
2)
setxkbmap -rules evdev -model pc105 -layout us -variant altgr-intl
3)
setxkbmap -rules evdev -model evdev -layout us -variant altgr-intl -option eys # no complain of bad options
4)
setxkbmap -rules evdev -model pc105 -layout us -variant altgr-intl -option #clears option
5)
setxkbmap -rules evdev -model pc105 -layout us -variant intl -option
6)
setxkbmap -rules evdev -model pc105 -layout us -variant altgr-intl -option terminate:ctrl_alt_bksp #control-alt-backspace option
2 ответа
Я около 3 часов занимался этим, на Debian 9 с xfce4 не было никакого способа выставить настройки клавиатуры по умолчанию, используя любую команду, даже используя конфигурацию клавиатуры пользовательского интерфейса xfce4... НО... это работало просто отлично:
echo '
# Set default keyboard for X:
sleep 2
if [ -n $DISPLAY ] ; then
setxkbmap -model pc105 -layout es -variant winkeys -print | xkbcomp - $DISPLAY
fi
' \
| sudo tee -a ~/.xsessionrc
команда sleep обязательна, чтобы заставить ее работать.
Это сработало для меня:
sudo dpkg-reconfigure keyboard-configuration
sudo service keyboard-setup restart
А потом перезапустить