On April 3, 2023 08:07:17 Dmitry Gutov wrote: > On 03/04/2023 12:59, Alan Mackenzie wrote: >> Hello, Dmitry. >> >> On Mon, Apr 03, 2023 at 00:21:18 +0300, Dmitry Gutov wrote: >>> On 02/04/2023 20:23, João Távora wrote: >>>> So my initial idea was to tone down electric-indent-chars, at least >>>> for the moment. And Dmitry's idea was to make electric-indent-chars >>>> be ambitious_only_ if electric-pair-mode is enabled (by the user). >>>> Maybe we should bring back that idea, and it seems the least bad of the >>>> bunch right now. >> >>> Alternatively, we only perform "electric indent" (aside from after RET) >>> when the parse tree does not contain errors. >> >> That is NOT electric indentation. The whole point about electric >> indentation is for it to take effect whilst point is still on the line >> being edited. Thus, for example, you can see whether or not the line >> needs breaking, or whether there's room for a short comment at the end >> of the line. > > Wouldn't you know whether the line needs breaking, as long as the line > was indented correctly when you opened it with RET? > >> What you're proposing is something which would almost never trigger, >> since a line being edited will not have a parse tree without errors (if >> I've understood that properly). If it did trigger at some point, that >> would likely cause annoyance and puzzlement. > > That's a fair assessment, but it's going to trigger in a lot of cases > still: after ;, or after a paren or brace being closed. Silly question: can't we make a mode with c++-mode's indentation (and folding etc.) and c++-ts-mode's fontification? Such a thing would also preserve compatibility with the numerous ad hoc c++-mode styles out there.