summaryrefslogtreecommitdiff
path: root/.config/emacs/lisp/toggle-window/toggle-window.el
diff options
context:
space:
mode:
authorJack Jamison <jackqjamison@gmail.com>2026-01-29 00:47:07 -0500
committerJack Jamison <jackqjamison@gmail.com>2026-01-29 00:47:07 -0500
commit6ad4d3dfd32b569f9485d24f80a768ed3ca19e46 (patch)
tree6d0c6f671a87abc73a429df2344e9799eb57737c /.config/emacs/lisp/toggle-window/toggle-window.el
parentf8778e805f014602a1bd4de287dcaf9585b2b1ee (diff)
improve init and sway
Diffstat (limited to '.config/emacs/lisp/toggle-window/toggle-window.el')
-rw-r--r--.config/emacs/lisp/toggle-window/toggle-window.el23
1 files changed, 23 insertions, 0 deletions
diff --git a/.config/emacs/lisp/toggle-window/toggle-window.el b/.config/emacs/lisp/toggle-window/toggle-window.el
new file mode 100644
index 0000000..28c7c62
--- /dev/null
+++ b/.config/emacs/lisp/toggle-window/toggle-window.el
@@ -0,0 +1,23 @@
+(defvar toggle-window-configuration nil
+ "Stores the window configuration")
+
+;; should rewrite to not do the save configuration thing
+
+(defun toggle-window ()
+ (interactive)
+ (if (count-windows)
+ (if (one-window-p)
+ ;; reset configuration if single window
+ (if toggle-window-configuration
+ (progn
+ (set-window-configuration toggle-window-configuration)
+ (setq toggle-window-configuration nil))
+ (message "No previous window layout to restore."))
+ ;; if multiple windows save configuration
+ (setq toggle-window-configuration (current-window-configuration))
+ ;; delete current or other window
+ (if (derived-mode-p 'compilation-mode)
+ (delete-window)
+ (delete-other-windows)))))
+
+(provide 'toggle-window)