Fix all issues for the case when tree-sitter is disabled.

* 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'.
This commit is contained in:
Juri Linkov 2025-04-22 19:32:36 +03:00
parent 2bf3790f37
commit 8fb45fcaed
4 changed files with 24 additions and 18 deletions

View file

@ -622,12 +622,13 @@
"`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)

View file

@ -173,18 +173,19 @@ Return nil if NODE is not a defun node or doesn't have a name."
"`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))
(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))))
: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)

View file

@ -44,7 +44,8 @@
(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

View file

@ -70,6 +70,9 @@ in a Emacs not built with tree-sitter library."
(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")