我想知道当用户通过小程序切换键盘布局时,如何在 gnome 会话中确定当前使用的键盘布局。到目前为止,我不在乎我必须使用什么编程语言或库(gtk、x、...)。
我之前问过一个类似的问题: https ://askubuntu.com/questions/155879/how-to-get-current-gnome-keyboard-layout-from-terminal
不幸的是,没有人能解决这个问题,这就是我想问你的原因。您如何确定程序/脚本中的当前键盘布局。
谢谢
铁龙塞
我想知道当用户通过小程序切换键盘布局时,如何在 gnome 会话中确定当前使用的键盘布局。到目前为止,我不在乎我必须使用什么编程语言或库(gtk、x、...)。
我之前问过一个类似的问题: https ://askubuntu.com/questions/155879/how-to-get-current-gnome-keyboard-layout-from-terminal
不幸的是,没有人能解决这个问题,这就是我想问你的原因。您如何确定程序/脚本中的当前键盘布局。
谢谢
铁龙塞
在命令行或脚本中,您可以使用 setxkbmap:
$ setxkbmap -print | awk -F"+" '/xkb_symbols/ {print $2}'
gb
或 -query 选项:
$ setxkbmap -query
rules: evdev
model: pc105
layout: gb
键盘布局存储在 X 的设置中。 (/etc/X11/xorg.conf)
就个人而言,我会尝试解析该文件(或为其查找解析器)并尝试以这种方式确定布局。
由于我对 X11 没有那么丰富的经验,我不知道是否有 API 可以查询这些设置。
我必须说,我不知道这是否是唯一可以配置的地方。其他人也许能够证实这一点。