diff options
| -rw-r--r-- | mu4e/meson.build | 5 | ||||
| -rw-r--r-- | mu4e/mu4e-transient.el | 41 | ||||
| -rw-r--r-- | mu4e/mu4e.el | 1 | ||||
| -rw-r--r-- | mu4e/mu4e.texi | 9 |
4 files changed, 38 insertions, 18 deletions
diff --git a/mu4e/meson.build b/mu4e/meson.build index 0c2be13..a0142bf 100644 --- a/mu4e/meson.build +++ b/mu4e/meson.build @@ -1,4 +1,4 @@ -## Copyright (C) 2022-2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> +## Copyright (C) 2022-2026 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> ## ## 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 @@ -94,8 +94,7 @@ endif # #... so let's not do that! -# byte compile the sources that can be byte-compiled. This may exclude mu4e-transient.el and -# mu4e-dbus.el +# byte compile the sources that can be byte-compiled. This may exclude mu4e-dbus.el foreach src : mu4e_bc_srcs target_name= '@BASENAME@.elc' target_path = join_paths(meson.current_build_dir(), target_name) diff --git a/mu4e/mu4e-transient.el b/mu4e/mu4e-transient.el index 8dd0636..1f432b4 100644 --- a/mu4e/mu4e-transient.el +++ b/mu4e/mu4e-transient.el @@ -1,13 +1,32 @@ -;;; mu4e-transient.el --- -*- coding: utf-8; lexical-binding: t -*- -;; -;; Copyright (C) 2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> +;;; mu4e.el --- Mu-based mua for emacs -*- lexical-binding: t -*- + +;; Copyright (C) 2025-2026 Dirk-Jan C. Binnema + +;; Author: Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> +;; Maintainer: Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> + +;; This file is not part of GNU Emacs. + +;; SPDX-License-Identifier: GPL-3.0-or-later + +;; mu4e 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. + +;; mu4e 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 mu4e. If not, see <http://www.gnu.org/licenses/>. ;;; Commentary: ;;; -;;; Define "transients" for some mu4e functionality. +;;; Define a "transient" menu for some mu4e functionality. ;;; Code: -(require 'mu4e) (require 'mu4e-bookmarks) (require 'mu4e-compose) (require 'mu4e-draft) @@ -20,6 +39,9 @@ ;; Helpers. + +(declare-function mu4e "mu4e") + (defun mu4e--toggle-description(name val) "Return a string for a transient toggle with NAME. Show On/Off based on value VAL." @@ -137,6 +159,9 @@ toggle-function is created." ;;("a" "archive") ]]) + + +;;;###autoload(autoload 'mu4e-transient-menu "mu4e-transient" nil t) (transient-define-prefix mu4e-transient-menu() "Mu4e main menu." [["Main" @@ -150,9 +175,9 @@ toggle-function is created." (format "Context %s" (if ctx (propertize (mu4e-context-name ctx) 'face 'transient-value) ""))))) - ("d" "Docs & links" mu4e--prefix-docs-links) - ("D" "Debug/tweaks..." mu4e--prefix-debug-tweaks) - ("M-q" "Quit" mu4e-quit)] + ("d" "Docs & links" mu4e--prefix-docs-links) + ("D" "Debug/tweaks..." mu4e--prefix-debug-tweaks) + ("M-q" "Quit" mu4e-quit)] ["Search" ("b" "Bookmark" mu4e-search-bookmark) ("j" "Maildir" mu4e-search-maildir) diff --git a/mu4e/mu4e.el b/mu4e/mu4e.el index a172f75..75e3ed2 100644 --- a/mu4e/mu4e.el +++ b/mu4e/mu4e.el @@ -45,6 +45,7 @@ (require 'mu4e-notification) (require 'mu4e-server) ;; communication with backend +(require 'mu4e-transient) (when mu4e-speedbar-support (require 'mu4e-speedbar)) ;; support for speedbar (when mu4e-org-support diff --git a/mu4e/mu4e.texi b/mu4e/mu4e.texi index 12e8387..483ec85 100644 --- a/mu4e/mu4e.texi +++ b/mu4e/mu4e.texi @@ -3624,13 +3624,8 @@ the counts to latest known ones. When in the main-view, you can use @section Transient @cindex transient -@code{mu4e} has experimental support for the ``transient'' menus, as per -@ref{(transient) Top}. Because ``transient'' is not automatically available in -all Emacs version that @code{mu4e} support, you need to manually enable it: -@lisp -(when (require 'mu4e-transient nil 'noerror) - (global-set-key (kbd "C-c m") mu #'mu4e-transient-menu)) -@end lisp +@code{mu4e} has support for the ``transient'' menus, as per @ref{(transient) +Top}, through @kbd{M-x mu4e-transient-menu}, or bind it to some key. @node Desktop notifications @section Desktop notifications |
