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")
(setq notmuch-saved-searches
'((:name "drafts" :query "tag:draft")
(:name "main (inbox)" :query "tag:main AND tag:inbox")
(:name "main (unread)" :query "tag:main AND tag:unread")
(:name "main (sent)" :query "tag:main AND tag:sent")
(:name "main (all mail)" :query "tag:main")
(:name "progin (inbox)" :query "tag:progin AND tag:inbox")
(:name "progin (unread)" :query "tag:progin AND tag:unread")
(:name "progin (sent)" :query "tag:progin AND tag:sent")
(:name "progin (all mail)" :query "tag:progin")
(:name "pvkorytov (inbox)" :query "tag:pvkorytov AND tag:inbox")
(:name "pvkorytov (unread)" :query "tag:pvkorytov AND tag:unread")
(:name "pvkorytov (sent)" :query "tag:pvkorytov AND tag:sent")
(:name "pvkorytov (all mail)" :query "tag:pvkorytov")))
'((:name "drafts" :query "tag:draft" :key "d")
(:name "main (inbox)" :query "tag:main AND tag:inbox" :key "mi")
(:name "main (unread)" :query "tag:main AND tag:unread" :key "mu")
(:name "main (sent)" :query "tag:main AND tag:sent" :key "ms")
(:name "main (all mail)" :query "tag:main" :key "ma")
(:name "progin (inbox)" :query "tag:progin AND tag:inbox" :key "pi")
(:name "progin (unread)" :query "tag:progin AND tag:unread" :key "pu")
(:name "progin (sent)" :query "tag:progin AND tag:sent" :key "ps")
(:name "progin (all mail)" :query "tag:progin" :key "pa")
(:name "pvkorytov (inbox)" :query "tag:pvkorytov AND tag:inbox" :key "vi")
(:name "pvkorytov (unread)" :query "tag:pvkorytov AND tag:unread" :key "vu")
(:name "pvkorytov (sent)" :query "tag:pvkorytov AND tag:sent" :key "vs")
(: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
(add-hook 'message-setup-hook 'mml-secure-sign-pgpmime))

View file

@ -451,9 +451,9 @@ Root keybindings:
#+NAME: root_tags
| Root tag | Prefix | Keybinding description |
|-----------+--------+------------------------|
| main | t | thexcloud@gmail.com |
| main | m | thexcloud@gmail.com |
| progin | p | progin6304@gmail.com |
| pvkorytov | e | pvkorytov@etu.ru |
| pvkorytov | v | pvkorytov@etu.ru |
#+NAME: filter_tags
| 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)
(add-to-list
'searches
(format "(:name \"%s\" :query \"%s\")"
(format "(:name \"%s\" :query \"%s\" :key \"%s\")"
(format "%s (%s)"
(nth 0 root_tag)
(nth 2 tag))
(concat "tag:" (nth 0 root_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)))
(string-join searches "\n"))
#+end_src
#+begin_src emacs-lisp :noweb yes
(setq notmuch-saved-searches
'((:name "drafts" :query "tag:draft")
'((:name "drafts" :query "tag:draft" :key "d")
<<format-notmuch-saved-searches()>>))
#+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
#+begin_src emacs-lisp
(with-eval-after-load 'notmuch