* lisp/treesit.el (treesit-declare-unavailable-functions):
Declare 'treesit-language-abi-version' and 'treesit-library-abi-version'.
* lisp/progmodes/elixir-ts-mode.el (elixir-ts--range-rules):
* lisp/progmodes/heex-ts-mode.el (heex-ts--range-rules):
* lisp/progmodes/rust-ts-mode.el (treesit-language-source-alist):
Guard with 'treesit-available-p'.
(cherry picked from commit
8fb45fcaedbe1b89bab54406c8739404d0ad35bc)
"`treesit-thing-settings' for Elixir.")
(defvar elixir-ts--range-rules
- (treesit-range-rules
- :embed 'heex
- :host 'elixir
- '((sigil (sigil_name) @_name
- (:match "^[HF]$" @_name)
- (quoted_content) @heex))))
+ (when (treesit-available-p)
+ (treesit-range-rules
+ :embed 'heex
+ :host 'elixir
+ '((sigil (sigil_name) @_name
+ (:match "^[HF]$" @_name)
+ (quoted_content) @heex)))))
(defvar heex-ts--range-rules)
(defvar heex-ts--thing-settings)
"`treesit-thing-settings' for HEEx.")
(defvar heex-ts--range-rules
- (treesit-range-rules
- :embed 'elixir
- :host 'heex
- '((directive [(partial_expression_value)
- (ending_expression_value)]
- @cap))
-
- :embed 'elixir
- :host 'heex
- :local t
- '((directive (expression_value) @cap)
- (expression (expression_value) @cap))))
+ (when (treesit-available-p)
+ (treesit-range-rules
+ :embed 'elixir
+ :host 'heex
+ '((directive [(partial_expression_value)
+ (ending_expression_value)]
+ @cap))
+
+ :embed 'elixir
+ :host 'heex
+ :local t
+ '((directive (expression_value) @cap)
+ (expression (expression_value) @cap)))))
(defvar elixir-ts--font-lock-settings)
(defvar elixir-ts--font-lock-feature-list)
(add-to-list
'treesit-language-source-alist
`(rust "https://github.com/tree-sitter/tree-sitter-rust"
- ,(if (< (treesit-library-abi-version) 15) "v0.23.2" "v0.24.0"))
+ ,(when (treesit-available-p)
+ (if (< (treesit-library-abi-version) 15) "v0.23.2" "v0.24.0")))
t)
(defcustom rust-ts-mode-indent-offset 4
(declare-function treesit-language-available-p "treesit.c")
(declare-function treesit-language-version "treesit.c")
+ (declare-function treesit-language-abi-version "treesit.c")
+ (declare-function treesit-library-abi-version "treesit.c")
+
(declare-function treesit-parser-p "treesit.c")
(declare-function treesit-node-p "treesit.c")
(declare-function treesit-compiled-query-p "treesit.c")