diff --git a/define-repeat-map.el b/define-repeat-map.el index 41c439f..6c0a152 100644 --- a/define-repeat-map.el +++ b/define-repeat-map.el @@ -4,7 +4,7 @@ ;; Author: Case Duckworth ;; Keywords: convenience -;; URL: +;; URL: https://tildegit.org/acdw/define-repeat-map.el/ ;;; License: @@ -24,11 +24,11 @@ ;;; Code: (defun define-repeat-map--make-alias (cmd map) - "Internal. Make an alias for CMD in repeat-map MAP." + "Internal. Make an alias for CMD in `repeat-map' MAP." (intern (concat (symbol-name cmd) "|" (symbol-name map)))) -(defun define-repeat-map--map-commands (map fn args) +(defun define-repeat-map--map-commands (fn args) "Internal. Map FN over ARGS, whch are commands in MAP." (let (res) (dolist (arg args) @@ -37,7 +37,7 @@ (reverse res))) (defun define-repeat-map--define-keys (map fn args) - "Internal. Map `define-key' over ARGS, transorming them with FN." + "Internal. Map `define-key' in MAP over ARGS, transorming them with FN." (unless (zerop (mod (length args) 2)) (error "Wrong number of args")) (let (res) @@ -49,24 +49,24 @@ (reverse res))) ;;;###autoload -(defmacro define-repeat-map (name &rest args) - "Define a repeat-map, NAME-repeat-map, and bind keys to it. - Each ARG is a list of lists containing keybind definitions of - the form (KEY DEFINITION) KEY is anything `kbd' can recognize, - and DEFINITION is passed directly to `define-key'. +(defmacro define-repeat-map (name &rest keys) + "Define a `repeat-map', NAME -repeat-map, and bind KEYS to it. +Each ARG is a list of lists containing keybind definitions of +the form (KEY DEFINITION) KEY is anything `kbd' can recognize, +and DEFINITION is passed directly to `define-key'. - Optionally, the car of an arglist can contain the following - symbols, which changes the behavior of the key definitions in the - rest of the list: +Optionally, the car of an arglist can contain the following +symbols, which changes the behavior of the key definitions in the +rest of the list: - :enter - Provided commands can enter the repeat-map, but aren't - bound in the map. They need to be bound elsewhere, however. +:enter - Provided commands can enter the `repeat-map', but aren't +bound in the map. They need to be bound elsewhere, however. - :exit - Keys are bound in the repeat-map, but can't enter the - map. Their invocation exits the repeat-map. +:exit - Keys are bound in the `repeat-map', but can't enter the +map. Their invocation exits the `repeat-map'. - :continue - Keys are bound in the repeat-map, but can't enter the - map. However, their invocations keep the repeat-map active." +:continue - Keys are bound in the `repeat-map', but can't enter the +map. However, their invocations keep the `repeat-map' active." (declare (indent 1)) (let ((define-repeat-map--result) (map (intern (concat (symbol-name name) "-repeat-map")))) @@ -75,8 +75,8 @@ "Defined by `define-repeat-map'.") define-repeat-map--result) - ;; Iterate through ARGS - (dolist (arg args) + ;; Iterate through KEYS + (dolist (arg keys) (pcase (car arg) (:enter ;; Add the map to the commands' repeat-map property.