Commit 7d4a74cf1bb2

Vincent Demeester <vincent@sbr.pm>
2020-01-31 14:36:42
emacs.org: add setup-hydras.el
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
1 parent 55e4bf1
Changed files (2)
lisp/setup-hydras.el
@@ -1,8 +1,4 @@
-;;; setup-hydras.el --- setup hydras
-;;; Commentary:
-;;; Code:
 ;;; -*- lexical-binding: t; -*-
-
 (defhydra hydra-goto-line (goto-map "")
   "goto-line"
   ("g" goto-line "go")
@@ -74,8 +70,3 @@ Number of marked items: %(length (dired-get-marked-files))
 (bind-key "C-y" #'hydra-yank-pop/yank)
 
 (provide 'setup-hydras)
-
-;; Local Variables:
-;; coding: utf-8
-;; indent-tabs-mode: nil
-;; End:
emacs.org
@@ -722,6 +722,86 @@
   (provide 'setup-go)
 #+end_src
 
+*** ~setup-hydras.el~
+:PROPERTIES:
+:CUSTOM_ID: h:81612e01-a0c8-42c2-a1fe-34bd1b9d8002
+:END:
+
+#+begin_src emacs-lisp :tangle lisp/setup-hydras.el
+  ;;; -*- lexical-binding: t; -*-
+  (defhydra hydra-goto-line (goto-map "")
+    "goto-line"
+    ("g" goto-line "go")
+    ("m" set-mark-command "mark" :bind nil)
+    ("q" nil "quit"))
+
+  (defhydra hydra-yank-pop ()
+    "yank"
+    ("C-y" yank nil)
+    ("M-y" yank-pop nil)
+    ("y" (yank-pop 1) "next")
+    ("Y" (yank-pop -1) "prev"))   ; or browse-kill-ring
+
+  (defhydra hydra-zoom (global-map "<f2>")
+    "zoom"
+    ("g" text-scale-increase "in")
+    ("l" text-scale-decrease "out")
+    ("r" (text-scale-set 0) "reset")
+    ("0" (text-scale-set 0) :bind nil :exit t)
+    ("1" (text-scale-set 0) nil :bind nil :exit t))
+
+  ;; Better shrink/enlarge windows
+  (defhydra hydra-resize (global-map "<f2>")
+    "resize windows"
+    ("<up>" enlarge-window "enlarge")
+    ("<down>" shrink-window "shrink")
+    ("<left>" shrink-window-horizontally "shrink horizontaly")
+    ("<right>" enlarge-window-horizontally "enlarge horizontaly"))
+
+  (defvar hide-mode-line-mode nil)
+  (defvar whitespace-mode nil)
+  (defvar subword-mode nil)
+  (defhydra hydra-toggle (:color pink :hint nil)
+    "
+  _a_ abbrev-mode:          %`abbrev-mode
+  _b_ subword-mode:         %`subword-mode
+  _d_ debug-on-error:       %`debug-on-error
+  _h_ hide-mode-line-mode   %`hide-mode-line-mode
+  _f_ auto-fill-mode:       %`auto-fill-function
+  _r_ readonly-mode:        %`buffer-read-only
+  _t_ truncate-lines        %`truncate-lines
+  _v_ visual-line-mode:     %`visual-line-mode
+  _w_ whitespace-mode:      %`whitespace-mode
+  _s_ smartparens-strict:   %`smartparens-strict-mode
+  _V_ visible-mode:         %`visible-mode
+  "
+    ("a" abbrev-mode             nil)
+    ("b" subword-mode            nil)
+    ("d" toggle-debug-on-error   nil)
+    ("f" auto-fill-mode          nil)
+    ("h" hide-mode-line-mode     nil)
+    ("r" dired-toggle-read-only  nil)
+    ("t" toggle-truncate-lines   nil)
+    ("v" visual-line-mode        nil)
+    ("V" visible-mode            nil)
+    ("w" whitespace-mode         nil)
+    ("s" smartparens-strict-mode nil)
+    ("q" nil "quit"))
+
+  (global-set-key (kbd "C-c C-v") 'hydra-toggle/body)
+
+  (defhydra hydra-marked-items (dired-mode-map "")
+    "
+  Number of marked items: %(length (dired-get-marked-files))
+  "
+    ("m" dired-mark "mark"))
+
+  (bind-key "M-y" #'hydra-yank-pop/yank-pop)
+  (bind-key "C-y" #'hydra-yank-pop/yank)
+
+  (provide 'setup-hydras)
+#+end_src
+
 *** ~setup-nix.el~
 :PROPERTIES:
 :CUSTOM_ID: h:f82d7d6f-55bf-495d-b71f-dd4719ece06e
@@ -1571,7 +1651,6 @@
   (provide 'setup-shells)
 #+end_src
 
-
 *** ~setup-style.el~
 :PROPERTIES:
 :CUSTOM_ID: h:3261211e-0ffb-44de-8a35-f3612d333c68