Mod++をShift押したときにウィンドウを閉じる動作を設定したいですq。フレームにウィンドウがある場合とない場合は、ウィンドウを閉じてフレームを削除してください。ウィンドウが2つ以上の場合は、フォーカスがあるウィンドウのみが閉じます。これにより、フレームのウィンドウに基づいてフレーム/ウィンドウを動的に閉じるのが簡単になります。
次のように構成ファイルを編集して、要件の最初の部分を解決できました。つまり。フレームにウィンドウがある場合とない場合は、ウィンドウを閉じてフレームを削除してください。
hc keybind $Mod-n and . compare tags.focus.curframe_wcount lt 2 . chain , close , remove
しかし、2番目の部分を接続することはできません。フレームに複数のウィンドウがある場合は、焦点が合っているウィンドウを閉じます。私は次の2つのオプションを試しました。
- リンクを試してくださいまたは
hc keybind $Mod-n or | and . compare tags.focus.curframe_wcount lt 2 . chain , close , remove | close
- 別の関数を書いてみてください。
hc keybind $Mod-Shift-q close_frames
close_frames(){
WinCurFrame=$(hc attr tags.focus.curframe_wcount)
[[ WinInCurFrame < 2 ]] && hc close;remove || hc close
}
ベストアンサー1
これを達成する方法が識別される。 Herbstluftwmには、この動作を有効にする設定オプションがあります。 https://herbstluftwm.org/herbstluftwm.html
閉じるか削除してください フォーカスされたウィンドウを閉じるか、フォーカスされたウィンドウがない場合は、現在のフレームを削除します。フローティングモードではシャットダウンコマンドとして機能します。
閉じて削除してください 現在のフレームに他のウィンドウがない場合は、フォーカスされたウィンドウを閉じて現在のフレームを削除します。フローティングモードではシャットダウンコマンドとして機能します。