XKBを使用して現在ロードされているキーのリストをどのように取得できますか?

XKBを使用して現在ロードされているキーのリストをどのように取得できますか?

evdev現在使用中のキーボードレイアウト全体を知る必要がある依存関係デーモンを作成しています。現在のXKBレイアウトのプロパティを取得するのは簡単です。setxkbmap -queryまたはを使用してくださいsetxkbmap -print。しかし、私が望むなら完全な説明現在ロードされているレイアウトはありますか?各キーの修飾子の下に入力された項目のリストは何ですか?

私が知っている限り、XKBに加えて他のものに頼らずにこれを達成する2つの方法があります。

  1. 形式的で洗練された方法は、setxkbmap -printどのシンボルファイルをロードするのかを特定/usr/share/X11/xkb/symbolsし、関連ファイルを直接解析することです。
  2. より速く、より厄介で、一時的なアプローチですべてのキー入力と組み合わせを直接試して、出力をキャプチャします。

オプション 1 はエラーが発生しやすく実装が難しいのに対し、オプション 2 は面倒です。キーの組み合わせと文字出力のリストを取得する方法はありますか? XKBはすでに私のためにシンボリックファイルを解析しているので、もう一方の端では、解析された結果を出力する何かが実際にあるはずです(キーボード自体に加えて)。

編集者:Ubuntuオンボード現れるまず、レイアウトファイルを直接解析します。これは、きちんとした既存の解決策がないことを意味します。

関連情報