現在2つのワークスペースを使用していますが、1つのショートカットを使用してそれらを順に切り替えたいと思います。現時点では、私はできる Ctrl+Alt+Right ワークスペース2に切り替える Left 1に切り替えますが、単一のキー(またはキーの組み合わせ)を使用して、現在いないワークスペースに切り替えたいです。そうすれば、そのショートカットだけが必要になり、2つは必要なくなります。
古いマシンでUbuntuを実行しているため、compizを有効にできません。 wmctrl
とxdotool
の両方を使用してスクリプトを作成しようとしましたが、どちらも正常に動作しません(何をしても、どちらもワークスペース1にのみ切り替わり、2には切り替わりません)。
助言がありますか?
次のスクリプトは、次のワークスペースに切り替えて、最後の後に最初のワークスペースに折り返します。ワークスペースには0から番号が付けられていることに注意してください。スクリプトを記述しようとしたときに、これが原因である可能性があります。
#!/bin/sh
total=$(wmctrl -d | wc -l)
current=$(wmctrl -d | sed -n 's/^\([0-9]\+\) *\*.*/\1/p')
if [ -z "$total" ] || [ -z "$current" ]; then
echo 1>&2 "$0: Could not obtain workspace information!"
exit 2
fi
target=$(($current+1))
if [ $target = $total ]; then
target=0
fi
wmctrl -s $target
私はこれが古いことを知っていますが、ここに私のバージョンがあります:
複数のワークスペースの場合(Gillesの答えのように):
wmctrl -s `wmctrl -d | awk '$2=="*"{cur=NR} END{print cur % NR}'`
複数のビューポートの場合:
wmctrl -o `wmctrl -d | awk '{gsub(/[^0-9]/," ",$0);x = ($4 + $6 + $8) % $2; if(
x == 0 ) y = ($5 + $7 + $9) % $3; else y = $5; print x","y}'`