]> code.delx.au - gnu-emacs-elpa/commitdiff
multishell - avoid duplicate completions
authorKen Manheimer <ken.manheimer@gmail.com>
Thu, 14 Jan 2016 06:39:39 +0000 (01:39 -0500)
committerKen Manheimer <ken.manheimer@gmail.com>
Thu, 14 Jan 2016 06:39:39 +0000 (01:39 -0500)
multishell.el

index 562723d7e36509126908d1250873e7b4e411592d..509c4e0b7b90650eef01bb87561926b7dc232ba8 100644 (file)
@@ -343,22 +343,22 @@ on empty input."
            (remq nil
                  (mapcar (lambda (buffer)
                            (let* ((name (buffer-name buffer))
-                                  (already (assoc name ntph)))
-                             (when (with-current-buffer buffer
-                                     (derived-mode-p 'shell-mode))
-                               ;; Shell mode buffers.
-                               (setq name (if (> (length name) 2)
-                                              ;; Strip asterisks.
-                                              (substring name 1
-                                                         (1- (length name)))
-                                            name))
-                               (if already
-                                   nil
-                                 name))))
+                                  (already
+                                   (assoc (multishell-unbracket-asterisks name)
+                                          ntph)))
+                             (if already
+                                 nil
+                               (when (with-current-buffer buffer
+                                       (derived-mode-p 'shell-mode))
+                                 ;; Shell mode buffers.
+                                 (setq name (if (> (length name) 2)
+                                                ;; Strip asterisks.
+                                                (substring name 1
+                                                           (1- (length name)))
+                                              name))))))
                          (buffer-list)))
            (mapcar #'(lambda (assoc)
-                      (concat (multishell-unbracket-asterisks (car assoc))
-                              (cdr assoc)))
+                      (concat (car assoc) (cdr assoc)))
                    multishell-name-to-path-history)))
          (got (completing-read prompt
                                ;; COLLECTION: