about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--.emacs.d/lisp/init-navigation.el16
1 files changed, 15 insertions, 1 deletions
diff --git a/.emacs.d/lisp/init-navigation.el b/.emacs.d/lisp/init-navigation.el
index 0e0492d..c3b23f1 100644
--- a/.emacs.d/lisp/init-navigation.el
+++ b/.emacs.d/lisp/init-navigation.el
@@ -14,9 +14,23 @@
        (cdr (ring-ref avy-ring 0))))
     t)
   (add-to-list 'avy-dispatch-alist '(111 . avy-action-embark))
+  (defun avy-copy-as-kill ()
+    (interactive)
+    (avy-goto-char-timer)
+    (let ((beg (point)))
+      (avy-goto-char-timer)
+      (copy-region-as-kill beg (point))))
+  (defun avy-kill-in-line ()
+    (interactive)
+    (avy-goto-char-timer)
+    (let ((beg (point)))
+      (call-interactively 'avy-goto-char-in-line)
+      (copy-region-as-kill beg (point))))
   :bind
   ("C-'" . avy-goto-char-timer)
-  ("C-;" . avy-goto-char-in-line))
+  ("C-;" . avy-goto-char-in-line)
+  ("C-c C-'" . avy-copy-as-kill)
+  ("C-c C-;" . avy-copy-as-kill-in-line))
 
 (use-package smartscan
   :config