GNU bug report logs - #74610
31.0.50; Submitting mhtml-ts-mode, treesitter alternative to mhtml-mode

Previous Next

Package: emacs;

Reported by: Vincenzo Pupillo <v.pupillo <at> gmail.com>

Date: Fri, 29 Nov 2024 21:58:01 UTC

Severity: wishlist

Fixed in version 31.0.50

Done: Juri Linkov <juri <at> linkov.net>

Bug is archived. No further changes may be made.

Full log


Message #79 received at 74610 <at> debbugs.gnu.org (full text, mbox):

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Juri Linkov <juri <at> linkov.net>
Cc: casouri <at> gmail.com, Eli Zaretskii <eliz <at> gnu.org>, 74610 <at> debbugs.gnu.org
Subject: Re: bug#74610: 31.0.50; Submitting mhtml-ts-mode,
 treesitter alternative to mhtml-mode
Date: Sun, 09 Feb 2025 22:23:03 +0100
Ciao Juri,

In data domenica 9 febbraio 2025 18:54:27 Ora standard dell’Europa centrale, 
Juri Linkov ha scritto:
> > Ciao Eli,
> > This attached patch is the third version. Adapted to support the latest
> > changes introduced in treesit.el and js.el (as described in bug#75456).
> > @Jury, @Yuan what do you think about this version?
> 
> Thanks for the patch.
> 
> I think we need now clarify the relation
> between mhtml-ts-mode and html-ts-mode.
> 
> For example, currently I added a new function
> 'html-ts-mode--outline-predicate' to html-ts-mode.el.
> Should it be used in mhtml-ts-mode.el as well?
I have to try but I think so, mhtml-ts-mode is declared as derived from html-
ts-mode (although it is not very clear to me how derived modes work). The 
treesit-outline-predicate variable is set by html-ts-mode and mhtml-ts-mode 
inherits the same value. 

> 
> What about other settings?  Should html-ts-mode and mhtml-ts-mode
> always be kept in sync?  Or html-ts-mode should be obsoleted
> when it will be superseded by mhtml-ts-mode?
> 
> Maybe html-ts-mode would be still needed as a separate mode
> to be used as embedded submode in such files as e.g.
> Vue single-file component with *.vue files that contain parts
> from js-ts-mode, css-ts-mode, and html-ts-mode for templates.

I don't know. In general, I think having simple major modes makes it easier to 
build more complex aggregations, rather than having to disable some features 
inherited from complex major modes, as in html-ts-mode: "
 ;; `html-ts-mode' inherits from `html-mode' that sets
  ;; regexp-based outline variables.  So need to restore
  ;; the default values of outline variables to be able
  ;; to use `treesit-outline-predicate' above.
"

Vincenzo









This bug report was last modified 98 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.