[PATCH v4 5/5] notmuch-emacs-mua: do not create a frame by default with --client
Tomi Ollila
tomi.ollila at iki.fi
Tue Sep 29 23:13:30 PDT 2015
On Tue, Sep 29 2015, Tomi Ollila <tomi.ollila at iki.fi> wrote:
> On Mon, Sep 28 2015, David Bremner <david at tethera.net> wrote:
>
>> Tomi Ollila <tomi.ollila at iki.fi> writes:
>>
>>
>>> if [ -n "$AUTO_DAEMON" -a -z "$CREATE_FRAME" ]; then
>>> echo "$0: --auto-daemon is only applicable with --create-frame." >&2
>>> exit 1
>>> fi
>>>
>>> without this one may execute ./notmuch-emacs-mua --client --auto-daemon
>>> which yields starting emacs in daemon mode (in this example it is expected
>>> emacs is not running; otherwise --auto-daemon has no use in this example)
>>> -- but no ui to that newly-running emacs is provided. Similar behaviour
>>> can be observed by the following
>>>
>>
>> I think what you propose is fine for a followup patch; note that the
>> scenario you worry about also needs --client to be a problem. Apparently
>> nothing is uncontroversial here, but if auto-daemon only works with
>> create frame, then perhaps the followup would be to have auto-daemon
>> imply create-frame
>
> Without --client --auto-daemon is no-op (as it is no-op in case emacs
> server is already running). I am (only) concerned about user experience
> when one runs --client --auto-daemon and user gets nothing (i.e. emacs
> server is running in the background w/o any clients connected to it.
>
> We could make --auto-daemon imply --create-frame, but then
>
> ./notmuch-emacs-mua --auto-daemon (i.e. w/o --client) starts new mail
> compose window to separate frame (even though user did not request
> it w/ --create-frame)
Hmm, a few more tests. it now looks like in case the command line is
./notmuch-emacs-mua --client --auto-daemon
Then the --create-frame should be implied. w/o --client --create-frame
would ... well, create that (only) emacs frame anyways... oh, the
combinations; for reference I just paste from my history...
1 07:57 0:01 ccd notmuch
2 07:57 0:06 git pull --rebase
3 07:57 0:01 git log
4 07:57 0:04 tig
5 07:58 0:10 ./notmuch-emacs-mua --auto-daemon
6 07:58 0:00 ps ax
8 07:58 0:00 emacs &
9 07:58 0:07 ./notmuch-emacs-mua --auto-daemon
10 07:59 0:01 ./notmuch-emacs-mua --client --auto-daemon
12 08:01 0:03 ./notmuch-emacs-mua --auto-daemon
13 08:02 0:00 ps ax
14 08:02 0:00 ls /tmp/emacs1001
15 08:02 0:00 ./notmuch-emacs-mua -nw --auto-daemon
16 08:02 0:04 DISPLAY= ./notmuch-emacs-mua --auto-daemon
17 08:02 0:05 tig
18 08:03 0:02 DISPLAY= ./notmuch-emacs-mua --auto-daemon
19 08:04 0:01 DISPLAY= ./notmuch-emacs-mua --client --auto-daemon
20 08:04 0:00 ps ax
21 08:04 0:00 kill 1860
22 08:04 0:00 ps ax
23 08:06 0:00 ./notmuch-emacs-mua --client --auto-daemon
24 08:06 0:00 ps ax
25 08:06 0:00 kill 1875
26 08:06 0:00 ./notmuch-emacs-mua --client --auto-daemon
27 08:06 0:00 ps ax
28 08:06 0:00 kill 1926
29 08:06 0:06 ./notmuch-emacs-mua --client --auto-daemon --create-frame
30 08:07 0:28 ./notmuch-emacs-mua --auto-daemon --create-frame
31 08:08 0:00 ps x
32 08:08 0:00 h
So. I'm going w/ the suggestion making --auto-daemon imply --create-frame
>
> (actually I already did the 'imply' option (easy, one line in script,
> another in namual), just that testing it gave this thought...
>
> ... therefore I'd rather make ./notmuch-emacs-mua --auto-daemon
> spit an error and exit -- but I can be convinced otherwise :)
>
> Tomi
More information about the notmuch
mailing list