From: Vincenzo Pupillo Date: Fri, 4 Apr 2025 11:52:28 +0000 (+0200) Subject: ; Fix last change (bug#77017) X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=591b82ec92750c9deade0f0e89c7c14fb6edec8d;p=emacs.git ; 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. (cherry picked from commit 8c411381c69bf889243dc8a40cda22557e4b32be) --- 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." "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) diff --git a/lisp/textmodes/mhtml-ts-mode.el b/lisp/textmodes/mhtml-ts-mode.el index 0dc39069e1b..bd49af1316d 100644 --- a/lisp/textmodes/mhtml-ts-mode.el +++ b/lisp/textmodes/mhtml-ts-mode.el @@ -52,21 +52,11 @@ (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)))