6

(X11 イベント ループを使用して) キーボード入力をリッスンし、スキャンコードを取得しようとしています。これらのスキャンコードは、入力する文字ではなく、キーの物理的な位置を参照する必要があります。問題は、取得できるのは KeySyms と KeyCodes だけであり、これらは言語ごとに異なる方法でマッピングされていることです (たとえば、QWERTY と QWERTZ)。

私の現在の解決策は、「/usr/share/X11/xkb/keycodes/evdev」ファイルを読み取ることです。これには、キーの場所からキー コードへのマッピングが含まれています。これを使用すると、任意のキーコードを単純に変換してスキャンコードに戻すことができます。私の推測では、これは安定した方法ではありません。Linux についてはまったく詳しくありません。だからこそ、ここで質問してよかったと思ったのです。

これらの evdev マッピングがほとんどのユーザーのマシンで使用されていると想定しても安全ですか? そうでない場合、実際に使用されているキー マッピングを他にどこで見つけることができますか? または、これらすべてに対するより良い解決策はありますか?

4

1 に答える 1