終了ホットキーを押したときに、dwm がすべてのウィンドウを正常に閉じるようにします。Unity の動作は気に入っています。ログアウトを拒否するウィンドウのリスト (変更が保存されていないエディターなど) を表示し、すべての問題が解決されてアプリケーションが閉じられるまでログアウトしません。デフォルトでは、dwm は X セッションを終了し、実行中のすべてのアプリケーションを強制終了します。
すべてのウィンドウのリストを取得し、それらを正常に閉じて、そのプロセスが終了するまで待機するスクリプトを書こうと考えていました。しかし、ウィンドウを閉じる方法さえわかりません。私が知っている唯一の方法は wmctrl を使用することですが、このユーティリティは dwm では動作しません。
答え1
必要になる場合がありますX11セッションマネージャー内からdwmを起動する
Gnome Display Manager (GDM) でこれを行う方法の 1 つを次に示します。
以下を追加/usr/share/xsessions/dwm.desktop
[Desktop Entry]
Encoding=UTF-8
Name=dwm
Comment=This session starts dwm
Exec=/usr/local/bin/dwm-start
Type=Application
新しいファイルを作成する/usr/local/bin/dwm-start権限は 755 です。
#!/bin/sh
# You can add other programs to set the background, add autoloading
# and add autoload for USB and such here
# Make sure you start dwm last as it never returns control to this script
exec /usr/local/bin/dwm > /dev/null
コンピュータ上で GDM が適切に構成されている場合は、ログイン画面のセッション メニューに新しい dwm エントリが表示されます。