From: Jim Porter Date: Thu, 23 Feb 2023 23:13:38 +0000 (-0800) Subject: ; Return t or nil for 'test-completion' of Eshell user references X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=0a361fd91abfc34cffad61fcc552a7cd64126f12;p=emacs.git ; Return t or nil for 'test-completion' of Eshell user references * lisp/eshell/em-dirs.el (eshell-complete-user-reference): Simply call 'test-completion' when ACTION is 'lambda'; don't modify the result. --- diff --git a/lisp/eshell/em-dirs.el b/lisp/eshell/em-dirs.el index b47bd12c0f0..eb679b80cb5 100644 --- a/lisp/eshell/em-dirs.el +++ b/lisp/eshell/em-dirs.el @@ -290,10 +290,10 @@ Thus, this does not include the current directory.") (throw 'pcomplete-completions ;; Provide a programmed completion table. This works ;; just like completing over the list of names, except - ;; it always returns the completed string, never `t'. - ;; That's because this is only completing a directory - ;; name, and so the completion isn't actually finished - ;; yet. + ;; it always returns the completed string for + ;; `try-completion', never `t'. That's because this is + ;; only completing a directory name, and so the + ;; completion isn't actually finished yet. (lambda (string pred action) (pcase action ('nil ; try-completion @@ -302,8 +302,7 @@ Thus, this does not include the current directory.") ('t ; all-completions (all-completions string names pred)) ('lambda ; test-completion - (let ((result (test-completion string names pred))) - (if (eq result t) string result))) + (test-completion string names pred)) ('metadata '(metadata (category . file))) (`(boundaries . ,suffix)