A standard prefix command would do, but since piem-b4 already depends on transient, use transient here as well to provide a more helpful interface. --- piem.el | 10 +++++++++- piem.texi | 15 +++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/piem.el b/piem.el index eb7b2f8..5ad2b94 100644 --- a/piem.el +++ b/piem.el @@ -5,7 +5,7 @@ ;; Author: Kyle Meyer <kyle@kyleam.com> ;; Keywords: vc, tools ;; Version: 0.1.0 -;; Package-Requires: ((emacs "26.3")) +;; Package-Requires: ((emacs "26.3") (transient "0.2.0")) ;; Homepage: https://git.kyleam.com/piem/about/ ;; This program is free software; you can redistribute it and/or modify @@ -43,6 +43,7 @@ (require 'message) (require 'piem-maildir) (require 'rfc2047) (require 'subr-x) +(require 'transient) (require 'url) (defvar url-http-end-of-headers) @@ -699,6 +700,13 @@ (defun piem-am (mbox &optional format info coderepo) (magit-status-setup-buffer) (dired ".")))) +;;;###autoload (autoload 'piem-dispatch "piem" nil t) +(define-transient-command piem-dispatch () + "Invoke a piem command." + [("a" "apply patch" piem-am) + ("b" "call b4-am" piem-b4-am) + ("i" "inject thread into maildir" piem-inject-thread-into-maildir)]) + \f (defun piem-please () diff --git a/piem.texi b/piem.texi index 131ab44..a201948 100644 --- a/piem.texi +++ b/piem.texi @@ -119,6 +119,21 @@ designed to work with public-inbox archives.) \f @node Getting started @chapter Getting started +@findex piem-dispatch + +@code{piem-dispatch} transient +(see +@ifinfo +@ref{Top,,,transient} +@end ifinfo +@ifnotinfo +@url{https://magit.vc/manual/transient/} +@end ifnotinfo +) +provides an entry point to piem commands. +It's recommended to bind @code{piem-dispatch} to a key. However, before +most of those commands do anything useful, you need to register inboxes +and activate at least one minor mode. @node Registering inboxes @section Registering inboxes base-commit: 524862221a0928ef707cb5ab91cea8cf50bc3168 -- 2.28.0