[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master c06c006 02/45: Use set/defvar for keymap
From: |
Oleh Krehel |
Subject: |
[elpa] master c06c006 02/45: Use set/defvar for keymap |
Date: |
Thu, 16 Apr 2015 12:45:39 +0000 |
branch: master
commit c06c006b69c321937a3798ed6798a47d6a6dccd2
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>
Use set/defvar for keymap
* hydra.el (defhydra): Update. This should facilitate debugging, since a
plain defvar wouldn't be re-evaluated.
* hydra-test.el (hydra-red-error): Update test.
(hydra-blue-toggle): Update test.
(hydra-amaranth-vi): Update test.
(hydra-zoom-duplicate-1): Update test.
(hydra-zoom-duplicate-2): Update test.
---
hydra-test.el | 301 ++++++++++++++++++++++++++++-----------------------------
hydra.el | 7 +-
2 files changed, 152 insertions(+), 156 deletions(-)
diff --git a/hydra-test.el b/hydra-test.el
index 9fc4ad0..de699f9 100644
--- a/hydra-test.el
+++ b/hydra-test.el
@@ -37,37 +37,36 @@
("k" previous-error "prev")
("SPC" hydra-repeat "rep" :bind nil)))
'(progn
- (defvar hydra-error/keymap
- (quote (keymap (7 . hydra-keyboard-quit)
- (32 . hydra-repeat)
- (107 . hydra-error/previous-error)
- (106 . hydra-error/next-error)
- (104 . hydra-error/first-error)
- (switch-frame . hydra--handle-switch-frame)
- (kp-subtract . hydra--negative-argument)
- (kp-9 . hydra--digit-argument)
- (kp-8 . hydra--digit-argument)
- (kp-7 . hydra--digit-argument)
- (kp-6 . hydra--digit-argument)
- (kp-5 . hydra--digit-argument)
- (kp-4 . hydra--digit-argument)
- (kp-3 . hydra--digit-argument)
- (kp-2 . hydra--digit-argument)
- (kp-1 . hydra--digit-argument)
- (kp-0 . hydra--digit-argument)
- (57 . hydra--digit-argument)
- (56 . hydra--digit-argument)
- (55 . hydra--digit-argument)
- (54 . hydra--digit-argument)
- (53 . hydra--digit-argument)
- (52 . hydra--digit-argument)
- (51 . hydra--digit-argument)
- (50 . hydra--digit-argument)
- (49 . hydra--digit-argument)
- (48 . hydra--digit-argument)
- (45 . hydra--negative-argument)
- (21 . hydra--universal-argument)))
- "Keymap for hydra-error.")
+ (set (defvar hydra-error/keymap nil "Keymap for hydra-error.")
+ (quote (keymap (7 . hydra-keyboard-quit)
+ (32 . hydra-repeat)
+ (107 . hydra-error/previous-error)
+ (106 . hydra-error/next-error)
+ (104 . hydra-error/first-error)
+ (switch-frame . hydra--handle-switch-frame)
+ (kp-subtract . hydra--negative-argument)
+ (kp-9 . hydra--digit-argument)
+ (kp-8 . hydra--digit-argument)
+ (kp-7 . hydra--digit-argument)
+ (kp-6 . hydra--digit-argument)
+ (kp-5 . hydra--digit-argument)
+ (kp-4 . hydra--digit-argument)
+ (kp-3 . hydra--digit-argument)
+ (kp-2 . hydra--digit-argument)
+ (kp-1 . hydra--digit-argument)
+ (kp-0 . hydra--digit-argument)
+ (57 . hydra--digit-argument)
+ (56 . hydra--digit-argument)
+ (55 . hydra--digit-argument)
+ (54 . hydra--digit-argument)
+ (53 . hydra--digit-argument)
+ (52 . hydra--digit-argument)
+ (51 . hydra--digit-argument)
+ (50 . hydra--digit-argument)
+ (49 . hydra--digit-argument)
+ (48 . hydra--digit-argument)
+ (45 . hydra--negative-argument)
+ (21 . hydra--universal-argument))))
(defun hydra-error/first-error nil "Create a hydra with a \"M-g\" body
and the heads:
\"h\": `first-error',
@@ -177,37 +176,36 @@ The body can be accessed via `hydra-error/body'."
("a" abbrev-mode "abbrev")
("q" nil "cancel")))
'(progn
- (defvar hydra-toggle/keymap
- (quote (keymap (7 . hydra-keyboard-quit)
- (113 . hydra-toggle/nil)
- (97 . hydra-toggle/abbrev-mode-and-exit)
- (102 . hydra-toggle/auto-fill-mode-and-exit)
- (116 . hydra-toggle/toggle-truncate-lines-and-exit)
- (switch-frame . hydra--handle-switch-frame)
- (kp-subtract . hydra--negative-argument)
- (kp-9 . hydra--digit-argument)
- (kp-8 . hydra--digit-argument)
- (kp-7 . hydra--digit-argument)
- (kp-6 . hydra--digit-argument)
- (kp-5 . hydra--digit-argument)
- (kp-4 . hydra--digit-argument)
- (kp-3 . hydra--digit-argument)
- (kp-2 . hydra--digit-argument)
- (kp-1 . hydra--digit-argument)
- (kp-0 . hydra--digit-argument)
- (57 . hydra--digit-argument)
- (56 . hydra--digit-argument)
- (55 . hydra--digit-argument)
- (54 . hydra--digit-argument)
- (53 . hydra--digit-argument)
- (52 . hydra--digit-argument)
- (51 . hydra--digit-argument)
- (50 . hydra--digit-argument)
- (49 . hydra--digit-argument)
- (48 . hydra--digit-argument)
- (45 . hydra--negative-argument)
- (21 . hydra--universal-argument)))
- "Keymap for hydra-toggle.")
+ (set (defvar hydra-toggle/keymap nil "Keymap for hydra-toggle.")
+ (quote (keymap (7 . hydra-keyboard-quit)
+ (113 . hydra-toggle/nil)
+ (97 . hydra-toggle/abbrev-mode-and-exit)
+ (102 . hydra-toggle/auto-fill-mode-and-exit)
+ (116 . hydra-toggle/toggle-truncate-lines-and-exit)
+ (switch-frame . hydra--handle-switch-frame)
+ (kp-subtract . hydra--negative-argument)
+ (kp-9 . hydra--digit-argument)
+ (kp-8 . hydra--digit-argument)
+ (kp-7 . hydra--digit-argument)
+ (kp-6 . hydra--digit-argument)
+ (kp-5 . hydra--digit-argument)
+ (kp-4 . hydra--digit-argument)
+ (kp-3 . hydra--digit-argument)
+ (kp-2 . hydra--digit-argument)
+ (kp-1 . hydra--digit-argument)
+ (kp-0 . hydra--digit-argument)
+ (57 . hydra--digit-argument)
+ (56 . hydra--digit-argument)
+ (55 . hydra--digit-argument)
+ (54 . hydra--digit-argument)
+ (53 . hydra--digit-argument)
+ (52 . hydra--digit-argument)
+ (51 . hydra--digit-argument)
+ (50 . hydra--digit-argument)
+ (49 . hydra--digit-argument)
+ (48 . hydra--digit-argument)
+ (45 . hydra--negative-argument)
+ (21 . hydra--universal-argument))))
(defun hydra-toggle/toggle-truncate-lines-and-exit nil "Create a hydra
with no body and the heads:
\"t\": `toggle-truncate-lines',
@@ -312,41 +310,40 @@ The body can be accessed via `hydra-toggle/body'."
("k" previous-line)
("q" nil "quit")))
'(progn
- (defvar hydra-vi/keymap
- (quote (keymap (t lambda nil (interactive)
- (message "An amaranth Hydra can only exit through a
blue head")
- (hydra-set-transient-map hydra-curr-map t)
- (when hydra-is-helpful (unless hydra-lv (sit-for
0.8))
- (hydra-vi/hint)))
- (113 . hydra-vi/nil)
- (107 . hydra-vi/previous-line)
- (106 . hydra-vi/next-line)
- (7 . hydra-vi/hydra-keyboard-quit-and-exit)
- (switch-frame . hydra--handle-switch-frame)
- (kp-subtract . hydra--negative-argument)
- (kp-9 . hydra--digit-argument)
- (kp-8 . hydra--digit-argument)
- (kp-7 . hydra--digit-argument)
- (kp-6 . hydra--digit-argument)
- (kp-5 . hydra--digit-argument)
- (kp-4 . hydra--digit-argument)
- (kp-3 . hydra--digit-argument)
- (kp-2 . hydra--digit-argument)
- (kp-1 . hydra--digit-argument)
- (kp-0 . hydra--digit-argument)
- (57 . hydra--digit-argument)
- (56 . hydra--digit-argument)
- (55 . hydra--digit-argument)
- (54 . hydra--digit-argument)
- (53 . hydra--digit-argument)
- (52 . hydra--digit-argument)
- (51 . hydra--digit-argument)
- (50 . hydra--digit-argument)
- (49 . hydra--digit-argument)
- (48 . hydra--digit-argument)
- (45 . hydra--negative-argument)
- (21 . hydra--universal-argument)))
- "Keymap for hydra-vi.")
+ (set (defvar hydra-vi/keymap nil "Keymap for hydra-vi.")
+ (quote (keymap (t lambda nil (interactive)
+ (message "An amaranth Hydra can only exit through a
blue head")
+ (hydra-set-transient-map hydra-curr-map t)
+ (when hydra-is-helpful (unless hydra-lv (sit-for 0.8))
+ (hydra-vi/hint)))
+ (113 . hydra-vi/nil)
+ (107 . hydra-vi/previous-line)
+ (106 . hydra-vi/next-line)
+ (7 . hydra-vi/hydra-keyboard-quit-and-exit)
+ (switch-frame . hydra--handle-switch-frame)
+ (kp-subtract . hydra--negative-argument)
+ (kp-9 . hydra--digit-argument)
+ (kp-8 . hydra--digit-argument)
+ (kp-7 . hydra--digit-argument)
+ (kp-6 . hydra--digit-argument)
+ (kp-5 . hydra--digit-argument)
+ (kp-4 . hydra--digit-argument)
+ (kp-3 . hydra--digit-argument)
+ (kp-2 . hydra--digit-argument)
+ (kp-1 . hydra--digit-argument)
+ (kp-0 . hydra--digit-argument)
+ (57 . hydra--digit-argument)
+ (56 . hydra--digit-argument)
+ (55 . hydra--digit-argument)
+ (54 . hydra--digit-argument)
+ (53 . hydra--digit-argument)
+ (52 . hydra--digit-argument)
+ (51 . hydra--digit-argument)
+ (50 . hydra--digit-argument)
+ (49 . hydra--digit-argument)
+ (48 . hydra--digit-argument)
+ (45 . hydra--negative-argument)
+ (21 . hydra--universal-argument))))
(defun hydra-vi/hydra-keyboard-quit-and-exit nil "Create a hydra with no
body and the heads:
\"\": `hydra-keyboard-quit',
@@ -738,34 +735,33 @@ _f_ auto-fill-mode: %`auto-fill-function
("0" (text-scale-set 0) :bind nil :exit t)
("1" (text-scale-set 0) nil :bind nil :exit t)))
'(progn
- (defvar hydra-zoom/keymap
- (quote (keymap (7 . hydra-keyboard-quit)
- (114 . hydra-zoom/lambda-r)
- (switch-frame . hydra--handle-switch-frame)
- (kp-subtract . hydra--negative-argument)
- (kp-9 . hydra--digit-argument)
- (kp-8 . hydra--digit-argument)
- (kp-7 . hydra--digit-argument)
- (kp-6 . hydra--digit-argument)
- (kp-5 . hydra--digit-argument)
- (kp-4 . hydra--digit-argument)
- (kp-3 . hydra--digit-argument)
- (kp-2 . hydra--digit-argument)
- (kp-1 . hydra--digit-argument)
- (kp-0 . hydra--digit-argument)
- (57 . hydra--digit-argument)
- (56 . hydra--digit-argument)
- (55 . hydra--digit-argument)
- (54 . hydra--digit-argument)
- (53 . hydra--digit-argument)
- (52 . hydra--digit-argument)
- (51 . hydra--digit-argument)
- (50 . hydra--digit-argument)
- (49 . hydra-zoom/lambda-0-and-exit)
- (48 . hydra-zoom/lambda-0-and-exit)
- (45 . hydra--negative-argument)
- (21 . hydra--universal-argument)))
- "Keymap for hydra-zoom.")
+ (set (defvar hydra-zoom/keymap nil "Keymap for hydra-zoom.")
+ (quote (keymap (7 . hydra-keyboard-quit)
+ (114 . hydra-zoom/lambda-r)
+ (switch-frame . hydra--handle-switch-frame)
+ (kp-subtract . hydra--negative-argument)
+ (kp-9 . hydra--digit-argument)
+ (kp-8 . hydra--digit-argument)
+ (kp-7 . hydra--digit-argument)
+ (kp-6 . hydra--digit-argument)
+ (kp-5 . hydra--digit-argument)
+ (kp-4 . hydra--digit-argument)
+ (kp-3 . hydra--digit-argument)
+ (kp-2 . hydra--digit-argument)
+ (kp-1 . hydra--digit-argument)
+ (kp-0 . hydra--digit-argument)
+ (57 . hydra--digit-argument)
+ (56 . hydra--digit-argument)
+ (55 . hydra--digit-argument)
+ (54 . hydra--digit-argument)
+ (53 . hydra--digit-argument)
+ (52 . hydra--digit-argument)
+ (51 . hydra--digit-argument)
+ (50 . hydra--digit-argument)
+ (49 . hydra-zoom/lambda-0-and-exit)
+ (48 . hydra-zoom/lambda-0-and-exit)
+ (45 . hydra--negative-argument)
+ (21 . hydra--universal-argument))))
(defun hydra-zoom/lambda-r nil "Create a hydra with no body and the
heads:
\"r\": `(text-scale-set 0)',
@@ -834,34 +830,33 @@ The body can be accessed via `hydra-zoom/body'."
("0" (text-scale-set 0) :bind nil :exit t)
("1" (text-scale-set 0) nil :bind nil)))
'(progn
- (defvar hydra-zoom/keymap
- (quote (keymap (7 . hydra-keyboard-quit)
- (114 . hydra-zoom/lambda-r)
- (switch-frame . hydra--handle-switch-frame)
- (kp-subtract . hydra--negative-argument)
- (kp-9 . hydra--digit-argument)
- (kp-8 . hydra--digit-argument)
- (kp-7 . hydra--digit-argument)
- (kp-6 . hydra--digit-argument)
- (kp-5 . hydra--digit-argument)
- (kp-4 . hydra--digit-argument)
- (kp-3 . hydra--digit-argument)
- (kp-2 . hydra--digit-argument)
- (kp-1 . hydra--digit-argument)
- (kp-0 . hydra--digit-argument)
- (57 . hydra--digit-argument)
- (56 . hydra--digit-argument)
- (55 . hydra--digit-argument)
- (54 . hydra--digit-argument)
- (53 . hydra--digit-argument)
- (52 . hydra--digit-argument)
- (51 . hydra--digit-argument)
- (50 . hydra--digit-argument)
- (49 . hydra-zoom/lambda-r)
- (48 . hydra-zoom/lambda-0-and-exit)
- (45 . hydra--negative-argument)
- (21 . hydra--universal-argument)))
- "Keymap for hydra-zoom.")
+ (set (defvar hydra-zoom/keymap nil "Keymap for hydra-zoom.")
+ (quote (keymap (7 . hydra-keyboard-quit)
+ (114 . hydra-zoom/lambda-r)
+ (switch-frame . hydra--handle-switch-frame)
+ (kp-subtract . hydra--negative-argument)
+ (kp-9 . hydra--digit-argument)
+ (kp-8 . hydra--digit-argument)
+ (kp-7 . hydra--digit-argument)
+ (kp-6 . hydra--digit-argument)
+ (kp-5 . hydra--digit-argument)
+ (kp-4 . hydra--digit-argument)
+ (kp-3 . hydra--digit-argument)
+ (kp-2 . hydra--digit-argument)
+ (kp-1 . hydra--digit-argument)
+ (kp-0 . hydra--digit-argument)
+ (57 . hydra--digit-argument)
+ (56 . hydra--digit-argument)
+ (55 . hydra--digit-argument)
+ (54 . hydra--digit-argument)
+ (53 . hydra--digit-argument)
+ (52 . hydra--digit-argument)
+ (51 . hydra--digit-argument)
+ (50 . hydra--digit-argument)
+ (49 . hydra-zoom/lambda-r)
+ (48 . hydra-zoom/lambda-0-and-exit)
+ (45 . hydra--negative-argument)
+ (21 . hydra--universal-argument))))
(defun hydra-zoom/lambda-r nil "Create a hydra with no body and the
heads:
\"r\": `(text-scale-set 0)',
diff --git a/hydra.el b/hydra.el
index 47badef..f228e97 100644
--- a/hydra.el
+++ b/hydra.el
@@ -930,9 +930,10 @@ result of `defhydra'."
(hydra--handle-nonhead keymap name body heads)
`(progn
;; create keymap
- (defvar ,keymap-name
- ',keymap
- ,(format "Keymap for %S." name))
+ (set (defvar ,keymap-name
+ nil
+ ,(format "Keymap for %S." name))
+ ',keymap)
;; create defuns
,@(mapcar
(lambda (head)
- [elpa] master updated (22139ae -> f972634), Oleh Krehel, 2015/04/16
- [elpa] master cc6accd 04/45: hydra.el (hydra--digit-argument): Fix for Emacs 24.3, Oleh Krehel, 2015/04/16
- [elpa] master e4cae0a 03/45: hydra.el (defhydra): Simplify :cmd-name part, Oleh Krehel, 2015/04/16
- [elpa] master c06c006 02/45: Use set/defvar for keymap,
Oleh Krehel <=
- [elpa] master e7aaafb 07/45: hydra.el (hydra-pink-fallback): Allow prefix arguments, Oleh Krehel, 2015/04/16
- [elpa] master d0cc1c5 01/45: Define a keymap var for each hydra and re-use it, Oleh Krehel, 2015/04/16
- [elpa] master 666048c 10/45: Update testing setup, Oleh Krehel, 2015/04/16
- [elpa] master f9bf8fe 08/45: hydra.el (hydra-set-transient-map): Update, Oleh Krehel, 2015/04/16
- [elpa] master 60483cb 09/45: Add integration testing, Oleh Krehel, 2015/04/16
- [elpa] master 4dde4f7 11/45: hydra.el (hydra--format): Add some more symbols, Oleh Krehel, 2015/04/16
- [elpa] master 3fce2bd 12/45: Try to re-encode the input in the terminal, Oleh Krehel, 2015/04/16
- [elpa] master fa5643f 15/45: Quit Hydra for `handle-switch-frame', Oleh Krehel, 2015/04/16
- [elpa] master af39a98 14/45: Adapt to the new `hydra-set-transient-map', Oleh Krehel, 2015/04/16
- [elpa] master acdec5b 27/45: Add an integration test for digit args in amaranth, Oleh Krehel, 2015/04/16