Wayland 是否使用 XKB 进行键盘布局?

Wayland 是否使用 XKB 进行键盘布局?

由于 XKB 是 X window 的一部分,那么 Wayland 中也使用 XKB 吗?如果是这样,是否有任何实用程序计划在某个时候取代 XKB?

在weston中,setxkbmap显然不起作用。目前推荐的更改键盘布局的方法是什么?

答案1

是的,Wayland 使用 XKB 进行键盘布局。但这不是一个完全正确的问题,因为事情的工作方式与 X 中不同。请记住,Wayland 只是一个协议(加上一个包装器库)。

在协议层面,wayland 有一个 wl_keyboard.keymap 事件。该事件包含键映射的文件描述符和格式分类器。目前,仅定义了一种格式:“xkb”。因此,wayland 客户端将收到 XKB 兼容的键盘映射,并可以使用 libxkbcommon 对其进行解释,以便在屏幕上获得正确的字形等。

但是 Wayland 没有定义如何这个键位图就决定了。这个决定由合成者决定。在 Weston 中,它是在启动时从配置文件中读取的,在 GNOME 中,它来自 gsettings 等。因此,这个决定也定义了如何在运行时更改键盘映射(如果可能的话)。在 GNOME 中,您可以使用配置面板,也可以直接设置 gsettings 键。

X 协议要求在协议级别设置键盘映射,这使得 setxkbmap 等工具成为可能。 Wayland 没有这些请求,无法单独使用 Wayland 协议设置键盘映射。

答案2

更多资源

相关内容