web-dev-qa-db-ja.com

スクリプトからキーが押されたかどうかを検出する

スクリプトの実行中にキーが押されているかどうかを検出したいと思います。私は次のスクリプトを持っています:

#!/bin/bash
sleep 0.5
xte 'str sometext'

ショートカットを使用してこのスクリプトを実行し、kdeで「sometext」を貼り付けます。スクリプト自体はctrlとaltを使用するショートカットで実行されるため、ここではsleep0.5を使用しました。スリープ0.5を省略すると、結果は次のようになります。 ctrl+s、 ctrl+o、などが送信されます。解決策は、最初に忙しい待機を追加して、キーが押されなくなるまでブロックすることだと思います。これをスクリプトで機能させるにはどうすればよいですか?

4
Silverrocker

とにかくxteを使用しているので、xteでキーを離してみませんか?線に沿った何か

xte "keyup Control_L"
xte "keyup l"

(ショートカットがctrl-lであると仮定します)。

2
January