diff options
| author | Vincenzo Pupillo | 2025-04-04 13:52:28 +0200 |
|---|---|---|
| committer | Juri Linkov | 2025-04-04 19:17:43 +0300 |
| commit | 8c411381c69bf889243dc8a40cda22557e4b32be (patch) | |
| tree | 9f5ffd24d114337a244f25cf18e0ac49b467210e | |
| parent | ae6ac5cad857cca67bdceb94b870561d9265f981 (diff) | |
| download | emacs-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.el | 4 | ||||
| -rw-r--r-- | lisp/textmodes/mhtml-ts-mode.el | 16 |
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 | ||