タッチパッドを無効にしてショートカットにバインドする簡単なスクリプトを作成しました。
enabled=true
if enabled
then
xinput -disable "TouchPad" enabled=false
else
xinput -enable "TouchPad" enabled=true
外部で変数を有効にするにはどうすればよいですか?または、変数を生成して他のスクリプトからアクセスするにはどうすればよいですか?
ベストアンサー1
私はそれをします:
#! /bin/sh -
device=TouchPad
if
LC_ALL=C xinput list-props "$device" |
grep -q 'Device Enabled.*1$'
then
xinput disable "$device"
else
xinput enable "$device"
fi
つまり、別の情報を保持するのではなく、デバイスが実際に有効または無効になっていることを確認してください。変える近いうちにこれは現実と同期しなくなるので、同時アクセスを防ぐために排他的なロックメカニズムを用意する必要があります。それ変える現在のXサーバー呼び出しに関連付ける必要があります(ルートウィンドウに表示されているプロパティが利用可能です)。
説明:xinput list-props "$device"
デバイスの属性(英語を含むLC_ALL=C
)を一覧表示します。その一つはですDevice Enabled
。以下を含めて終了する行をgrep
見つけて返します。Device Enabled
1
本物(0)見つかった場合は終了状態(何も印刷しない-q
)。見つかった場合(デバイスがアクティブな場合)、それを呼び出し、xinput disable
それxinput enable
以外の場合は呼び出します。