aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincenzo Pupillo2025-04-04 13:52:28 +0200
committerJuri Linkov2025-04-04 19:17:43 +0300
commit8c411381c69bf889243dc8a40cda22557e4b32be (patch)
tree9f5ffd24d114337a244f25cf18e0ac49b467210e
parentae6ac5cad857cca67bdceb94b870561d9265f981 (diff)
downloademacs-8c411381c69bf889243dc8a40cda22557e4b32be.tar.gz
emacs-8c411381c69bf889243dc8a40cda22557e4b32be.zip
; Fix last change (bug#77017)
* lisp/textmodes/html-ts-mode.el (html-ts-mode): Avoid the warning if the html language library is not installed. Avoids warning if html language library is not installed when trying to associate mode with filename patterns. * lisp/textmodes/html-ts-mode.el: Revert the last changes. Avoids warning if any of the html, javascript, css language libraries are not installed when attempting to associate mode with filename templates.
-rw-r--r--lisp/textmodes/html-ts-mode.el4
-rw-r--r--lisp/textmodes/mhtml-ts-mode.el16
2 files changed, 4 insertions, 16 deletions
diff --git a/lisp/textmodes/html-ts-mode.el b/lisp/textmodes/html-ts-mode.el
index 5df489db3e7..30d1f080b96 100644
--- a/lisp/textmodes/html-ts-mode.el
+++ b/lisp/textmodes/html-ts-mode.el
@@ -144,7 +144,7 @@ Return nil if there is no name or if NODE is not a defun node."
144 "Major mode for editing Html, powered by tree-sitter." 144 "Major mode for editing Html, powered by tree-sitter."
145 :group 'html 145 :group 'html
146 146
147 (unless (treesit-ready-p 'html) 147 (unless (treesit-ready-p 'html t)
148 (error "Tree-sitter for HTML isn't available")) 148 (error "Tree-sitter for HTML isn't available"))
149 149
150 (setq treesit-primary-parser (treesit-parser-create 'html)) 150 (setq treesit-primary-parser (treesit-parser-create 'html))
@@ -180,7 +180,7 @@ Return nil if there is no name or if NODE is not a defun node."
180 180
181(derived-mode-add-parents 'html-ts-mode '(html-mode)) 181(derived-mode-add-parents 'html-ts-mode '(html-mode))
182 182
183(if (treesit-ready-p 'html) 183(if (treesit-ready-p 'html t)
184 (add-to-list 'auto-mode-alist '("\\.html\\'" . html-ts-mode))) 184 (add-to-list 'auto-mode-alist '("\\.html\\'" . html-ts-mode)))
185 185
186(provide 'html-ts-mode) 186(provide 'html-ts-mode)
diff --git a/lisp/textmodes/mhtml-ts-mode.el b/lisp/textmodes/mhtml-ts-mode.el
index 22c0455a4ee..25af6a0a1e0 100644
--- a/lisp/textmodes/mhtml-ts-mode.el
+++ b/lisp/textmodes/mhtml-ts-mode.el
@@ -52,21 +52,11 @@
52(require 'treesit) 52(require 'treesit)
53(require 'css-mode) ;; for embed css into html 53(require 'css-mode) ;; for embed css into html
54(require 'js) ;; for embed javascript into html 54(require 'js) ;; for embed javascript into html
55(require 'html-ts-mode)
55 56
56(eval-when-compile 57(eval-when-compile
57 (require 'rx)) 58 (require 'rx))
58 59
59;; Prevent compile warnings.
60(defvar html-ts-mode-indent-offset)
61(defvar html-ts-mode--treesit-font-lock-feature-list)
62(defvar html-ts-mode--font-lock-settings)
63(defvar html-ts-mode--treesit-things-settings)
64(defvar html-ts-mode--treesit-defun-type-regexp)
65(defvar html-ts-mode--indent-rules)
66(defvar html-ts-mode--treesit-simple-imenu-settings)
67(declare-function html-ts-mode--outline-predicate "html-ts-mode.el")
68(declare-function html-ts-mode--defun-name "html-ts-mode.el")
69
70;; This tells the byte-compiler where the functions are defined. 60;; This tells the byte-compiler where the functions are defined.
71;; Is only needed when a file needs to be able to byte-compile 61;; Is only needed when a file needs to be able to byte-compile
72;; in a Emacs not built with tree-sitter library. 62;; in a Emacs not built with tree-sitter library.
@@ -463,8 +453,6 @@ Powered by tree-sitter."
463 (error "Tree-sitter parsers for HTML isn't available. You can 453 (error "Tree-sitter parsers for HTML isn't available. You can
464 install the parsers with M-x `mhtml-ts-mode-install-parsers'") 454 install the parsers with M-x `mhtml-ts-mode-install-parsers'")
465 455
466 (require 'html-ts-mode)
467
468 ;; When an language is embedded, you should initialize some variable 456 ;; When an language is embedded, you should initialize some variable
469 ;; just like it's done in the original mode. 457 ;; just like it's done in the original mode.
470 458
@@ -601,7 +589,7 @@ Powered by tree-sitter."
601;; Add some extra parents. 589;; Add some extra parents.
602(derived-mode-add-parents 'mhtml-ts-mode '(css-mode js-mode)) 590(derived-mode-add-parents 'mhtml-ts-mode '(css-mode js-mode))
603 591
604(when (and (treesit-ready-p 'html) (treesit-ready-p 'javascript) (treesit-ready-p 'css)) 592(when (and (treesit-ready-p 'html t) (treesit-ready-p 'javascript t) (treesit-ready-p 'css t))
605 (add-to-list 593 (add-to-list
606 'auto-mode-alist '("\\.[sx]?html?\\(\\.[a-zA-Z_]+\\)?\\'" . mhtml-ts-mode))) 594 'auto-mode-alist '("\\.[sx]?html?\\(\\.[a-zA-Z_]+\\)?\\'" . mhtml-ts-mode)))
607 595