unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
@ 2012-04-25 15:37 Stephen Berman
  2020-12-07 17:20 ` Lars Ingebrigtsen
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Berman @ 2012-04-25 15:37 UTC (permalink / raw)
  To: 11338

0. emacs -Q
1. M-x customize-option RET read-buffer-completion-ignore-case RET.
   Toggle to "on", set for the current session.
2. Type `C-x b RET a', then `C-x b RET A', then `C-x b RET ahjk', then
   switch to buffer *scratch*.
3. C-x b a TAB => Emacs correctly reports: "[Complete, but not unique]"
4. TAB => *Completions* buffer contains, as expected: A a ahjk.
5. C-x k ahjk RET.
6. C-x b a TAB => Emacs incorrectly reports: "[Sole completion]".
7. C-x b A TAB => Emacs incorrectly reports: "[Sole completion]".

In contrast, if I have files named `a' and `A', set
read-file-name-completion-ignore-case to non-nil and type `C-x C-f a
TAB', the *Completions* buffer shows, as expected, both `a' and `A'.

In GNU Emacs 24.1.50.1 (i686-suse-linux-gnu, GTK+ Version 2.24.7)
 of 2012-04-18 on escher
Bzr revision: 107959 cyd@gnu.org-20120418070052-e6bm11h52qja62ue
Windowing system distributor `The X.Org Foundation', version 11.0.11004000
Configured using:
 `configure '--without-toolkit-scroll-bars' 'CFLAGS=-g''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=local
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2012-04-25 15:37 bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names Stephen Berman
@ 2020-12-07 17:20 ` Lars Ingebrigtsen
  2020-12-07 18:20   ` Stephen Berman
  0 siblings, 1 reply; 8+ messages in thread
From: Lars Ingebrigtsen @ 2020-12-07 17:20 UTC (permalink / raw)
  To: Stephen Berman; +Cc: 11338

[-- Attachment #1: Type: text/plain, Size: 687 bytes --]

Stephen Berman <stephen.berman@gmx.net> writes:

> 0. emacs -Q
> 1. M-x customize-option RET read-buffer-completion-ignore-case RET.
>    Toggle to "on", set for the current session.
> 2. Type `C-x b RET a', then `C-x b RET A', then `C-x b RET ahjk', then
>    switch to buffer *scratch*.
> 3. C-x b a TAB => Emacs correctly reports: "[Complete, but not unique]"
> 4. TAB => *Completions* buffer contains, as expected: A a ahjk.
> 5. C-x k ahjk RET.
> 6. C-x b a TAB => Emacs incorrectly reports: "[Sole completion]".
> 7. C-x b A TAB => Emacs incorrectly reports: "[Sole completion]".

(This bug report unfortunately got no response at the time.)

I tried this in Emacs 28, and I got:


[-- Attachment #2: Type: image/png, Size: 30460 bytes --]

[-- Attachment #3: Type: text/plain, Size: 336 bytes --]


So I'm going to go ahead and guess that this has been fixed at some
point in the years since this was reported, and I'm closing this bug
report.  If this is still and issue, please respond to the debbugs
address, and we'll reopen.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2020-12-07 17:20 ` Lars Ingebrigtsen
@ 2020-12-07 18:20   ` Stephen Berman
  2020-12-08 13:57     ` Lars Ingebrigtsen
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Berman @ 2020-12-07 18:20 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: 11338

On Mon, 07 Dec 2020 18:20:48 +0100 Lars Ingebrigtsen <larsi@gnus.org> wrote:

> Stephen Berman <stephen.berman@gmx.net> writes:
>
>> 0. emacs -Q
>> 1. M-x customize-option RET read-buffer-completion-ignore-case RET.
>>    Toggle to "on", set for the current session.
>> 2. Type `C-x b RET a', then `C-x b RET A', then `C-x b RET ahjk', then
>>    switch to buffer *scratch*.
>> 3. C-x b a TAB => Emacs correctly reports: "[Complete, but not unique]"
>> 4. TAB => *Completions* buffer contains, as expected: A a ahjk.
>> 5. C-x k ahjk RET.
>> 6. C-x b a TAB => Emacs incorrectly reports: "[Sole completion]".
>> 7. C-x b A TAB => Emacs incorrectly reports: "[Sole completion]".
>
> (This bug report unfortunately got no response at the time.)
>
> I tried this in Emacs 28, and I got:

[*Completions* buffer showing both A and a]

> So I'm going to go ahead and guess that this has been fixed at some
> point in the years since this was reported, and I'm closing this bug
> report.  If this is still and issue, please respond to the debbugs
> address, and we'll reopen.

Did you follow the above recipe exactly in order?  When I do that in
master, emacs-27 and emacs-26 (all with -Q), when at step 2 I type `C-x
b RET A' buffer `a' remains the current buffer and `C-x C-b' shows no
buffer `A'.  Only if I move step 1 of the recipe to after step 2 do I
get the same thing as in your screenshot.  So I agree that the bug I
reported seems to have been fixed, but there appears to be a new bug
which wasn't present in 24.1.50 (which I don't have readily available to
test now): that it's apparently not possible with
read-buffer-completion-ignore-case non-nil to switch to a non-existing
buffer whose name differs from an existing buffer only in case.  If you
confirm, I'll report a new bug.  Or is this considered expected behavior
(and if so, why)?

Steve Berman





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2020-12-07 18:20   ` Stephen Berman
@ 2020-12-08 13:57     ` Lars Ingebrigtsen
  2020-12-08 15:47       ` Eli Zaretskii
  0 siblings, 1 reply; 8+ messages in thread
From: Lars Ingebrigtsen @ 2020-12-08 13:57 UTC (permalink / raw)
  To: Stephen Berman; +Cc: 11338

Stephen Berman <stephen.berman@gmx.net> writes:

> Did you follow the above recipe exactly in order?

No, it's impossible to create the "A" buffer in Emacs now, apparently.

> So I agree that the bug I reported seems to have been fixed, but there
> appears to be a new bug which wasn't present in 24.1.50 (which I don't
> have readily available to test now): that it's apparently not possible
> with read-buffer-completion-ignore-case non-nil to switch to a
> non-existing buffer whose name differs from an existing buffer only in
> case.  If you confirm, I'll report a new bug.

Yup, that's how Emacs behaves now.

> Or is this considered expected behavior (and if so, why)?

I've never used that variable before, and the behaviour was unexpected
to me, but I don't know what people who do use it expect.  It's pretty
odd, though -- the variable is about completion, but Emacs now seems to
interpret it as "Emacs should ignore all case differences in buffer
names (interactively)", which is something slightly different.

So I think opening a new bug report here would make sense, and we can
gather feedback on whether this makes sense or not.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2020-12-08 13:57     ` Lars Ingebrigtsen
@ 2020-12-08 15:47       ` Eli Zaretskii
  2020-12-08 16:21         ` Lars Ingebrigtsen
  0 siblings, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2020-12-08 15:47 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: 11338, stephen.berman

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Date: Tue, 08 Dec 2020 14:57:34 +0100
> Cc: 11338@debbugs.gnu.org
> 
> I've never used that variable before, and the behaviour was unexpected
> to me, but I don't know what people who do use it expect.  It's pretty
> odd, though -- the variable is about completion, but Emacs now seems to
> interpret it as "Emacs should ignore all case differences in buffer
> names (interactively)", which is something slightly different.

RET in the minibuffer invokes completion, doesn't it?





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2020-12-08 15:47       ` Eli Zaretskii
@ 2020-12-08 16:21         ` Lars Ingebrigtsen
  2020-12-08 16:49           ` Eli Zaretskii
  0 siblings, 1 reply; 8+ messages in thread
From: Lars Ingebrigtsen @ 2020-12-08 16:21 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 11338, stephen.berman

Eli Zaretskii <eliz@gnu.org> writes:

>> I've never used that variable before, and the behaviour was unexpected
>> to me, but I don't know what people who do use it expect.  It's pretty
>> odd, though -- the variable is about completion, but Emacs now seems to
>> interpret it as "Emacs should ignore all case differences in buffer
>> names (interactively)", which is something slightly different.
>
> RET in the minibuffer invokes completion, doesn't it?

Not usually.  Try

emacs -Q
C-x b *Me RET

You'll get a buffer called "*Me" without that being completed to
"*Messages*".

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2020-12-08 16:21         ` Lars Ingebrigtsen
@ 2020-12-08 16:49           ` Eli Zaretskii
  2020-12-08 17:25             ` Lars Ingebrigtsen
  0 siblings, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2020-12-08 16:49 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: 11338, stephen.berman

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: stephen.berman@gmx.net,  11338@debbugs.gnu.org
> Date: Tue, 08 Dec 2020 17:21:20 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > RET in the minibuffer invokes completion, doesn't it?
> 
> Not usually.  Try
> 
> emacs -Q
> C-x b *Me RET
> 
> You'll get a buffer called "*Me" without that being completed to
> "*Messages*".

But if I do

  emacs -Q
  C-x b
  C-h c RET

Emacs says that RET runs the command minibuffer-complete-and-exit.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names
  2020-12-08 16:49           ` Eli Zaretskii
@ 2020-12-08 17:25             ` Lars Ingebrigtsen
  0 siblings, 0 replies; 8+ messages in thread
From: Lars Ingebrigtsen @ 2020-12-08 17:25 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 11338, stephen.berman

Eli Zaretskii <eliz@gnu.org> writes:

>> emacs -Q
>> C-x b *Me RET
>> 
>> You'll get a buffer called "*Me" without that being completed to
>> "*Messages*".
>
> But if I do
>
>   emacs -Q
>   C-x b
>   C-h c RET
>
> Emacs says that RET runs the command minibuffer-complete-and-exit.

It does, but...  it doesn't.  :-)  RET is different from TAB RET, at
least in the *Messages* case.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-12-08 17:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-25 15:37 bug#11338: 24.1.50; read-buffer-completion-ignore-case fails on one-character names Stephen Berman
2020-12-07 17:20 ` Lars Ingebrigtsen
2020-12-07 18:20   ` Stephen Berman
2020-12-08 13:57     ` Lars Ingebrigtsen
2020-12-08 15:47       ` Eli Zaretskii
2020-12-08 16:21         ` Lars Ingebrigtsen
2020-12-08 16:49           ` Eli Zaretskii
2020-12-08 17:25             ` Lars Ingebrigtsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).