
簡単に言うと:
i3wmでno_focusディレクティブを実装し、プログラムを開くためにバインディングを入力したワークスペースに従ってプログラムをワークスペースに動的にworkspace n
割り当てる方法実は)?workspace n
workspace n + 1
コンテキスト:i3wm(特にArchのi3-gaps)で使用されるいくつかのキーバインディングがあります。
bindsym $mod+Shift+W exec chromium
bindsym $mod+Shift+I exec chromium --incognito
bindsym $mod+Shift+F exec firefox
しかし、私は新しく開いたウィンドウからフォーカスを盗むのが好きではありませんworkspace n
。そして、見て、プログラムは私がキーバインディングを押した場所ではなく、私の現在の場所にロードされます。workspace n + 1
workspace n
workspace n
workspace n + 1
私が見つけたこの説明i3wmのドキュメントには、ウィンドウフォーカスに関して私が望むものが正確に記載されていますが、修正できる単一のサンプルコマンドを見つけることができず、彼らがno_focus [window_role="pop-up"]
提供する例は私には理解されていません。あまり合理的な組み合わせexec no_focus chromium
を試してみましたが、no_focus exec chromium
そのうち何も機能しないようです。コマンドの実行方法がわかりません。
また、作業が完了したら、ワークスペースにバインディングを入力すると、新しいワークスペースに進むのではなく、そのワークスペースでプログラムが強制的に開くかどうかはわかりません。私はワークスペースの割り当てについて知っていますが(実装されていませんが、これは別の質問です)、私が詳しく説明したようなダイナミックワークスペースの割り当て、つまりキーバインディングを実行するワークスペースに基づいてワークスペースを割り当てることを好みます。