同時に、私は(設計エンジニアとして)自分が望むものを非常に明確に表現できます。 そして、私が欲しかったのは (最初は Punto Switcher から、次に Windows Vista のおかげで、最終的には xneur から Linux に切り替えました) まさに XNUMX つでした。 ゴミ箱画面のレイアウトが間違っていることに気づき (これは通常、新しい単語を入力した最後に起こります)、「一時停止/中断」を踏み込みます。 そして、入力した内容を取得します。
go get "github.com/micmonay/keybd_event"
go get "github.com/gvalkov/golang-evdev"
### X11 headers for OpenSUSE/deb-based
zypper install libX11-devel libXmu-devel
apt-get install libx11-dev libxmu-dev
cd "x switcher/src/"
go build -o xswitcher -ldflags "-s -w" --tags static_all src/*.go
好みに応じて autorun を追加します (DE に応じて)。
動作し、「お粥を要求しません」(30 日あたり CPU で約 12 秒、RSS で約 XNUMX MB)。
一方、「XSelectExtensionEvent()」を介して X イベントをサブスクライブできます。 覗くことができます xinputコード。 go の場合、そのようなものは見つかりませんでした。ドラフト実装では、外出先で XNUMX 行の C コードが必要でした。 とりあえず、それは脇に置いておいてください。