From 8f463364f019f7fdbad0a7a4b11dc8e9dad5faeb Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto Date: Thu, 5 Feb 2015 08:50:27 +0100 Subject: [PATCH] Fix preselection when killing buffers persistently. * helm-buffers.el (helm-buffers-persistent-kill-1): Do it. --- helm-buffers.el | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/helm-buffers.el b/helm-buffers.el index ae22e8cfc..c61d1b3d6 100644 --- a/helm-buffers.el +++ b/helm-buffers.el @@ -691,13 +691,20 @@ If REGEXP-FLAG is given use `query-replace-regexp'." (let ((marked (helm-marked-candidates))) (unwind-protect (cl-loop for b in marked - do (progn (helm-preselect (format "^%s\\_>" b)) + do (progn (helm-preselect (format "^%s" + (regexp-quote + (if helm-buffer-max-length + (helm-substring-by-width + b helm-buffer-max-length + "") + b)))) (when (y-or-n-p (format "kill buffer (%s)? " b)) - (helm-buffers-persistent-kill-1 b) - (message nil)))) + (helm-buffers-persistent-kill-1 b)) + (message nil))) (with-helm-buffer (setq helm-marked-candidates nil - helm-visible-mark-overlays nil))))) + helm-visible-mark-overlays nil)) + (helm-force-update)))) (defun helm-buffers-list-persistent-action (candidate) (if current-prefix-arg