Subject: Re: bug#60559: 29.0.60; "Cannot activate tree-sitter" spam

From: Juri Linkov <[email-masked]>
Date: Thu, 05 Jan 2023 09:46:48 +0200

>> >> Emacs 28 already has conf-toml-mode for TOML files, so shouldn't
>> >> toml-ts-mode be handled like e.g. c-ts-mode instead of being added to
>> >> auto-mode-alist? (The default value of that variable in Emacs 29 still
>> >> contains an entry for conf-toml-mode, lower down than the entry for
>> >> toml-ts-mode.)
>> >
>> > We could indeed do that for TOML files, but I believe the problem
>> > raised here is more general.
>>
>> That may be, but the TOML case appears to be a regression, since
>> visiting a TOML file in Emacs 28 displays various faces but visiting a
>> TOML file in Emacs 29 without having the tree-sitter TOML grammar
>> library installed displays only the default face.
>
> I've now made toml-ts-mode an optional one, leaving conf-toml-mode as
> the default.

So now non-ts users are satisfied at the expense of ts users.

Why not to do the right thing:

(add-to-list 'auto-mode-alist `("\\.toml\\'" .
  ,(if (treesit-ready-p 'toml) 'toml-ts-mode 'conf-toml-mode)))