GNU bug report logs - #74367
[PATCH] c-ts-mode.el: Adjust doc about how to change default modes

Previous Next

Package: emacs;

Reported by: Stefan Monnier <monnier <at> iro.umontreal.ca>

Date: Fri, 15 Nov 2024 16:46:01 UTC

Severity: wishlist

Tags: patch

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: acm <at> muc.de, 74367 <at> debbugs.gnu.org, stefankangas <at> gmail.com
Subject: bug#74367: [PATCH] c-ts-mode.el: Adjust doc about how to change default modes
Date: Sat, 16 Nov 2024 23:00:09 +0200
> From: Stefan Monnier <monnier <at> iro.umontreal.ca>
> Cc: stefankangas <at> gmail.com,  74367 <at> debbugs.gnu.org,  acm <at> muc.de
> Date: Sat, 16 Nov 2024 15:26:31 -0500
> 
> >> I don't understand why you insist on suggesting such a "setting" since
> >> it's unreliable now and probably even more so in the future.
> > Because that's what users did in Emacs 29.  I don't want us to make an
> > impression it no longer works.
> 
> In Emacs-29, it did work, because it modified `auto-mode-alist` and
> CC-mode never modified it back.
> 
> In `emacs-30`, it doesn't work reliably any more because loading
> `cc-mode.el` after `c-ts-mode.el` causes the default mode to revert to
> `c-mode`.  Loading `cc-mode.el` happens when you do `C-h f c-mode RET`,
> or when you load a file that requires it, e.g.:

This will be better once we fix the major-mode-remap-defaults are
handled by the modes involved in this.  But yes, the effect of your
introduction of major-mode-remap-defaults and the subsequent changes
in cc-mode is that loading the mode works less reliably now.  Which is
why the advice to use major-mode-remap-alist should now be the first
one.

>     lisp/cedet/semantic/bovine/c.el:(eval-when-compile (require 'cc-mode))
>     lisp/generic-x.el:(require 'cc-mode)
>     lisp/org/ob-C.el:(require 'cc-mode)
>     lisp/org/ob-fortran.el:(require 'cc-mode)
>     lisp/progmodes/antlr-mode.el:(require 'cc-mode)
>     lisp/progmodes/cc-mode.el:;; (require 'cc-mode)
>     lisp/progmodes/cmacexp.el:(require 'cc-mode)
>     lisp/progmodes/csharp-mode.el:(require 'cc-mode)
>     lisp/progmodes/cwarn.el:(require 'cc-mode)
>     lisp/progmodes/hideif.el:(require 'cc-mode)
>     lisp/progmodes/js.el:(require 'cc-mode)

See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=74339#38

> Also we're discussing changing `c-ts-mode.el` so loading it doesn't have
> that effect at all

That's not the change I am discussing in bug#74339.

> which means that there's a good chance it will work even less well
> in the future.  So to me it's clear that suggesting the use of
> `require` or `load` to change the default C mode is doing a
> disservice to our users.

Noted.




This bug report was last modified 157 days ago.

Previous Next


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