mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-05 22:20:24 -08:00
Improve hideshow support for elixir-ts-mode and heex-ts-mode
* lisp/progmodes/elixir-ts-mode.el (elixir-ts--thing-settings): Add 'defun' thing. (elixir-ts-mode): Set 'hs-treesit-things'. * lisp/progmodes/heex-ts-mode.el (heex-ts-mode): Set 'hs-treesit-things'. Use bos/eos instead of bol/eol.
This commit is contained in:
parent
4358838a3b
commit
d059e7516e
2 changed files with 7 additions and 4 deletions
|
|
@ -591,7 +591,8 @@
|
||||||
"Tree-sitter font-lock feature list.")
|
"Tree-sitter font-lock feature list.")
|
||||||
|
|
||||||
(defvar elixir-ts--thing-settings
|
(defvar elixir-ts--thing-settings
|
||||||
`((sexp (not (or (and named
|
`((defun ,(rx bos "call" eos))
|
||||||
|
(sexp (not (or (and named
|
||||||
,(rx bos (or "source" "keywords" "comment")
|
,(rx bos (or "source" "keywords" "comment")
|
||||||
eos))
|
eos))
|
||||||
(and anonymous
|
(and anonymous
|
||||||
|
|
@ -798,7 +799,8 @@ Return nil if NODE is not a defun node or doesn't have a name."
|
||||||
treesit-sexp-thing 'sexp
|
treesit-sexp-thing 'sexp
|
||||||
;; But still use 'list' for `down-list' and `up-list'
|
;; But still use 'list' for `down-list' and `up-list'
|
||||||
treesit-sexp-thing-down-list 'list
|
treesit-sexp-thing-down-list 'list
|
||||||
treesit-sexp-thing-up-list 'list)))
|
treesit-sexp-thing-up-list 'list
|
||||||
|
hs-treesit-things '(or defun sexp))))
|
||||||
|
|
||||||
(derived-mode-add-parents 'elixir-ts-mode '(elixir-mode))
|
(derived-mode-add-parents 'elixir-ts-mode '(elixir-mode))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -209,7 +209,7 @@ Return nil if NODE is not a defun node or doesn't have a name."
|
||||||
|
|
||||||
;; Navigation.
|
;; Navigation.
|
||||||
(setq-local treesit-defun-type-regexp
|
(setq-local treesit-defun-type-regexp
|
||||||
(rx bol (or "component" "tag" "slot") eol))
|
(rx bos (or "component" "tag" "slot") eos))
|
||||||
(setq-local treesit-defun-name-function #'heex-ts--defun-name)
|
(setq-local treesit-defun-name-function #'heex-ts--defun-name)
|
||||||
|
|
||||||
;; Imenu
|
;; Imenu
|
||||||
|
|
@ -261,7 +261,8 @@ Return nil if NODE is not a defun node or doesn't have a name."
|
||||||
|
|
||||||
;; Enable the 'sexp' navigation by default
|
;; Enable the 'sexp' navigation by default
|
||||||
(setq-local forward-sexp-function #'treesit-forward-sexp
|
(setq-local forward-sexp-function #'treesit-forward-sexp
|
||||||
treesit-sexp-thing 'sexp)))
|
treesit-sexp-thing 'sexp
|
||||||
|
hs-treesit-things 'list)))
|
||||||
|
|
||||||
(derived-mode-add-parents 'heex-ts-mode '(heex-mode))
|
(derived-mode-add-parents 'heex-ts-mode '(heex-mode))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue