bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#11892: 24.1; Regression: *Completions* disappears as soon as it is d


From: Drew Adams
Subject: bug#11892: 24.1; Regression: *Completions* disappears as soon as it is displayed
Date: Mon, 9 Jul 2012 10:34:44 -0700

The bug occurs with my setup.  Sorry, but I do not have a recipe from
emacs -Q.
 
When I use TAB in a shell buffer, *Completions* is flash-displayed (in a
separate frame in my setup), but that frame is removed as soon as it is
shown, making completion impossible (useless).
 
This does not happen in Emacs 23.3 or prior.
 
I tried to track this down using the debugger, but that is very
difficult because using the debugger interferes - the frame does not
disappear when I walk through the code.  (The code uses
post-command-hook and such, which perhaps affects this.)
 
I tried adding calls to `message' in the code, to see what was
happening.  I was able to determine that `minibuffer-hide-completions'
was called (inappropriately) from `completion-in-region--postch:
 
Debugger entered--entering a function:
  minibuffer-hide-completions()
* completion-in-region-mode(-1)
  completion-in-region--postch()
 
And I was able to track it down to this place, in
`completion-in-region-mode':
 
  (if (null completion-in-region-mode)
      (progn
        (message "buf: %S" (window-buffer)) ; <============
        (unless (equal "*Completions*" (buffer-name (window-buffer)))
          (minibuffer-hide-completions)))
 
Here I see that (window-buffer) is in fact #<buffer  *Minibuf-0*>.
 
FWIW, my dedicated frame for *Completions* has its input focus
redirected to my standalone minibuffer frame.  Dunno whether that is
involved here.
 
Hope this helps and this can be fixed soon.  Thx.
 
Note: I would have tested with a more recent build, but I cannot use
recent builds because of outstanding Emacs bugs.  (I'm hoping for a new
Windows build today that might make it usable.)

----
P.S. FWIW, it is a _bear_ to use the debugger with code that calls
`pcase'.  It's like heading off down the Silk Road for a couple-month
journey, even if you guess correctly where you can hit `c' to expand
macros etc. ;-)
----
 
In GNU Emacs 24.1.1 (i386-mingw-nt5.1.2600)
 of 2012-06-10 on MARVIN
Windowing system distributor `Microsoft Corp.', version 5.1.2600
Configured using:
 `configure --with-gcc (4.6) --cflags
 -ID:/devel/emacs/libs/libXpm-3.5.8/include
 -ID:/devel/emacs/libs/libXpm-3.5.8/src
 -ID:/devel/emacs/libs/libpng-dev_1.4.3-1/include
 -ID:/devel/emacs/libs/zlib-dev_1.2.5-2/include
 -ID:/devel/emacs/libs/giflib-4.1.4-1/include
 -ID:/devel/emacs/libs/jpeg-6b-4/include
 -ID:/devel/emacs/libs/tiff-3.8.2-1/include
 -ID:/devel/emacs/libs/gnutls-3.0.9/include'
 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]