[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13697: A way to tell if Emacs can interact with the user
From: |
Noam Postavsky |
Subject: |
bug#13697: A way to tell if Emacs can interact with the user |
Date: |
Wed, 03 Apr 2019 18:56:26 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1.91 (gnu/linux) |
Trey Ethan Harris <treyharris@gmail.com> writes:
> As described in the Emacs Stack Exchange question,
> https://emacs.stackexchange.com/questions/32692/daemon-mode-defer-interactive-prompts-on-startup/
> , this bug seems to be applicable and should be reopened.
[I've restored the original bug title as the subject, since "reopened"
is a bit lacking in context. And by the way, this bug was never closed
in the first place]
> But Emacs _could,_ I think, provide a 99% solution:
>
> 1. Intercept interaction functions like `yes-or-no-p` and password prompts
> running in asynchronous threads, allowing them to block their thread
> 2. Automatically convert interaction in other threads into a warning failure
> 3. Continue execution of other threads so that the server can start
> 4. Upon first connection with an emacsclient, display the warnings
> (presumably by popping up *Warnings*) so that the user is aware of what may
> have failed in initialization due to inability to interact
> 5. Take the user through the queued blocked threads so they can complete
> the threaded interactions.
Hmm, I'm not sure where all these threads you're talking about will come
from. Emacs is still mostly single-threaded, and we still have stuff
like Bug#25214 "Interacting with user from threads other than the
primary" open.