From e48d69c606891fd51d1181249167bc06548be133 Mon Sep 17 00:00:00 2001 From: Yuan Fu Date: Mon, 17 Feb 2025 13:18:15 -0800 Subject: [PATCH] Make mhtml-ts-mode--treesit-indent-rules a function * lisp/textmodes/mhtml-ts-mode.el: (mhtml-ts-mode--treesit-indent-rules): Turn into a function. (mhtml-ts-mode): Update accordingly. (cherry picked from commit 77c7ba7facf6e7ee65e74aba71ce67723ba14ff7) --- lisp/textmodes/mhtml-ts-mode.el | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lisp/textmodes/mhtml-ts-mode.el b/lisp/textmodes/mhtml-ts-mode.el index bdb016d67dc..0d53176f166 100644 --- a/lisp/textmodes/mhtml-ts-mode.el +++ b/lisp/textmodes/mhtml-ts-mode.el @@ -315,7 +315,10 @@ NODE and PARENT are ignored." (defun ,(regexp-opt (list css--treesit-defun-type-regexp))))) "Settings for `treesit-thing-settings'.") -(defvar mhtml-ts-mode--treesit-indent-rules +;; We use a function instead of a variable, because doesn't exist when +;; at compile time (unless we `eval-when-compile'). +(defun mhtml-ts-mode--treesit-indent-rules () + "Return intent rules for `mhtml-ts-mode'." (treesit--indent-rules-optimize (append html-ts-mode--indent-rules ;; Extended rules for js and css, to @@ -535,7 +538,8 @@ Powered by tree-sitter." ;; `mhtml-ts-mode-tag-relative-indent' and can be used to indent ;; JavaScript and CSS code relative to the HTML that contains them, ;; just like in mhtml-mode. - (setq-local treesit-simple-indent-rules mhtml-ts-mode--treesit-indent-rules) + (setq-local treesit-simple-indent-rules + (mhtml-ts-mode--treesit-indent-rules)) ;; Navigation. -- 2.39.5