diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-10-18 15:56:18 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-10-18 15:56:59 -0700 |
commit | 42556aea66d8de0650f9d930ba2744a61e316b0c (patch) | |
tree | 6d4242e7b8da93a0e3025cacf00245d8f1f01b2e | |
parent | 2359342097bd0074e2f458e8f031d8f918590c06 (diff) | |
download | dotfiles-42556aea66d8de0650f9d930ba2744a61e316b0c.tar.gz |
advise delete-other-windows to preserve side window state
-rw-r--r-- | .emacs.d/init-spw.el | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/.emacs.d/init-spw.el b/.emacs.d/init-spw.el index 9de0cb82..2a34fee0 100644 --- a/.emacs.d/init-spw.el +++ b/.emacs.d/init-spw.el @@ -587,6 +587,18 @@ window first." ;; keyboard macros (global-set-key "\C-cs" #'spw/window-toggle-side-windows) +(defun spw/delete-other-windows--toggle-side-windows + (&optional window &rest _ignore) + "Save any side window state before deleting other windows such that side +windows can be recovered using `window-toggle-side-windows'. + +A limitation is that when `window-toggle-side-windows' is subsequently used +the non-side windows deleted by `delete-other-windows' will also reappear." + (when (window-parameter window 'window-side) + (window-toggle-side-windows (window-frame window)))) +(advice-add 'delete-other-windows + :before #'spw/delete-other-windows--toggle-side-windows) + (setq auth-source-save-behavior nil) ;; Make `read-only-mode' and `view-mode' basically the same thing -- if the |