Subject: Re: bug#59691: 29.0.60; typescript-ts-mode: any HTML-like elements causes fontification to become invalid and remaining parse-tree to become jsx-expression

From: Theodor Thornhill <[email-masked]>
Date: Wed, 30 Nov 2022 19:10:04 +0100

On 30 November 2022 17:05:59 CET, Eli Zaretskii <[email-masked]> wrote:
>> Date: Wed, 30 Nov 2022 16:21:37 +0100
>> From: Theodor Thornhill <[email-masked]>
>> CC: [email-masked], [email-masked], [email-masked]
>> 
>> >> No strong opinions here, but currently a user could install
>> >> tree-sitter-js, and find and enable js-ts-mode, which is
>> >> straightforward, which is good. Since these four modes doesn’t require
>> >> too much boilerplate, I think it’s pretty good right now.
>> >
>> >Can we do that automatically?  For example, can typescript-ts-mode call
>> >js-ts-mode when it detects that it is necessary?
>> 
>> That's not what we want. 
>> 
>> There are three languages here from treesitters pov.
>> 
>> Typescript
>> Tsx
>> JavaScript
>> 
>> They are all different, and should be treated as such, imo :)
>
>Our automatic turning-on of major-modes looks at the file-name extension and
>little else (magic-mode-alist is not useful here).  So if a file whose
>extension is XYZ can have more than one applicable major-mode, we should try
>to do something to turn on the correct mode automatically.  What can we do?

We are lucky because the extensions in question are ts, tsx and js. So we don't need any smartness :)

Theo