重新绑定/禁用 CTRL+ALT+F# 虚拟终端/控制台切换

重新绑定/禁用 CTRL+ALT+F# 虚拟终端/控制台切换

我有一个绑定 ++ 的应用程序CTRLALTF7我的 Linux 机器似乎捕捉到了击键。

有没有办法重新绑定/禁用此键?重新编译内核是一个可以接受的答案。

相关发行版是 Fedora 16 和 Ubuntu 11.10。

答案1

以下 X11setxkbmap命令调用将禁用 Ctrl-Alt-Fn 控制台/虚拟终端切换:

setxkbmap -option srvrkeys:none

要返回到 ctrl-alt-Fn 键的先前行为,并删除所有其他选项,例如caps:ctrl_modifier

setxkbmap -option ''

要打印当前设置,请调用setxkbmap -print.

要按用户调用,请将命令放入 ~/.xinitrc 文件中。

要在 Xsession 启动时调用,请在以下位置创建一个文件

/etc/X11/Xsession.d

例如

/etc/X11/Xsession.d/65srvrkeys-none

包含上述setxkbmap命令,并使其可执行sudo chmod +x /etc/X11/Xsession.d/65srvrkeys-none

有关详细信息,请man setxkbmap在 shell 提示符下键入或参阅Xorg setxkbmap 手册页

我在 Ubuntu 14.04 LTS (Trusty) 上使用 KDE 对此进行了测试。这些设置也可在系统设置 > 输入设备 > 键盘 > 高级中找到。如果您srvrkeys在 GUI 设置中进行更改,它会立即显示,setxkbmap反之亦然。

我更喜欢通过 X11 命令行界面修改 X 窗口系统。如果这不起作用,那么我会尝试桌面环境。作为最后的手段,我会修改系统配置文件。实现和文件格式发生了变化,但命令行界面几乎永远保留在 Unix/Linux 传统中。

答案2

将其放入/etc/X11/xorg.conf文件中以使用Ctrl+ Alt+禁用 VT 切换Fn

Section "ServerFlags"
    Option "DontVTSwitch" "on"
EndSection

您还需要以下内容才能将事件传递到连接到显示器的客户端:

Section "InputClass"
    Identifier "keyboard defaults"
    MatchIsKeyboard "on"
    Option "XKbOptions" "srvrkeys:none"
EndSection

(最后一点未经测试,请参阅它的来源.)

答案3

您可以通过转到“调整”->“键盘和鼠标”->“其他布局选项”来禁用此功能。在其他兼容性选项下检查“特殊键Ctrl+ Alt+<key>在服务器中处理”。

我查了一下,Ubuntu 没有捕获Ctrl+ Alt+... 的任何组合。但想法仍然没有捕获Ctrl++ AltF7问题仍然存在!

答案4

Gnome Wayland 的解决方案:您可以通过设置以下 dconf 属性来取消设置虚拟终端切换的键绑定:

dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-1 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-2 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-3 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-4 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-5 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-6 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-7 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-8 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-9 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-10 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-11 "['']"
dconf write /org/gnome/mutter/wayland/keybindings/switch-to-session-12 "['']"

相关内容