emacs: Move notmuch-search-interactive-region to notmuch-lib as notmuch-interactive-region

This commit is contained in:
Pierre Neidhardt 2019-04-09 18:47:12 +02:00 committed by David Bremner
parent b58594cd5b
commit f3cba19f88
2 changed files with 13 additions and 13 deletions

View file

@ -1008,6 +1008,15 @@ status."
(defvar notmuch-show-process-crypto nil) (defvar notmuch-show-process-crypto nil)
(make-variable-buffer-local 'notmuch-show-process-crypto) (make-variable-buffer-local 'notmuch-show-process-crypto)
(defun notmuch-interactive-region ()
"Return the bounds of the current interactive region.
This returns (BEG END), where BEG and END are the bounds of the
region if the region is active, or both `point' otherwise."
(if (region-active-p)
(list (region-beginning) (region-end))
(list (point) (point))))
(provide 'notmuch-lib) (provide 'notmuch-lib)
;; Local Variables: ;; Local Variables:

View file

@ -557,20 +557,11 @@ thread."
(setq output (append output (notmuch-search-get-tags pos))))) (setq output (append output (notmuch-search-get-tags pos)))))
output)) output))
(defun notmuch-search-interactive-region ()
"Return the bounds of the current interactive region.
This returns (BEG END), where BEG and END are the bounds of the
region if the region is active, or both `point' otherwise."
(if (region-active-p)
(list (region-beginning) (region-end))
(list (point) (point))))
(defun notmuch-search-interactive-tag-changes (&optional initial-input) (defun notmuch-search-interactive-tag-changes (&optional initial-input)
"Prompt for tag changes for the current thread or region. "Prompt for tag changes for the current thread or region.
Returns (TAG-CHANGES REGION-BEGIN REGION-END)." Returns (TAG-CHANGES REGION-BEGIN REGION-END)."
(let* ((region (notmuch-search-interactive-region)) (let* ((region (notmuch-interactive-region))
(beg (first region)) (end (second region)) (beg (first region)) (end (second region))
(prompt (if (= beg end) "Tag thread" "Tag region"))) (prompt (if (= beg end) "Tag thread" "Tag region")))
(cons (notmuch-read-tag-changes (cons (notmuch-read-tag-changes
@ -590,8 +581,8 @@ is inactive this applies to the thread at point.
If ONLY-MATCHED is non-nil, only tag matched messages." If ONLY-MATCHED is non-nil, only tag matched messages."
(interactive (notmuch-search-interactive-tag-changes)) (interactive (notmuch-search-interactive-tag-changes))
(unless (and beg end) (unless (and beg end)
(setq beg (car (notmuch-search-interactive-region)) (setq beg (car (notmuch-interactive-region))
end (cadr (notmuch-search-interactive-region)))) end (cadr (notmuch-interactive-region))))
(let ((search-string (notmuch-search-find-stable-query-region (let ((search-string (notmuch-search-find-stable-query-region
beg end only-matched))) beg end only-matched)))
(notmuch-tag search-string tag-changes) (notmuch-tag search-string tag-changes)
@ -627,7 +618,7 @@ messages will be \"unarchived\" (i.e. the tag changes in
`notmuch-archive-tags' will be reversed). `notmuch-archive-tags' will be reversed).
This function advances the next thread when finished." This function advances the next thread when finished."
(interactive (cons current-prefix-arg (notmuch-search-interactive-region))) (interactive (cons current-prefix-arg (notmuch-interactive-region)))
(when notmuch-archive-tags (when notmuch-archive-tags
(notmuch-search-tag (notmuch-search-tag
(notmuch-tag-change-list notmuch-archive-tags unarchive) beg end)) (notmuch-tag-change-list notmuch-archive-tags unarchive) beg end))