GNU bug report logs - #61221
30.0.50; [PATCH] Support completion of quoted variable refs in Eshell

Previous Next

Package: emacs;

Reported by: Jim Porter <jporterbugs <at> gmail.com>

Date: Thu, 2 Feb 2023 02:29:01 UTC

Severity: normal

Tags: patch

Found in version 30.0.50

Done: Jim Porter <jporterbugs <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Jim Porter <jporterbugs <at> gmail.com>
Cc: 61221-done <at> debbugs.gnu.org
Subject: bug#61221: 30.0.50; [PATCH] Support completion of quoted variable refs in Eshell
Date: Thu, 23 Feb 2023 17:39:02 -0500
>>> +                   ('lambda               ; test-completion
>>> +                     (let ((result (test-completion string names pred)))
>>> +                       (if (eq result t) string result)))
>> Hmm... why not just always return `result`?
>
> As I understand it, returning 't' means "there is just one matching
> completion, and the match is exact"[1], but in this case, that's not really
>  true: after completing "~user/" there are still more matching completions
> (the contents of the user's home directory).

What you describe is for `try-completion`, not `test-completion`.

> This is really just trying to match what happens when calling
> 'completion-file-name-table':
>
>   (completion-file-name-table "~user/" nil nil)
>     => "~user/"
>
>   (try-completion "~user/" '("~user/") nil)
>     => t

The `action` arg is not `lambda` is these examples.


        Stefan





This bug report was last modified 2 years and 149 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.