From: Darlan Cavalcante Moreira <darcamo@gmail.com>
To: Eric Schulte <schulte.eric@gmail.com>
Cc: John Wiegley <jwiegley@gmail.com>, emacs-orgmode@gnu.org
Subject: Re: Experiences with "literate elisp" and ob-tangle?
Date: Mon, 22 Aug 2011 15:18:51 -0300 [thread overview]
Message-ID: <4e529d90.62c5ec0a.1d35.26af@mx.google.com> (raw)
In-Reply-To: <877h658jb6.fsf@gmail.com>
I've been using the Emacs starter kit for some time and I must say it is
excellent. Before making the change, I already had my Emacs initialization
broken-down into smaller .el files that were loaded by the master file. It
was as much organized as I could be, but not enough. It always required
more work when I needed to make any changes than I would like.
With the starter-kit I now use only a single org file for everything. The
outline-structure of org-mode allows me to have my initialization broken
down into smaller pieces in a more natural way without any extra
work. Also, it is much easier to locate any part of my initialization that
I want to change, since everything is in a single file and now I have tags.
Another bonus feature is that I can easily disable/enable parts of my
initialization simple by setting the tangle property of a sub-tree to
"nil", as well as putting "COMMENT" in the beginning of it (COMMENT will be
red, but has no effect besides identify a disabled sub-tree). This is
better than locating and commenting the undesired/desired lisp code in my
previous .el files. This allowed me to identify bottlenecks and optimize my
Emacs initialization.
--
Darlan
At Mon, 22 Aug 2011 11:09:17 -0600,
Eric Schulte wrote:
>
> Hi John,
>
> John Wiegley <jwiegley@gmail.com> writes:
>
> > Hi all, I'm considering switching my lengthy .emacs over to a literate Org
> > file, using ob-tangle, and as I was wondering if others had any experience
> > with this, and if so, does it slow down startup much?
>
> The first load after a .org file is changed will require re-tangling of
> the file, but in most cases the .el files are loaded directly and there
> should be no slowdown. I've been using this for over a year now with no
> noticable slowdown. For an example of a large config structured using
> .org files and based on Emacs24 see [1].
>
> > Is there a way to get ob-tangle to compile the resulting Elisp file?
>
> Yes, see the makefile in the repo I pointed to above [2].
>
> >
> > I'm guessing it does not regenerate the .el file if no changes have
> > been made to the .org, right?
> >
>
> That is correct, the `org-babel-load-file' function compares the
> modification dates of the .el and .org file to see if re-tangling is
> required.
>
> Best of luck -- Eric
>
> >
> > Thanks,
> > John
> >
> >
>
>
> Footnotes:
> [1] https://github.com/eschulte/emacs24-starter-kit
>
> [2] https://github.com/eschulte/emacs24-starter-kit/blob/master/Makefile
>
> --
> Eric Schulte
> http://cs.unm.edu/~eschulte/
>
prev parent reply other threads:[~2011-08-22 18:19 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-22 14:20 Experiences with "literate elisp" and ob-tangle? John Wiegley
2011-08-22 17:09 ` Eric Schulte
2011-08-22 18:18 ` Darlan Cavalcante Moreira [this message]
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=4e529d90.62c5ec0a.1d35.26af@mx.google.com \
--to=darcamo@gmail.com \
--cc=emacs-orgmode@gnu.org \
--cc=jwiegley@gmail.com \
--cc=schulte.eric@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/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).