refactor(tree-sitter): put keys on ts-mode-map
- move map definition and binding into evil-textobj-tree-sitter :config body - replace +tree-sitter-keys-mode with tree-sitter-mode as bind site - remove +tree-sitter-keys-mode from tree-sitter! autodef
This commit is contained in:
parent
7f814e5d99
commit
45ed981b41
2 changed files with 12 additions and 24 deletions
|
@ -2,8 +2,8 @@
|
|||
|
||||
;;;###autodef
|
||||
(defun tree-sitter! ()
|
||||
(turn-on-tree-sitter-mode)
|
||||
(+tree-sitter-keys-mode))
|
||||
(interactive)
|
||||
(turn-on-tree-sitter-mode))
|
||||
|
||||
;;;###autoload
|
||||
(defun +tree-sitter-goto-textobj (group &optional previous end query)
|
||||
|
|
|
@ -8,34 +8,22 @@
|
|||
;; and this highlights the entire sub tree in your code
|
||||
tree-sitter-debug-highlight-jump-region t))
|
||||
|
||||
(use-package! evil-textobj-tree-sitter
|
||||
:when (featurep! :editor evil +everywhere)
|
||||
:after tree-sitter
|
||||
:config
|
||||
|
||||
(when (featurep! :editor evil +everywhere)
|
||||
(defvar +tree-sitter-inner-text-objects-map (make-sparse-keymap))
|
||||
(defvar +tree-sitter-outer-text-objects-map (make-sparse-keymap))
|
||||
(defvar +tree-sitter-goto-previous-map (make-sparse-keymap))
|
||||
(defvar +tree-sitter-goto-next-map (make-sparse-keymap))
|
||||
|
||||
(defvar +tree-sitter-keys-mode-map
|
||||
(let ((keymap (make-sparse-keymap)))
|
||||
;; ts text objects
|
||||
(evil-define-key '(visual operator) '+tree-sitter-keys-mode
|
||||
(evil-define-key '(visual operator) 'tree-sitter-mode
|
||||
"i" +tree-sitter-inner-text-objects-map
|
||||
"a" +tree-sitter-outer-text-objects-map)
|
||||
;; ts goto nodes
|
||||
(evil-define-key 'normal '+tree-sitter-keys-mode
|
||||
(evil-define-key 'normal 'tree-sitter-mode
|
||||
"[g" +tree-sitter-goto-previous-map
|
||||
"]g" +tree-sitter-goto-next-map)
|
||||
keymap)
|
||||
"Basic keymap for tree sitter text objects")
|
||||
|
||||
(define-minor-mode +tree-sitter-keys-mode
|
||||
"A minor mode with tree sitter keybinds."
|
||||
:keymap +tree-sitter-keys-mode-map))
|
||||
|
||||
(use-package! evil-textobj-tree-sitter
|
||||
:when (featurep! :editor evil +everywhere)
|
||||
:after tree-sitter
|
||||
:config
|
||||
|
||||
(map! (:map +tree-sitter-inner-text-objects-map
|
||||
"A" (evil-textobj-tree-sitter-get-textobj ("parameter.inner" "call.inner"))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue