Subject: Re: bug#53538: 27.2; default-major-mode no longer honored

From: Eli Zaretskii <[email-masked]>
Date: Wed, 26 Jan 2022 05:39:38 +0200

> From: "George L. Roman" <[email-masked]>
> Date: Tue, 25 Jan 2022 19:32:04 -0500
> 
>     % emacs -Q
>     C-x b *scratch*
>     (setq default-major-mode "text-mode")
>     C-x b whatever
>     ; Observe "fundamental" mode
>     C-f /tmp/foo
>     ; Observe "fundamental" mode
> 
>     This used to work in 25.1; fails in 26.1, 27.1, and 27.2.

>From NEWS of Emacs 26:

  ** Some obsolete functions, variables, and faces have been removed:
  [...]
  *** All the default-FOO variables that hold the default value of the
  FOO variable.  Use 'default-value' and 'setq-default' to access and
  change FOO, respectively.  The exhaustive list of removed variables is:
  'default-mode-line-format', 'default-header-line-format',
  'default-line-spacing', 'default-abbrev-mode', 'default-ctl-arrow',
  'default-truncate-lines', 'default-left-margin', 'default-tab-width',
  'default-case-fold-search', 'default-left-margin-width',
  'default-right-margin-width', 'default-left-fringe-width',
  'default-right-fringe-width', 'default-fringes-outside-margins',
  'default-scroll-bar-width', 'default-vertical-scroll-bar',
  'default-indicate-empty-lines', 'default-indicate-buffer-boundaries',
  'default-fringe-indicator-alist', 'default-fringe-cursor-alist',
  'default-scroll-up-aggressively', 'default-scroll-down-aggressively',
  'default-fill-column', 'default-cursor-type',
  'default-cursor-in-non-selected-windows',
  'default-buffer-file-coding-system', 'default-major-mode', and
  'default-enable-multibyte-characters'.

So you should use setq-default instead.