Python - 检测键盘布局
我在玩一个RFID读取器,使用Python通过uinput输出到控制台。
问题是,我需要把假RFID键盘代码转换成发送到uinput的代码,我想知道我到底是在用QWERTY键盘还是AZERTY键盘(比如'a'变成'q'之类的)。
在比利时,尤其是在我正在参与的活动中,我们经常会遇到这两种键盘布局,我需要能够即时支持这两种布局。
有没有什么os.*()的函数可以帮我解决这个问题呢?
谢谢!
1 个回答
1
你可以先试试输入 setxkbmap -print
来查看当前的键盘设置,不过一般来说,这个过程可能会有点复杂。
不如直接把你用 uinput 创建的虚拟键盘的布局设置为 QWERTY 吧?X系统支持为每个设备设置不同的键盘布局。
xinput list # find the device ID, say, 12
setxkbmap -device 12 us # use it
根据我的经验,每次我插入一个外部USB键盘,它总是默认设置为美式英语,所以我不太确定这是不是必要的。