[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: completing-read does not display options in new frames
From: |
Platon Pronko |
Subject: |
Re: completing-read does not display options in new frames |
Date: |
Mon, 1 May 2023 13:52:10 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1 |
On 2023-05-01 11:52, Ma Gelan wrote:
Thank you for trying to help.
I feel that I did not explain my issue well.
I tried this: emacs -Q -l test.el
With test.el having the code.
What I get is two emacs frames. The main frame is on *scratch* buffer,
and the other frame is just a miniframe. If I focus the miniframe I get
the 'Select:' prompt, no options are shown. I expect to see a list of
vertical options but they only show if I press tab. In this case they
show in the other window, because that is the vanilla behavior in emacs,
but In my version I have the completion directly in the minibuffer. In
both cases, my configuration and emacs -Q, the options do not show right
away, which means that I have to actively press Tab to show them.
My question is: How do I show the options without having to press Tab?
I would like to see them listed as soon as the minibuffer shows up.
This happens in the same frame in my config, but it does not happen if
I create a new frame.
Here is more info:
OS: Arch Linux
Emacs: 28.2
WM: Sway 1.8.1
On my machine the completions are never shown right away, both in new frame an
in current frame.
Here's the code I used to test completions in current frame:
(defun test-this-frame-completing-read ()
(interactive)
(completing-read "Select: " '("first" "second" "third")))
;; invoked via M-x test-this-frame-completing-read
My version is a bit newer (30.0.50, a57a8b75f50b), so there might be some
changes between versions that resulted in options not being shown immediately.
Maybe you can try using Ivy package? It provides an improved completion
backend. I've tested it with the following code, works for me (completions are
shown immediately):
(defun test-miniframe-completing-read ()
"Test miniframe completing read"
(interactive)
(with-selected-frame (make-frame '((name . "emacs-miniframe")
(minibuffer . only)
(width . 120)
(height . 33)))
(unwind-protect
(let ((choices '("first" "second" "third")))
(completing-read "Select: " choices))
(delete-frame))))
(require 'package)
(package-initialize)
(ivy-mode 1)
;; M-x test-miniframe-completing-read
- Re: completing-read does not display options in new frames,
Platon Pronko <=