fix(tree-sitter): feature gate +tree-sitter-keys-mode

As this has a dependency on evil it makes sense to only load it when
evil is used, the entire mode is only needed for evil textobj
tree-sitter anyway
This commit is contained in:
Jeetaditya Chatterjee 2022-02-22 17:53:20 +00:00
parent 955e2d461b
commit 9c00df72d6
No known key found for this signature in database
GPG key ID: 09D54CECD2132B91

View file

@ -14,22 +14,23 @@
(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
"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
"[g" +tree-sitter-goto-previous-map
"]g" +tree-sitter-goto-next-map)
keymap)
"Basic keymap for tree sitter text objects")
(when (featurep! :editor evil +everywhere)
(defvar +tree-sitter-keys-mode-map
(let ((keymap (make-sparse-keymap)))
;; ts text objects
(evil-define-key '(visual operator) '+tree-sitter-keys-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
"[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)
(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)