結局、いちいち押すのが面倒になりました…
そんなわけで起動して即座にそのプロセス(=geeqie)のウィンドウの大きさを変える。 そんなラッパースクリプトから起動することに方針を変更!
#!/bin/sh width=1280 height=1024 geeqie $@ & pid=$! for i in `seq 0 5`; do sleep 0.1 wid=`wmctrl -lp | grep " $pid " | sed -e 's/^\(0x[0-9a-f]\+\).*/\1/'` if [ "$wid" != "" ];then wmctrl -i -r $wid -e 0,-1,-1,$width,$height exit 0 fi done
まぁ、ウィンドウIDを得る回りがちょっと不安ですけど。一応動いております。
当初は起動してからウィンドウが作られるまでの時間を待つため、sleepは0.5秒を一つ入れておりましたが、作成後即座に変わるのを求めつつ何らかの原因で多少遅延した場合も考慮して、forループで何度か回るようにしました。システムによってはもちっと長時間待つか、seqの回数を増すかがよいかと思います。
というかsleepって整数しか使えない印象があったんですが、man見てみたら浮動小数点数を使えることになっていたんですね。
とりあえず、これで不満点はほぼ解消…こういうことが簡単だからLinuxはやめられませんな!