Keyboard-Layout

Wayland 是否使用 XKB 進行鍵盤佈局?

  • September 14, 2016

由於 XKB 是 X 視窗的一部分,Wayland 中也使用 XKB 嗎?如果是這樣,是否有任何實用程序計劃在某個時候替換 XKB?

在韋斯頓, setxkbmap 顯然不起作用。目前推薦的更改鍵盤佈局的方法是什麼?

是的,Wayland 使用 XKB 進行鍵盤佈局。但這不是一個完全正確的問題,因為事情與 X 中的工作方式不同。請記住,Wayland 只是一個協議(加上一個包裝庫)。

在協議層面,wayland 有一個 wl_keyboard.keymap 事件。此事件包含鍵盤映射的文件描述符和格式分類器。現在,只定義了一種格式:“xkb”。因此,wayland 客戶端將收到一個與 XKB 兼容的鍵盤映射,並且可以使用 libxkbcommon 來解釋它以在螢幕上獲得正確的字形等。

但是 Wayland 並沒有定義這個鍵映射是*如何決定的。*這個決定取決於合成器。在 Weston 中,它在啟動時從配置文件中讀取,在 GNOME 中,它來自 gsettings 等。因此,此決定還定義瞭如何在執行時更改鍵映射(如果可能的話)。在 GNOME 中,您要麼使用配置面板,要麼直接設置 gsettings 鍵。

X 協議要求在協議級別設置鍵映射,這使得 setxkbmap 之類的工具成為可能。Wayland 沒有這些請求,無法單獨使用 Wayland 協議設置鍵盤映射。

引用自:https://unix.stackexchange.com/questions/309580