しばらくデュアルスクリーン設定でAwesome WMを使用していますが、プログラムを開いたときに現在アクティブ/選択されている画面で開くように設定する方法がわかりません。今のところ、すべてのプログラムはノートブックの画面で開始されますが、外部モニターにフォーカスがある場合は、ラップトップの画面ではなく、外部モニターで開き始めるプログラムが必要です。
この動作を構成するにはどうすればよいですか?
しばらくデュアルスクリーン設定でAwesome WMを使用していますが、プログラムを開いたときに現在アクティブ/選択されている画面で開くように設定する方法がわかりません。今のところ、すべてのプログラムはノートブックの画面で開始されますが、外部モニターにフォーカスがある場合は、ラップトップの画面ではなく、外部モニターで開き始めるプログラムが必要です。
この動作を構成するにはどうすればよいですか?
やりたいことはmanage
、クライアントのシグナルを変更することです。このシグナルは、新しいクライアントが生成されるたびに発行されます。Awesome の最新バージョンでは、このシグナルはデフォルトの rc.lua で使用され、関連するコードは次のように始まります。
client.connect_signal("manage", function (c, startup)
そのシグナルに渡される関数に次のコードを追加します。
awful.client.movetoscreen(c, mouse.screen)
これは、マウスが置かれている画面にクライアントを移動することを awesome に伝えます。必要に応じて、アクティブなクライアントが表示されている画面に対しても実行できます。
awful.client.movetoscreen(c, client.focus.screen)