summaryrefslogtreecommitdiff
path: root/emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el
diff options
context:
space:
mode:
authorKjetil Orbekk <kj@orbekk.com>2023-03-12 11:45:35 -0400
committerKjetil Orbekk <kj@orbekk.com>2023-03-12 11:45:35 -0400
commit200a440c8448595b081a8225464f6cf97ef4c03f (patch)
tree2b134b9d5810572809a699366aac72e3ca40a949 /emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el
parent7964c8ce1279249e640406cfbcd4be13f3c2a2b3 (diff)
Add multiple cursors config
Diffstat (limited to 'emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el')
-rw-r--r--emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el25
1 files changed, 25 insertions, 0 deletions
diff --git a/emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el b/emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el
new file mode 100644
index 0000000..fe928cf
--- /dev/null
+++ b/emacs/.config/emacs-kj/lisp/kj-multiple-cursors.el
@@ -0,0 +1,25 @@
+;;; -*- lexical-binding: t; -*-
+
+(use-package multiple-cursors
+ :config
+ (defvar kj/multiple-cursors-map (make-sparse-keymap))
+ (define-key kj/multiple-cursors-map "." '("→ this" . mc/mark-next-like-this))
+ (define-key kj/multiple-cursors-map "," '("← this" . mc/mark-previous-like-this))
+ (define-key kj/multiple-cursors-map ">" '("⇥ this" . mc/skip-to-next-like-this))
+ (define-key kj/multiple-cursors-map "<" '("⇤ this" . mc/skip-to-previous-like-this))
+ (define-key kj/multiple-cursors-map "<" '("⇤ this" . mc/skip-to-previous-like-this))
+ (define-key kj/multiple-cursors-map "*" '("all like this" . mc/mark-all-like-this))
+ (define-key kj/multiple-cursors-map "w" '("word" . mc/mark-next-like-this-word))
+ (define-key kj/multiple-cursors-map "s" '("symbol" . mc/mark-next-like-this-symbol))
+ (define-key kj/multiple-cursors-map "(" '("symbol defun" . mc/mark-all-symbols-like-this-in-defun))
+ (define-key kj/multiple-cursors-map (kbd "DEL") '("DEL last" . mc/unmark-next-like-this))
+ (define-key kj/multiple-cursors-map (kbd "<delete>") '("DEL first" . mc/unmark-previous-like-this))
+ (global-set-key (kbd "C-c m") (cons "cursors" kj/multiple-cursors-map))
+
+ (map-keymap
+ (lambda (_key cmd)
+ (put (cdr cmd) 'repeat-map 'kj/multiple-cursors-map))
+ kj/multiple-cursors-map)
+ )
+(provide 'kj-multiple-cursors)
+