GNU bug report logs - #27158
25.2; Eliminating old usage of completing-read from built-in files

Previous Next

Package: emacs;

Reported by: Ryan <rct <at> thompsonclan.org>

Date: Wed, 31 May 2017 04:43:02 UTC

Severity: minor

Tags: wontfix

Found in version 25.2

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Drew Adams <drew.adams <at> oracle.com>, Ryan Thompson <rct <at> thompsonclan.org>,  27158 <at> debbugs.gnu.org
Subject: bug#27158: 25.2; Eliminating old usage of completing-read from built-in files
Date: Thu, 1 Jun 2017 23:53:28 +0300
On 6/1/17 5:57 PM, Drew Adams wrote:

> `completing-read-function' needs to have the same signature
> as `completing-read'.
> 
> I am the one who requested `completing-read-function' and
> pushed to have it added to Emacs.

Thank you for that, but that doesn't mean it can't ever change.

> Its purpose is to easily
> let you change the _complete_ behavior of `completing-read',
> just by binding a variable.

Indeed.

> That requires passing it exactly the same arguments, to do
> as it pleases with them.

No, it does not require that.

> If, as in your case, it wants to
> act as if DEF were in fact `(or DEF "")', it can do that.

It _already is_, according to the contract of completing-read. And that 
is the problem.

> Changing the signature of `completing-read-function' in the
> way you suggest makes all uses of `completing-read-function'
> follow the path you've outlined for `ido-ubiquitous-mode'.

Nope. Like I said, the behavior of completing-read will not change.

completing-read-function will change, but just a little. With the new 
benefit that it's now aware of whether the caller wants to have a 
default value or not.

> And no need.  You don't need that, to make your mode do
> what you want.  If you disagree, please show da codez: a
> simple example that doesn't work and for which you see no
> possible solution.

The code is pointless here. Just read this again:

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27158#32

>> Obviously not. Also not when it's not installed, in case you
>> were wondering.
> 
> In that case, it's obvious that you can do whatever you need
> inside the mode.

Nope.

> There is a reason for the DEF argument, a reason for it to
> be optional, and a reason for its default value to be "".
> All of which I've gone over.

Err, no. You didn't.

> DEF was even expanded several releases ago, to allow a
> value that is a list of default values.  Those too likely
> don't fit your narrow use case.  Default values are
> intentionally not completion candidates.  And yes, in
> general they are useful, even if not for your use case
> of `completing-read'.

Nobody is taking DEF away.




This bug report was last modified 4 years and 330 days ago.

Previous Next


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