diff options
author | Austin Clements <amdragon@MIT.EDU> | 2013-10-24 11:19:07 -0400 |
---|---|---|
committer | David Bremner <david@tethera.net> | 2013-11-08 20:35:13 -0400 |
commit | 730b8f61e0cf4b2e8c0f123c0914d472d6df38fc (patch) | |
tree | 8ac4fa0d20d221b7b2c94eb86d42007017af0796 /emacs/notmuch-lib.el | |
parent | 662e097984780165e57c7fa1f0ddf450dfeab83d (diff) |
emacs: Use notmuch tag --batch for large tag queries
(Unfortunately, it's difficult to first demonstrate this problem with
a known-broken test because modern Linux kernels have argument length
limits in the megabytes, which makes Emacs really slow!)
Diffstat (limited to 'emacs/notmuch-lib.el')
-rw-r--r-- | emacs/notmuch-lib.el | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/emacs/notmuch-lib.el b/emacs/notmuch-lib.el index 17040ed8..08a86fd3 100644 --- a/emacs/notmuch-lib.el +++ b/emacs/notmuch-lib.el @@ -355,6 +355,14 @@ user-friendly queries." "Return a query that matches the message with id ID." (concat "id:" (notmuch-escape-boolean-term id))) +(defun notmuch-hex-encode (str) + "Hex-encode STR (e.g., as used by batch tagging). + +This replaces spaces, percents, and double quotes in STR with +%NN where NN is the hexadecimal value of the character." + (replace-regexp-in-string + "[ %\"]" (lambda (match) (format "%%%02x" (aref match 0))) str)) + ;; (defun notmuch-common-do-stash (text) |