all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Juri Linkov <juri@linkov.net>
To: Visuwesh <visuweshm@gmail.com>
Cc: 58728@debbugs.gnu.org
Subject: bug#58728: 29.0.50; Minibuffer does not follow tabs
Date: Fri, 28 Oct 2022 09:40:46 +0300	[thread overview]
Message-ID: <86fsf81mdt.fsf@mail.linkov.net> (raw)
In-Reply-To: <87tu3p2vog.fsf@gmail.com> (Visuwesh's message of "Thu, 27 Oct 2022 19:52:23 +0530")

>>     1. emacs -Q
>>     2. M-: (setq wc (current-window-configuration))
>>     3. M-x
>>     4. M-: (set-window-configuration wc)
>>     5. ???
>>     6. The minibuffer with its window is restored and reactivated.
>>
>> Maybe something like what frameset-to-register/jump-to-register does,
>> that restores the minibuffer, but doesn't reactivate it.
>
> Without putting much effort, I ended up with the following expression
> after a quick C-h d for "minibuffer"
>
>     (set-window-buffer (minibuffer-window) (get-buffer (format " *Minibuf-%d*" (minibuffer-depth))))

This works only for the recent minibuffer, but not for recursive minibuffers
with arbitrary depths, such as

    1. emacs -Q
    2. M-: (setq wc (current-window-configuration))
    3. C-x C-f
    4. M-x
    5. M-: (set-window-configuration wc)
    6. M-: (set-window-buffer (minibuffer-window) (get-buffer (format " *Minibuf-%d*" (minibuffer-depth))))
    7. C-g

The first minibuffer is not displayed.  But OTOH, window-state
handles it correctly, because it just doesn't mess with minibuffers:

    1. emacs -Q
    2. M-: (setq ws (window-state-get (frame-root-window) t))
    3. C-x C-f
    4. M-x
    5. M-: (window-state-put ws (frame-root-window) 'safe)
    6. C-g

> I am not sure how well this will work with minibuffer-only-frames and
> such though.  We need to select the minibuffer when switching the tab if
> the minibuffer was selected prior to the switch too, but that's a matter
> of (select-window (minibuffer-window)) I think.

For making it more like minibuffer-only-frames, there are more questions.
After switching to another frame and exiting the minibuffer, it switches
back to the original frame to execute the command, e.g.:

    1. emacs -Q
    2. C-x 5 5 C-h i
    3. M-x
    4. C-x 5 o
    5. C-x o   (need to switch to the minibuffer because switching frames
                doesn't select the minibuffer, maybe a bug?)
    6. count-words RET

The command 'count-words' is executed in the original frame.
What should tab-bar.el do?  Select the original tab before
executing the minibuffer command?





  reply	other threads:[~2022-10-28  6:40 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-23  3:36 bug#58728: 29.0.50; Minibuffer does not follow tabs Visuwesh
2022-10-24 18:54 ` Sean Whitton
2022-10-25 19:17   ` Juri Linkov
2022-10-25 19:14 ` Juri Linkov
2022-10-26  1:38   ` Visuwesh
2022-10-27  7:52     ` Juri Linkov
2022-10-27 14:22       ` Visuwesh
2022-10-28  6:40         ` Juri Linkov [this message]
2022-10-28  7:20           ` Juri Linkov
2022-10-29 16:17             ` Visuwesh
2022-10-30  7:34               ` Juri Linkov
2022-10-30 13:50                 ` Visuwesh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86fsf81mdt.fsf@mail.linkov.net \
    --to=juri@linkov.net \
    --cc=58728@debbugs.gnu.org \
    --cc=visuweshm@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.