emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Tim Cross <theophilusx@gmail.com>
To: Loris Bennett <loris.bennett@fu-berlin.de>
Cc: info-gnus-english@gnu.org, emacs-orgmode@gnu.org
Subject: Re: (gnus-icalendar-org-setup) not evaluated in .emacs?
Date: Wed, 20 Sep 2017 08:11:19 +1000	[thread overview]
Message-ID: <87lglabapk.fsf@gmail.com> (raw)
In-Reply-To: <87mv5rkodt.fsf@hornfels.zedat.fu-berlin.de>


Management of an emacs init file is a challenge for anyone who has been
using Emacs for a long time. I did this after being a user for over 20
years and like you, was a little daunted by the task. However, I now
realise it was the single best thing I ever did to improve my emacs. I
also had let my config grow organically and what I found out when I
decided to clean it up was that a lot of what I had in there was
unnecessary, was slowing down my Emacs (both startup and runtime) and
that many of my long-term emacs 'annoyances' were actually due to
incorrect or outdated settings in my init file.

A few things I learned which may be of help

1. Put your init in git (or your favourite source control system ) and
do your changes incrementally. You will need to revert to previous
versions, so be methodical with checking in changes and do it
incrementally.

2. Have a look at the use-package macro. This really cleaned up my init
file, helped me make it more modular and really improved both the
structure and maintenance as well as startup times etc.

3. I now use org to manage my init file. In fact, I have a few init
files. I have a bare bones minimal init file which I use when I need to
debug a specific feature/package or generate bug reports, I have an
experimental one where I play with new things and I have my stable
one. Using org, I can just 'tangle' a new init based on one of those
files whenever I need it. I started by just putting all my existing
setup into a block in an org file and exporting that as elisp. As time
permitted, I broke bits off into their own blocks with explanatory
comments/text so that I can remember why/what of the block.

4. Finally, there are some really good 'canned' configurations out
there. I personally quite like purcell's setup (on github). While I
don't use any of these per se, I did 'borrow' some of the ideas.

My setup is now healthier and more stable than it ever has been. The
effort is definitely worth it.

Tim

Loris Bennett writes:

> Eric S Fraga <esflists@gmail.com> writes:
>
>> On Thursday, 14 Sep 2017 at 16:02, Loris Bennett wrote:
>>> But should this kind of ordering dependency happen?  Or should my
>>> Customize block just be at the beginning of my .emacs rather than at the
>>> end?
>>
>> I make sure my customizations are loaded before anything else.  I have
>> my customizations in a separate file and "(load custom-file)" as one of
>> the first things in my Emacs init.  Not the first as such as I set the
>> load-path to point to the versions of packages I am using that may
>> conflict with built-in ones in Emacs.
>
> For someone like me, who fails to spot the related variables even
> within a single file, I think hiving customisation off into a separate
> file might set up a few new tripwires for future me.
>
> Having said that, having let my .emacs grow organically (think "rampant
> weeds") for 30 years, maybe I should take the shears to it.  I'm just
> worried that, if I started today, I might not be productive again until
> the New Year :-(
>
> Cheers,
>
> Loris


-- 
Tim Cross

  reply	other threads:[~2017-09-19 22:11 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-14  7:56 (gnus-icalendar-org-setup) not evaluated in .emacs? Loris Bennett
2017-09-14  8:19 ` Eric S Fraga
2017-09-14  9:11   ` Loris Bennett
2017-09-14  9:29     ` Eric S Fraga
2017-09-14 12:34       ` Loris Bennett
2017-09-14 14:02   ` Loris Bennett
2017-09-15 18:00     ` Matt Lundin
2017-09-19  9:05     ` Eric S Fraga
2017-09-19  9:51       ` Loris Bennett
2017-09-19 22:11         ` Tim Cross [this message]
2017-09-20  7:33           ` Loris Bennett
2017-09-20 22:32             ` Nick Dokos
2017-09-20 13:49           ` Lars-Johan Liman
2017-09-20 19:25             ` Eric S Fraga
2017-09-20 19:34             ` Thomas S. Dye

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.orgmode.org/

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

  git send-email \
    --in-reply-to=87lglabapk.fsf@gmail.com \
    --to=theophilusx@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=info-gnus-english@gnu.org \
    --cc=loris.bennett@fu-berlin.de \
    /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/org-mode.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).