如何移除setxkbmap中Level3的Left Win按钮并修复Xfce4配置问题
解决Xfce4 4.12.2中Left Win键切换键盘布局冲突问题
方法1:手动强制设置xkb选项
先清空现有配置,再重新设置正确的选项:
setxkbmap -option '' setxkbmap -layout us,ru -option compose:sclk,grp:lwin_toggle
执行完后用setxkbmap -query检查输出,确认options里只有compose:sclk,grp:lwin_toggle。如果重启后配置被还原,说明Xfce的自动配置在覆盖,需要修改配置文件。
方法2:修改Xfce键盘配置文件
直接编辑Xfce的键盘布局配置文件,移除冲突的lv3:lwin_switch选项:
- 打开配置文件:
nano ~/.config/xfce4/xfconf/xfce-perchannel-xml/keyboard-layout.xml
- 找到包含
XkbOptions的行,比如:<property name="XkbOptions" type="string" value="grp:lwin_toggle,lv3:lwin_switch"/> - 修改为:
<property name="XkbOptions" type="string" value="compose:sclk,grp:lwin_toggle"/> - 保存后重启Xfce面板或注销重登:
xfce4-panel -r
方法3:检查系统级xkb配置
如果用户级配置无效,查看系统级的键盘配置文件:
- 编辑
00-keyboard.conf:
sudo nano /etc/X11/xorg.conf.d/00-keyboard.conf
- 找到
Option "XkbOptions"行,修改为:Option "XkbOptions" "compose:sclk,grp:lwin_toggle" - 保存后重启系统。
方法4:用xmodmap手动映射(绕过Xfce管理)
如果以上方法都无效,尝试直接用xmodmap修改按键行为:
- 运行
xev,按下Left Win键,记录键码(比如keycode 133)。 - 创建
~/.Xmodmap文件,写入:
clear mod4 keycode 133 = Mode_switch add mod4 = Super_L
- 执行
xmodmap ~/.Xmodmap生效,然后在Xfce的「会话和启动」-「应用程序自动启动」里添加这个命令,确保每次登录自动执行。
内容的提问来源于stack exchange,提问作者youni
相关产品推荐
相关产品推荐

