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 --- .../evil-collection/modes/with-editor/README.org | 17 ++++++++ .../with-editor/evil-collection-with-editor.el | 45 ++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 .config/emacs/lisp/evil-collection/modes/with-editor/README.org create mode 100644 .config/emacs/lisp/evil-collection/modes/with-editor/evil-collection-with-editor.el (limited to '.config/emacs/lisp/evil-collection/modes/with-editor') diff --git a/.config/emacs/lisp/evil-collection/modes/with-editor/README.org b/.config/emacs/lisp/evil-collection/modes/with-editor/README.org new file mode 100644 index 0000000..7007a69 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/with-editor/README.org @@ -0,0 +1,17 @@ +* with-editor + + Evil bindings for [[https://github.com/magit/with-editor][with-editor]], used for editing git commit messages + and similar =$EDITOR= sessions inside Emacs. + + Upstream already remaps =evil-quit=, =evil-save-and-close= and + =evil-save-modified-and-close= to =with-editor-cancel= / + =with-editor-finish=, so =:q=, =:wq= and =ZZ=/=ZQ= work out of the box. + evil-collection adds explicit normal-state =ZQ= and =ZZ= so they are + not subject to evil's save-modified semantics. + +** with-editor-mode-map (normal state) + + | Command | Original | Evil | + |----------------------+-----------+------| + | =with-editor-cancel= | =C-c C-k= | =ZQ= | + | =with-editor-finish= | =C-c C-c= | =ZZ= | diff --git a/.config/emacs/lisp/evil-collection/modes/with-editor/evil-collection-with-editor.el b/.config/emacs/lisp/evil-collection/modes/with-editor/evil-collection-with-editor.el new file mode 100644 index 0000000..91199a1 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/with-editor/evil-collection-with-editor.el @@ -0,0 +1,45 @@ +;;; evil-collection-with-editor.el --- Bindings for `with-editor' -*- lexical-binding: t -*- + +;; Copyright (C) 2024 Tianshu Wang + +;; Author: Tianshu Wang +;; Maintainer: James Nguyen +;; Pierre Neidhardt +;; URL: https://github.com/emacs-evil/evil-collection +;; Version: 0.0.1 +;; Package-Requires: ((emacs "26.3")) +;; Keywords: evil, emacs, 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 `with-editor'. + +;;; Code: +(require 'evil-collection) +(require 'with-editor nil t) + +(defvar with-editor-mode-map) + +(defconst evil-collection-with-editor-maps '(with-editor-mode-map)) + +;;;###autoload +(defun evil-collection-with-editor-setup () + "Set up `evil' bindings for `with-editor'." + (evil-collection-define-key 'normal 'with-editor-mode-map + "ZQ" 'with-editor-cancel + "ZZ" 'with-editor-finish)) + +(provide 'evil-collection-with-editor) +;;; evil-collection-with-editor.el ends here -- cgit v1.2.3