From: Eric Abrahamsen <eric@ericabrahamsen.net>
To: ding@gnus.org
Subject: Re: Does Gnus automatically run 'notmuch new' if configured?
Date: Fri, 25 Sep 2020 11:45:52 -0700 [thread overview]
Message-ID: <87mu1ditjz.fsf@ericabrahamsen.net> (raw)
In-Reply-To: <m28scxn3zf.fsf@codeisgreat.org>
Pankaj Jangid <pankaj@codeisgreat.org> writes:
> On Fri, Sep 25 2020, Eric Abrahamsen wrote:
>
>> Ahem, I may have led you astray with `async-shell-command', which is
>> mostly meant to be called interactively -- in which case you usually
>> want to see the output. In lisp code that runs in the background,
>> you're better off using `start-process', where you can tell it not to
>> keep the output:
>
> I had explored a little bit of `start-process` and `call-process` when I
> was reading help on `async-shell-comman`. But then I thought these are
> low level methods and I don't need that much control.
>
>> (start-process "unnecessary label" nil "/path/to/notmuch" '("new"))
>
> This is nice. I am using this now. Just a correction. Last argument is
> not list. List was giving error. I am using below code,
>
> (start-process "notmuch" "*Notmuch*" "notmuch" "new")
Oops, sorry!
[...]
>> which hook is best for the purpose? Currently I am using
>> `gnus-after-getting-new-news-hook`. But that is run only when I press
>> `g` (gnus-group-get-new-news). It seems that the hook is not invoked
>> when I start Gnus.
>
> Hm. That seems like a bug to me - I would expect it to fire after
> getting new news, regardless of whether it was fetched by startup or by
> explicit action.
>
> You could advice M-x gnus to run notmuch after startup:
>
> (defadvice gnus (after gnus-notmuch-new activate)
> (your-run-notmuch-new-function))
>
> in addition to the hook.
>
> But it still feels wrong that the hook doesn't fire - doesn't it?
It is weird, but the code is very clear: startup runs
`gnus-get-unread-articles' directly, and the hook isn't run there. "g"
in the group buffer runs `gnus-group-get-new-news', which first calls
`gnus-get-unread-articles', then runs the hook.
You could certainly argue that that's weird, but that's how it currently
works.
Rather than an advice, I would just add your function to the
`gnus-startup-hook', as well.
Eric
next prev parent reply other threads:[~2020-09-25 18:46 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-24 8:32 Pankaj Jangid
2020-09-24 16:42 ` Eric Abrahamsen
2020-09-24 17:55 ` Adam Sjøgren
2020-09-25 4:00 ` Pankaj Jangid
2020-09-25 6:05 ` Eric Abrahamsen
2020-09-25 7:51 ` Pankaj Jangid
2020-09-25 8:09 ` Eric S Fraga
2020-09-25 9:31 ` Adam Sjøgren
2020-09-25 14:44 ` Pankaj Jangid
2020-09-25 16:31 ` Eric Abrahamsen
2020-09-25 17:47 ` Pankaj Jangid
2020-09-25 18:16 ` Adam Sjøgren
2020-09-25 18:45 ` Eric Abrahamsen [this message]
2020-09-25 18:52 ` Adam Sjøgren
2020-09-26 1:29 ` Pankaj Jangid
2020-09-26 11:48 ` Adam Sjøgren
2020-09-26 17:08 ` Pankaj Jangid
2020-09-25 18:25 ` Adam Sjøgren
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=87mu1ditjz.fsf@ericabrahamsen.net \
--to=eric@ericabrahamsen.net \
--cc=ding@gnus.org \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).