* [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links @ 2011-12-23 4:59 Jameson Graef Rollins 2011-12-23 7:48 ` David Edmondson ` (2 more replies) 0 siblings, 3 replies; 35+ messages in thread From: Jameson Graef Rollins @ 2011-12-23 4:59 UTC (permalink / raw) To: Notmuch Mail Since message-ids necessarily match just a single message, there's no reason to do a search for the id before viewing the actual message; the search just becomes an extra screen to click through. Clicking on an id: links now just jumps straight to the message itself. --- This just fixes the subject of the patch, which had a typo. Sorry. emacs/notmuch-show.el | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 98db8f2..623d521 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -803,7 +803,7 @@ a corresponding notmuch search." (remove-overlays (match-beginning 0) (match-end 0) 'goto-address t) (make-text-button (match-beginning 0) (match-end 0) 'action `(lambda (arg) - (notmuch-search ,(match-string-no-properties 0))) + (notmuch-show ,(match-string-no-properties 0))) 'follow-link t 'help-echo "Mouse-1, RET: search for this message" 'face goto-address-mail-face)))) -- 1.7.7.3 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links 2011-12-23 4:59 [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links Jameson Graef Rollins @ 2011-12-23 7:48 ` David Edmondson 2011-12-23 10:10 ` Xavier Maillard 2011-12-24 21:51 ` David Bremner 2012-01-12 17:20 ` Pieter Praet 2 siblings, 1 reply; 35+ messages in thread From: David Edmondson @ 2011-12-23 7:48 UTC (permalink / raw) To: Jameson Graef Rollins, Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 723 bytes --] On Thu, 22 Dec 2011 20:59:12 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote: > Since message-ids necessarily match just a single message, there's no > reason to do a search for the id before viewing the actual message; > the search just becomes an extra screen to click through. Clicking on > an id: links now just jumps straight to the message itself. It's often useful to see a message in context, particularly as it's common for people to reference id:'s when referring to a thread (thread: is instance local, as I recall). Is there a simple way from `notmuch-show' to jump out to the result of `notmuch-search' for the current id:? Maybe we could bind ^ to something like `notmuch-show-in-context'. [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links 2011-12-23 7:48 ` David Edmondson @ 2011-12-23 10:10 ` Xavier Maillard 2011-12-23 10:25 ` David Edmondson 0 siblings, 1 reply; 35+ messages in thread From: Xavier Maillard @ 2011-12-23 10:10 UTC (permalink / raw) To: David Edmondson, Jameson Graef Rollins, Notmuch Mail Hi David, On Fri, 23 Dec 2011 07:48:49 +0000, David Edmondson <dme@dme.org> wrote: > On Thu, 22 Dec 2011 20:59:12 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote: > > Since message-ids necessarily match just a single message, there's no > > reason to do a search for the id before viewing the actual message; > > the search just becomes an extra screen to click through. Clicking on > > an id: links now just jumps straight to the message itself. > > It's often useful to see a message in context, particularly as it's > common for people to reference id:'s when referring to a thread (thread: > is instance local, as I recall). > > Is there a simple way from `notmuch-show' to jump out to the result of > `notmuch-search' for the current id:? Maybe we could bind ^ to something > like `notmuch-show-in-context'. Why not use a prefix argument to do different thing: C-u RET -> show in context RET -> show single message WDYT ? /Xavier ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links 2011-12-23 10:10 ` Xavier Maillard @ 2011-12-23 10:25 ` David Edmondson 0 siblings, 0 replies; 35+ messages in thread From: David Edmondson @ 2011-12-23 10:25 UTC (permalink / raw) To: Xavier Maillard, Jameson Graef Rollins, Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 1265 bytes --] On Fri, 23 Dec 2011 11:10:53 +0100, Xavier Maillard <xavier@maillard.im> wrote: > Hi David, > > On Fri, 23 Dec 2011 07:48:49 +0000, David Edmondson <dme@dme.org> wrote: > > On Thu, 22 Dec 2011 20:59:12 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote: > > > Since message-ids necessarily match just a single message, there's no > > > reason to do a search for the id before viewing the actual message; > > > the search just becomes an extra screen to click through. Clicking on > > > an id: links now just jumps straight to the message itself. > > > > It's often useful to see a message in context, particularly as it's > > common for people to reference id:'s when referring to a thread (thread: > > is instance local, as I recall). > > > > Is there a simple way from `notmuch-show' to jump out to the result of > > `notmuch-search' for the current id:? Maybe we could bind ^ to something > > like `notmuch-show-in-context'. > > Why not use a prefix argument to do different thing: > > C-u RET -> show in context > RET -> show single message > > WDYT ? I was talking nonsense. `notmuch-show' will show the full thread but only the matching message open. Jesse: Sorry for the noise - the patch looks good to me. [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links 2011-12-23 4:59 [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links Jameson Graef Rollins 2011-12-23 7:48 ` David Edmondson @ 2011-12-24 21:51 ` David Bremner 2012-01-12 17:20 ` Pieter Praet 2 siblings, 0 replies; 35+ messages in thread From: David Bremner @ 2011-12-24 21:51 UTC (permalink / raw) To: Jameson Graef Rollins, Notmuch Mail On Thu, 22 Dec 2011 20:59:12 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote: > Since message-ids necessarily match just a single message, there's no > reason to do a search for the id before viewing the actual message; > the search just becomes an extra screen to click through. Clicking on > an id: links now just jumps straight to the message itself. Pushed. d ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links 2011-12-23 4:59 [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links Jameson Graef Rollins 2011-12-23 7:48 ` David Edmondson 2011-12-24 21:51 ` David Bremner @ 2012-01-12 17:20 ` Pieter Praet 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet 2017-03-05 11:51 ` [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links David Bremner 2 siblings, 2 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-12 17:20 UTC (permalink / raw) To: Jameson Graef Rollins, Notmuch Mail On Thu, 22 Dec 2011 20:59:12 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote: > Since message-ids necessarily match just a single message, there's no > reason to do a search for the id before viewing the actual message; > the search just becomes an extra screen to click through. Clicking on > an id: links now just jumps straight to the message itself. > --- > This just fixes the subject of the patch, which had a typo. Sorry. > > emacs/notmuch-show.el | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el > index 98db8f2..623d521 100644 > --- a/emacs/notmuch-show.el > +++ b/emacs/notmuch-show.el > @@ -803,7 +803,7 @@ a corresponding notmuch search." > (remove-overlays (match-beginning 0) (match-end 0) 'goto-address t) > (make-text-button (match-beginning 0) (match-end 0) > 'action `(lambda (arg) > - (notmuch-search ,(match-string-no-properties 0))) > + (notmuch-show ,(match-string-no-properties 0))) > 'follow-link t > 'help-echo "Mouse-1, RET: search for this message" > 'face goto-address-mail-face)))) > -- > 1.7.7.3 Anti-RSI FTW! However... If no message with that id: exists, `notmuch-show' will drop us to a blank screen. See id:"87lisjzrsc.fsf@kepler.schwinge.homeip.net" for some mock 'id:' links which demonstrate this nicely. Patches follow. Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH 1/3] emacs: s/buttonise/buttonize/g 2012-01-12 17:20 ` Pieter Praet @ 2012-01-12 17:23 ` Pieter Praet 2012-01-12 17:23 ` [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet ` (3 more replies) 2017-03-05 11:51 ` [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links David Bremner 1 sibling, 4 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-12 17:23 UTC (permalink / raw) To: Jameson Graef Rollins; +Cc: Notmuch Mail "Worldwide, -ize endings prevail in scientific writing and are commonly used by many international organizations, such as the ISO and the WHO. The European Union switched from -ize to -ise some years ago in its English language publications, and this resulted in the coexistence of the -ize spelling in older legislative acts and the -ise spelling in more recent ones." ... and other convincing reasons [1]. Let's follow the good example of academic and standards bodies, instead of the errors of a non-democratic pseudo-authority [2]. [1] http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences#Greek-derived_spellings [2] http://en.wikipedia.org/wiki/Democratic_deficit_in_the_European_Union --- emacs/notmuch-show.el | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 5502efd..c55a1d1 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -797,8 +797,8 @@ current buffer, if possible." (defvar notmuch-show-buffer-name nil) (make-variable-buffer-local 'notmuch-show-buffer-name) -(defun notmuch-show-buttonise-links (start end) - "Buttonise URLs and mail addresses between START and END. +(defun notmuch-show-buttonize-links (start end) + "Buttonize URLs and mail addresses between START and END. This also turns id:\"<message id>\"-parts into buttons for a corresponding notmuch search." @@ -874,7 +874,7 @@ buffer." (notmuch-show-insert-forest (notmuch-query-get-threads basic-args)))) - (jit-lock-register #'notmuch-show-buttonise-links) + (jit-lock-register #'notmuch-show-buttonize-links) ;; Act on visual lines rather than logical lines. (visual-line-mode t) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet @ 2012-01-12 17:23 ` Pieter Praet 2012-01-16 11:43 ` David Edmondson 2012-01-12 17:23 ` [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet ` (2 subsequent siblings) 3 siblings, 1 reply; 35+ messages in thread From: Pieter Praet @ 2012-01-12 17:23 UTC (permalink / raw) To: Jameson Graef Rollins; +Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-found-target-p): new predicate function that uses notmuch(1) 'count' to see if a query turns up any results. * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows a message/thread if present in the database and otherwise returns an error. * emacs/notmuch-show.el (notmuch-show-buttonize-links): some deduplication, and use new function `notmuch-show-if-found' instead of `notmuch-show' to prevent showing a blank screen for Message-Id's which aren't present in the database. --- emacs/notmuch-show.el | 21 ++++++++++++++++++--- 1 files changed, 18 insertions(+), 3 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index c55a1d1..8f12955 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -806,11 +806,14 @@ a corresponding notmuch search." (save-excursion (goto-char start) (while (re-search-forward "id:\\(\"?\\)[^[:space:]\"]+\\1" end t) + (let ((message-id (match-string-no-properties 0)) + (string-start (match-beginning 0)) + (string-end (match-end 0))) ;; remove the overlay created by goto-address-mode - (remove-overlays (match-beginning 0) (match-end 0) 'goto-address t) - (make-text-button (match-beginning 0) (match-end 0) + (remove-overlays string-start string-end 'goto-address t) + (make-text-button string-start string-end 'action `(lambda (arg) - (notmuch-show ,(match-string-no-properties 0))) + (notmuch-show-if-found ,message-id)) 'follow-link t 'help-echo "Mouse-1, RET: search for this message" 'face goto-address-mail-face)))) @@ -906,6 +909,18 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) +(defun notmuch-show-found-target-p (target) + (let ((args `("count" ,target))) + (> (string-to-number (substring + (with-output-to-string + (apply 'call-process notmuch-command nil standard-output nil args)) + 0 -1)) 0))) + +(defun notmuch-show-if-found (target &rest args) + (if (notmuch-show-found-target-p target nil) + (notmuch-show target args) + (error (format "Can't find target: %s" target)))) + (defvar notmuch-show-stash-map (let ((map (make-sparse-keymap))) (define-key map "c" 'notmuch-show-stash-cc) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-12 17:23 ` [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet @ 2012-01-16 11:43 ` David Edmondson 2012-01-16 16:49 ` Pieter Praet 0 siblings, 1 reply; 35+ messages in thread From: David Edmondson @ 2012-01-16 11:43 UTC (permalink / raw) To: Pieter Praet, Jameson Graef Rollins; +Cc: Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 946 bytes --] On Thu, 12 Jan 2012 18:23:44 +0100, Pieter Praet <pieter@praet.org> wrote: > + (make-text-button string-start string-end > 'action `(lambda (arg) > - (notmuch-show ,(match-string-no-properties 0))) > + (notmuch-show-if-found ,message-id)) I like this, but wonder idly about the performance impact (not enough to suggest denying it, though). > +(defun notmuch-show-found-target-p (target) > + (let ((args `("count" ,target))) > + (> (string-to-number (substring > + (with-output-to-string > + (apply 'call-process notmuch-command nil standard-output nil args)) > + 0 -1)) 0))) `substring' seems unnecessary, presuming that it's to get rid of the carriage return. > +(defun notmuch-show-if-found (target &rest args) > + (if (notmuch-show-found-target-p target nil) > + (notmuch-show target args) > + (error (format "Can't find target: %s" target)))) `error' will format strings without help. [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-16 11:43 ` David Edmondson @ 2012-01-16 16:49 ` Pieter Praet 2012-01-16 16:51 ` [PATCH v2] " Pieter Praet 0 siblings, 1 reply; 35+ messages in thread From: Pieter Praet @ 2012-01-16 16:49 UTC (permalink / raw) To: David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail On Mon, 16 Jan 2012 11:43:25 +0000, David Edmondson <dme@dme.org> wrote: > On Thu, 12 Jan 2012 18:23:44 +0100, Pieter Praet <pieter@praet.org> wrote: > > + (make-text-button string-start string-end > > 'action `(lambda (arg) > > - (notmuch-show ,(match-string-no-properties 0))) > > + (notmuch-show-if-found ,message-id)) > > I like this, but wonder idly about the performance impact (not enough to > suggest denying it, though). > Hardly noticable (if at all) AFAICT, but yeah, it *does* cost one extra notmuch(1) invocation at every `push-button' event... Still, rather that than potentially dumping users in a blank screen IMO. Can't think of a better solution ATM. > > +(defun notmuch-show-found-target-p (target) > > + (let ((args `("count" ,target))) > > + (> (string-to-number (substring > > + (with-output-to-string > > + (apply 'call-process notmuch-command nil standard-output nil args)) > > + 0 -1)) 0))) > > `substring' seems unnecessary, presuming that it's to get rid of the > carriage return. > Correct. Mindless proactiveness, I guess :) Removed. > > +(defun notmuch-show-if-found (target &rest args) > > + (if (notmuch-show-found-target-p target nil) > > + (notmuch-show target args) > > + (error (format "Can't find target: %s" target)))) > > `error' will format strings without help. Idem. Patch follows. Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH v2] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-16 16:49 ` Pieter Praet @ 2012-01-16 16:51 ` Pieter Praet 2012-01-16 17:06 ` David Edmondson 0 siblings, 1 reply; 35+ messages in thread From: Pieter Praet @ 2012-01-16 16:51 UTC (permalink / raw) To: David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-found-target-p): new predicate function that uses notmuch(1) 'count' to see if a query turns up any results. * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows a message/thread if present in the database and otherwise returns an error. * emacs/notmuch-show.el (notmuch-show-buttonize-links): some deduplication, and use new function `notmuch-show-if-found' instead of `notmuch-show' to prevent showing a blank screen for Message-Id's which aren't present in the database. --- v2: (corrections by David Edmondson [1]) - `notmuch-show-found-target-p' : removed useless `substring'. - `notmuch-show-if-found' : remove redundant `format'. ... and added a missing closing paren due to badly splitting up the original commit. [1] id:"cun7h0r50v6.fsf@hotblack-desiato.hh.sledj.net" emacs/notmuch-show.el | 31 +++++++++++++++++++++++-------- 1 files changed, 23 insertions(+), 8 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index f101d76..7a79d06 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -803,14 +803,17 @@ a corresponding notmuch search." (save-excursion (goto-char start) (while (re-search-forward "id:\\(\"?\\)[^[:space:]\"]+\\1" end t) - ;; remove the overlay created by goto-address-mode - (remove-overlays (match-beginning 0) (match-end 0) 'goto-address t) - (make-text-button (match-beginning 0) (match-end 0) - 'action `(lambda (arg) - (notmuch-show ,(match-string-no-properties 0))) - 'follow-link t - 'help-echo "Mouse-1, RET: search for this message" - 'face goto-address-mail-face)))) + (let ((message-id (match-string-no-properties 0)) + (string-start (match-beginning 0)) + (string-end (match-end 0))) + ;; remove the overlay created by goto-address-mode + (remove-overlays string-start string-end 'goto-address t) + (make-text-button string-start string-end + 'action `(lambda (arg) + (notmuch-show-if-found ,message-id)) + 'follow-link t + 'help-echo "Mouse-1, RET: search for this message" + 'face goto-address-mail-face))))) ;;;###autoload (defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name crypto-switch) @@ -903,6 +906,18 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) +(defun notmuch-show-found-target-p (target) + (let ((args `("count" ,target))) + (> (string-to-number + (with-output-to-string + (apply 'call-process notmuch-command nil standard-output nil args))) + 0))) + +(defun notmuch-show-if-found (target &rest args) + (if (notmuch-show-found-target-p target) + (notmuch-show target args) + (error "Can't find target: %s" target))) + (defvar notmuch-show-stash-map (let ((map (make-sparse-keymap))) (define-key map "c" 'notmuch-show-stash-cc) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-16 16:51 ` [PATCH v2] " Pieter Praet @ 2012-01-16 17:06 ` David Edmondson 0 siblings, 0 replies; 35+ messages in thread From: David Edmondson @ 2012-01-16 17:06 UTC (permalink / raw) To: Pieter Praet, Jameson Graef Rollins; +Cc: Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 4 bytes --] +1. [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet 2012-01-12 17:23 ` [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet @ 2012-01-12 17:23 ` Pieter Praet 2012-01-16 11:45 ` David Edmondson 2012-01-16 11:38 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g David Edmondson 2012-01-25 11:16 ` David Bremner 3 siblings, 1 reply; 35+ messages in thread From: Pieter Praet @ 2012-01-12 17:23 UTC (permalink / raw) To: Jameson Graef Rollins; +Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-buttonized-link-present), * emacs/notmuch-show.el (notmuch-show-buttonized-link-present-and-unread), * emacs/notmuch-show.el (notmuch-show-buttonized-link-missing): new faces for buttonized id: links. * emacs/notmuch-show.el (notmuch-show-found-target-p): add optional arg VERIFY-UNREAD which causes results to be filtered by "tag:unread". * emacs/notmuch-show.el (notmuch-show-buttonize-links): use different face property depending on the result of `notmuch-show-found-target-p', causing buttons to present, present-and-unread and missing messages to be displayed in a different color. --- emacs/notmuch-show.el | 32 +++++++++++++++++++++++++++++--- 1 files changed, 29 insertions(+), 3 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 8f12955..25330c4 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -797,6 +797,27 @@ current buffer, if possible." (defvar notmuch-show-buffer-name nil) (make-variable-buffer-local 'notmuch-show-buffer-name) +(defface notmuch-show-buttonized-link-present + '((t (:inherit goto-address-mail-face :foreground "blue"))) + "Face used for buttonized links to messages which are present +in the mail store." + :group 'notmuch-show + :group 'notmuch-appearance) + +(defface notmuch-show-buttonized-link-present-and-unread + '((t (:inherit goto-address-mail-face :foreground "green"))) + "Face used for buttonized links to messages which are present +in the mail store, and are tagged `unread'." + :group 'notmuch-show + :group 'notmuch-appearance) + +(defface notmuch-show-buttonized-link-missing + '((t (:inherit goto-address-mail-face :foreground "red"))) + "Face used for buttonized links to messages which are NOT +present in in the mail store." + :group 'notmuch-show + :group 'notmuch-appearance) + (defun notmuch-show-buttonize-links (start end) "Buttonize URLs and mail addresses between START and END. @@ -816,7 +837,12 @@ a corresponding notmuch search." (notmuch-show-if-found ,message-id)) 'follow-link t 'help-echo "Mouse-1, RET: search for this message" - 'face goto-address-mail-face)))) + 'face (cond + ((notmuch-show-found-target-p message-id t) + 'notmuch-show-buttonized-link-present-and-unread) + ((notmuch-show-found-target-p message-id) + 'notmuch-show-buttonized-link-present) + (t 'notmuch-show-buttonized-link-missing))))))) ;;;###autoload (defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name crypto-switch) @@ -909,8 +935,8 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) -(defun notmuch-show-found-target-p (target) - (let ((args `("count" ,target))) +(defun notmuch-show-found-target-p (target &optional verify-unread) + (let ((args `("count" ,target ,(if verify-unread "and tag:unread" "")))) (> (string-to-number (substring (with-output-to-string (apply 'call-process notmuch-command nil standard-output nil args)) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-12 17:23 ` [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet @ 2012-01-16 11:45 ` David Edmondson 2012-01-16 16:53 ` Pieter Praet 2012-01-16 16:54 ` Pieter Praet 0 siblings, 2 replies; 35+ messages in thread From: David Edmondson @ 2012-01-16 11:45 UTC (permalink / raw) To: Pieter Praet, Jameson Graef Rollins; +Cc: Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 495 bytes --] On Thu, 12 Jan 2012 18:23:45 +0100, Pieter Praet <pieter@praet.org> wrote: > + 'face (cond > + ((notmuch-show-found-target-p message-id t) > + 'notmuch-show-buttonized-link-present-and-unread) > + ((notmuch-show-found-target-p message-id) > + 'notmuch-show-buttonized-link-present) > + (t 'notmuch-show-buttonized-link-missing))))))) I like it, but worry a bit more about the performance (we're up to two 'notmuch' invocations for a missing or read message). [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-16 11:45 ` David Edmondson @ 2012-01-16 16:53 ` Pieter Praet 2012-01-16 16:54 ` Pieter Praet 1 sibling, 0 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-16 16:53 UTC (permalink / raw) To: David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail On Mon, 16 Jan 2012 11:45:13 +0000, David Edmondson <dme@dme.org> wrote: > On Thu, 12 Jan 2012 18:23:45 +0100, Pieter Praet <pieter@praet.org> wrote: > > + 'face (cond > > + ((notmuch-show-found-target-p message-id t) > > + 'notmuch-show-buttonized-link-present-and-unread) > > + ((notmuch-show-found-target-p message-id) > > + 'notmuch-show-buttonized-link-present) > > + (t 'notmuch-show-buttonized-link-missing))))))) > > I like it, but worry a bit more about the performance [...] Rightly so :) > [...] (we're up to two > 'notmuch' invocations for a missing or read message). I'll at least add an option to toggle it. Patch follows. Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-16 11:45 ` David Edmondson 2012-01-16 16:53 ` Pieter Praet @ 2012-01-16 16:54 ` Pieter Praet 2012-01-16 16:57 ` [PATCH] v2 " Pieter Praet 1 sibling, 1 reply; 35+ messages in thread From: Pieter Praet @ 2012-01-16 16:54 UTC (permalink / raw) To: David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail On Mon, 16 Jan 2012 11:45:13 +0000, David Edmondson <dme@dme.org> wrote: > On Thu, 12 Jan 2012 18:23:45 +0100, Pieter Praet <pieter@praet.org> wrote: > > + 'face (cond > > + ((notmuch-show-found-target-p message-id t) > > + 'notmuch-show-buttonized-link-present-and-unread) > > + ((notmuch-show-found-target-p message-id) > > + 'notmuch-show-buttonized-link-present) > > + (t 'notmuch-show-buttonized-link-missing))))))) > > I like it, but worry a bit more about the performance [...] Rightly so :) > [...] (we're up to two > 'notmuch' invocations for a missing or read message). I'll at least add an option to toggle it. Patch follows. Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH] v2 emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-16 16:54 ` Pieter Praet @ 2012-01-16 16:57 ` Pieter Praet 2012-01-16 17:07 ` David Edmondson 2012-01-16 21:43 ` Aaron Ecay 0 siblings, 2 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-16 16:57 UTC (permalink / raw) To: David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-buttonized-link-colors): new defcustom, allows toggling colorization of buttonized links. * emacs/notmuch-show.el (notmuch-show-buttonized-link-present), * emacs/notmuch-show.el (notmuch-show-buttonized-link-present-and-unread), * emacs/notmuch-show.el (notmuch-show-buttonized-link-missing): new faces for buttonized id: links. * emacs/notmuch-show.el (notmuch-show-found-target-p): add optional arg VERIFY-UNREAD which causes results to be filtered by "tag:unread". * emacs/notmuch-show.el (notmuch-show-buttonize-links): use different face property depending on the result of `notmuch-show-found-target-p', causing buttons to available, available-and-unread and missing messages to be displayed in a different color. --- v2: - add `notmuch-show-buttonized-link-colors': new defcustom, allows toggling colorization of buttonized links, to address concerns re performance. - ... and some minor refactoring emacs/notmuch-show.el | 45 ++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 42 insertions(+), 3 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 7a79d06..c6d7e29 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -794,6 +794,38 @@ current buffer, if possible." (defvar notmuch-show-buffer-name nil) (make-variable-buffer-local 'notmuch-show-buffer-name) +(defcustom notmuch-show-buttonized-link-colors t + "Colorize buttonized links depending on their target's state. + +Also see `notmuch-show-buttonized-link-available', + `notmuch-show-buttonized-link-available-and-unread', + `notmuch-show-buttonized-link-missing'. + +Might impact performance." + :type 'boolean + :group 'notmuch-show) + +(defface notmuch-show-buttonized-link-available + '((t (:inherit goto-address-mail-face :foreground "blue"))) + "Face used for buttonized links to messages which are present +in the mail store." + :group 'notmuch-show + :group 'notmuch-faces) + +(defface notmuch-show-buttonized-link-available-and-unread + '((t (:inherit goto-address-mail-face :foreground "green"))) + "Face used for buttonized links to messages which are present +in the mail store, and are tagged `unread'." + :group 'notmuch-show + :group 'notmuch-faces) + +(defface notmuch-show-buttonized-link-missing + '((t (:inherit goto-address-mail-face :foreground "red"))) + "Face used for buttonized links to messages which are NOT +present in in the mail store." + :group 'notmuch-show + :group 'notmuch-faces) + (defun notmuch-show-buttonize-links (start end) "Buttonize URLs and mail addresses between START and END. @@ -813,7 +845,14 @@ a corresponding notmuch search." (notmuch-show-if-found ,message-id)) 'follow-link t 'help-echo "Mouse-1, RET: search for this message" - 'face goto-address-mail-face))))) + 'face (if notmuch-show-buttonized-link-colors + (cond + ((notmuch-show-found-target-p message-id "and tag:unread") + 'notmuch-show-buttonized-link-available-and-unread) + ((notmuch-show-found-target-p message-id nil) + 'notmuch-show-buttonized-link-available) + (t 'notmuch-show-buttonized-link-missing)) + 'goto-address-mail-face)))))) ;;;###autoload (defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name crypto-switch) @@ -906,8 +945,8 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) -(defun notmuch-show-found-target-p (target) - (let ((args `("count" ,target))) +(defun notmuch-show-found-target-p (target &optional subquery) + (let ((args `("count" ,target ,(or subquery "")))) (> (string-to-number (with-output-to-string (apply 'call-process notmuch-command nil standard-output nil args))) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH] v2 emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-16 16:57 ` [PATCH] v2 " Pieter Praet @ 2012-01-16 17:07 ` David Edmondson 2012-01-16 21:43 ` Aaron Ecay 1 sibling, 0 replies; 35+ messages in thread From: David Edmondson @ 2012-01-16 17:07 UTC (permalink / raw) To: Pieter Praet, Jameson Graef Rollins; +Cc: Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 10 bytes --] Nice. +1. [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH] v2 emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-16 16:57 ` [PATCH] v2 " Pieter Praet 2012-01-16 17:07 ` David Edmondson @ 2012-01-16 21:43 ` Aaron Ecay 2012-01-18 10:08 ` Pieter Praet 1 sibling, 1 reply; 35+ messages in thread From: Aaron Ecay @ 2012-01-16 21:43 UTC (permalink / raw) To: Pieter Praet, David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail On Mon, 16 Jan 2012 17:57:33 +0100, Pieter Praet <pieter@praet.org> wrote: > * emacs/notmuch-show.el (notmuch-show-buttonized-link-colors): > new defcustom, allows toggling colorization of buttonized links. > > * emacs/notmuch-show.el (notmuch-show-buttonized-link-present), > * emacs/notmuch-show.el (notmuch-show-buttonized-link-present-and-unread), > * emacs/notmuch-show.el (notmuch-show-buttonized-link-missing): > new faces for buttonized id: links. > > * emacs/notmuch-show.el (notmuch-show-found-target-p): add optional arg > VERIFY-UNREAD which causes results to be filtered by "tag:unread". > > * emacs/notmuch-show.el (notmuch-show-buttonize-links): use different > face property depending on the result of `notmuch-show-found-target-p', > causing buttons to available, available-and-unread and missing messages > to be displayed in a different color. I really like the idea behind this patch, but it has the very small problem that it colorizes too much. So in reading this thread, there are things like “id:’s” and “id:?” that get colored the missing-message color (a very angry red, by default). Though this isn’t likely to be a very frequent problem with email messages that are not on this listserv :), it would be nice to fix it. Maybe you could change the regex that matches id:’s to require a little more structure – an at-sign, perhaps. Or even requiring more than (say) 5 non-space characters after the message id would cut down sharply on the false positive rate. -- Aaron Ecay ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH] v2 emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-16 21:43 ` Aaron Ecay @ 2012-01-18 10:08 ` Pieter Praet 2012-01-18 12:48 ` [PATCH 3/3 v3] " Pieter Praet 2012-01-20 19:15 ` [PATCH] v2 " Mark Anderson 0 siblings, 2 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-18 10:08 UTC (permalink / raw) To: Aaron Ecay, David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail On Mon, 16 Jan 2012 16:43:06 -0500, Aaron Ecay <aaronecay@gmail.com> wrote: > On Mon, 16 Jan 2012 17:57:33 +0100, Pieter Praet <pieter@praet.org> wrote: > > * emacs/notmuch-show.el (notmuch-show-buttonized-link-colors): > > new defcustom, allows toggling colorization of buttonized links. > > > > * emacs/notmuch-show.el (notmuch-show-buttonized-link-present), > > * emacs/notmuch-show.el (notmuch-show-buttonized-link-present-and-unread), > > * emacs/notmuch-show.el (notmuch-show-buttonized-link-missing): > > new faces for buttonized id: links. > > > > * emacs/notmuch-show.el (notmuch-show-found-target-p): add optional arg > > VERIFY-UNREAD which causes results to be filtered by "tag:unread". > > > > * emacs/notmuch-show.el (notmuch-show-buttonize-links): use different > > face property depending on the result of `notmuch-show-found-target-p', > > causing buttons to available, available-and-unread and missing messages > > to be displayed in a different color. > > I really like the idea behind this patch, but it has the very small > problem that it colorizes too much. So in reading this thread, there > are things like “id:’s” and “id:?” that get colored the missing-message > color (a very angry red, by default). Though this isn’t likely to be a > very frequent problem with email messages that are not on this listserv > :), it would be nice to fix it. [...] Excellent suggestion! Amended patch follows. > [...] Maybe you could change the regex that > matches id:’s to require a little more structure – an at-sign, perhaps. > Or even requiring more than (say) 5 non-space characters after the > message id would cut down sharply on the false positive rate. > Not sure how that would pan out. It's fairly common behaviour to put one or more spaces after a inline Message-Id, so I don't think such a limitation would be warmly recepted. > -- > Aaron Ecay Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH 3/3 v3] emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-18 10:08 ` Pieter Praet @ 2012-01-18 12:48 ` Pieter Praet 2012-01-20 19:15 ` [PATCH] v2 " Mark Anderson 1 sibling, 0 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-18 12:48 UTC (permalink / raw) To: Aaron Ecay, David Edmondson, Jameson Graef Rollins; +Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-buttonized-link-colors): - new defcustom, allows toggling colorization of buttonized links. (notmuch-show-buttonized-link-available), (notmuch-show-buttonized-link-available-and-unread), (notmuch-show-buttonized-link-missing): - new faces for buttonized id: links. (notmuch-show-found-target-p): - add optional arg SUBQUERY to allow addition filtering, eg. with "tag:unread". (notmuch-show-buttonize-links): - tweak `Message-Id' regexp: less greedy matching. - use different face property depending on the result of `notmuch-show-found-target-p', causing buttons to available, available-and-unread and missing messages to be displayed in different colors. --- [Forgot to cc the list, apologies for the dupes.] I've also noticed that Message-Id's from `git send-email' don't get colorized (but do get buttonized) for some reason. Thus, would appreciate some assistance with the regexp. v2: - add `notmuch-show-buttonized-link-colors': new defcustom, allows toggling colorization of buttonized links, to address unquestionable concerns re performance, voiced by David Edmondson [1]. - ... and some minor refactoring v3: - tweak `Message-Id' regexp: mock Message-Id's shouldn't be matched, as pointed out by Aaron Ecay [2]. [1] id:"cun4nvv50s6.fsf@hotblack-desiato.hh.sledj.net" [2] id:"m2sjjfb9xx.fsf@gmail.com" emacs/notmuch-show.el | 47 +++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 43 insertions(+), 4 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 244824a..deac9a6 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -798,6 +798,38 @@ current buffer, if possible." (defvar notmuch-show-buffer-name nil) (make-variable-buffer-local 'notmuch-show-buffer-name) +(defcustom notmuch-show-buttonized-link-colors t + "Colorize buttonized links depending on their target's state. + +Also see `notmuch-show-buttonized-link-available', + `notmuch-show-buttonized-link-available-and-unread', + `notmuch-show-buttonized-link-missing'. + +Might impact performance." + :type 'boolean + :group 'notmuch-show) + +(defface notmuch-show-buttonized-link-available + '((t (:inherit goto-address-mail-face :foreground "blue"))) + "Face used for buttonized links to messages which are present +in the mail store." + :group 'notmuch-show + :group 'notmuch-faces) + +(defface notmuch-show-buttonized-link-available-and-unread + '((t (:inherit goto-address-mail-face :foreground "green"))) + "Face used for buttonized links to messages which are present +in the mail store, and are tagged `unread'." + :group 'notmuch-show + :group 'notmuch-faces) + +(defface notmuch-show-buttonized-link-missing + '((t (:inherit goto-address-mail-face :foreground "red"))) + "Face used for buttonized links to messages which are NOT +present in in the mail store." + :group 'notmuch-show + :group 'notmuch-faces) + (defun notmuch-show-buttonize-links (start end) "Buttonize URLs and mail addresses between START and END. @@ -806,7 +838,7 @@ a corresponding notmuch search." (goto-address-fontify-region start end) (save-excursion (goto-char start) - (while (re-search-forward "id:\\(\"?\\)[^[:space:]\"]+\\1" end t) + (while (re-search-forward "id:\\(\"?\\)\[^ \t\"@\]\+@[^ \t\"]\+\\1" end t) (let ((message-id (match-string-no-properties 0)) (string-start (match-beginning 0)) (string-end (match-end 0))) @@ -817,7 +849,14 @@ a corresponding notmuch search." (notmuch-show-if-found ,message-id)) 'follow-link t 'help-echo "Mouse-1, RET: search for this message" - 'face goto-address-mail-face))))) + 'face (if notmuch-show-buttonized-link-colors + (cond + ((notmuch-show-found-target-p message-id "and tag:unread") + 'notmuch-show-buttonized-link-available-and-unread) + ((notmuch-show-found-target-p message-id nil) + 'notmuch-show-buttonized-link-available) + (t 'notmuch-show-buttonized-link-missing)) + 'goto-address-mail-face)))))) ;;;###autoload (defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name crypto-switch) @@ -910,8 +949,8 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) -(defun notmuch-show-found-target-p (target) - (let ((args `("count" ,target))) +(defun notmuch-show-found-target-p (target &optional subquery) + (let ((args `("count" ,target ,(or subquery "")))) (> (string-to-number (with-output-to-string (apply 'call-process notmuch-command nil standard-output nil args))) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH] v2 emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-18 10:08 ` Pieter Praet 2012-01-18 12:48 ` [PATCH 3/3 v3] " Pieter Praet @ 2012-01-20 19:15 ` Mark Anderson 2012-01-22 8:40 ` Pieter Praet 1 sibling, 1 reply; 35+ messages in thread From: Mark Anderson @ 2012-01-20 19:15 UTC (permalink / raw) To: Pieter Praet, Aaron Ecay, David Edmondson, Jameson Graef Rollins Cc: Notmuch Mail On Wed, 18 Jan 2012 04:08:54 -0600, Pieter Praet <pieter@praet.org> wrote: > On Mon, 16 Jan 2012 16:43:06 -0500, Aaron Ecay <aaronecay@gmail.com> wrote: > > On Mon, 16 Jan 2012 17:57:33 +0100, Pieter Praet <pieter@praet.org> wrote: > > [...] Maybe you could change the regex that > > matches id:’s to require a little more structure – an at-sign, perhaps. > > Or even requiring more than (say) 5 non-space characters after the > > message id would cut down sharply on the false positive rate. > > > > Not sure how that would pan out. It's fairly common behaviour to put > one or more spaces after a inline Message-Id, so I don't think such a > limitation would be warmly recepted. I thought this was a suggestion to have more than 5 non-space characters after the id:, not the full id:LongIdThingHere It sounded to me like an attempt to prevent extra false positives and the confusing buttonizing and notmuch queries that go with them. -Mark ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH] v2 emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-20 19:15 ` [PATCH] v2 " Mark Anderson @ 2012-01-22 8:40 ` Pieter Praet 2012-01-22 8:54 ` [PATCH v4 1/3] emacs: s/buttonise/buttonize/g Pieter Praet ` (2 more replies) 0 siblings, 3 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-22 8:40 UTC (permalink / raw) To: Mark Anderson, Aaron Ecay, David Edmondson, Jameson Graef Rollins Cc: Notmuch Mail On Fri, 20 Jan 2012 12:15:13 -0700, Mark Anderson <MarkR.Anderson@amd.com> wrote: > On Wed, 18 Jan 2012 04:08:54 -0600, Pieter Praet <pieter@praet.org> wrote: > > On Mon, 16 Jan 2012 16:43:06 -0500, Aaron Ecay <aaronecay@gmail.com> wrote: > > > On Mon, 16 Jan 2012 17:57:33 +0100, Pieter Praet <pieter@praet.org> wrote: > > > [...] Maybe you could change the regex that > > > matches id:’s to require a little more structure – an at-sign, perhaps. > > > Or even requiring more than (say) 5 non-space characters after the > > > message id would cut down sharply on the false positive rate. > > > > > > > Not sure how that would pan out. It's fairly common behaviour to put > > one or more spaces after a inline Message-Id, so I don't think such a > > limitation would be warmly recepted. > > I thought this was a suggestion to have more than 5 non-space characters > after the id:, not the full id:LongIdThingHere > Now that you mention it... I may have taken Aaron's suggestion a bit too literally. :) > It sounded to me like an attempt to prevent extra false positives and > the confusing buttonizing and notmuch queries that go with them. > > -Mark > Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH v4 1/3] emacs: s/buttonise/buttonize/g 2012-01-22 8:40 ` Pieter Praet @ 2012-01-22 8:54 ` Pieter Praet 2012-01-22 8:54 ` [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet 2012-01-22 8:54 ` [PATCH v4 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet 2 siblings, 0 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-22 8:54 UTC (permalink / raw) To: Mark Anderson, Aaron Ecay, David Edmondson, Jameson Graef Rollins Cc: Notmuch Mail "Worldwide, -ize endings prevail in scientific writing and are commonly used by many international organizations, such as the ISO and the WHO. The European Union switched from -ize to -ise some years ago in its English language publications, and this resulted in the coexistence of the -ize spelling in older legislative acts and the -ise spelling in more recent ones." ... and other convincing reasons [1]. Let's follow the good example of academic and standards bodies, instead of the errors of a non-democratic pseudo-authority [2]. [1] http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences#Greek-derived_spellings [2] http://en.wikipedia.org/wiki/Democratic_deficit_in_the_European_Union --- emacs/notmuch-show.el | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index e6a5b31..57dd232 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -899,8 +899,8 @@ current buffer, if possible." (defvar notmuch-show-buffer-name nil) (make-variable-buffer-local 'notmuch-show-buffer-name) -(defun notmuch-show-buttonise-links (start end) - "Buttonise URLs and mail addresses between START and END. +(defun notmuch-show-buttonize-links (start end) + "Buttonize URLs and mail addresses between START and END. This also turns id:\"<message id>\"-parts into buttons for a corresponding notmuch search." @@ -976,7 +976,7 @@ buffer." (notmuch-show-insert-forest (notmuch-query-get-threads basic-args)))) - (jit-lock-register #'notmuch-show-buttonise-links) + (jit-lock-register #'notmuch-show-buttonize-links) (run-hooks 'notmuch-show-hook)) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-22 8:40 ` Pieter Praet 2012-01-22 8:54 ` [PATCH v4 1/3] emacs: s/buttonise/buttonize/g Pieter Praet @ 2012-01-22 8:54 ` Pieter Praet 2012-01-22 11:10 ` Mark Walters 2014-05-07 15:22 ` David Edmondson 2012-01-22 8:54 ` [PATCH v4 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet 2 siblings, 2 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-22 8:54 UTC (permalink / raw) To: Mark Anderson, Aaron Ecay, David Edmondson, Jameson Graef Rollins Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-found-target-p): new predicate function that uses notmuch(1) 'count' to see if a query turns up any results. * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows a message/thread if present in the database and otherwise returns an error. * emacs/notmuch-show.el (notmuch-show-buttonize-links): some deduplication, and use new function `notmuch-show-if-found' instead of `notmuch-show' to prevent showing a blank screen for Message-Id's which aren't present in the database. --- emacs/notmuch-show.el | 31 +++++++++++++++++++++++-------- 1 files changed, 23 insertions(+), 8 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 57dd232..972ac79 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -908,14 +908,17 @@ a corresponding notmuch search." (save-excursion (goto-char start) (while (re-search-forward "id:\\(\"?\\)[^[:space:]\"]+\\1" end t) - ;; remove the overlay created by goto-address-mode - (remove-overlays (match-beginning 0) (match-end 0) 'goto-address t) - (make-text-button (match-beginning 0) (match-end 0) - 'action `(lambda (arg) - (notmuch-show ,(match-string-no-properties 0))) - 'follow-link t - 'help-echo "Mouse-1, RET: search for this message" - 'face goto-address-mail-face)))) + (let ((message-id (match-string-no-properties 0)) + (string-start (match-beginning 0)) + (string-end (match-end 0))) + ;; remove the overlay created by goto-address-mode + (remove-overlays string-start string-end 'goto-address t) + (make-text-button string-start string-end + 'action `(lambda (arg) + (notmuch-show-if-found ,message-id)) + 'follow-link t + 'help-echo "Mouse-1, RET: search for this message" + 'face goto-address-mail-face))))) ;;;###autoload (defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name crypto-switch) @@ -1005,6 +1008,18 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) +(defun notmuch-show-found-target-p (target) + (let ((args `("count" ,target))) + (> (string-to-number + (with-output-to-string + (apply 'call-process notmuch-command nil standard-output nil args))) + 0))) + +(defun notmuch-show-if-found (target &rest args) + (if (notmuch-show-found-target-p target) + (notmuch-show target args) + (error "Can't find target: %s" target))) + (defvar notmuch-show-stash-map (let ((map (make-sparse-keymap))) (define-key map "c" 'notmuch-show-stash-cc) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-22 8:54 ` [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet @ 2012-01-22 11:10 ` Mark Walters 2012-01-25 0:41 ` Pieter Praet 2014-05-07 15:22 ` David Edmondson 1 sibling, 1 reply; 35+ messages in thread From: Mark Walters @ 2012-01-22 11:10 UTC (permalink / raw) To: Pieter Praet, Mark Anderson, Aaron Ecay, David Edmondson, Jameson Graef Rollins, Austin Clements Cc: Notmuch Mail > * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows > a message/thread if present in the database and otherwise returns an error. I like this in principle but it interacts awkwardly with the automatic tag exclusion. If the id:<message-id> matches a message with an excluded tag then notmuch-show-if-found will not let you view it, but if you typed the same search in a search field it would show you the message. Note notmuch show currently does not currently respect excluded tags (see id:"871uqvgrnm.fsf@qmul.ac.uk"), and this is not completely trivial to fix since it is not clear quite what its behaviour should be in some corner cases. Perhaps we could have an option like "--include-all" to notmuch search/count to tell it not to apply the exclusions. On the other hand that might also be useful as something the user can type in a search box so a special search term (eg include:all) might be better. Best wishes Mark ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-22 11:10 ` Mark Walters @ 2012-01-25 0:41 ` Pieter Praet 0 siblings, 0 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-25 0:41 UTC (permalink / raw) To: Mark Walters, Mark Anderson, Aaron Ecay, David Edmondson, Jameson Graef Rollins, Austin Clements Cc: Notmuch Mail On Sun, 22 Jan 2012 11:10:02 +0000, Mark Walters <markwalters1009@gmail.com> wrote: > > > * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows > > a message/thread if present in the database and otherwise returns an error. > > I like this in principle but it interacts awkwardly with the automatic tag > exclusion. If the id:<message-id> matches a message with an excluded tag > then notmuch-show-if-found will not let you view it, but if you typed the > same search in a search field it would show you the message. > > Note notmuch show currently does not currently respect excluded tags (see > id:"871uqvgrnm.fsf@qmul.ac.uk"), and this is not completely trivial to > fix since it is not clear quite what its behaviour should be in some > corner cases. > > Perhaps we could have an option like "--include-all" to notmuch > search/count to tell it not to apply the exclusions. On the other hand > that might also be useful as something the user can type in a search box > so a special search term (eg include:all) might be better. > Hmm, interesting... Sorry I haven't taken the time to have a look at your patch series yet. (I probably wouldn't have anything useful to contribute anyway...) I'll be taking a stab at fixing this when the exclusion-dust settles. Thanks for pointing it out! > Best wishes > > Mark > > Peace -- Pieter ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2012-01-22 8:54 ` [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet 2012-01-22 11:10 ` Mark Walters @ 2014-05-07 15:22 ` David Edmondson 2017-03-05 11:52 ` David Bremner 1 sibling, 1 reply; 35+ messages in thread From: David Edmondson @ 2014-05-07 15:22 UTC (permalink / raw) To: Pieter Praet; +Cc: Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 895 bytes --] [ Trimmed to/cc list. ] On Sun, Jan 22 2012, Pieter Praet wrote: > * emacs/notmuch-show.el (notmuch-show-found-target-p): new predicate function > that uses notmuch(1) 'count' to see if a query turns up any results. > > * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows > a message/thread if present in the database and otherwise returns an error. > > * emacs/notmuch-show.el (notmuch-show-buttonize-links): some deduplication, > and use new function `notmuch-show-if-found' instead of `notmuch-show' > to prevent showing a blank screen for Message-Id's which aren't present > in the database. Mark provided some feedback about this (relating to exclusions), but more generally there is a problem that `M-x notmuch-show id:doesntexist' will result in an error ("notmuch-show-message-top: Beginning of buffer"). That seems like a bug that should be fixed. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 310 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists 2014-05-07 15:22 ` David Edmondson @ 2017-03-05 11:52 ` David Bremner 0 siblings, 0 replies; 35+ messages in thread From: David Bremner @ 2017-03-05 11:52 UTC (permalink / raw) To: David Edmondson, Pieter Praet; +Cc: Notmuch Mail David Edmondson <dme@dme.org> writes: > [ Trimmed to/cc list. ] > > On Sun, Jan 22 2012, Pieter Praet wrote: >> * emacs/notmuch-show.el (notmuch-show-found-target-p): new predicate function >> that uses notmuch(1) 'count' to see if a query turns up any results. >> >> * emacs/notmuch-show.el (notmuch-show-if-found): new function that only shows >> a message/thread if present in the database and otherwise returns an error. >> >> * emacs/notmuch-show.el (notmuch-show-buttonize-links): some deduplication, >> and use new function `notmuch-show-if-found' instead of `notmuch-show' >> to prevent showing a blank screen for Message-Id's which aren't present >> in the database. > > Mark provided some feedback about this (relating to exclusions), but > more generally there is a problem that `M-x notmuch-show id:doesntexist' > will result in an error ("notmuch-show-message-top: Beginning of > buffer"). That seems like a bug that should be fixed. This also now seems fixed in 0.23.7-131-g85df8b39 d ^ permalink raw reply [flat|nested] 35+ messages in thread
* [PATCH v4 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state 2012-01-22 8:40 ` Pieter Praet 2012-01-22 8:54 ` [PATCH v4 1/3] emacs: s/buttonise/buttonize/g Pieter Praet 2012-01-22 8:54 ` [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet @ 2012-01-22 8:54 ` Pieter Praet 2 siblings, 0 replies; 35+ messages in thread From: Pieter Praet @ 2012-01-22 8:54 UTC (permalink / raw) To: Mark Anderson, Aaron Ecay, David Edmondson, Jameson Graef Rollins Cc: Notmuch Mail * emacs/notmuch-show.el (notmuch-show-buttonized-link-colors): - new defcustom, allows toggling colorization of buttonized links. (notmuch-show-buttonized-link-available), (notmuch-show-buttonized-link-available-and-unread), (notmuch-show-buttonized-link-missing): - new faces for buttonized id: links. (notmuch-show-found-target-p): - add optional arg SUBQUERY to allow addition filtering, eg. with "tag:unread". (notmuch-show-buttonize-links): - tweak `Message-Id' regexp: less greedy matching. - use different face property depending on the result of `notmuch-show-found-target-p', causing buttons to available, available-and-unread and missing messages to be displayed in different colors. --- Updated regexp. emacs/notmuch-show.el | 47 +++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 43 insertions(+), 4 deletions(-) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 972ac79..c04fc28 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -899,6 +899,38 @@ current buffer, if possible." (defvar notmuch-show-buffer-name nil) (make-variable-buffer-local 'notmuch-show-buffer-name) +(defcustom notmuch-show-buttonized-link-colors t + "Colorize buttonized links depending on their target's state. + +Also see `notmuch-show-buttonized-link-available', + `notmuch-show-buttonized-link-available-and-unread', + `notmuch-show-buttonized-link-missing'. + +Might impact performance." + :type 'boolean + :group 'notmuch-show) + +(defface notmuch-show-buttonized-link-available + '((t (:inherit goto-address-mail-face :foreground "blue"))) + "Face used for buttonized links to messages which are present +in the mail store." + :group 'notmuch-show + :group 'notmuch-faces) + +(defface notmuch-show-buttonized-link-available-and-unread + '((t (:inherit goto-address-mail-face :foreground "green"))) + "Face used for buttonized links to messages which are present +in the mail store, and are tagged `unread'." + :group 'notmuch-show + :group 'notmuch-faces) + +(defface notmuch-show-buttonized-link-missing + '((t (:inherit goto-address-mail-face :foreground "red"))) + "Face used for buttonized links to messages which are NOT +present in in the mail store." + :group 'notmuch-show + :group 'notmuch-faces) + (defun notmuch-show-buttonize-links (start end) "Buttonize URLs and mail addresses between START and END. @@ -907,7 +939,7 @@ a corresponding notmuch search." (goto-address-fontify-region start end) (save-excursion (goto-char start) - (while (re-search-forward "id:\\(\"?\\)[^[:space:]\"]+\\1" end t) + (while (re-search-forward "id:\\(\"?\\)[^[:space:]\"]+@[^[:space:]\"]\\{3,\\}\\1" end t) (let ((message-id (match-string-no-properties 0)) (string-start (match-beginning 0)) (string-end (match-end 0))) @@ -918,7 +950,14 @@ a corresponding notmuch search." (notmuch-show-if-found ,message-id)) 'follow-link t 'help-echo "Mouse-1, RET: search for this message" - 'face goto-address-mail-face))))) + 'face (if notmuch-show-buttonized-link-colors + (cond + ((notmuch-show-found-target-p message-id "and tag:unread") + 'notmuch-show-buttonized-link-available-and-unread) + ((notmuch-show-found-target-p message-id nil) + 'notmuch-show-buttonized-link-available) + (t 'notmuch-show-buttonized-link-missing)) + 'goto-address-mail-face)))))) ;;;###autoload (defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name crypto-switch) @@ -1008,8 +1047,8 @@ thread id. If a prefix is given, crypto processing is toggled." (notmuch-kill-this-buffer) (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto))) -(defun notmuch-show-found-target-p (target) - (let ((args `("count" ,target))) +(defun notmuch-show-found-target-p (target &optional subquery) + (let ((args `("count" ,target ,(or subquery "")))) (> (string-to-number (with-output-to-string (apply 'call-process notmuch-command nil standard-output nil args))) -- 1.7.8.1 ^ permalink raw reply related [flat|nested] 35+ messages in thread
* Re: [PATCH 1/3] emacs: s/buttonise/buttonize/g 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet 2012-01-12 17:23 ` [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet 2012-01-12 17:23 ` [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet @ 2012-01-16 11:38 ` David Edmondson 2012-01-25 11:16 ` David Bremner 3 siblings, 0 replies; 35+ messages in thread From: David Edmondson @ 2012-01-16 11:38 UTC (permalink / raw) To: Pieter Praet, Jameson Graef Rollins; +Cc: Notmuch Mail [-- Attachment #1: Type: text/plain, Size: 851 bytes --] On Thu, 12 Jan 2012 18:23:43 +0100, Pieter Praet <pieter@praet.org> wrote: > "Worldwide, -ize endings prevail in scientific writing and are commonly > used by many international organizations, such as the ISO and the > WHO. The European Union switched from -ize to -ise some years ago in its > English language publications, and this resulted in the coexistence of > the -ize spelling in older legislative acts and the -ise spelling in > more recent ones." ... and other convincing reasons [1]. > > Let's follow the good example of academic and standards bodies, > instead of the errors of a non-democratic pseudo-authority [2]. > > [1] http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences#Greek-derived_spellings > [2] http://en.wikipedia.org/wiki/Democratic_deficit_in_the_European_Union Reluctantly, +1. [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH 1/3] emacs: s/buttonise/buttonize/g 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet ` (2 preceding siblings ...) 2012-01-16 11:38 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g David Edmondson @ 2012-01-25 11:16 ` David Bremner 2012-01-26 13:00 ` Pieter Praet 3 siblings, 1 reply; 35+ messages in thread From: David Bremner @ 2012-01-25 11:16 UTC (permalink / raw) To: Pieter Praet; +Cc: Notmuch Mail On Thu, 12 Jan 2012 18:23:43 +0100, Pieter Praet <pieter@praet.org> wrote: > "Worldwide, -ize endings prevail in scientific writing and are commonly > used by many international organizations, such as the ISO and the > WHO. The European Union switched from -ize to -ise some years ago in its > English language publications, and this resulted in the coexistence of needs rebasing against master. d P.S. Personally think it's a bit silly, but that might be because I'm Canadian, and we are all about the inconsistent anglo/american spelling. But if the consensus is to follow the UN black helicopter spelling police, ok :). ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH 1/3] emacs: s/buttonise/buttonize/g 2012-01-25 11:16 ` David Bremner @ 2012-01-26 13:00 ` Pieter Praet 2012-01-26 14:34 ` Tomi Ollila 0 siblings, 1 reply; 35+ messages in thread From: Pieter Praet @ 2012-01-26 13:00 UTC (permalink / raw) To: David Bremner; +Cc: Notmuch Mail On Wed, 25 Jan 2012 07:16:13 -0400, David Bremner <david@tethera.net> wrote: > On Thu, 12 Jan 2012 18:23:43 +0100, Pieter Praet <pieter@praet.org> wrote: > > "Worldwide, -ize endings prevail in scientific writing and are commonly > > used by many international organizations, such as the ISO and the > > WHO. The European Union switched from -ize to -ise some years ago in its > > English language publications, and this resulted in the coexistence of > > needs rebasing against master. > Actually, it's been superseded by: id:"1327222469-29487-1-git-send-email-pieter@praet.org" > d > > P.S. Personally think it's a bit silly, [...] Perhaps it is, but then again, spelling errors may be considered as being indicative of the quality of the project as a whole, so it wouldn't hurt to keep them to a minimum. > [...] but that might be because I'm > Canadian, and we are all about the inconsistent anglo/american > spelling. [...] Exactly! "American and Canadian spelling accepts only -ize endings in most cases, [...]" [1] :) > [...] But if the consensus is to follow the UN black helicopter > spelling police, ok :). Follow WHO? (lame pun intended...) Peace -- Pieter [1] http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences#-ise.2C_-ize_.28-isation.2C_-ization.29 ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH 1/3] emacs: s/buttonise/buttonize/g 2012-01-26 13:00 ` Pieter Praet @ 2012-01-26 14:34 ` Tomi Ollila 0 siblings, 0 replies; 35+ messages in thread From: Tomi Ollila @ 2012-01-26 14:34 UTC (permalink / raw) To: Pieter Praet, David Bremner; +Cc: Notmuch Mail I personally like -ise (easier to my mind, 'z' is so "hard" in finnish language), but -ize is just prevalent in emacs (customiSe, propertiSe) Tomi ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links 2012-01-12 17:20 ` Pieter Praet 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet @ 2017-03-05 11:51 ` David Bremner 1 sibling, 0 replies; 35+ messages in thread From: David Bremner @ 2017-03-05 11:51 UTC (permalink / raw) To: Pieter Praet, Jameson Graef Rollins, Notmuch Mail Pieter Praet <pieter@praet.org> writes: > > Anti-RSI FTW! > > However... If no message with that id: exists, `notmuch-show' > will drop us to a blank screen. > > See id:"87lisjzrsc.fsf@kepler.schwinge.homeip.net" for some mock > 'id:' links which demonstrate this nicely. This old bug seems fixed to me in current notmuch (0.23.7-131-g85df8b39) d ^ permalink raw reply [flat|nested] 35+ messages in thread
end of thread, other threads:[~2017-03-05 11:52 UTC | newest] Thread overview: 35+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-12-23 4:59 [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links Jameson Graef Rollins 2011-12-23 7:48 ` David Edmondson 2011-12-23 10:10 ` Xavier Maillard 2011-12-23 10:25 ` David Edmondson 2011-12-24 21:51 ` David Bremner 2012-01-12 17:20 ` Pieter Praet 2012-01-12 17:23 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g Pieter Praet 2012-01-12 17:23 ` [PATCH 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet 2012-01-16 11:43 ` David Edmondson 2012-01-16 16:49 ` Pieter Praet 2012-01-16 16:51 ` [PATCH v2] " Pieter Praet 2012-01-16 17:06 ` David Edmondson 2012-01-12 17:23 ` [PATCH 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet 2012-01-16 11:45 ` David Edmondson 2012-01-16 16:53 ` Pieter Praet 2012-01-16 16:54 ` Pieter Praet 2012-01-16 16:57 ` [PATCH] v2 " Pieter Praet 2012-01-16 17:07 ` David Edmondson 2012-01-16 21:43 ` Aaron Ecay 2012-01-18 10:08 ` Pieter Praet 2012-01-18 12:48 ` [PATCH 3/3 v3] " Pieter Praet 2012-01-20 19:15 ` [PATCH] v2 " Mark Anderson 2012-01-22 8:40 ` Pieter Praet 2012-01-22 8:54 ` [PATCH v4 1/3] emacs: s/buttonise/buttonize/g Pieter Praet 2012-01-22 8:54 ` [PATCH v4 2/3] emacs: `notmuch-show-buttonize-links' only `notmuch-show's a message if it exists Pieter Praet 2012-01-22 11:10 ` Mark Walters 2012-01-25 0:41 ` Pieter Praet 2014-05-07 15:22 ` David Edmondson 2017-03-05 11:52 ` David Bremner 2012-01-22 8:54 ` [PATCH v4 3/3] emacs: colorize buttonized 'id:' links depending on the target message's state Pieter Praet 2012-01-16 11:38 ` [PATCH 1/3] emacs: s/buttonise/buttonize/g David Edmondson 2012-01-25 11:16 ` David Bremner 2012-01-26 13:00 ` Pieter Praet 2012-01-26 14:34 ` Tomi Ollila 2017-03-05 11:51 ` [PATCH v2] emacs: call notmuch-show instead of notmuch-search in buttonised id: links David Bremner
Code repositories for project(s) associated with this public inbox https://yhetil.org/notmuch.git/ 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 read-only IMAP folder(s) and NNTP newsgroup(s).