[PATCH 1/6] emacs: add helper for tag change list manipulation
Michal Nazarewicz
mina86 at mina86.com
Mon Sep 3 04:33:55 PDT 2012
Jani Nikula <jani at nikula.org> writes:
> Add a helper to create (and optionally reverse) a list of tag changes.
> ---
> emacs/notmuch-tag.el | 17 +++++++++++++++++
> 1 file changed, 17 insertions(+)
>
> diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el
> index 0c0fc87..c1aeb99 100644
> --- a/emacs/notmuch-tag.el
> +++ b/emacs/notmuch-tag.el
> @@ -140,6 +140,23 @@ notmuch-after-tag-hook will be run."
> ;; in all cases we return tag-changes as a list
> tag-changes)
>
> +(defun notmuch-tag-change-list (tags &optional reverse)
> + "Convert TAGS into a list of tag changes.
> +
> +Add a \"+\" prefix to any tag in TAGS list that doesn't already
> +begin with a \"+\" or a \"-\". If REVERSE is non-nil, replace all
> +\"+\" prefixes with \"-\" and vice versa in the result."
> + (mapcar (lambda (str)
> + (let ((s (if (not (string-match "^[+-]" str))
> + (concat "+" str)
> + str)))
(if (string-match "^[-+]" str) str (concat "+" str))
Negation only makes things less readable IMO.
> + (if reverse
> + (concat (if (= (string-to-char s) ?-) "+" "-")
> + (substring s 1))
> + s)))
> + tags))
> +
> +
> ;;
>
> (provide 'notmuch-tag)
--
Best regards, _ _
.o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
..o | Computer Science, Michał “mina86” Nazarewicz (o o)
ooo +----<email/xmpp: mpn at google.com>--------------ooO--(_)--Ooo--
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20120903/b188bfd2/attachment.pgp>
More information about the notmuch
mailing list