diff --git a/oni-notmuch.el b/oni-notmuch.el new file mode 100644 index 0000000..1ad66d6 --- /dev/null +++ b/oni-notmuch.el @@ -0,0 +1,43 @@ +;;; oni-notmuch.el --- Notmuch configuration -*- lexical-binding: t; -*- + +;; Copyright (C) 2022 Tom Willemse + +;; Author: Tom Willemse +;; Keywords: local +;; Version: 2022.0525.233008 +;; Package-Requires: (notmuch) + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . + +;;; Commentary: + +;; Configuration for the notmuch email client. + +;;; Code: + +(require 'notmuch) + +(defun oni-notmuch-search-delete-thread (&optional reverse begin end) + "Archive and mark all messages in the selected threads for deletion. +REVERSE means to reverse the operation (unarchive and don't +delete). BEGIN and END mark the beginning and end of the region +in which to mark thread." + (interactive (cons current-prefix-arg (notmuch-interactive-region))) + (notmuch-search-archive-thread reverse begin end) + (notmuch-search-tag (notmuch-tag-change-list '("deleted") reverse) begin end)) + +(define-key notmuch-search-mode-map (kbd "d") #'oni-notmuch-search-delete-thread) + +(provide 'oni-notmuch) +;;; oni-notmuch.el ends here