ワークスペースでウィンドウを開くことができない場合は、すべてのウィンドウを終了する方法は?
私はこれを読んだ提案。ところが、作業空間に切り替えができないので、そうすることができません。
答え1
以下のコードを使用すると正常に動作します。
bindsym $mod+Shift+a focus parent,kill
これは私にとって効果的です
答え2
この場合の秘密は、バインドされたコマンドのウィンドウ選択を指定することです。個々のi3構成ファイル(~/.config/i3/config
)の構造は非常に異なる可能性があるため、次の例は純粋にデモ用です。さらに、Ctrl
実際の世界でキーを使用することは、キーとの近接性のために間違った選択かもしれませんShift
。
# Close focused window
bindsym $mod+q kill
# Close all windows on all workspaces (any class string)
bindsym $mod+Shift+q [class=”.*”] kill
# Close all windows on workspace 1 (name stored in $ws1)
bindsym $mod+Ctrl+1 [workspace=$ws1] kill
詳細については、以下を確認してください。i3 取扱説明書。
また、名前にもかかわらず、このkill
コマンドは実際にプロセスを終了せずに、むしろプロトコルを使用しようとしますWM_DELETE
。したがって、それぞれの動作によってウィンドウが閉じないことがあります(おそらくそれには理由があります)。
答え3
使用i3-input -F <format> -P <prompt>
これが設定ファイルで使用される方法です。
bindsym $mod+q exec i3-input -F '[workspace=^%s$] kill' -P 'kill workspace?'
%s
文字列の各項目はユーザー入力に置き換えられます。i3-input
詳しくはマニュアルページをご覧ください。