我正在使用pykeylogger,並希望通過添加有關當前所選鍵盤佈局的信息(現在您從日誌中知道按下哪些按鈕時假設爲qwerty
)來擴展它。在Python中檢測* nix中的鍵盤佈局
對於Windows系統,它看起來像:
def get_locale(self):
if os.name == 'nt':
w = user32.GetForegroundWindow()
tid = user32.GetWindowThreadProcessId(w, 0)
return hex(user32.GetKeyboardLayout(tid))
拿到佈局的十六進制代碼(如0x409409),因爲我基本上要區分不同的佈局,是爲我好。
如果你給我一個posix(例如ubuntu)系統的解決方案,我將不勝感激。
試試'/ etc/default/keyboard /' – DanielB
@DanielB你的意思是說我可以從/ etc/default/keyboard中讀取,從而獲得當前應用程序焦點的佈局?對我來說''sudo cat/etc/default/keyboard'命令返回任何當前佈局的相同內容 – Meta