unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Drew Adams <drew.adams@oracle.com>
To: Stefan Kangas <stefan@marxist.se>
Cc: "14696@debbugs.gnu.org" <14696@debbugs.gnu.org>
Subject: bug#14696: [External] : Re: bug#14696: 24.3.50; order of items in `custom-file' (or init file)
Date: Sat, 25 Dec 2021 21:13:42 +0000	[thread overview]
Message-ID: <SJ0PR10MB54886820351BEC238CF17AF4F3409@SJ0PR10MB5488.namprd10.prod.outlook.com> (raw)
In-Reply-To: <CADwFkm=GLcLvE_gBwZbmy9aXG0SXVWE5MF+yGuf9wSO4RjE6Uw@mail.gmail.com>

> > Enhancement request.
> >
> > Currently, options and faces are sorted using `string<' when written to
> > your `custom-file'.  That can make it easy to find something in the
> > file, I suppose, but (a) you can alternatively and easily find an entry
> > using Isearch, and (b) you can always split a list in the file into
> > lines and sort the lines, if you really want to see such a sort order.
> >
> > Is there some other reason to sort entries this way?
> 
> Yes, it makes it easier to keep under version control without conflicts.

Thanks.  That's a reasonable advantage.

I'd propose that users be able to control the order,
with a user option.  The current sort order, which
provides the advantage you cite, could be one of the
predefined option-value choices.  What I suggested
could be another predefined choice.  And providing
a sort function could be another (a catch-all that
let's you sort any way you like).

> > Alternatively, it could be more useful to put new and updated entries at
> > the head of the option and face lists.  That way, the lists would record
> > the update order (at least in some common cases, if not in all cases).
> >
> > And that can help when you want to find something that you changed
> > recently.
> >
> > The enhancement request would be to either:
> >
> > 1. (Preferably) timestamp each update or new entry, e.g., as part of the
> > entry itself or via a separate alist for all entries.
> >
> > 2. If not, do not sort entries using `string<', but just add then at the
> > head of each list (options, faces).
> 
> This would create more conflicts when keeping your configuration under
> version control, so I don't think it's a good idea.

It's a good idea for those who don't put that file
under vc, or those who have an easy way to resolve
such "conflicts".

There can be conflicting "good ideas", depending
on use cases and user preferences.  A user option
to choose among competing "good ideas" is itself
a "good idea".

> > #1 would be more involved, but would be better (precise).  It would help
> > us create a command, for instance, that would let you find changes made
> > during any given time period etc.
> >
> > (In effect, this would be a bit like providing automatic version control
> > for your custom file.)

Indeed.  What of that - no comment?

  reply	other threads:[~2021-12-25 21:13 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-23 16:38 bug#14696: 24.3.50; order of items in `custom-file' (or init file) Drew Adams
2021-12-25  6:27 ` Stefan Kangas
2021-12-25 21:13   ` Drew Adams [this message]
2021-12-25 21:53     ` bug#14696: [External] : " Stefan Kangas
2022-05-10 13:40   ` Lars Ingebrigtsen

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=SJ0PR10MB54886820351BEC238CF17AF4F3409@SJ0PR10MB5488.namprd10.prod.outlook.com \
    --to=drew.adams@oracle.com \
    --cc=14696@debbugs.gnu.org \
    --cc=stefan@marxist.se \
    /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).