                               (string-match-p it (buffer-name buffer))
                             (eq (buffer-local-value 'major-mode buffer) it))
                           narf-unreal-buffers)))
-            (or buffer-list (buffer-list))))
+            (or buffer-list (narf/get-buffers))))
 
 ;;;###autoload
 (defun narf:kill-unreal-buffers ()
   "Kill all buried, unreal buffers in current frame. See `narf-unreal-buffers'"
   (interactive)
-  (let* ((real-buffers (narf/get-real-buffers))
-         (kill-list (--filter (not (memq it real-buffers)) (narf/get-buried-buffers))))
+  (let* ((all-buffers (narf/get-all-buffers))
+         (real-buffers (narf/get-real-buffers all-buffers))
+         (kill-list (--filter (not (memq it real-buffers))
+                              (narf/get-buried-buffers all-buffers))))
     (message "Cleaned up %s buffers" (length kill-list))
     (mapc 'kill-buffer kill-list)
     (narf:kill-process-buffers)))

                     (eq (buffer-local-value 'major-mode buffer) it))
                   narf-unreal-buffers)))))

;; From spacemacs <https://github.com/syl20bnr/spacemacs/blob/master/spacemacs/funcs.el>
;;;###autoload
(defun narf/next-real-buffer ()
  "Switch to the next buffer and avoid special buffers."

(defun narf:kill-process-buffers ()
  "Kill all buffers that represent running processes and aren't visible."
  (interactive)
  (let ((buffer-list (narf/get-buffers)))
    (dolist (p (process-list))
      (let* ((process-name (process-name p))
             (assoc (assoc process-name narf-cleanup-processes-alist)))
