Debian Stretch 9:键盘配置有何变化(在 X 中)?

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 我选择了荷兰时区和带有死键的国际布局;仅此而已。我从未尝试设置任何与非标准 US-ish-ENG-ish 区域相关的内容。

我希望改变它的原因对很多人来说是非常有用的,因为很难理解为什么配置这样一个基本的东西,就像它几十年来一直工作的方式,现在变得如此复杂。

我已经尝试过的事情即使重新启动后也没有任何效果:

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

答案1

我花了大约 3 个小时来处理这个问题,在带有 xfce4 的 Debian 9 上,无法使用任何命令来设置默认键盘设置,即使使用 xfce4 的 UI 键盘配置...但是...这工作得很好:

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 命令。

答案2

这对我有用:

sudo dpkg-reconfigure keyboard-configuration
sudo service keyboard-setup restart

然后重启

相关内容