Sway / Wayland 下的大写锁定行为

Ale*_*der 4 keyboard-shortcuts wayland keyboard-layout capslock sway

在 X 下,我可以使 Caps Lock 在短暂按下时表现为 Esc,但在按住时表现为 Ctrl:

setxkbmap -option 'caps:ctrl_modifier'
xcape -e 'Caps_Lock=Escape' -t 100
Run Code Online (Sandbox Code Playgroud)

如何在 Sway / Wayland 下复制此行为?

Ton*_*bda 8

将以下内容放入您的 sway 配置中:

input "type:keyboard" {
    xkb_options caps:ctrl_modifier
}
Run Code Online (Sandbox Code Playgroud)

来源: https: //github.com/swaywm/sway/wiki#keyboard-layout

更新:OP 要求“大写锁定是 Escape,但在按住时是 Control”。事实证明,有一个简单的程序可以在 libevdev 级别执行此操作(因此可以与任何显示服务器一起使用,无论是否为 Wayland,并且不需要上面的 sway 配置)。

相关讨论线程:https://github.com/swaywm/sway/issues/719

  • 您可以使用“type:keyboard”作为“<identifier>”。 (3认同)