首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ubuntu -当我插入耳机时,我的键盘布局被重置为默认的,我如何阻止它?

Ubuntu -当我插入耳机时,我的键盘布局被重置为默认的,我如何阻止它?
EN

Unix & Linux用户
提问于 2021-04-13 06:25:14
回答 2查看 419关注 0票数 1

我使用setxkbmap将键盘布局设置为自定义布局。它是从“自动启动应用程序”(~/.config/autostart)开始的,并且运行良好。

但是当我插入我的Jabra耳机时,它会被重置为默认的美国QWERTY耳机。我想阻止这一切。

我看到另一个帖子

如何设置由udev设备连接触发的xinput属性?

当插入USB键盘时防止键盘布局重置

但最好的答案是,OP只是插入另一个新键盘;我认为这是一个错误的假设,这肯定不是我的情况。

据我所知,这是一个udev问题,也是一个相当严重的错误。Ubuntu 18.04

使用udevadm monitor时,当Jabra耳机插入时,我会看到以下几行:

代码语言:javascript
运行
复制
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[514.356707] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2 (usb)
KERNEL[514.360571] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0 (usb)
KERNEL[514.384326] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1 (sound)
KERNEL[514.384427] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1/pcmC1D0p (sound)
KERNEL[514.384485] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1/pcmC1D0c (sound)
KERNEL[514.384542] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1/controlC1 (sound)
KERNEL[514.384584] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0 (usb)
KERNEL[514.384616] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.1 (usb)
KERNEL[514.384645] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.1 (usb)
KERNEL[514.384675] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.2 (usb)
KERNEL[514.384701] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.2 (usb)
KERNEL[514.384730] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3 (usb)
KERNEL[514.387245] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B (hid)
KERNEL[514.387575] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/input/input18 (input)
KERNEL[514.444127] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/input/input18/event6 (input)
KERNEL[514.444169] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/input/input18/input18::mute (leds)
KERNEL[514.444318] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/usbmisc/hiddev0 (usbmisc)
KERNEL[514.444375] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/hidraw/hidraw1 (hidraw)
KERNEL[514.444438] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B (hid)
KERNEL[514.444473] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3 (usb)
KERNEL[514.444510] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2 (usb)
UDEV  [514.967946] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2 (usb)
UDEV  [514.970785] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0 (usb)
UDEV  [514.971920] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.1 (usb)
UDEV  [514.972737] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.2 (usb)
UDEV  [514.973022] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3 (usb)
UDEV  [514.973854] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1 (sound)
UDEV  [514.974449] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.1 (usb)
UDEV  [514.975643] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.2 (usb)
UDEV  [514.976113] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B (hid)
UDEV  [514.976909] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/usbmisc/hiddev0 (usbmisc)
UDEV  [514.979273] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/hidraw/hidraw1 (hidraw)
UDEV  [514.980161] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1/pcmC1D0c (sound)
UDEV  [514.980666] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/input/input18 (input)
UDEV  [514.980736] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1/pcmC1D0p (sound)
KERNEL[514.980866] change   /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1 (sound)
UDEV  [514.983803] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/input/input18/input18::mute (leds)
UDEV  [515.017334] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B/input/input18/event6 (input)
UDEV  [515.019498] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3/0003:0B0E:0305.000B (hid)
UDEV  [515.020828] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.3 (usb)
UDEV  [515.790142] add      /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1/controlC1 (sound)
UDEV  [515.792199] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0 (usb)
UDEV  [515.794039] bind     /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2 (usb)
UDEV  [515.796084] change   /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.2/3-3.2:1.0/sound/card1 (sound)

在此之后,使用xinput list,我看到:

代码语言:javascript
运行
复制
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ HP HP USB 1000dpi Laser Mouse             id=8    [slave  pointer  (2)]
⎜   ↳ Chicony HP Business Slim Keyboard Consumer Control    id=13   [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                        id=18   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Sleep Button                              id=7    [slave  keyboard (3)]
    ↳ Chicony HP Business Slim Keyboard         id=10   [slave  keyboard (3)]
    ↳ Chicony HP Business Slim Keyboard System Control  id=11   [slave  keyboard (3)]
    ↳ Chicony HP Business Slim Keyboard         id=12   [slave  keyboard (3)]
    ↳ Integrated_Webcam_FHD: Integrat           id=14   [slave  keyboard (3)]
    ↳ Integrated_Webcam_FHD: Integrat           id=15   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=16   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=17   [slave  keyboard (3)]
    ↳ Chicony HP Business Slim Keyboard Consumer Control    id=19   [slave  keyboard (3)]
    ↳ GN Netcom A/S Jabra EVOLVE LINK MS        id=9    [slave  keyboard (3)]

Chicony HP Business Slim Keyboard是我想设置布局的USB键盘,而GN Netcom A/S Jabra EVOLVE LINK MS是耳机。

EN

回答 2

Unix & Linux用户

发布于 2021-04-13 07:54:58

你的Jabra耳机显然包括一些按钮,这些按钮作为“键盘一样”的输入设备呈现给操作系统,而且显然,只要新的键盘设备被插入,桌面环境就会重新设置X11键盘布局。

您的setxkbmap设置将不为桌面环境所知,因此桌面环境和setxkbmap将以相互争斗告终。

首先,您应该使用桌面环境的配置工具来正确设置键盘,而不是使用setxkbmap。不幸的是,Gnome桌面似乎只提供了一个简化的键盘布局选择器GUI:但是您仍然应该能够将设置直接放到/etc/default/keyboard上。有关更多详细信息,请参阅man 5 keyboard

票数 1
EN

Unix & Linux用户

发布于 2021-12-14 15:38:59

我用Gnome的对话框在耳机连接时设置键盘布局来修正这个问题。不知怎么的,当它们连接起来的时候,Gnome只是认为根本没有布局设置。

一旦设置-它保持我的布局,无论耳机是否连接。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/644828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档