From bdf9a71ab7baa2b1de9abcfd5df1a9107a55d141 Mon Sep 17 00:00:00 2001 From: Jack Jamison Date: Sun, 5 Jul 2026 01:19:30 -0400 Subject: add a bunch of emacs packages HELP --- .../lisp/evil-collection/modes/message/README.org | 18 +++++++++ .../modes/message/evil-collection-message.el | 46 ++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 .config/emacs/lisp/evil-collection/modes/message/README.org create mode 100644 .config/emacs/lisp/evil-collection/modes/message/evil-collection-message.el (limited to '.config/emacs/lisp/evil-collection/modes/message') diff --git a/.config/emacs/lisp/evil-collection/modes/message/README.org b/.config/emacs/lisp/evil-collection/modes/message/README.org new file mode 100644 index 0000000..3ef74ce --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/message/README.org @@ -0,0 +1,18 @@ +* message + + Evil bindings for [[https://www.gnu.org/software/emacs/manual/html_node/message/index.html][message-mode]], the Gnus / mail composition buffer. + + Initial state is insert. Normal-state =Z= bindings provide quick send / kill + without leaving the keyboard home row. + +** Key bindings + + | Command | Original | Evil | + |-------------------------+-----------+------| + | =message-send-and-exit= | =C-c C-c= | =ZZ= | + | =message-kill-buffer= | =C-c C-k= | =ZQ= | + | =message-dont-send= | =C-c C-d= | =ZD= | + | =mml-attach-file= | =C-c C-a= | =ZF= | + + All other =C-c= prefix bindings (goto-field, insert-signature, attach, etc.) + remain at their upstream keys. diff --git a/.config/emacs/lisp/evil-collection/modes/message/evil-collection-message.el b/.config/emacs/lisp/evil-collection/modes/message/evil-collection-message.el new file mode 100644 index 0000000..3adc543 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/message/evil-collection-message.el @@ -0,0 +1,46 @@ +;;; evil-collection-message.el --- Bindings for `message' -*- lexical-binding: t -*- + +;; Copyright (C) 2026 jessy836 + +;; Author: jessy836 +;; Maintainer: jessy836 +;; URL: https://github.com/emacs-evil/evil-collection +;; Version: 0.0.1 +;; Package-Requires: ((emacs "26.3")) +;; Keywords: evil, emacs, convenience, tools + +;; 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: +;;; Bindings for message. + +;;; Code: +(require 'evil-collection) +(require 'message nil t) + +(defvar message-mode-map) +(defconst evil-collection-message-maps '(message-mode-map)) + +;;;###autoload +(defun evil-collection-message-setup () + "Set up `evil' bindings for `message-mode'." + (evil-set-initial-state 'message-mode 'insert) + (evil-collection-define-key 'normal 'message-mode-map + "ZZ" 'message-send-and-exit + "ZQ" 'message-kill-buffer + "ZD" 'message-dont-send + "ZF" 'mml-attach-file)) + +(provide 'evil-collection-message) +;;; evil-collection-message.el ends here -- cgit v1.2.3