Variable: heex-ts-mode-abbrev-table
heex-ts-mode-abbrev-table is a variable defined in heex-ts-mode.el.gz.
Value
#<obarray n=1>
Documentation
Abbrev table for heex-ts-mode.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/heex-ts-mode.el.gz
;;;###autoload
(define-derived-mode heex-ts-mode html-mode "HEEx"
"Major mode for editing HEEx, powered by tree-sitter."
:group 'heex-ts
;; `treesit-ready-p' also checks for buffer size.
(when (and (treesit-ensure-installed 'heex)
(treesit-ready-p 'heex))
(setq treesit-primary-parser (treesit-parser-create 'heex))
;; Comments
(setq-local treesit-thing-settings
`((heex ,@heex-ts--thing-settings)))
;; Navigation.
(setq-local treesit-defun-type-regexp
(rx bos (or "component" "tag" "slot") eos))
(setq-local treesit-defun-name-function #'heex-ts--defun-name)
;; Imenu
(setq-local treesit-simple-imenu-settings
'(("Component" "\\`component\\'" nil nil)
("Slot" "\\`slot\\'" nil nil)
("Tag" "\\`tag\\'" nil nil)))
;; Outline minor mode
;; `heex-ts-mode' inherits from `html-mode' that sets
;; regexp-based outline variables. So need to restore
;; the default values of outline variables to be able
;; to use `treesit-outline-predicate' derived
;; from `treesit-simple-imenu-settings' above.
(kill-local-variable 'outline-heading-end-regexp)
(kill-local-variable 'outline-regexp)
(kill-local-variable 'outline-level)
(setq-local treesit-font-lock-settings heex-ts--font-lock-settings)
(setq-local treesit-simple-indent-rules heex-ts--indent-rules)
(setq-local treesit-font-lock-feature-list
heex-ts--font-lock-feature-list)
;; `treesit-ready-p' also checks for buffer size.
(when (and (treesit-ensure-installed 'elixir)
(treesit-ready-p 'elixir))
(require 'elixir-ts-mode)
(treesit-parser-create 'elixir)
(setq-local treesit-range-settings heex-ts--range-rules)
(setq-local treesit-font-lock-settings
(append treesit-font-lock-settings
elixir-ts--font-lock-settings))
(setq-local treesit-font-lock-feature-list
(treesit-merge-font-lock-feature-list
treesit-font-lock-feature-list
elixir-ts--font-lock-feature-list))
(setq-local treesit-simple-indent-rules
(append treesit-simple-indent-rules
elixir-ts--indent-rules))
(setq-local treesit-thing-settings
(append treesit-thing-settings
`((elixir ,@elixir-ts--thing-settings)))))
(treesit-major-mode-setup)
;; Enable the 'sexp' navigation by default
(setq-local forward-sexp-function #'treesit-forward-sexp
treesit-sexp-thing 'sexp
hs-treesit-things '(or defun list))))