 ;;;###autoload
 (defun doom-kill-buffer (&optional buffer dont-save)
   "Kill BUFFER (falls back to current buffer if omitted) then switch to a real
-buffer, but only bury the buffer if it is present in another window.
+buffer. If the buffer is present in another window, only bury it.
+
+Will prompt to save unsaved buffers when attempting to kill them, unless
+DONT-SAVE is non-nil.
 
 See `doom-real-buffer-p' for what 'real' means."
   (setq buffer (or buffer (current-buffer)))


;;;###autoload
(defun doom/next-buffer ()
  "Switch to the next real buffer, skipping special buffers. See
`doom-real-buffer-p' for what 'real' means."
  (interactive)
  (doom--cycle-real-buffers +1))

;;;###autoload
(defun doom/previous-buffer ()
  "Switch to the previous real buffer, skipping special buffers. See
`doom-real-buffer-p' for what 'real' means."
  (interactive)
  (doom--cycle-real-buffers -1))


;;;###autoload
(defun doom/cleanup-buffers (&optional all-p)
  "Clean up buried and inactive process buffers in the current workspace."
  (interactive "P")
  (let ((buffers (doom-buried-buffers (if all-p (buffer-list))))
        (n 0))
