web-dev-qa-db-ja.com

xdotool:ウィンドウを「上」に移動0 0

タイトル通り。私がする時

xdotool getactivewindow windowmove 0 0 windowsize 1200 $height_first_monitor

xdotoolはウィンドウを移動します。しかし、私がするとき

xdotool getactivewindow windowmove -40 0 windowsize 1200 $height_first_monitor

windowmove: unrecognized option '-40'

Googleは「xdotool move over 0 0 "および「xdotool move negative」などの検索を行ったが、有用な結果は得られなかった

4
josinalvo

これはバグのように見えますが、ずっと以前からfeatureと呼ばれている可能性があります。特定の場所で負の数を使用するには、引数の終わりマーカー--を追加する必要があります。たとえば、次のことができます

xdotool getactivewindow windowmove 0 -10

しかし、あなたはする必要があります

xdotool getactivewindow windowmove -- -10 0

これは、windowmoveがオプションの引数--syncおよび--relativeを取ることができるためですが、(おそらく下位互換性のために)単一のダッシュと同じです:-syncおよび-relative。悲しいことに、-10はそのような(予期しない)引数と間違えられます。

Windowmoveの sources を見ると、標準Cライブラリ関数 getopt_long_only() を使用していることがわかります。この関数は、--または-で始まる長い引数を探します。代替のgetopt_long()は、--の長い引数を探すだけです。

上記のリンクが最終的なソースへのリンクであるかどうかはわかりませんが、この機能は2010年以前からあるようです。

2
meuh