1

Linux 上の Openbox でホットキーの組み合わせで呼び出された Bash スクリプトでWindows のフォーカスを緩めようとしたときに発生する小さな問題の原因を理解するのを手伝ってください。

スクリプトには数行あります。

wmctrl -F -r "${TERMINAL_TITLE}" -b add,shaded,below
xdotool key alt+Tab

最初の行は、問題のウィンドウに影を付け、他のすべての下に「ドロップ」しますが、フォーカスされたままです。2 行目は、理論的にはフォーカスをスタック内の次のウィンドウに移動する必要があります…</p>

…そしてそうです!ただし、スクリプトが gmrun で実行されている場合、またはターミナル自体で実行されている場合のみ (非表示にして焦点を合わせようとしているウィンドウがターミナル エミュレータであるため)。

ただし、スクリプトが Openbox hotlkey (必要なもの) で呼び出された場合、または heignbour ターミナルで実行された場合 (テストのためだけに) は、意図したとおりに機能しません。

私は決して熟練した bash ユーザーではありません。私は通常、謙虚なニーズに合わせてあちこちで簡単なスクリプトを作成することができますが、ここでは道に迷ってしまいます。アドバイスをいただければ幸いです。

4

1 に答える 1

0

わかりました、これはおそらく少なくともある程度は XY 質問のケースでした。現在、wmctrl でフォーカスを制御する方法はありません。ただし、それをやろうとするのをやめて、ウィンドウをシェーディングする代わりに最小化すると、実際に必要なことを達成できます。これも wmctrl では実行できませんが、xdotool を使用する必要がありました。

xdotool windowminimize $( xdotool search --name "${TERMINAL_TITLE}" )

フォーカススイッチ。終わり!

于 2016-04-01T18:25:55.270 に答える