具有不同布局的多个键盘

具有不同布局的多个键盘

我在最近的 MacBook Pro 上运行着 ubuntu (11.04)。我同时使用内置键盘和外接键盘。我想将两个键盘上的 capslock 重新映射到 super,并且只想在内置 (Apple) 键盘上交换左 alt (mac option) 和左 super (mac cmd)。

Xmodmap 无法以不同方式配置多个键盘,因此这是不可能的。

我可以通过 setkbmap 从 cli 执行此操作。这是我使用的脚本:

#!/bin/sh
#set caps to super
setxkbmap -option caps:super

#swap command and option for apple keyboard
setxkbmap -device `xinput list | grep -o -P 'Apple Internal Keyboard / Trackpad\s+id=\d+' | grep -o -P '\d+'` -option altwin:swap_lalt_lwin

如果必须的话,我可以将其作为启动应用程序运行,但我真的很想知道是否有一个配置文件可以添加这些设置。

看起来我应该能够将一个选项 (XkbOptions) 添加到我的 xorg.conf 的 inputdevice 部分,但是当我尝试这样做时,设置没有效果(也许 gnome 覆盖了 X 设置?)。我还尝试将一个新的 inputclass 添加到 xorg.conf,但也没有用。

使用不同的键绑定配置多个键盘的正确位置是什么?

答案1

可以在 xorg 配置中执行此操作:

Section "InputClass"
  Identifier     "Keyboard Catch All"
  MatchUSBID     "058f:9410"
  Option         "XkbOptions" "caps:super,terminate:ctrl_alt_bksp"
EndSection

Section "InputClass"
  Identifier "Apple Keyboards"
  MatchUSBID     "05ac:0236"
  Option         "XkbOptions" "altwin:swap_lalt_lwin,caps:super"
EndSection

但是,GDM 有自己的键盘设置管理方式,会覆盖这些 xorg 设置。我还没有找到与 GDM 配合良好的解决方案。

相关内容