为单个用户配置 setxkbmap/调试 xkbmap 更改

为单个用户配置 setxkbmap/调试 xkbmap 更改

我正在尝试做类似的事情该用户问,存储我的键盘布局。我的第一个想法是使用,但在意识到我只需要设置一次(而不是为我启动的每个 bash )后,.bashrc我转向了,正如该答案中所建议的那样。.bash_profile但是,我注意到键盘布局在某些点重置,并且我不确定如何调试它(是否已设置?何时重置?)。这是我的.bash_profile

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
  . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

setxkbmap -layout us -variant altgr-intl -option nodeadkeys

有时作品。我特别注意到,当我从扩展坞中取出笔记本电脑并切换到笔记本电脑屏幕而不是显示器时,这会失败,因为这似乎也会导致键盘布局被重置(重置为简单的美国英语,即,没有 altgr-intl)。我认为这可能与它有关,所以这是我用来更改配置的脚本:

xrandr --output VIRTUAL1 --off --output DP3 --mode 2560x1440 --pos 0x0 --rotate normal --output DP2 --off --output DP1 --off --output HDMI3 --off --output HDMI2 --off --output HDMI1 --off --output LVDS1 --off --output VGA1 --off
xrandr --output VIRTUAL1 --off --output DP3 --off --output DP2 --off --output DP1 --off --output HDMI3 --off --output HDMI2 --off --output HDMI1 --off --output LVDS1 --mode 1366x768 --pos 0x0 --rotate normal --output VGA1 --off

我认为这可能与我关闭所有输出设备有关,这可能会导致 X 崩溃。我正在运行 Fedora 22,并使用 i3 作为窗口管理器。

答案1

当您使用 Fedora 时,您可能想尝试localectl一下曾经流行的系统套件来更改默认区域设置,包括键盘:

键盘设置控制用户登录之前文本控制台和图形 UI 上使用的键盘布局(例如显示管理器)以及用户登录后的默认设置。

localectl set-x11-keymap layout [model [variant [options]]]

设置 X11 的系统默认键盘映射。这需要键盘映射名称(例如“de”或“us”),以及可能的型号、变体和选项

它基本上采用与 相同的参数setxkbmap

它实际上进行编辑/etc/X11/xorg.conf.d/00-keyboard.conf以设置语言和键盘布局的全局默认值,即登录前使用的默认用户的语言和键盘布局。

相关内容