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:
parent
dff6e44635
commit
3359d351f5
2 changed files with 70 additions and 44 deletions
|
@ -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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue