feat(mail): add keys for notmuch-jump

This commit is contained in:
Pavel Korytov 2023-08-25 16:04:31 +03:00
parent 515827b287
commit 43456eadbc
2 changed files with 31 additions and 18 deletions

View file

@ -54,19 +54,24 @@
notmuch-message-mode 0 "mail") notmuch-message-mode 0 "mail")
(setq notmuch-saved-searches (setq notmuch-saved-searches
'((:name "drafts" :query "tag:draft") '((:name "drafts" :query "tag:draft" :key "d")
(:name "main (inbox)" :query "tag:main AND tag:inbox") (:name "main (inbox)" :query "tag:main AND tag:inbox" :key "mi")
(:name "main (unread)" :query "tag:main AND tag:unread") (:name "main (unread)" :query "tag:main AND tag:unread" :key "mu")
(:name "main (sent)" :query "tag:main AND tag:sent") (:name "main (sent)" :query "tag:main AND tag:sent" :key "ms")
(:name "main (all mail)" :query "tag:main") (:name "main (all mail)" :query "tag:main" :key "ma")
(:name "progin (inbox)" :query "tag:progin AND tag:inbox") (:name "progin (inbox)" :query "tag:progin AND tag:inbox" :key "pi")
(:name "progin (unread)" :query "tag:progin AND tag:unread") (:name "progin (unread)" :query "tag:progin AND tag:unread" :key "pu")
(:name "progin (sent)" :query "tag:progin AND tag:sent") (:name "progin (sent)" :query "tag:progin AND tag:sent" :key "ps")
(:name "progin (all mail)" :query "tag:progin") (:name "progin (all mail)" :query "tag:progin" :key "pa")
(:name "pvkorytov (inbox)" :query "tag:pvkorytov AND tag:inbox") (:name "pvkorytov (inbox)" :query "tag:pvkorytov AND tag:inbox" :key "vi")
(:name "pvkorytov (unread)" :query "tag:pvkorytov AND tag:unread") (:name "pvkorytov (unread)" :query "tag:pvkorytov AND tag:unread" :key "vu")
(:name "pvkorytov (sent)" :query "tag:pvkorytov AND tag:sent") (:name "pvkorytov (sent)" :query "tag:pvkorytov AND tag:sent" :key "vs")
(:name "pvkorytov (all mail)" :query "tag:pvkorytov"))) (:name "pvkorytov (all mail)" :query "tag:pvkorytov" :key "va")))
(general-define-key
:states '(normal visual)
:keymaps '(notmuch-hello-mode-map)
"f" #'notmuch-jump-search)
(with-eval-after-load 'notmuch (with-eval-after-load 'notmuch
(add-hook 'message-setup-hook 'mml-secure-sign-pgpmime)) (add-hook 'message-setup-hook 'mml-secure-sign-pgpmime))

View file

@ -451,9 +451,9 @@ Root keybindings:
#+NAME: root_tags #+NAME: root_tags
| Root tag | Prefix | Keybinding description | | Root tag | Prefix | Keybinding description |
|-----------+--------+------------------------| |-----------+--------+------------------------|
| main | t | thexcloud@gmail.com | | main | m | thexcloud@gmail.com |
| progin | p | progin6304@gmail.com | | progin | p | progin6304@gmail.com |
| pvkorytov | e | pvkorytov@etu.ru | | pvkorytov | v | pvkorytov@etu.ru |
#+NAME: filter_tags #+NAME: filter_tags
| Tag | Prefix | Name | | Tag | Prefix | Name |
@ -471,22 +471,30 @@ The following formats the tables above to a proper syntax for =setq notmuch-save
(dolist (tag filter_tags) (dolist (tag filter_tags)
(add-to-list (add-to-list
'searches 'searches
(format "(:name \"%s\" :query \"%s\")" (format "(:name \"%s\" :query \"%s\" :key \"%s\")"
(format "%s (%s)" (format "%s (%s)"
(nth 0 root_tag) (nth 0 root_tag)
(nth 2 tag)) (nth 2 tag))
(concat "tag:" (nth 0 root_tag) (concat "tag:" (nth 0 root_tag)
(unless (string-empty-p (nth 0 tag)) (unless (string-empty-p (nth 0 tag))
(concat " AND tag:" (nth 0 tag))))) (concat " AND tag:" (nth 0 tag))))
(concat (nth 1 root_tag) (nth 1 tag)))
t))) t)))
(string-join searches "\n")) (string-join searches "\n"))
#+end_src #+end_src
#+begin_src emacs-lisp :noweb yes #+begin_src emacs-lisp :noweb yes
(setq notmuch-saved-searches (setq notmuch-saved-searches
'((:name "drafts" :query "tag:draft") '((:name "drafts" :query "tag:draft" :key "d")
<<format-notmuch-saved-searches()>>)) <<format-notmuch-saved-searches()>>))
#+end_src #+end_src
#+begin_src emacs-lisp
(general-define-key
:states '(normal visual)
:keymaps '(notmuch-hello-mode-map)
"f" #'notmuch-jump-search)
#+end_src
** Signing messages ** Signing messages
#+begin_src emacs-lisp #+begin_src emacs-lisp
(with-eval-after-load 'notmuch (with-eval-after-load 'notmuch