unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Drew Adams <drew.adams@oracle.com>
To: Po Lu <luangruo@yahoo.com>
Cc: Tim Cross <theophilusx@gmail.com>,
	"emacs-devel@gnu.org" <emacs-devel@gnu.org>
Subject: RE: [External] : Re: Default custom file was: Re: Propose to add setup-wizard.el to ELPA
Date: Fri, 7 Jan 2022 18:06:12 +0000	[thread overview]
Message-ID: <SJ0PR10MB5488A1C313B5BC6715E7FE5CF34D9@SJ0PR10MB5488.namprd10.prod.outlook.com> (raw)
In-Reply-To: <87a6g8yql2.fsf@yahoo.com>

> > The lack of lexical binding was longstanding.
> 
> The lack of lexical binding was a shortcoming.
> A shortcoming is not behaviour, nor is it a feature.

You don't like/get the example of lexical-binding.
OK.

Consider `transient-mark-mode'.
Its existence in Emacs was status quo for a
very long time, and the behavior was OFF.
Until it wasn't - the status quo was changed
to ON.  Holy Toledo!

That was a backward-incompatible change in
behavior.  It affected thousands of users.
It took us _decades_ to get that change made.
Status quo, status quo, status quo.

And why was that change finally made?  It's
what those who decided expected that more
users would expect & want.  Users out in
the wild expect to see text that they select
to act on ("activated") be highlighted, so
they can see what they'll act on.

What was the effect on users who did NOT
want `transient-mark-mode' on by default?

They turned it off.  End of story.  Some
muffled grumbles, nothing more.  Why?
Because you can still use Emacs as before -
just turn `t-m-mode' off (Customize).
Happy campers all around.

Why didn't we go all the way toward what most
new users out there really expected, which is
something more like `delete-selection-mode'
(which turns on `transient-mark-mode')?  Why
stop with `t-m-mode', which corresponds to
neither what users get outside Emacs nor what
Emacs behavior is with `t-m-mode' off?

We should have, IMO.  Not enough weight to
balance the rotund body of Status Quo.  I've
been betting on `delete-selection-mode' being
turned on by default after a few decades, but
it's already been a few decades now...  (I'm
still betting on that happening sometime.)

I'm as strong a proponent of not rocking the
status-quo boat as anyone.  And opinions can
certainly differ about whether `custom-file'
should default to a file name.  But what's
the downside of changing such a default
change?

A relatively few users - those who remain
wedded to using only their init file - would
need to set `custom-file' to their init file
(or to nil, if we interpret that as using
the init file after the default change).

A big deal?  I don't think so.  Just like
it ultimately wasn't a big deal to turn on
`transient-mark-mode' by default.

> > The absence of a `custom-file' by default is "relied on"?  How so?
> 
> Emacs would start to behave differently for people who did
> not explictly set custom-file if it gained a default value.

Yes, and?  Anyone can rely on the behavior
they've long relied on and enjoyed, by just
setting `custom-file' to their init file.
End of story.

> > How so?  Are you talking about a minority of users having to
> > explicitly say that they don't want a separate file - e.g.  simply
> > setting `custom-file' to nil?
> 
> You may call them a "minority", but all people are important.  There is
> no need to cause useless churn for people, just because some other
> people have differing preferences.

In the case of `transient-mark-mode' I'd wager
that the _vast_ majority - maybe 90% - of
existing Emacs users had `t-m-mode' off when
the default was switched to on.  And I'd wager
that a minority of them bothered to switch it
to off after the default changed.  And today
I'm guessing that relatively few Emacs users
set it to off.

It's not only about individual preferences,
and especially not only about _current_ ones.

It's also about what we expect will be best
for most users, and in particular most users
in the future.  Most Emacs users are future
users, not current users.  What's the best
behavior for them?  I think it's to separate
the file that Customize writes to from their
init file.

But _every_ user will have a simple, trivial,
quick, one-time way to get the behavior they
prefer: just set `custom-file' to the file
they want Customize to write to, whether
that be their init file or another file.

Sensible behavior by default for everyone.
Individual preferences respected.  Happy
campers, all.

When the default of `transient-mark-mode'
was switched we definitely had in mind
potential/future users as well as current ones.

> > I'm assuming you agree it's generally better, for more people than
> > not, to use a separate `custom-file'.
> 
> Yes, I agree.  If this discussion was started at the introduction of
> `custom-file', then I would certainly have argued for it to have a
> default value.

That's the right starting point, to think
about what the behavior should be.

Next comes the question about how much of
a disturbance changing to that design
would cause.

> > There are more future than past users, and for a new 
> > user the "other thing" of longstanding habit doesn't apply.
> 
> How many future users there will be is for
> the future to say, not for the present, 

The exact number, sure.  But not the relative
number.  Unless Emacs is blown off the globe
it's certain that there will be more users in
the future than there are today.

> where changing the default value will only
> serve to churn the already muddy waters.

Diehards who said the same thing about turning
on `transient-mark-mode' will admit today that
their alarmism was misplaced.  They still live
happily with `transient-mark-mode' turned off,
as their personal preference.  Really not a
big deal, though they didn't think so at the
time.



  reply	other threads:[~2022-01-07 18:06 UTC|newest]

Thread overview: 157+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-03  6:13 Default custom file was: Re: Propose to add setup-wizard.el to ELPA Pedro Andres Aranda Gutierrez
2022-01-03 14:47 ` Robert Pluim
2022-01-04  6:13   ` Pedro Andres Aranda Gutierrez
2022-01-04  6:45     ` tomas
2022-01-04  7:29       ` Stefan Kangas
2022-01-04 10:10         ` tomas
2022-01-04 16:44           ` [External] : " Drew Adams
2022-01-04 17:09             ` tomas
2022-01-04 17:30               ` Drew Adams
2022-01-04 18:03                 ` tomas
2022-01-04 18:27                   ` Drew Adams
2022-01-04 18:41                     ` tomas
2022-01-05  9:14                   ` Stefan Kangas
2022-01-04 16:44       ` Drew Adams
2022-01-04  7:14     ` Stefan Kangas
2022-01-04 10:11       ` Robert Pluim
2022-01-04 10:30         ` Po Lu
2022-01-04 10:46           ` Robert Pluim
2022-01-04 10:59             ` Po Lu
2022-01-04 13:02               ` Robert Pluim
2022-01-04 11:11         ` Stefan Kangas
2022-01-04 12:23           ` LdBeth
2022-01-04 16:44         ` [External] : " Drew Adams
2022-01-04 13:08       ` Eli Zaretskii
2022-01-04 15:17         ` Stefan Kangas
2022-01-04 15:48           ` Robert Pluim
2022-01-04 15:57             ` Pedro Andres Aranda Gutierrez
2022-01-04 15:54           ` Pedro Andres Aranda Gutierrez
2022-01-04 16:44         ` [External] : " Drew Adams
2022-01-04 16:49           ` Robert Pluim
2022-01-04 17:14             ` Drew Adams
2022-01-04 17:32               ` Pedro Andres Aranda Gutierrez
2022-01-04 17:45                 ` Drew Adams
2022-01-04 17:55                 ` Robert Pluim
2022-01-04 18:24                   ` Pedro Andres Aranda Gutierrez
2022-01-04 17:30             ` Eli Zaretskii
2022-01-04 17:35               ` Pedro Andres Aranda Gutierrez
2022-01-04 17:47                 ` Eli Zaretskii
2022-01-04 17:57                   ` Robert Pluim
2022-01-05  9:14                     ` Stefan Kangas
2022-01-05  1:01             ` Po Lu
2022-01-05  7:03               ` Pedro Andres Aranda Gutierrez
2022-01-05  7:10                 ` Pedro Andres Aranda Gutierrez
2022-01-05  7:22                 ` Po Lu
2022-01-05  7:47                   ` Drew Adams
2022-01-05  7:59                     ` Po Lu
2022-01-05  9:17                       ` LdBeth
2022-01-05  9:26                         ` Robert Pluim
2022-01-05 10:54                           ` Colin Baxter 😺
2022-01-05 11:24                             ` Po Lu
2022-01-05 11:45                             ` Pedro Andres Aranda Gutierrez
2022-01-05 12:09                               ` Colin Baxter 😺
2022-01-05 13:04                               ` Po Lu
2022-01-05 19:10                                 ` Drew Adams
2022-01-05 19:02                               ` Drew Adams
2022-01-05 19:13                                 ` Eli Zaretskii
2022-01-05 19:36                                   ` Drew Adams
2022-01-05  9:35                         ` Po Lu
2022-01-05  9:58                           ` Pedro Andres Aranda Gutierrez
2022-01-05 10:58                             ` xenodasein--- via Emacs development discussions.
2022-01-05 12:09                           ` LdBeth
2022-01-05 12:57                             ` Po Lu
2022-01-05 13:06                         ` Eli Zaretskii
2022-01-05 15:58                           ` Pedro Andres Aranda Gutierrez
2022-01-06  0:37                             ` Po Lu
2022-01-06  7:21                               ` Pedro Andres Aranda Gutierrez
2022-01-06  7:23                                 ` Po Lu
2022-01-06  7:33                                   ` Pedro Andres Aranda Gutierrez
2022-01-06  7:39                                     ` Po Lu
2022-01-06  8:58                                   ` Eli Zaretskii
2022-01-06  9:40                                     ` Po Lu
2022-01-06  9:45                                       ` Robert Pluim
2022-01-06 12:28                                         ` Colin Baxter 😺
2022-01-06 17:20                                           ` Drew Adams
2022-01-06 17:19                                     ` Drew Adams
2022-01-06 20:11                                       ` Tim Cross
2022-01-06 22:09                                         ` Drew Adams
2022-01-06 22:33                                           ` Tim Cross
2022-01-07  4:05                                             ` Drew Adams
2022-01-07  7:13                                               ` Tim Cross
2022-01-07 17:18                                                 ` Drew Adams
2022-01-08  0:29                                                   ` Tim Cross
2022-01-10 22:01                                                     ` Drew Adams
2022-01-11  6:23                                                       ` Tim Cross
2022-01-11 12:01                                                         ` xenodasein--- via Emacs development discussions.
2022-01-11 12:10                                                           ` Po Lu
2022-01-11 12:25                                                             ` xenodasein--- via Emacs development discussions.
2022-01-11 12:42                                                               ` tomas
     [not found]                                                                 ` <dbc302f1-a769-24d4-294d-e291b015229b@mnet-mail.de>
     [not found]                                                                   ` <Yd2W5BaccjjbJ6+q@tuxteam.de>
2022-01-11 15:23                                                                     ` xenodasein--- via Emacs development discussions.
     [not found]                                                                       ` <Yd2kAPRoYd37qCaN@tuxteam.de>
2022-01-11 16:05                                                                         ` xenodasein--- via Emacs development discussions.
2022-01-11 16:11                                                                           ` tomas
2022-01-12  0:46                                                               ` Po Lu
2022-01-11 12:35                                                           ` Tim Cross
2022-01-11 15:05                                                             ` xenodasein--- via Emacs development discussions.
2022-01-11 20:57                                                               ` Tim Cross
2022-01-11 13:27                                                           ` Jean Louis
2022-01-07  0:52                                           ` Po Lu
2022-01-07  4:09                                             ` Drew Adams
2022-01-07  4:46                                               ` Po Lu
2022-01-07  5:58                                                 ` Drew Adams
2022-01-07  7:04                                                   ` Po Lu
2022-01-07 18:06                                                     ` Drew Adams [this message]
2022-01-08  0:54                                                       ` Po Lu
2022-01-08  3:13                                                         ` LdBeth
2022-01-08  3:26                                                           ` Po Lu
2022-01-08  7:19                                                           ` Eli Zaretskii
2022-01-08 13:32                                                             ` Add list of useful settings to setup wizard was: Re: Default custom file LdBeth
2022-01-08 14:12                                                               ` Eli Zaretskii
2022-01-08 14:50                                                                 ` LdBeth
2022-01-08 14:39                                                               ` Stefan Kangas
2022-01-08 15:30                                                                 ` LdBeth
2022-01-08 15:05                                                               ` John Yates
2022-01-08  8:03                                                         ` [External] : Re: Default custom file was: Re: Propose to add setup-wizard.el to ELPA tomas
2022-01-08  9:38                                                           ` Po Lu
2022-01-08 10:39                                                             ` xenodasein--- via Emacs development discussions.
2022-01-08 11:14                                                               ` Po Lu
2022-01-08 12:35                                                                 ` xenodasein--- via Emacs development discussions.
2022-01-08 12:44                                                                   ` Po Lu
2022-01-08 12:59                                                                     ` xenodasein--- via Emacs development discussions.
2022-01-08 13:16                                                                       ` Po Lu
2022-01-08 13:24                                                                         ` xenodasein--- via Emacs development discussions.
2022-01-08 13:33                                                                           ` Po Lu
2022-01-08 13:44                                                                             ` xenodasein--- via Emacs development discussions.
2022-01-08 14:32                                                                               ` tomas
2022-01-08 14:46                                                                                 ` xenodasein--- via Emacs development discussions.
2022-01-08 17:17                                                                                   ` Corwin Brust
2022-01-08 18:26                                                                                     ` xenodasein--- via Emacs development discussions.
     [not found]                                                                                       ` <MtgbBbx--B-2@tutanota.de>
     [not found]                                                                                         ` <MtqtDSN--3-2@tutanota.de>
2022-01-20 14:25                                                                                           ` Corwin Brust
2022-01-10 19:20                                                                                     ` [External] : " Drew Adams
2022-01-09  0:48                                                                               ` Po Lu
2022-01-08 13:35                                                                           ` =?gb18030?B?u9i4tKO6IFtFeHRlcm5hbF0gOiBSZTogRGVmYXVsdCBjdXN0b20gZmlsZSB3YXM6IFJlOiBQcm9wb3NlIHRvIGFkZCBzZXR1cC13aXphcmQuZWwgdG8gRUxQQQ==?= =?gb18030?B?emVyb2xlZQ==?=
2022-01-08 14:28                                                                       ` [External] : Re: Default custom file was: Re: Propose to add setup-wizard.el to ELPA tomas
2022-01-08 14:48                                                                         ` xenodasein--- via Emacs development discussions.
2022-01-08 11:42                                                               ` tomas
2022-01-08 12:28                                                                 ` xenodasein--- via Emacs development discussions.
2022-01-10 19:17                                                           ` Drew Adams
2022-01-10 22:02                                                         ` Drew Adams
2022-01-12  4:55                                                           ` Richard Stallman
2022-01-12  8:58                                                             ` xenodasein--- via Emacs development discussions.
2022-01-12 13:18                                                               ` Eli Zaretskii
2022-01-12  5:09                                                           ` Po Lu
2022-01-07  0:49                                       ` Po Lu
2022-01-07  4:09                                         ` Drew Adams
2022-01-07  4:42                                           ` Po Lu
2022-01-07  6:38                                             ` Pedro Andres Aranda Gutierrez
2022-01-07  8:43                                               ` Robert Pluim
2022-01-07  9:38                                                 ` Pedro Andres Aranda Gutierrez
2022-01-07 17:17                                                 ` Drew Adams
2022-01-07 17:12                                               ` Drew Adams
2022-01-06 17:19                                   ` Drew Adams
2022-01-07  0:48                                     ` Po Lu
2022-01-07  4:09                                       ` Drew Adams
2022-01-07  6:18                                         ` tomas
2022-01-07 18:06                                           ` Drew Adams
2022-01-06 16:17                                 ` Drew Adams
2022-01-05  7:43                 ` Drew Adams
2022-01-04 16:43     ` Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=SJ0PR10MB5488A1C313B5BC6715E7FE5CF34D9@SJ0PR10MB5488.namprd10.prod.outlook.com \
    --to=drew.adams@oracle.com \
    --cc=emacs-devel@gnu.org \
    --cc=luangruo@yahoo.com \
    --cc=theophilusx@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).