From b11293147f6a97d87ca0f31e93e4cdd09c3c33fa Mon Sep 17 00:00:00 2001 From: "Dirk-Jan C. Binnema" Date: Mon, 9 Jan 2023 22:43:39 +0200 Subject: [PATCH] mu4e: move mu4e~headers-jump-to-maildir to search ... to mu4e-search-maildir. Where we can, we move appropriate code from the overpopulated mu4e-headers.el to mu4e-search, and update users. --- mu4e/mu4e-headers.el | 16 ---------------- mu4e/mu4e-main.el | 2 -- mu4e/mu4e-obsolete.el | 3 +++ mu4e/mu4e-search.el | 24 +++++++++++++++++++++--- mu4e/mu4e-view.el | 1 - 5 files changed, 24 insertions(+), 22 deletions(-) diff --git a/mu4e/mu4e-headers.el b/mu4e/mu4e-headers.el index 6533d26e..b6fa5b02 100644 --- a/mu4e/mu4e-headers.el +++ b/mu4e/mu4e-headers.el @@ -901,8 +901,6 @@ after the end of the search results." (defvar mu4e-headers-mode-map (let ((map (make-sparse-keymap))) - (define-key map "j" #'mu4e~headers-jump-to-maildir) - (define-key map "q" #'mu4e~headers-quit-buffer) (define-key map "g" #'mu4e-search-rerun) ;; for compatibility @@ -1480,20 +1478,6 @@ untrashed)." (interactive) (mu4e~headers-prev-or-next-unread nil)) -(defun mu4e~headers-jump-to-maildir (maildir &optional edit) - "Show the messages in maildir. -The user is prompted to ask what maildir. If prefix arg EDIT is -given, offer to edit the search query before executing it." - (interactive - (let ((maildir (mu4e-ask-maildir "Jump to maildir: "))) - (list maildir current-prefix-arg))) - (when maildir - (let* ((query (format "maildir:\"%s\"" maildir)) - (query (if edit - (mu4e-search-read-query "Refine query: " query) query))) - (mu4e-mark-handle-when-leaving) - (mu4e-search query)))) - (defun mu4e-headers-split-view-grow (&optional n) "In split-view, grow the headers window. In horizontal split-view, increase the number of lines shown by N. diff --git a/mu4e/mu4e-main.el b/mu4e/mu4e-main.el index b1ef5d7f..784575cf 100644 --- a/mu4e/mu4e-main.el +++ b/mu4e/mu4e-main.el @@ -36,7 +36,6 @@ (require 'mu4e-window) (declare-function mu4e-compose-new "mu4e-compose") -(declare-function mu4e~headers-jump-to-maildir "mu4e-headers") (declare-function mu4e-quit "mu4e") (require 'cl-lib) @@ -98,7 +97,6 @@ This version handles updating the current screen as well." (let ((map (make-sparse-keymap))) (define-key map "q" #'mu4e-quit) - (define-key map "j" #'mu4e~headers-jump-to-maildir) (define-key map "C" #'mu4e-compose-new) (define-key map "m" #'mu4e--main-toggle-mail-sending-mode) diff --git a/mu4e/mu4e-obsolete.el b/mu4e/mu4e-obsolete.el index ccee1d81..df6a294e 100644 --- a/mu4e/mu4e-obsolete.el +++ b/mu4e/mu4e-obsolete.el @@ -195,6 +195,9 @@ 'mu4e-search-skip-duplicates-label "1.9.12") (define-obsolete-variable-alias 'mu4e-headers-hide-label 'mu4e-search-hide-label "1.9.12") +;; by exception, add alias for internal func +(define-obsolete-function-alias 'mu4e~headers-jump-to-maildir + 'mu4e-search-maildir "1.9.13") ;; mu4e-main diff --git a/mu4e/mu4e-search.el b/mu4e/mu4e-search.el index 19e1ed0a..9ccba762 100644 --- a/mu4e/mu4e-search.el +++ b/mu4e/mu4e-search.el @@ -233,6 +233,21 @@ the search." (interactive) (mu4e-search-bookmark nil t)) + +(defun mu4e-search-maildir (maildir &optional edit) + "Search the messages in maildir. +The user is prompted to ask what maildir. If prefix arg EDIT is +given, offer to edit the search query before executing it." + (interactive + (let ((maildir (mu4e-ask-maildir "Jump to maildir: "))) + (list maildir current-prefix-arg))) + (when maildir + (let* ((query (format "maildir:\"%s\"" maildir)) + (query (if edit + (mu4e-search-read-query "Refine query: " query) query))) + (mu4e-mark-handle-when-leaving) + (mu4e-search query)))) + (defun mu4e-search-narrow(&optional filter) "Narrow the last search. Do so by appending search expression FILTER to the last search @@ -504,7 +519,7 @@ the mode-line.") (define-key map "s" #'mu4e-search) (define-key map "S" #'mu4e-search-edit) (define-key map "/" #'mu4e-search-narrow) - ;;(define-key map "j" 'mu4e~headers-jump-to-maildir) + (define-key map (kbd "") #'mu4e-search-prev) (define-key map (kbd "\\") #'mu4e-search-prev) (define-key map (kbd "") #'mu4e-search-next) @@ -515,14 +530,17 @@ the mode-line.") (define-key map "b" #'mu4e-search-bookmark) (define-key map "B" #'mu4e-search-bookmark-edit) - map)) + (define-key map "j" #'mu4e-search-maildir) + map)) (defvar mu4e--search-menu-items '("--" ["Search" mu4e-search :help "Search using expression"] ["Search bookmark" mu4e-search-bookmark - :help "Search some bookmark"] + :help "Show messages matching some bookmark query"] + ["Search maildir" mu4e-search-maildir + :help "Show messages in some maildir"] ["Previous query" mu4e-search-prev :help "Run previous query"] ["Next query" mu4e-search-next diff --git a/mu4e/mu4e-view.el b/mu4e/mu4e-view.el index f4090317..ae0279b7 100644 --- a/mu4e/mu4e-view.el +++ b/mu4e/mu4e-view.el @@ -867,7 +867,6 @@ This is useful for advising some Gnus-functionality that does not work in mu4e." (define-key map "%" #'mu4e-view-mark-pattern) (define-key map "t" #'mu4e-view-mark-subthread) (define-key map "T" #'mu4e-view-mark-thread) - (define-key map "j" #'mu4e~headers-jump-to-maildir) (define-key map "g" #'mu4e-view-go-to-url) (define-key map "k" #'mu4e-view-save-url)