mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-01 12:17:25 -05:00
Add define-key! macro; refactor config/default key fixes
I'd like to phase out map! where it isn't absolutely necessary, since it isn't very well optimized.
This commit is contained in:
@ -153,6 +153,18 @@ For example, :nvi will map to (list 'normal 'visual 'insert). See
|
||||
(defvar doom--defer nil)
|
||||
(defvar doom--local nil)
|
||||
|
||||
(defmacro define-key! (keymap key def &rest rest)
|
||||
"TODO"
|
||||
(declare (indent defun))
|
||||
`(progn
|
||||
(define-key ,keymap ,key ,def)
|
||||
,@(let (forms)
|
||||
(while rest
|
||||
(let ((key (pop rest))
|
||||
(def (pop rest)))
|
||||
(push `(define-key ,keymap ,key ,def) forms)))
|
||||
(nreverse forms))))
|
||||
|
||||
(defmacro map! (&rest rest)
|
||||
"A nightmare of a key-binding macro that will use `evil-define-key*',
|
||||
`define-key', `local-set-key' and `global-set-key' depending on context and
|
||||
|
Reference in New Issue
Block a user