]> git.eshelyaron.com Git - emacs.git/commitdiff
; Fix last change (bug#77017)
authorVincenzo Pupillo <v.pupillo@gmail.com>
Fri, 4 Apr 2025 11:52:28 +0000 (13:52 +0200)
committerEshel Yaron <me@eshelyaron.com>
Tue, 8 Apr 2025 05:36:36 +0000 (07:36 +0200)
* 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.

(cherry picked from commit 8c411381c69bf889243dc8a40cda22557e4b32be)

lisp/textmodes/html-ts-mode.el
lisp/textmodes/mhtml-ts-mode.el

index 5df489db3e762c64cf247724c7adaa7f4e970950..30d1f080b96dd4ad2c1689661ea3ad2bea4e15cb 100644 (file)
@@ -144,7 +144,7 @@ Return nil if there is no name or if NODE is not a defun node."
   "Major mode for editing Html, powered by tree-sitter."
   :group 'html
 
-  (unless (treesit-ready-p 'html)
+  (unless (treesit-ready-p 'html t)
     (error "Tree-sitter for HTML isn't available"))
 
   (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."
 
 (derived-mode-add-parents 'html-ts-mode '(html-mode))
 
-(if (treesit-ready-p 'html)
+(if (treesit-ready-p 'html t)
     (add-to-list 'auto-mode-alist '("\\.html\\'" . html-ts-mode)))
 
 (provide 'html-ts-mode)
index 0dc39069e1b0de76436f053e80c2eef1bb90e1ea..bd49af1316d18be5ffcdbc522b4a8e02e2799a4b 100644 (file)
 (require 'treesit)
 (require 'css-mode) ;; for embed css into html
 (require 'js) ;; for embed javascript into html
+(require 'html-ts-mode)
 
 (eval-when-compile
   (require 'rx))
 
-;; Prevent compile warnings.
-(defvar html-ts-mode-indent-offset)
-(defvar html-ts-mode--treesit-font-lock-feature-list)
-(defvar html-ts-mode--font-lock-settings)
-(defvar html-ts-mode--treesit-things-settings)
-(defvar html-ts-mode--treesit-defun-type-regexp)
-(defvar html-ts-mode--indent-rules)
-(defvar html-ts-mode--treesit-simple-imenu-settings)
-(declare-function html-ts-mode--outline-predicate "html-ts-mode.el")
-(declare-function html-ts-mode--defun-name "html-ts-mode.el")
-
 ;; This tells the byte-compiler where the functions are defined.
 ;; Is only needed when a file needs to be able to byte-compile
 ;; in a Emacs not built with tree-sitter library.
@@ -462,8 +452,6 @@ Powered by tree-sitter."
       (error "Tree-sitter parsers for HTML isn't available.  You can
     install the parsers with M-x `mhtml-ts-mode-install-parsers'")
 
-    (require 'html-ts-mode)
-
     ;; When an language is embedded, you should initialize some variable
     ;; just like it's done in the original mode.
 
@@ -600,7 +588,7 @@ Powered by tree-sitter."
 ;; Add some extra parents.
 (derived-mode-add-parents 'mhtml-ts-mode '(css-mode js-mode))
 
-(when (and (treesit-ready-p 'html) (treesit-ready-p 'javascript) (treesit-ready-p 'css))
+(when (and (treesit-ready-p 'html t) (treesit-ready-p 'javascript t) (treesit-ready-p 'css t))
   (add-to-list
    'auto-mode-alist '("\\.[sx]?html?\\(\\.[a-zA-Z_]+\\)?\\'" . mhtml-ts-mode)))