Subject: Re: bug#10771: TAB completion for info-display-manual

From: Eli Zaretskii <[email-masked]>
Date: Sun, 02 Dec 2012 23:32:28 +0200

> From: Juri Linkov <[email-masked]>
> Cc: Chong Yidong <[email-masked]>,  [email-masked],  [email-masked]
> Date: Sun, 02 Dec 2012 23:12:35 +0200
> 
> > Because manuals loaded into my Info buffers do not necessarily reflect
> > Info files on my disk.
> 
> Is this because you delete Info files from the disk leaving open
> their Info buffers?

No, it's because I don't want to be restricted to manuals found in
directories that are mentioned in Info-directory-list.

In general, the Info buffers in the session should not be restricted
to what "M-x info" can find, because we have "C-u C-h i" and other
methods of loading manuals by their exact file name.

> I'm not sure whether additional complexity is necessary to handle
> completion for such rare cases

Well, _I_ wrote this command, and I needed it precisely because I have
dozens of Info manuals loaded in my usual Emacs session.  This case is
not rare for me.

> but at least
> the minibuffer should allow you to enter such manual names.
> I mean changing the REQUIRE-MATCH arg of `completing-read' from t to nil,
> so you can still enter these manual names like at the time when
> this command accepted a plain string before the latest change.
> 
> === modified file 'lisp/info.el'
> --- lisp/info.el	2012-12-02 20:07:04 +0000
> +++ lisp/info.el	2012-12-02 21:11:17 +0000
> @@ -5138,7 +5138,7 @@ (defun info-display-manual (manual)
>  		       (apply-partially 'Info-read-node-name-2
>  					Info-directory-list
>  					(mapcar 'car Info-suffix-list))
> -		       nil t))))
> +		       nil nil))))
>    (let ((blist (buffer-list))
>  	(manual-re (concat "\\(/\\|\\`\\)" manual "\\(\\.\\|\\'\\)"))
>  	(case-fold-search t)

How is this better than the original command against which this bug
was filed?