特定のワークスペースにすばやく切り替えられるようにするワークスペース切り替えランチャーのクイックリストを作成しようとしています。(私の友人は時々私のコンピューターを使用し、キーボードショートカットを楽しんでいないので、彼を助けたいです。)
それで、特定のワークスペースに焦点を合わせることを強制する端末に入力できるコマンドはありますか?
特定のワークスペースにすばやく切り替えられるようにするワークスペース切り替えランチャーのクイックリストを作成しようとしています。(私の友人は時々私のコンピューターを使用し、キーボードショートカットを楽しんでいないので、彼を助けたいです。)
それで、特定のワークスペースに焦点を合わせることを強制する端末に入力できるコマンドはありますか?
回答:
wmctrlを使用できます。
基本コマンド:
wmctrl -d
すべてのワークスペースを表示します。
wmctrl -s <workspace_name>
特定のワークスペースに変更します。
Compizを使用している場合、Compizの「ワークスペース」は実際には単一のワークスペースのビューポートであるため、トリックを行う必要があります。
wmctrl -d
たとえば、私の出力は次のとおりです。
0 * DG: 4098x2304 VP: 1366,0 WA: 0,23 1366x745 N/A
つまり、実際には、「考えている」もの(9つの「ワークスペース」、3 x 3)ではなく、4098 x 2304のワークスペースが1つあります。
私は「ワークスペース」2になるはずでしたが、実際には上記の出力で示されているように、ビューポート(VP)1366,0(4098/3 = 1366)にいました。
これがどのように機能するかです。ワークスペース全体を取得し、「考えている」「ワークスペース」の数で分割します。私の場合:4098/3 = 1366および2304/3 = 768。
「ワークスペース」1に移動する場合、コマンドは次のとおりです。
wmctrl -o 0,0
次に、「ワークスペース」4に移動したい場合、コマンドは次のとおりです。
wmctrl -o 0,768
「ワークスペース」8に移動する場合、コマンドは次のとおりです。
wmctrl -o 1366,1536
「ワークスペース」9に移動する場合、コマンドは次のとおりです。
wmctrl -o 2732,1536
とった?;-)
-o
フラグ「切り捨て」その値。つまり、実際のピクセルが属する「ワークスペース」を変更します。以下は同等です:
wmctrl -o 0,0
wmctrl -o 1365,767
あなたが望むものを達成するために美しくシンプルであるxdotool
(また、プログラムのドキュメント内のデスクトップ」として知られている)異なるワークスペースを管理するための複数のオプションを持っています、。からのコマンドをつなげることは非常に興味深く、創造的であると思いますman xdotool
。以下で作成したコマンドは、スクリプトで役立つ可能性があります。
注:あなたが使用している場合、一部のウィンドウマネージャで、またはcompiz
、あなたが使用する必要がありますxdotool
のようなコマンドをset_desktop_viewport
してget_desktop_viewport
。上記のdesguaが提案するように、コマンドを別の方法で指定する必要があるかもしれませんが、私にとってはset_desktop
、set_desktop_for_window
コマンドは非compizシステムで最も有用であることが判明しました。)
(このソリューションは、Xubuntu / Lubuntuユーザー、またはcompizなどを実行していないユーザーに最も役立ちます。)
現在のワークスペースの数をリストするには、次を入力します
xdotool get_num_desktops
次のコマンドは、少なくとも1つの他のワークスペースがある場合にのみ機能します。
ワークスペース1にフォーカスを変更するには、単に入力します
xdotool set_desktop 1
次に、デフォルトのワークスペースに戻るには、次を入力します
xdotool set_desktop 0
ワークスペースは、コマンドの最後の値(1または2または3など)として指定する必要があります。
現在作業中のワークスペースの番号を見つけるには、次を使用できます。
xdotool get_desktop
これらのコマンドはスクリプトで使用でき、何を達成するのに非常に役立つはずです。
特定のデスクトップにアプリケーションを切り替える方法については、ここで私の答えを参照してください。
ワークスペースの切り替えに使用できるより便利なオプションについては、を参照してくださいman xdotool
。
xdotool set_desktop --relative -- -1
あなたが望むことをするスクリプトを実装しました。ここにあります:https : //github.com/norswap/wmov/blob/master/wmov.sh
実際、desguaの投稿で説明されているように機能します。また、ウィンドウを他のワークスペースに送信する機能もあります。
スクリプトがありcompiz-send.py上のcompizウィキ一部があなたの質問に住所があること:それは、特定のワークスペースではありませんが、あなたはそれの隣に1を取得することができます。
これにより、コマンド
./compiz-dbus-send.py put put_viewport_left_key
./compiz-dbus-send.py put put_viewport_right_key
を発行し、ビューポートを左または右に1にすることができます。