03/04/02 06:08.net
>>206
fvwm がいくつか用意している新規の窓の(自動)配置方法に、お望みのようなものは
ないですね。
fvwm の FAQ に「窓をスクリーンの中央に位置させるには」という項があり、また同じく
FAQ に「窓の作成時にフォーカスを移すなどゴニョゴニョしたい」という項があります
(後者は >>97 で書いたことがあり)。
これらを組み合せると、一応お望みのような動作をするのですが、しばらく試したところ
この方法には大きな問題があるのに気付きました。アプリケーションの中には、自分の
窓の配置を憶えておくものがありますが、上の組み合わせ技を使うとこの種のアプリの
窓も中央に配置されてしまうのです。
本当になんでもかんでも中央に配置させたいのでしょうか。むしろ、フォーカスの自動移動
などは>>97 にあるやり方に任せて、中央に位置させたいときだけ別個に関数を呼び出す
という方法を私はお勧めします。
例えば、C-S-c でフォーカスのある窓をスクリーンの中央に移動させたい場合
DestroyFunc CenterWindow
AddToFunc CenterWindow
+ I Piperead "echo Move $(($[vp.width]/2 - $[w.width]/2))p $(($[vp.height]/2 - $[w.height]/2))p"
+ I Focus
+ I WarpToWindow
Key c A CS CenterWindow
注: この場合、シェルが $(()) 記法をサポートしている必要あり