all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Tim Cross <theophilusx@gmail.com>
To: Richard Stallman <rms@gnu.org>
Cc: spacibba@aol.com, "Daniel Martín" <mardani29@yahoo.es>,
	"Emacs developers" <emacs-devel@gnu.org>,
	nicola.manca85@gmail.com, "Dmitry Gutov" <dgutov@yandex.ru>,
	"TV. Raman" <raman@google.com>
Subject: Re: Custom Et Al: Build-Up The Underlying Platform was Re: A new user perspective about "Changes for emacs 28"
Date: Wed, 9 Sep 2020 18:48:25 +1000	[thread overview]
Message-ID: <CAC=50j8zcygBeaP5j-Zvo94ZRyO=nuv3e07u19WQoi6jQSpmZg@mail.gmail.com> (raw)
In-Reply-To: <E1kFr8a-0006H4-98@fencepost.gnu.org>

[-- Attachment #1: Type: text/plain, Size: 2918 bytes --]

I largely agree with Raman's points. In particular, the problem of stuff
building up in the custom file (or section). To make it worse, the format
can be fragile, especially if you want to try and edit it to clean it up
(not a big issue if your an experienced elisper, but if your not....). I
have also experienced additional items being added to the custom section
when I have used custom to set some values. At odd times I've seen values
added which are not values I have customized.

It might also be worth having some sort of tool which could check custom
definitions. I frequently see warnings about custom value mismatches. These
are often caused when something is defined as a customizable value, but the
code has changed and updating the custom definition has not been updated to
match the code changes. Some sort of tool which check custom definitions
for completeness and alerted developers to definition and initialisation
mismatches might be useful.

Given the growth in custom usage, perhaps a better approach, rather than
the 'custom section' or custom file would be to have custom write
individual files into a ~/.emacs.d/custom directory? This could be based on
the custom group or package name or perhaps add an additional field to the
custom definition which specifies the name of the file to use. Emacs could
then look in this directory at some pint in the startup process and consume
the files in the custom directory or perhaps the require function could be
modified so that libraries/modules look for a corresponding custom file
when they are loaded? A big advantage of the individual files is that it is
easy to remove a configuration and it wold likely be less fragile than the
existing custom section. The drawback is that having lots of small custom
files might adversely impact init time (unless you can do something like
add it to require or load etc so that it is only read when the associated
code is actually loaded).

On Wed, 9 Sep 2020 at 13:52, Richard Stallman <rms@gnu.org> wrote:

> [[[ To any NSA and FBI agents reading my email: please consider    ]]]
> [[[ whether defending the US Constitution against all enemies,     ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
>   > For separating customizations into multiple files there is "initsplit"
>   > (https://www.emacswiki.org/emacs/InitSplit). Maybe it's possible to
>   > include its functionality as part of Custom.
>
> I am sure we can implement the basic idea.  What I wonder about is,
> how to split the settings up?  Based on what sort of plan or system?
>
> If we have a clear answer for that, it should be a straightforward
> matter of doing work.
>
>
> --
> Dr Richard Stallman
> Chief GNUisance of the GNU Project (https://gnu.org)
> Founder, Free Software Foundation (https://fsf.org)
> Internet Hall-of-Famer (https://internethalloffame.org)
>
>
>
>

-- 
regards,

Tim

--
Tim Cross

[-- Attachment #2: Type: text/html, Size: 3841 bytes --]

  reply	other threads:[~2020-09-09  8:48 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-07 16:45 A new user perspective about "Changes for emacs 28" Nicola Manca
2020-09-07 18:08 ` Ergus
     [not found]   ` <86d02x2yg0.fsf@gmail.com>
2020-09-07 19:59     ` about fido-mode Ergus
2020-09-07 20:44       ` andrés ramírez
2020-09-07 21:09         ` Ergus
2020-09-07 21:18           ` andrés ramírez
     [not found]     ` <87mu21wd3f.fsf@gmail.com>
     [not found]       ` <20200907214104.kapyivsh5y62wcl5@Ergus>
     [not found]         ` <865z8p2qay.fsf@gmail.com>
2020-09-08  8:08           ` Ergus
2020-09-08  9:06             ` andrés ramírez
2020-09-08  9:26               ` Ergus
2020-09-08 16:14                 ` andrés ramírez
2020-09-08 16:25                   ` Ergus
2020-09-09  2:44                     ` andrés ramírez
2020-09-07 20:05   ` A new user perspective about "Changes for emacs 28" Dmitry Gutov
2020-09-07 20:34     ` Drew Adams
2020-09-07 20:46       ` Dmitry Gutov
2020-09-07 21:11         ` Drew Adams
2020-09-07 21:15           ` Dmitry Gutov
2020-09-07 21:39             ` Drew Adams
2020-09-07 21:50               ` Dmitry Gutov
2020-09-08  2:54             ` Richard Stallman
2020-09-08 11:10               ` Dmitry Gutov
2020-09-08  6:18         ` Alfred M. Szmidt
2020-09-08 11:07           ` Dmitry Gutov
2020-09-08 14:20           ` Eli Zaretskii
2020-09-08 14:54             ` Alfred M. Szmidt
2020-09-08 15:14               ` Amin Bandali
2020-09-08 15:53                 ` Alfred M. Szmidt
2020-09-08 16:18                   ` Thibaut Verron
2020-09-08 16:28                     ` Ergus
2020-09-08 15:27               ` Óscar Fuentes
2020-09-08 15:36                 ` Eli Zaretskii
2020-09-08 15:27               ` Eli Zaretskii
2020-09-08 16:13                 ` Thibaut Verron
2020-09-08 16:23                   ` Eli Zaretskii
2020-09-08 18:00                     ` Thibaut Verron
2020-09-09  3:44               ` Richard Stallman
2020-09-09 19:01                 ` Alfred M. Szmidt
2020-09-09 19:07                   ` Eli Zaretskii
2020-09-09 21:43                     ` Dmitry Gutov
2020-09-08 15:02             ` Dmitry Gutov
2020-09-08 15:28               ` Eli Zaretskii
2020-09-08 21:31                 ` Dmitry Gutov
2020-09-10  7:23                   ` Jack Kamm
2020-09-10 14:52                     ` Howard Melman
2020-09-10 15:01                       ` Jack Kamm
2020-09-10 16:43                         ` Vasilij Schneidermann
2020-09-09  5:03                 ` Arthur Miller
2020-09-09  8:35                   ` Ergus
2020-09-09  8:41                     ` tomas
2020-09-09 10:00                       ` Ergus
2020-09-09 10:36                         ` tomas
2020-09-09 13:49                           ` Arthur Miller
2020-09-09 14:36                           ` Eli Zaretskii
2020-09-09 15:54                             ` tomas
2020-09-10  2:38                           ` Richard Stallman
2020-09-10 12:10                             ` Robert Pluim
2020-09-11  4:16                               ` Richard Stallman
2020-09-09 18:39                         ` Juri Linkov
2020-09-10 12:28                           ` Ricardo Wurmus
2020-09-09 13:17                     ` Arthur Miller
2020-09-10  2:40                     ` Richard Stallman
2020-09-11 10:29                   ` Dmitry Gutov
2020-09-11 11:29                     ` Arthur Miller
2020-09-11 11:40                       ` Ergus
2020-09-11 14:53                         ` Jack Kamm
2020-09-11 15:03                           ` Ergus
2020-09-11 15:16                             ` Eli Zaretskii
2020-09-11 20:51                               ` Dmitry Gutov
2020-09-12 13:02                             ` Arthur Miller
2020-09-12 13:09                               ` Dmitry Gutov
2020-09-13 22:13                                 ` chad
2020-09-13 22:44                                   ` Dmitry Gutov
2020-09-15  4:34                                   ` Richard Stallman
2020-09-15  6:54                                     ` Alfred M. Szmidt
2020-09-11 12:27                       ` Dmitry Gutov
2020-09-11 15:08                         ` Arthur Miller
2020-09-11 20:35                           ` Dmitry Gutov
2020-09-11 13:51                       ` Stefan Monnier
2020-09-11 14:32                         ` Stefan Monnier
2020-09-11 14:59                           ` Jack Kamm
2020-09-12 12:55                           ` Arthur Miller
2020-09-11 13:15                     ` Alfred M. Szmidt
2020-09-11 14:37                       ` Dmitry Gutov
2020-09-08 16:37     ` Custom Et Al: Build-Up The Underlying Platform was " T.V Raman
2020-09-08 20:40       ` Daniel Martín
2020-09-09  3:51         ` Richard Stallman
2020-09-09  8:48           ` Tim Cross [this message]
2020-09-09 15:53             ` Drew Adams
2020-09-09 16:36               ` Ergus
2020-09-09 16:41                 ` T.V Raman
2020-09-09 17:05                   ` Ergus
2020-09-09 14:32           ` T.V Raman
2020-09-09 18:44             ` Juri Linkov
2020-09-11  4:11             ` Richard Stallman
2020-09-07 18:16 ` Ergus

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

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

  git send-email \
    --in-reply-to='CAC=50j8zcygBeaP5j-Zvo94ZRyO=nuv3e07u19WQoi6jQSpmZg@mail.gmail.com' \
    --to=theophilusx@gmail.com \
    --cc=dgutov@yandex.ru \
    --cc=emacs-devel@gnu.org \
    --cc=mardani29@yahoo.es \
    --cc=nicola.manca85@gmail.com \
    --cc=raman@google.com \
    --cc=rms@gnu.org \
    --cc=spacibba@aol.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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.