all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: raman <raman@google.com>
Cc: emacs-devel@gnu.org
Subject: Re: Feature Request: Per-package custom save files?
Date: Tue, 24 Jun 2014 13:19:41 -0400	[thread overview]
Message-ID: <jwv7g46z19x.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <87d2dyjr15.fsf@gmail.com> (raman@google.com's message of "Tue, 24 Jun 2014 07:55:34 -0700")

> Once the custom settings are split out:
> 1. Load on demand

I don't see any need for it.  The time to load a single customization file
should be negligible unless it's *really* large or causes loading other
files (e.g. if some of the customizations enable minor modes).

And doing it "on-demand" might be very difficult.  E.g. you can't delay
"activate global-reveal-mode" to when reveal.el is loaded, since it's the
activation of global-reveal-mode which would cause loading reveal.el.
And it's this loading which takes the time, so delaying the other
reveal-related settings would be pointless since these take
a ridiculously small amount of time.

If we want to speed up startup, there are several things we can do, but
I don't think any of them would be helped by splitting the
customization file.

> 2. Smaller, more manageable custom files.

We can cut the file in chunks, but that doesn't mean it's necessarily
more manageable.

> The reason this bubbled up for me is that in the past few months I've
> had to go back in time to retrieve a custom file from my local git repo
> because the giant custom file got corrupted during an emacs  custom-save
> at some point -- I've not chased down the culprit -- but when that
> happens, you're left with a giant file that is impossible to fix by
> hand.

Can you give details of the difficulties you encountered?
Would they have been different if the customizations were split
among several files, each of them similarly corrupted?
Or would it only be different under the assumption that the corruption
would have affected a single file, thus reducing the amount of corruption?

The customization file should contain 2 parts: the face settings and the
var settings.  Each part should be sorted alphabetically which (due to
the prefix-convention we use for names) should largely group settings
"by package".

So splitting the "one big file" into several smaller files would not
really change any ordering.

> I now regularly git commit my .custom file to a local repo just
> for this reason

I do that as well, tho not for this reason.


        Stefan



  reply	other threads:[~2014-06-24 17:19 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-21 15:42 Feature Request: Per-package custom save files? T. V. Raman
2014-06-21 15:55 ` David Kastrup
2014-06-21 16:45   ` John Yates
2014-06-21 17:19 ` Stefan Monnier
2014-06-23 16:52   ` T.V Raman
2014-06-23 19:30     ` chad
2014-06-23 21:11       ` T.V Raman
2014-06-23 21:11     ` Stefan Monnier
2014-06-23 21:17       ` T.V Raman
2014-06-24  1:24         ` Stefan Monnier
2014-06-24 14:55           ` raman
2014-06-24 17:19             ` Stefan Monnier [this message]
2014-06-25 16:40               ` T.V Raman
2014-06-25 17:54                 ` Stefan Monnier
2014-06-25 18:01                   ` T.V Raman

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=jwv7g46z19x.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=emacs-devel@gnu.org \
    --cc=raman@google.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.