From: Peng Li Date: Sat, 23 Jul 2016 03:30:58 +0000 (+0800) Subject: emacs - toggle window maximum X-Git-Url: http://47.100.26.94:8080/?a=commitdiff_plain;ds=inline;h=9b3224b312ed7d76f2aeafa59be8b67b1612d61f;p=dotfiles.git emacs - toggle window maximum --- diff --git a/emacs.d/config.org b/emacs.d/config.org index 801a072..ff8d4ab 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -2259,6 +2259,14 @@ Most use =C-o C-o= to switch buffers; =C-o x, v= to split window; =C-o o= to del #+BEGIN_SRC emacs-lisp :tangle yes :results silent (winner-mode 1) + (defun sd/toggle-max-windows () + "Set maximize current if there are multiple windows, if only + one window, window undo" + (interactive) + (if (equal (length (window-list)) 1) + (winner-undo) + (delete-other-windows))) + (defhydra sd/hydra-window (:color red :columns nil) "window" ("h" windmove-left nil :exit t) @@ -2279,7 +2287,8 @@ Most use =C-o C-o= to switch buffers; =C-o x, v= to split window; =C-o o= to del (split-window-below) (windmove-down)) "horz" :exit t) - ("o" delete-other-windows "one" :exit t) + ;; ("o" delete-other-windows "one" :exit t) + ("o" sd/toggle-max-windows "one" :exit t) ("C-o" ido-switch-buffer "buf" :exit t) ("C-k" sd/delete-current-window "del" :exit t) ("'" other-window "other" :exit t)