emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] [babel] Moving to babel the whole configuration


From: Manish
Subject: Re: [Orgmode] [babel] Moving to babel the whole configuration
Date: Wed, 27 Jan 2010 09:45:35 +0530

On Wed, Jan 27, 2010 at 2:04 AM, Dan Davison wrote:
> "Eric Schulte" writes:
>
>> Manish writes:
>>
>>> On Thu, Jan 21, 2010 at 10:15 PM, Dan Davison wrote:
>>>> andrea writes:
>>>>
>>>>> I'm really tempted to move all my emacs configuration in
>>>>> only one big file.  This would also help me to make it more
>>>>> consistent and readable.
>>>>>
>>>>> But I'm afraid to mess up something, in theory I just need:
>>>>> - a simple org and babel loader - one big file containing
>>>>> everything
>>>>>
>>>>
>>>> Hi Andrea,
>>>>
>>>> I've used a single org mode file to keep all my emacs
>>>> configuration code for the last 5 months or so and I have
>>>> not had any problems at all. I highly recommend it.  I am
>>>> using a simple set up:
>>>>
>>>> My ~/.emacs contains
>>>>
>>>> ------------------------------------------------------------------
>>>> (add-to-list 'load-path "/usr/local/src/org-mode/lisp")
>>>> (add-to-list 'load-path
>>>> "/usr/local/src/org-mode/contrib/lisp") (require
>>>> 'org-install) (require 'org-babel-init) (org-babel-load-file
>>>> "~/config/emacs/emacs.org")
>>>> ------------------------------------------------------------------
>>>>
>>>> and all the rest of my emacs config code is in
>>>> ~/config/emacs/emacs.org
>>>>
>>>
>>> This works very nicely.  Thank you.
>>>
>>> I am thinking about making my config a little leaner while I
>>> reorganize without affecting functionality I have gotten used
>>> to by preventing sections of config from loading.  I thought
>>> setting :tangle to `no' should help but the default is
>>> already `no' and all my config is loaded.  How would one go
>>> about marking a section of configuration so that it remains
>>> in the configuration file but does not get tangled while
>>> Emacs boots?
>>>
>>
>> Hi Manish,
>>
>> I think this will require a little development/bug-fixing on
>> my part before it works easily.  As I recall the elisp
>> tangling in `org-babel-load-file' is fairly aggressive and may
>> not respect tangle header arguments.  But the method you
>> described above (setting the tangle header argument to no --
>> either in a subtree property or by block) is certainly the
>> correct approach.
>
> Hi Eric -- I believe you already have it working in exactly
> this way :)
>
> Manish -- could you double check please? I use :tangle no to
> exclude blocks of elisp from my emacs init file, and it is
> working.
>

You are right.  I just did not try it at all after reading that
":tangle no" was the default.  My apologies.

I ran some tests and here are the results.

| SET AS                    | VALUE | RESULT      |
|---------------------------+-------+-------------|
| not set                   | n/a   | tangled     |
| property ":TANGLE:"       | no    | not tangled |
| property ":TANGLE:"       | yes   | backtrace   |
| header argument ":tangle" | no    | not tangled |
| header argument ":tangle" | yes   | backtrace   |

--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (void-variable compilation-mode-map)
  (define-key compilation-mode-map (kbd "n") (quote compilation-next-error))
  eval-buffer(#<buffer  *load*<2>> nil "d:/home/zms/.emacs.d/emacs.el"
nil t)  ; Reading at buffer position 3862
  load-with-code-conversion("d:/home/zms/.emacs.d/emacs.el"
"d:/home/zms/.emacs.d/emacs.el" nil nil)
  load("d:/home/zms/.emacs.d/emacs.el" nil nil t)
  load-file("~/.emacs.d/emacs.el")
  (let* ((base-name ...) (exported-file ...)) (unless (and ... ...)
(org-babel-tangle-file file base-name "emacs-lisp")) (load-file
exported-file) (message "loaded %s" exported-file))
  (progn (fset (quote age) (function* ...)) (let* (... ...) (unless
... ...) (load-file exported-file) (message "loaded %s"
exported-file)))
  (unwind-protect (progn (fset ... ...) (let* ... ... ... ...)) (if
--cl-letf-bound-- (fset ... --cl-letf-save--) (fmakunbound ...)))
  (let* ((--cl-letf-bound-- ...) (--cl-letf-save-- ...))
(unwind-protect (progn ... ...) (if --cl-letf-bound-- ... ...)))
  (letf ((... ...)) (let* (... ...) (unless ... ...) (load-file
exported-file) (message "loaded %s" exported-file)))
  (letf* ((... ...)) (let* (... ...) (unless ... ...) (load-file
exported-file) (message "loaded %s" exported-file)))
  (flet ((age ... ...)) (let* (... ...) (unless ... ...) (load-file
exported-file) (message "loaded %s" exported-file)))
  org-babel-load-file("~/.emacs.d/emacs.org")
  eval-buffer(#<buffer  *load*> nil "d:/home/zms/.emacs.d/init.el" nil
t)  ; Reading at buffer position 1576
  load-with-code-conversion("d:/home/zms/.emacs.d/init.el"
"d:/home/zms/.emacs.d/init.el" t t)
  load("d:/home/zms/.emacs.d/init" t t)
  #[nil "
--8<---------------cut here---------------end--------------->8---

Thanks
-- 
Manish




reply via email to

[Prev in Thread] Current Thread [Next in Thread]