diff options
-rw-r--r-- | init.el | 2 | ||||
-rw-r--r-- | lisp/km-projectile.el | 14 |
2 files changed, 8 insertions, 8 deletions
@@ -799,7 +799,7 @@ ("." . km/projectile-copy-project-filename-as-kill) ("e" . km/projectile-restore-thing) ("k" . km/projectile-kill-buffers) - ("K" . km/projectile-kill-other-buffers) + ("K" . km/projectile-kill-nondisplayed-buffers) ("v" . km/projectile-view-file) ("w" . km/projectile-save-thing)) diff --git a/lisp/km-projectile.el b/lisp/km-projectile.el index 79666d5..4bf38b3 100644 --- a/lisp/km-projectile.el +++ b/lisp/km-projectile.el @@ -180,14 +180,14 @@ Like `projectile-kill-buffers', but (projectile-kill-buffers))) ;;;###autoload -(defun km/projectile-kill-other-buffers () - "Kill all project buffers except the current one." +(defun km/projectile-kill-nondisplayed-buffers () + "Kill project buffers that aren't displayed in current frame" (interactive) - (let ((cbuf (current-buffer))) - (mapc #'kill-buffer - (cl-remove-if - (lambda (b) (or (buffer-base-buffer b) (eq cbuf b))) - (projectile-project-buffers))))) + (mapc #'kill-buffer + (cl-remove-if + (lambda (b) (or (buffer-base-buffer b) + (get-buffer-window b))) + (projectile-project-buffers)))) (provide 'km-projectile) ;;; km-projectile.el ends here |