Refactor doom/cleanup-session & corresponding evil command
This commit is contained in:
parent
69385fac1a
commit
ab0223144c
2 changed files with 18 additions and 8 deletions
|
@ -242,18 +242,19 @@ project."
|
||||||
(message "Killed %s buffers" n))))
|
(message "Killed %s buffers" n))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun doom/cleanup-session (&optional all-p)
|
(defun doom/cleanup-session (&optional all-p interactive-p)
|
||||||
"Clean up buried buries and orphaned processes in the current workspace. If
|
"Clean up buried buries and orphaned processes in the current workspace. If
|
||||||
ALL-P (universal argument), clean them up globally."
|
ALL-P (universal argument), clean them up globally."
|
||||||
(interactive "P")
|
(interactive (list current-prefix-arg 'interactive))
|
||||||
(run-hooks 'doom-cleanup-hook)
|
|
||||||
(let ((buffers (doom-buried-buffers (if all-p (buffer-list))))
|
(let ((buffers (doom-buried-buffers (if all-p (buffer-list))))
|
||||||
(n 0)
|
(n 0)
|
||||||
kill-buffer-query-functions)
|
kill-buffer-query-functions)
|
||||||
(mapc #'kill-buffer buffers)
|
(mapc #'kill-buffer buffers)
|
||||||
(setq n (+ n (length buffers) (doom/cleanup-processes)))
|
(setq n (+ n (length buffers) (doom/cleanup-processes)))
|
||||||
(when (called-interactively-p 'interactive)
|
(run-hooks 'doom-cleanup-hook)
|
||||||
(message "Cleaned up %s buffers" n))))
|
(when interactive-p
|
||||||
|
(message "Cleaned up %s buffers" n))
|
||||||
|
n))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun doom/cleanup-processes ()
|
(defun doom/cleanup-processes ()
|
||||||
|
|
|
@ -2,11 +2,20 @@
|
||||||
|
|
||||||
(defalias 'ex! 'evil-ex-define-cmd)
|
(defalias 'ex! 'evil-ex-define-cmd)
|
||||||
|
|
||||||
;;; Commands defined elsewhere
|
(evil-define-command doom:cleanup-session (&optional bang)
|
||||||
|
(interactive "<!>")
|
||||||
|
(doom/cleanup-session bang))
|
||||||
|
|
||||||
|
|
||||||
|
;;
|
||||||
|
;; Commands
|
||||||
|
;;
|
||||||
|
|
||||||
|
;;; Commands defined elsewhere
|
||||||
;;(ex! "al[ign]" #'+evil:align)
|
;;(ex! "al[ign]" #'+evil:align)
|
||||||
;;(ex! "g[lobal]" #'+evil:global)
|
;;(ex! "g[lobal]" #'+evil:global)
|
||||||
|
|
||||||
;;; Custom commands
|
;;; Custom commands
|
||||||
;; Editing
|
;; Editing
|
||||||
(ex! "@" #'+evil:macro-on-all-lines) ; TODO Test me
|
(ex! "@" #'+evil:macro-on-all-lines) ; TODO Test me
|
||||||
(ex! "al[ign]" #'+evil:align)
|
(ex! "al[ign]" #'+evil:align)
|
||||||
|
@ -39,7 +48,7 @@
|
||||||
(ex! "gblame" #'magit-blame)
|
(ex! "gblame" #'magit-blame)
|
||||||
(ex! "grevert" #'git-gutter:revert-hunk)
|
(ex! "grevert" #'git-gutter:revert-hunk)
|
||||||
;; Dealing with buffers
|
;; Dealing with buffers
|
||||||
(ex! "clean[up]" #'doom/cleanup-session)
|
(ex! "clean[up]" #'doom:cleanup-session)
|
||||||
(ex! "k[ill]" #'doom/kill-this-buffer)
|
(ex! "k[ill]" #'doom/kill-this-buffer)
|
||||||
(ex! "k[ill]all" #'+default:kill-all-buffers)
|
(ex! "k[ill]all" #'+default:kill-all-buffers)
|
||||||
(ex! "k[ill]m" #'+default:kill-matching-buffers)
|
(ex! "k[ill]m" #'+default:kill-matching-buffers)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue