[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. > > This allows taking better advantage of the "notmuch new" hooks from emacs > without intermediate scripts. > > Signed-off-by: Jani Nikula > > --- > > v3: only documentation changes suggested by Austin and Dmitry. > --- > emacs/notmuch.el | 35 +-- > 1 files changed, 25 insertions(+), 10 deletions(-) > > diff --git a/emacs/notmuch.el b/emacs/notmuch.el > index 8936149..675a110 100644 > --- a/emacs/notmuch.el > +++ b/emacs/notmuch.el > @@ -965,28 +965,43 @@ same relative position within the new buffer." > (notmuch-search query oldest-first target-thread target-line > continuation) > (goto-char (point-min > > -(defcustom notmuch-poll-script "" > +(defcustom notmuch-poll-script nil >"An external script to incorporate new mail into the notmuch database. > > -If this variable is non empty, then it should name a script to be > -invoked by `notmuch-search-poll-and-refresh-view' and > +This variable controls the action invoked by > +`notmuch-search-poll-and-refresh-view' and > `notmuch-hello-poll-and-update' (each have a default keybinding > -of 'G'). The script could do any of the following depending on > +of 'G') to incorporate new mail into the notmuch database. > + > +If set to nil (the default), new mail is processed by invoking > +\"notmuch new\". Otherwise, this should be set to a string that > +gives the name of an external script that processes new mail. If > +set to the empty string, no command will be run. > + > +The external script could do any of the following depending on > the user's needs: > > 1. Invoke a program to transfer mail to the local mail store > 2. Invoke \"notmuch new\" to incorporate the new mail > -3. Invoke one or more \"notmuch tag\" commands to classify the mail" > - :type 'string > +3. Invoke one or more \"notmuch tag\" commands to classify the mail > + > +Note that the recommended way of achieving the same is using > +\"notmuch new\" hooks." > + :type '(choice (const :tag "notmuch new" nil) > + (const :tag "Disabled" "") > + (string :tag "Custom script")) >:group 'notmuch) > > (defun notmuch-poll () > - "Run external script to import mail. > + "Run \"notmuch new\" or an external script to import mail. > > -Invokes `notmuch-poll-script' if it is not set to an empty string." > +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing > +depending on the value of `notmuch-poll-script'." >(interactive) > - (if (not (string= notmuch-poll-script "")) > - (call-process notmuch-poll-script nil nil))) > + (if (stringp notmuch-poll-script) > + (if (not (string= notmuch-poll-script "")) > + (call-process notmuch-poll-script nil nil)) > +(call-process notmuch-command nil nil nil "new"))) Since it seems to be bikeshedding-season: When `(if (not's don't have an `else'-part, use `unless' instead ? Patch follows. > > (defun notmuch-search-poll-and-refresh-view () >"Invoke `notmuch-poll' to import mail, then refresh the current view." > -- > 1.7.5.4 > > ___ > notmuch mailing list > notmuch at notmuchmail.org > http://notmuchmail.org/mailman/listinfo/notmuch Nicely complements the new hooks (for which thanks) ! Peace -- Pieter
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. > > This allows taking better advantage of the "notmuch new" hooks from emacs > without intermediate scripts. > > Signed-off-by: Jani Nikula > > --- > > v3: only documentation changes suggested by Austin and Dmitry. > --- > emacs/notmuch.el | 35 +-- > 1 files changed, 25 insertions(+), 10 deletions(-) > > diff --git a/emacs/notmuch.el b/emacs/notmuch.el > index 8936149..675a110 100644 > --- a/emacs/notmuch.el > +++ b/emacs/notmuch.el > @@ -965,28 +965,43 @@ same relative position within the new buffer." > (notmuch-search query oldest-first target-thread target-line > continuation) > (goto-char (point-min > > -(defcustom notmuch-poll-script "" > +(defcustom notmuch-poll-script nil >"An external script to incorporate new mail into the notmuch database. > > -If this variable is non empty, then it should name a script to be > -invoked by `notmuch-search-poll-and-refresh-view' and > +This variable controls the action invoked by > +`notmuch-search-poll-and-refresh-view' and > `notmuch-hello-poll-and-update' (each have a default keybinding > -of 'G'). The script could do any of the following depending on > +of 'G') to incorporate new mail into the notmuch database. > + > +If set to nil (the default), new mail is processed by invoking > +\"notmuch new\". Otherwise, this should be set to a string that > +gives the name of an external script that processes new mail. If > +set to the empty string, no command will be run. > + > +The external script could do any of the following depending on > the user's needs: > > 1. Invoke a program to transfer mail to the local mail store > 2. Invoke \"notmuch new\" to incorporate the new mail > -3. Invoke one or more \"notmuch tag\" commands to classify the mail" > - :type 'string > +3. Invoke one or more \"notmuch tag\" commands to classify the mail > + > +Note that the recommended way of achieving the same is using > +\"notmuch new\" hooks." > + :type '(choice (const :tag "notmuch new" nil) > + (const :tag "Disabled" "") > + (string :tag "Custom script")) >:group 'notmuch) > > (defun notmuch-poll () > - "Run external script to import mail. > + "Run \"notmuch new\" or an external script to import mail. > > -Invokes `notmuch-poll-script' if it is not set to an empty string." > +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing > +depending on the value of `notmuch-poll-script'." >(interactive) > - (if (not (string= notmuch-poll-script "")) > - (call-process notmuch-poll-script nil nil))) > + (if (stringp notmuch-poll-script) > + (if (not (string= notmuch-poll-script "")) > + (call-process notmuch-poll-script nil nil)) > +(call-process notmuch-command nil nil nil "new"))) Since it seems to be bikeshedding-season: When `(if (not's don't have an `else'-part, use `unless' instead ? Patch follows. > > (defun notmuch-search-poll-and-refresh-view () >"Invoke `notmuch-poll' to import mail, then refresh the current view." > -- > 1.7.5.4 > > ___ > notmuch mailing list > notmuch@notmuchmail.org > http://notmuchmail.org/mailman/listinfo/notmuch Nicely complements the new hooks (for which thanks) ! Peace -- Pieter ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. pushed. d
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. pushed. d ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 16:24:51 -0500, Austin Clements wrote: > Quoth Jani Nikula on Dec 12 at 11:13 pm: > > On Tue, 13 Dec 2011 00:53:05 +0400, Dmitry Kurochkin > gmail.com> wrote: > > > On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula > > > wrote: > > > > +If set to nil (the default), new mail is processed by invoking > > > > +\"notmuch new\". Otherwise, this should be set to a string that > > > > +gives the name of an external script that processes new mail. If > > > > +set to the empty string, no command will be run. > > > > > > I think this should be "an empty string". But I may be mistaking. > > > > Shameless copy paste from a native speaker, who am I to argue? :) > > Austin? > > Either way is grammatically correct. Really, this is a philosophical > question. Can two empty strings have different identities? Or is > there only one empty string in the universe? > > (eq "" "") => t > (eq "" (string)) => t > (eq "" (make-string 0 ?a)) => t > (eq "" (substring "a" 1)) => t > > It would appear Elisp is squarely in the "there is one empty string" > camp, so "the empty string" would be more correct. Fine with me then :) Regards, Dmitry
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. > > This allows taking better advantage of the "notmuch new" hooks from emacs > without intermediate scripts. > > Signed-off-by: Jani Nikula > > --- > > v3: only documentation changes suggested by Austin and Dmitry. > --- > emacs/notmuch.el | 35 +-- > 1 files changed, 25 insertions(+), 10 deletions(-) > > diff --git a/emacs/notmuch.el b/emacs/notmuch.el > index 8936149..675a110 100644 > --- a/emacs/notmuch.el > +++ b/emacs/notmuch.el > @@ -965,28 +965,43 @@ same relative position within the new buffer." > (notmuch-search query oldest-first target-thread target-line > continuation) > (goto-char (point-min > > -(defcustom notmuch-poll-script "" > +(defcustom notmuch-poll-script nil >"An external script to incorporate new mail into the notmuch database. > > -If this variable is non empty, then it should name a script to be > -invoked by `notmuch-search-poll-and-refresh-view' and > +This variable controls the action invoked by > +`notmuch-search-poll-and-refresh-view' and > `notmuch-hello-poll-and-update' (each have a default keybinding > -of 'G'). The script could do any of the following depending on > +of 'G') to incorporate new mail into the notmuch database. > + > +If set to nil (the default), new mail is processed by invoking > +\"notmuch new\". Otherwise, this should be set to a string that > +gives the name of an external script that processes new mail. If > +set to the empty string, no command will be run. I think this should be "an empty string". But I may be mistaking. Regards, Dmitry > + > +The external script could do any of the following depending on > the user's needs: > > 1. Invoke a program to transfer mail to the local mail store > 2. Invoke \"notmuch new\" to incorporate the new mail > -3. Invoke one or more \"notmuch tag\" commands to classify the mail" > - :type 'string > +3. Invoke one or more \"notmuch tag\" commands to classify the mail > + > +Note that the recommended way of achieving the same is using > +\"notmuch new\" hooks." > + :type '(choice (const :tag "notmuch new" nil) > + (const :tag "Disabled" "") > + (string :tag "Custom script")) >:group 'notmuch) > > (defun notmuch-poll () > - "Run external script to import mail. > + "Run \"notmuch new\" or an external script to import mail. > > -Invokes `notmuch-poll-script' if it is not set to an empty string." > +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing > +depending on the value of `notmuch-poll-script'." >(interactive) > - (if (not (string= notmuch-poll-script "")) > - (call-process notmuch-poll-script nil nil))) > + (if (stringp notmuch-poll-script) > + (if (not (string= notmuch-poll-script "")) > + (call-process notmuch-poll-script nil nil)) > +(call-process notmuch-command nil nil nil "new"))) > > (defun notmuch-search-poll-and-refresh-view () >"Invoke `notmuch-poll' to import mail, then refresh the current view." > -- > 1.7.5.4 > > ___ > notmuch mailing list > notmuch at notmuchmail.org > http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Tue, 13 Dec 2011 00:53:05 +0400, Dmitry Kurochkin wrote: > On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > > Support nil value for notmuch-poll-script to run "notmuch new" instead of > > an external script, and make this the new default. "notmuch new" is run > > using the configured notmuch-command. > > > > This allows taking better advantage of the "notmuch new" hooks from emacs > > without intermediate scripts. > > > > Signed-off-by: Jani Nikula > > > > --- > > > > v3: only documentation changes suggested by Austin and Dmitry. > > --- > > emacs/notmuch.el | 35 +-- > > 1 files changed, 25 insertions(+), 10 deletions(-) > > > > diff --git a/emacs/notmuch.el b/emacs/notmuch.el > > index 8936149..675a110 100644 > > --- a/emacs/notmuch.el > > +++ b/emacs/notmuch.el > > @@ -965,28 +965,43 @@ same relative position within the new buffer." > > (notmuch-search query oldest-first target-thread target-line > > continuation) > > (goto-char (point-min > > > > -(defcustom notmuch-poll-script "" > > +(defcustom notmuch-poll-script nil > >"An external script to incorporate new mail into the notmuch database. > > > > -If this variable is non empty, then it should name a script to be > > -invoked by `notmuch-search-poll-and-refresh-view' and > > +This variable controls the action invoked by > > +`notmuch-search-poll-and-refresh-view' and > > `notmuch-hello-poll-and-update' (each have a default keybinding > > -of 'G'). The script could do any of the following depending on > > +of 'G') to incorporate new mail into the notmuch database. > > + > > +If set to nil (the default), new mail is processed by invoking > > +\"notmuch new\". Otherwise, this should be set to a string that > > +gives the name of an external script that processes new mail. If > > +set to the empty string, no command will be run. > > I think this should be "an empty string". But I may be mistaking. Shameless copy paste from a native speaker, who am I to argue? :) Austin? Jani. > > Regards, > Dmitry > > > + > > +The external script could do any of the following depending on > > the user's needs: > > > > 1. Invoke a program to transfer mail to the local mail store > > 2. Invoke \"notmuch new\" to incorporate the new mail > > -3. Invoke one or more \"notmuch tag\" commands to classify the mail" > > - :type 'string > > +3. Invoke one or more \"notmuch tag\" commands to classify the mail > > + > > +Note that the recommended way of achieving the same is using > > +\"notmuch new\" hooks." > > + :type '(choice (const :tag "notmuch new" nil) > > +(const :tag "Disabled" "") > > +(string :tag "Custom script")) > >:group 'notmuch) > > > > (defun notmuch-poll () > > - "Run external script to import mail. > > + "Run \"notmuch new\" or an external script to import mail. > > > > -Invokes `notmuch-poll-script' if it is not set to an empty string." > > +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing > > +depending on the value of `notmuch-poll-script'." > >(interactive) > > - (if (not (string= notmuch-poll-script "")) > > - (call-process notmuch-poll-script nil nil))) > > + (if (stringp notmuch-poll-script) > > + (if (not (string= notmuch-poll-script "")) > > + (call-process notmuch-poll-script nil nil)) > > +(call-process notmuch-command nil nil nil "new"))) > > > > (defun notmuch-search-poll-and-refresh-view () > >"Invoke `notmuch-poll' to import mail, then refresh the current view." > > -- > > 1.7.5.4 > > > > ___ > > notmuch mailing list > > notmuch at notmuchmail.org > > http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
Support nil value for notmuch-poll-script to run "notmuch new" instead of an external script, and make this the new default. "notmuch new" is run using the configured notmuch-command. This allows taking better advantage of the "notmuch new" hooks from emacs without intermediate scripts. Signed-off-by: Jani Nikula --- v3: only documentation changes suggested by Austin and Dmitry. --- emacs/notmuch.el | 35 +-- 1 files changed, 25 insertions(+), 10 deletions(-) diff --git a/emacs/notmuch.el b/emacs/notmuch.el index 8936149..675a110 100644 --- a/emacs/notmuch.el +++ b/emacs/notmuch.el @@ -965,28 +965,43 @@ same relative position within the new buffer." (notmuch-search query oldest-first target-thread target-line continuation) (goto-char (point-min -(defcustom notmuch-poll-script "" +(defcustom notmuch-poll-script nil "An external script to incorporate new mail into the notmuch database. -If this variable is non empty, then it should name a script to be -invoked by `notmuch-search-poll-and-refresh-view' and +This variable controls the action invoked by +`notmuch-search-poll-and-refresh-view' and `notmuch-hello-poll-and-update' (each have a default keybinding -of 'G'). The script could do any of the following depending on +of 'G') to incorporate new mail into the notmuch database. + +If set to nil (the default), new mail is processed by invoking +\"notmuch new\". Otherwise, this should be set to a string that +gives the name of an external script that processes new mail. If +set to the empty string, no command will be run. + +The external script could do any of the following depending on the user's needs: 1. Invoke a program to transfer mail to the local mail store 2. Invoke \"notmuch new\" to incorporate the new mail -3. Invoke one or more \"notmuch tag\" commands to classify the mail" - :type 'string +3. Invoke one or more \"notmuch tag\" commands to classify the mail + +Note that the recommended way of achieving the same is using +\"notmuch new\" hooks." + :type '(choice (const :tag "notmuch new" nil) +(const :tag "Disabled" "") +(string :tag "Custom script")) :group 'notmuch) (defun notmuch-poll () - "Run external script to import mail. + "Run \"notmuch new\" or an external script to import mail. -Invokes `notmuch-poll-script' if it is not set to an empty string." +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing +depending on the value of `notmuch-poll-script'." (interactive) - (if (not (string= notmuch-poll-script "")) - (call-process notmuch-poll-script nil nil))) + (if (stringp notmuch-poll-script) + (if (not (string= notmuch-poll-script "")) + (call-process notmuch-poll-script nil nil)) +(call-process notmuch-command nil nil nil "new"))) (defun notmuch-search-poll-and-refresh-view () "Invoke `notmuch-poll' to import mail, then refresh the current view." -- 1.7.5.4
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
Quoth Jani Nikula on Dec 12 at 11:13 pm: > On Tue, 13 Dec 2011 00:53:05 +0400, Dmitry Kurochkin gmail.com> wrote: > > On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > > > +If set to nil (the default), new mail is processed by invoking > > > +\"notmuch new\". Otherwise, this should be set to a string that > > > +gives the name of an external script that processes new mail. If > > > +set to the empty string, no command will be run. > > > > I think this should be "an empty string". But I may be mistaking. > > Shameless copy paste from a native speaker, who am I to argue? :) > Austin? Either way is grammatically correct. Really, this is a philosophical question. Can two empty strings have different identities? Or is there only one empty string in the universe? (eq "" "") => t (eq "" (string)) => t (eq "" (make-string 0 ?a)) => t (eq "" (substring "a" 1)) => t It would appear Elisp is squarely in the "there is one empty string" camp, so "the empty string" would be more correct.
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
LGTM. Quoth Jani Nikula on Dec 12 at 10:50 pm: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. > > This allows taking better advantage of the "notmuch new" hooks from emacs > without intermediate scripts. > > Signed-off-by: Jani Nikula > > --- > > v3: only documentation changes suggested by Austin and Dmitry.
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 16:24:51 -0500, Austin Clements wrote: > Quoth Jani Nikula on Dec 12 at 11:13 pm: > > On Tue, 13 Dec 2011 00:53:05 +0400, Dmitry Kurochkin > > wrote: > > > On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > > > > +If set to nil (the default), new mail is processed by invoking > > > > +\"notmuch new\". Otherwise, this should be set to a string that > > > > +gives the name of an external script that processes new mail. If > > > > +set to the empty string, no command will be run. > > > > > > I think this should be "an empty string". But I may be mistaking. > > > > Shameless copy paste from a native speaker, who am I to argue? :) > > Austin? > > Either way is grammatically correct. Really, this is a philosophical > question. Can two empty strings have different identities? Or is > there only one empty string in the universe? > > (eq "" "") => t > (eq "" (string)) => t > (eq "" (make-string 0 ?a)) => t > (eq "" (substring "a" 1)) => t > > It would appear Elisp is squarely in the "there is one empty string" > camp, so "the empty string" would be more correct. Fine with me then :) Regards, Dmitry ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
Quoth Jani Nikula on Dec 12 at 11:13 pm: > On Tue, 13 Dec 2011 00:53:05 +0400, Dmitry Kurochkin > wrote: > > On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > > > +If set to nil (the default), new mail is processed by invoking > > > +\"notmuch new\". Otherwise, this should be set to a string that > > > +gives the name of an external script that processes new mail. If > > > +set to the empty string, no command will be run. > > > > I think this should be "an empty string". But I may be mistaking. > > Shameless copy paste from a native speaker, who am I to argue? :) > Austin? Either way is grammatically correct. Really, this is a philosophical question. Can two empty strings have different identities? Or is there only one empty string in the universe? (eq "" "") => t (eq "" (string)) => t (eq "" (make-string 0 ?a)) => t (eq "" (substring "a" 1)) => t It would appear Elisp is squarely in the "there is one empty string" camp, so "the empty string" would be more correct. ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Tue, 13 Dec 2011 00:53:05 +0400, Dmitry Kurochkin wrote: > On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > > Support nil value for notmuch-poll-script to run "notmuch new" instead of > > an external script, and make this the new default. "notmuch new" is run > > using the configured notmuch-command. > > > > This allows taking better advantage of the "notmuch new" hooks from emacs > > without intermediate scripts. > > > > Signed-off-by: Jani Nikula > > > > --- > > > > v3: only documentation changes suggested by Austin and Dmitry. > > --- > > emacs/notmuch.el | 35 +-- > > 1 files changed, 25 insertions(+), 10 deletions(-) > > > > diff --git a/emacs/notmuch.el b/emacs/notmuch.el > > index 8936149..675a110 100644 > > --- a/emacs/notmuch.el > > +++ b/emacs/notmuch.el > > @@ -965,28 +965,43 @@ same relative position within the new buffer." > > (notmuch-search query oldest-first target-thread target-line > > continuation) > > (goto-char (point-min > > > > -(defcustom notmuch-poll-script "" > > +(defcustom notmuch-poll-script nil > >"An external script to incorporate new mail into the notmuch database. > > > > -If this variable is non empty, then it should name a script to be > > -invoked by `notmuch-search-poll-and-refresh-view' and > > +This variable controls the action invoked by > > +`notmuch-search-poll-and-refresh-view' and > > `notmuch-hello-poll-and-update' (each have a default keybinding > > -of 'G'). The script could do any of the following depending on > > +of 'G') to incorporate new mail into the notmuch database. > > + > > +If set to nil (the default), new mail is processed by invoking > > +\"notmuch new\". Otherwise, this should be set to a string that > > +gives the name of an external script that processes new mail. If > > +set to the empty string, no command will be run. > > I think this should be "an empty string". But I may be mistaking. Shameless copy paste from a native speaker, who am I to argue? :) Austin? Jani. > > Regards, > Dmitry > > > + > > +The external script could do any of the following depending on > > the user's needs: > > > > 1. Invoke a program to transfer mail to the local mail store > > 2. Invoke \"notmuch new\" to incorporate the new mail > > -3. Invoke one or more \"notmuch tag\" commands to classify the mail" > > - :type 'string > > +3. Invoke one or more \"notmuch tag\" commands to classify the mail > > + > > +Note that the recommended way of achieving the same is using > > +\"notmuch new\" hooks." > > + :type '(choice (const :tag "notmuch new" nil) > > +(const :tag "Disabled" "") > > +(string :tag "Custom script")) > >:group 'notmuch) > > > > (defun notmuch-poll () > > - "Run external script to import mail. > > + "Run \"notmuch new\" or an external script to import mail. > > > > -Invokes `notmuch-poll-script' if it is not set to an empty string." > > +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing > > +depending on the value of `notmuch-poll-script'." > >(interactive) > > - (if (not (string= notmuch-poll-script "")) > > - (call-process notmuch-poll-script nil nil))) > > + (if (stringp notmuch-poll-script) > > + (if (not (string= notmuch-poll-script "")) > > + (call-process notmuch-poll-script nil nil)) > > +(call-process notmuch-command nil nil nil "new"))) > > > > (defun notmuch-search-poll-and-refresh-view () > >"Invoke `notmuch-poll' to import mail, then refresh the current view." > > -- > > 1.7.5.4 > > > > ___ > > notmuch mailing list > > notmuch@notmuchmail.org > > http://notmuchmail.org/mailman/listinfo/notmuch ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
LGTM. Quoth Jani Nikula on Dec 12 at 10:50 pm: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. > > This allows taking better advantage of the "notmuch new" hooks from emacs > without intermediate scripts. > > Signed-off-by: Jani Nikula > > --- > > v3: only documentation changes suggested by Austin and Dmitry. ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
On Mon, 12 Dec 2011 22:50:04 +0200, Jani Nikula wrote: > Support nil value for notmuch-poll-script to run "notmuch new" instead of > an external script, and make this the new default. "notmuch new" is run > using the configured notmuch-command. > > This allows taking better advantage of the "notmuch new" hooks from emacs > without intermediate scripts. > > Signed-off-by: Jani Nikula > > --- > > v3: only documentation changes suggested by Austin and Dmitry. > --- > emacs/notmuch.el | 35 +-- > 1 files changed, 25 insertions(+), 10 deletions(-) > > diff --git a/emacs/notmuch.el b/emacs/notmuch.el > index 8936149..675a110 100644 > --- a/emacs/notmuch.el > +++ b/emacs/notmuch.el > @@ -965,28 +965,43 @@ same relative position within the new buffer." > (notmuch-search query oldest-first target-thread target-line > continuation) > (goto-char (point-min > > -(defcustom notmuch-poll-script "" > +(defcustom notmuch-poll-script nil >"An external script to incorporate new mail into the notmuch database. > > -If this variable is non empty, then it should name a script to be > -invoked by `notmuch-search-poll-and-refresh-view' and > +This variable controls the action invoked by > +`notmuch-search-poll-and-refresh-view' and > `notmuch-hello-poll-and-update' (each have a default keybinding > -of 'G'). The script could do any of the following depending on > +of 'G') to incorporate new mail into the notmuch database. > + > +If set to nil (the default), new mail is processed by invoking > +\"notmuch new\". Otherwise, this should be set to a string that > +gives the name of an external script that processes new mail. If > +set to the empty string, no command will be run. I think this should be "an empty string". But I may be mistaking. Regards, Dmitry > + > +The external script could do any of the following depending on > the user's needs: > > 1. Invoke a program to transfer mail to the local mail store > 2. Invoke \"notmuch new\" to incorporate the new mail > -3. Invoke one or more \"notmuch tag\" commands to classify the mail" > - :type 'string > +3. Invoke one or more \"notmuch tag\" commands to classify the mail > + > +Note that the recommended way of achieving the same is using > +\"notmuch new\" hooks." > + :type '(choice (const :tag "notmuch new" nil) > + (const :tag "Disabled" "") > + (string :tag "Custom script")) >:group 'notmuch) > > (defun notmuch-poll () > - "Run external script to import mail. > + "Run \"notmuch new\" or an external script to import mail. > > -Invokes `notmuch-poll-script' if it is not set to an empty string." > +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing > +depending on the value of `notmuch-poll-script'." >(interactive) > - (if (not (string= notmuch-poll-script "")) > - (call-process notmuch-poll-script nil nil))) > + (if (stringp notmuch-poll-script) > + (if (not (string= notmuch-poll-script "")) > + (call-process notmuch-poll-script nil nil)) > +(call-process notmuch-command nil nil nil "new"))) > > (defun notmuch-search-poll-and-refresh-view () >"Invoke `notmuch-poll' to import mail, then refresh the current view." > -- > 1.7.5.4 > > ___ > notmuch mailing list > notmuch@notmuchmail.org > http://notmuchmail.org/mailman/listinfo/notmuch ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v3] emacs: support "notmuch new" as a notmuch-poll-script
Support nil value for notmuch-poll-script to run "notmuch new" instead of an external script, and make this the new default. "notmuch new" is run using the configured notmuch-command. This allows taking better advantage of the "notmuch new" hooks from emacs without intermediate scripts. Signed-off-by: Jani Nikula --- v3: only documentation changes suggested by Austin and Dmitry. --- emacs/notmuch.el | 35 +-- 1 files changed, 25 insertions(+), 10 deletions(-) diff --git a/emacs/notmuch.el b/emacs/notmuch.el index 8936149..675a110 100644 --- a/emacs/notmuch.el +++ b/emacs/notmuch.el @@ -965,28 +965,43 @@ same relative position within the new buffer." (notmuch-search query oldest-first target-thread target-line continuation) (goto-char (point-min -(defcustom notmuch-poll-script "" +(defcustom notmuch-poll-script nil "An external script to incorporate new mail into the notmuch database. -If this variable is non empty, then it should name a script to be -invoked by `notmuch-search-poll-and-refresh-view' and +This variable controls the action invoked by +`notmuch-search-poll-and-refresh-view' and `notmuch-hello-poll-and-update' (each have a default keybinding -of 'G'). The script could do any of the following depending on +of 'G') to incorporate new mail into the notmuch database. + +If set to nil (the default), new mail is processed by invoking +\"notmuch new\". Otherwise, this should be set to a string that +gives the name of an external script that processes new mail. If +set to the empty string, no command will be run. + +The external script could do any of the following depending on the user's needs: 1. Invoke a program to transfer mail to the local mail store 2. Invoke \"notmuch new\" to incorporate the new mail -3. Invoke one or more \"notmuch tag\" commands to classify the mail" - :type 'string +3. Invoke one or more \"notmuch tag\" commands to classify the mail + +Note that the recommended way of achieving the same is using +\"notmuch new\" hooks." + :type '(choice (const :tag "notmuch new" nil) +(const :tag "Disabled" "") +(string :tag "Custom script")) :group 'notmuch) (defun notmuch-poll () - "Run external script to import mail. + "Run \"notmuch new\" or an external script to import mail. -Invokes `notmuch-poll-script' if it is not set to an empty string." +Invokes `notmuch-poll-script', \"notmuch new\", or does nothing +depending on the value of `notmuch-poll-script'." (interactive) - (if (not (string= notmuch-poll-script "")) - (call-process notmuch-poll-script nil nil))) + (if (stringp notmuch-poll-script) + (if (not (string= notmuch-poll-script "")) + (call-process notmuch-poll-script nil nil)) +(call-process notmuch-command nil nil nil "new"))) (defun notmuch-search-poll-and-refresh-view () "Invoke `notmuch-poll' to import mail, then refresh the current view." -- 1.7.5.4 ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch