dwm 中的優雅註銷

dwm 中的優雅註銷

我希望 dwm 在按下退出熱鍵時優雅地關閉所有視窗。我喜歡 Unity 的行為:它顯示拒絕登出的視窗清單(例如,具有未儲存變更的編輯器),並且在解決所有問題和關閉應用程式之前不會登出。預設情況下,dwm 只是結束 X 會話,並且所有正在運行的應用程式都會被終止。

我正在考慮編寫一個腳本來檢索所有視窗的列表,優雅地關閉它們並等待它們的進程完成。但我什至不知道如何關閉窗戶。我知道的唯一方法是使用 wmctrl,並且該實用程式不適用於 dwm。

答案1

您可能需要從 X11 會話管理器啟動 dwm


這是使用 Gnome 顯示管理器 (GDM) 執行此操作的一種方法

添加以下內容到/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 條目。

更多 dwm 調整,包括休眠/關閉設置,請參閱此處。

相關內容