diff options
author | Raúl Benencia <id@rbenencia.name> | 2024-10-27 17:07:04 -0700 |
---|---|---|
committer | Raúl Benencia <id@rbenencia.name> | 2024-10-27 17:07:04 -0700 |
commit | 80936a2ca09153463ef4ea9c3a976d87679f55b9 (patch) | |
tree | c6617f29b56779e677dca25f8039821a801210f8 /.emacs.d/rul-lisp/packages/rul-bindings.el | |
parent | b596fca706bff857447568c2e99ce08eb5f44174 (diff) |
emacs: mv hydra.el and global bindings to package rul-bindings
Diffstat (limited to '.emacs.d/rul-lisp/packages/rul-bindings.el')
-rw-r--r-- | .emacs.d/rul-lisp/packages/rul-bindings.el | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/.emacs.d/rul-lisp/packages/rul-bindings.el b/.emacs.d/rul-lisp/packages/rul-bindings.el new file mode 100644 index 0000000..f337ee0 --- /dev/null +++ b/.emacs.d/rul-lisp/packages/rul-bindings.el @@ -0,0 +1,59 @@ +;; Global keybindings +(global-set-key (kbd "C-c R") 'revert-buffer) +(global-set-key (kbd "C-c w") 'whitespace-cleanup) + +(defun help/insert-em-dash () + "Inserts an EM-DASH (not a HYPEN, not an N-DASH)" + (interactive) + (insert "—")) + +(global-set-key (kbd "C--") #'help/insert-em-dash) + +(use-package hydra + :ensure t + :defer 1) + +;; tab-bar +(defhydra hydra-tab-bar (:color amaranth) + "Tab Bar Operations" + ("t" tab-new "Create a new tab" :column "Creation" :exit t) + ("d" dired-other-tab "Open Dired in another tab") + ("f" find-file-other-tab "Find file in another tab") + ("x" tab-close "Close current tab") + ("m" tab-move "Move current tab" :column "Management") + ("r" tab-rename "Rename Tab") + ("<return>" tab-bar-select-tab-by-name "Select tab by name" :column "Navigation") + ("l" tab-next "Next Tab") + ("j" tab-previous "Previous Tab") + ("q" nil "Exit" :exit t)) + +(global-set-key (kbd "C-x t") 'hydra-tab-bar/body) + +;; Zoom +(defhydra hydra-zoom () + "zoom" + ("g" text-scale-increase "in") + ("l" text-scale-decrease "out")) + +(global-set-key (kbd "C-c z") 'hydra-zoom/body) + +;; Go +(defhydra hydra-go () + "zoom" + ("=" gofmt :exit t) + ("c" go-coverage :exit t)) + +;; vterm +(defhydra hydra-vterm () + "zoom" + ("t" multi-vterm "Open a terminal" :exit t) + ("d" multi-vterm-dedicated-open "Dedicated" :exit t) + ("p" multi-vterm-prev "Previous terminal") + ("n" multi-vterm-next "Next terminal") + ("r" multi-vterm-rename-buffer "Rename buffer" :exit t) + ) + +(global-set-key (kbd "C-c t") 'hydra-vterm/body) +(global-set-key (kbd "C-c m") 'hydra-go/body) + +(provide 'rul-bindings) |