diff --git a/init.el b/init.el index 2912128..60fc46a 100644 --- a/init.el +++ b/init.el @@ -162,6 +162,7 @@ (bind-key "" #'winner-undo) (bind-key "" #'winner-redo) (bind-key "" #'db/run-or-hide-eshell) + (bind-key "" #'hydra-feature-shortcuts/body) (bind-key "" #'rgrep) (bind-key "" #'hydra-zoom/body) (bind-key "" #'dictcc) @@ -554,6 +555,10 @@ :commands (endless/fill-or-unfill db/delete-trailing-whitespace-maybe db/run-or-hide-shell + db/gnus + db/org-agenda + db/scratch + db/find-user-init-file db/run-or-hide-ansi-term db/hex-to-ascii db/text-to-hex @@ -578,7 +583,8 @@ (use-package db-hydras :commands (hydra-toggle/body hydra-zoom/body - hydra-rectangle/body)) + hydra-rectangle/body + hydra-feature-shortcuts/body)) (use-package git-commit :commands (global-git-commit-mode)) diff --git a/site-lisp/db-hydras.el b/site-lisp/db-hydras.el index 017d3da..3856ac8 100644 --- a/site-lisp/db-hydras.el +++ b/site-lisp/db-hydras.el @@ -7,6 +7,7 @@ (autoload 'rectangle-exchange-point-and-mark "rect") (require 'hydra) +(require 'db-customize) (defhydra hydra-toggle (:color blue) "toggle" @@ -52,5 +53,13 @@ _h_ _l_ _o_k _y_ank ("e" rectangle-exchange-point-and-mark nil) ("o" nil nil)) +(eval + `(defhydra hydra-feature-shortcuts (:color blue) + "" + ,@(mapcar (lambda (entry) + (pcase-let ((`(,description ,shortcut ,function) entry)) + (list (string shortcut) function description))) + db/frequently-used-features))) + (provide 'db-hydras) ;; db-hydras.el ends here