From 094ff3c83665457f2745632ab69042fef3c9e942 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Madeleine=20Sydney=20=C5=9Alaga?= Date: Mon, 27 Oct 2025 23:37:46 -0600 Subject: [PATCH] minor mode --- README.org | 7 ++++++- evil-leap.el | 21 +++++++++++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/README.org b/README.org index 0ee9278..343ae19 100644 --- a/README.org +++ b/README.org @@ -14,7 +14,12 @@ With ~use-package~ + [[https://github.com/radian-software/straight.el][Straight] :host gitlab :repo "msyds/evil-leap") :config - ;; Bind `evil-leap-forward' and `evil-leap-backward' here. + ;; Optionally rebind `evil-leap-forward' and `evil-leap-backward' from their + ;; defaults ('s'/'S'). + ;; + ;; (evil-define-key* '(motion normal) evil-leap-mode-map + ;; "s" #'evil-leap-forward + ;; "S" #'evil-leap-backward) ) #+end_src diff --git a/evil-leap.el b/evil-leap.el index 2451e99..0372951 100644 --- a/evil-leap.el +++ b/evil-leap.el @@ -446,10 +446,23 @@ Keyword arguments (interactive "") (evil-leap-directional count t)) -;; (general-define-key -;; :states '(motion normal) -;; "s" #'evil-leap-forward -;; "S" #'evil-leap-backward) + + +(defvar evil-leap-mode-map + (let ((m (make-sparse-keymap))) + (evil-define-key* '(motion normal) m + "s" #'evil-leap-forward + "S" #'evil-leap-backward) + m)) + +(define-minor-mode evil-leap-mode + "Enables `evil-leap' in the current buffer. This mode exists solely for the +associated keymap." + :keymap 'evil-leap-mode-map) + +(define-globalized-minor-mode evil-leap-global-mode + evil-leap-mode + (lambda () (evil-leap-mode 1)))