Subject: Re: bug#65348: INITIAL-INPUT in completing-read repeats same entry twice consecutively

From: Heime <[email-masked]>
Date: Thu, 17 Aug 2023 06:05:06 +0000

Sent with Proton Mail secure email.

------- Original Message -------
On Thursday, August 17th, 2023 at 5:49 PM, Eli Zaretskii <[email-masked]> wrote:

> > Date: Thu, 17 Aug 2023 00:47:28 +0000
> > From: Heime via "Bug reports for GNU Emacs,
> > the Swiss army knife of text editors" [email-masked]
> > 
> > Have seen that when I include INITIAL-INPUT that happens to be the first entry
> > in the collection COLLECJ, the entry "barwedge" is displayed twice consecutively.
> > 
> > But such situation does not happen when selecting a different entry from collection.
> > 
> > (let ( (collecj '("barwedge" "boxdot" "boxminus" "boxplus"
> > "boxtimes" "Cap" "centerdot" "circledast"
> > 
> > (completing-read "Grapheme: " collecj nil t "barwedge")
> 
> 
> Sorry, I don't understand what you are saying. What do you mean by
> "is displayed twice consecutively"? I guess some details are missing
> from your report to make it complete and self-explanatory?

Consider the function defined by

(defun bigops (grafm seltr)
  (interactive
    (let ( (collecj '("boxplus" "boxtimes" "Cap" "centerdot" "circledast")) )
      (completing-read "Grapheme: " collecj nil t "boxplus")))

The user would see "boxplus", then the following element shows "boxplus"
consecutively again.  Could you consider the capability that when one uses
REQUIRE-MATCH, the function finds the entry for INITIAL-INPUT so that the 
next thing that gets shown after that starts from the one following the 
match in COLLECTION.  Otherwise, one is forced to put the INITIAL-INPUT
entry at the end of COLLECTION.