Closed shadowrylander closed 2 years ago
Turns out I hadn't defined the base deino / hydra
; I resolved this by changing the first-call
conditional to include the declaration if the deino / hydra
wasn't already defined, so that further invocations of the prime*
function with the same inital key don't clobber it:
(when first-call
(unless (d--g ds :current-body-plus)
(eval `(defdeino ,(intern (d--g ds :current-name)) (:color blue) nil ("`" nil "cancel"))))
(eval `(defdeino+
,(intern (meta--construct-name name))
nil
(,(d--g ds :carkeys)
,(d--g ds :current-body)
,(symbol-name (d--g ds :current-body))))))
My package
deino
is a fork ofhydra
, which allows me to create temporary keymaps; here it is being used along with my packageprime
:With following macro:
And the following
use-package
setup, where the normalize bit is also used for the:config
,:init
, and:preface
keywords as well:Using the keyword
:prime
only initializes the last form, as used in this declaration:Only
minoru
appears as a key, noturu
. All the following methods of initialization work for both:Interestingly, using
:config
with just the individualprime
calls doesn't work either: