From: Servilio Afre Puentes <servilio@gmail.com>
To: notmuch <notmuch@notmuchmail.org>
Subject: [PATCH v2 2/2] emacs: hello: allow deleting individual searches in the history
Date: Fri, 07 Jun 2013 16:57:46 -0400 [thread overview]
Message-ID: <87mwr17i5x.fsf@goose.CSU.McMaster.CA> (raw)
In-Reply-To: <87sj0t7idi.fsf@goose.CSU.McMaster.CA>
This commit adds an extra button at the end of the search entries that
allows deleting that individual search from the history. A short
confirmation («y» or «n») is made before taking action.
---
emacs/notmuch-hello.el | 25 +++++++++++++++++++++++--
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/emacs/notmuch-hello.el b/emacs/notmuch-hello.el
index 1ad1bea..147c08c 100644
--- a/emacs/notmuch-hello.el
+++ b/emacs/notmuch-hello.el
@@ -286,6 +286,15 @@ afterwards.")
(message "Saved '%s' as '%s'." search name)
(notmuch-hello-update)))
+(defun notmuch-hello-delete-search-from-history (widget)
+ (interactive)
+ (let ((search (widget-value
+ (symbol-value
+ (widget-get widget :notmuch-saved-search-widget)))))
+ (setq notmuch-search-history (delete search
+ notmuch-search-history))
+ (notmuch-hello-update)))
+
(defun notmuch-hello-longest-label (searches-alist)
(or (loop for elem in searches-alist
maximize (length (car elem)))
@@ -624,7 +633,12 @@ Complete list of currently available key bindings:
;; `[save]' button. 6
;; for the `[save]'
;; button.
- 1 6))
+ 1 6
+ ;; 1 for the space
+ ;; before the `[del]'
+ ;; button. 5 for the
+ ;; `[del]' button.
+ 1 5))
:action (lambda (widget &rest ignore)
(notmuch-hello-search (widget-value widget)))
search))
@@ -633,7 +647,14 @@ Complete list of currently available key bindings:
:notify (lambda (widget &rest ignore)
(notmuch-hello-add-saved-search widget))
:notmuch-saved-search-widget widget-symbol
- "save"))
+ "save")
+ (widget-insert " ")
+ (widget-create 'push-button
+ :notify (lambda (widget &rest ignore)
+ (when (y-or-n-p "Are you sure you want to delete this search? ")
+ (notmuch-hello-delete-search-from-history widget)))
+ :notmuch-saved-search-widget widget-symbol
+ "del"))
(widget-insert "\n"))
(indent-rigidly start (point) notmuch-hello-indent))
nil))
--
1.8.3
next prev parent reply other threads:[~2013-06-07 21:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-07 20:53 [PATCH v2 0/2] Enhancements to notmuch-hello search history Servilio Afre Puentes
2013-06-07 20:55 ` [PATCH v2 1/2] emacs: hello: ask confirmation for clearing recent searches Servilio Afre Puentes
2013-06-07 20:57 ` Servilio Afre Puentes [this message]
2013-06-07 21:24 ` [PATCH v2 0/2] Enhancements to notmuch-hello search history Tomi Ollila
2013-06-09 0:10 ` David Bremner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mwr17i5x.fsf@goose.CSU.McMaster.CA \
--to=servilio@gmail.com \
--cc=notmuch@notmuchmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).