emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Rainer M Krug <r.m.krug@gmail.com>
To: Eric Schulte <schulte.eric@gmail.com>
Cc: emacs-orgmode <emacs-orgmode@gnu.org>
Subject: Re: [babel] tangle from within codeblock?
Date: Mon, 8 Aug 2011 09:32:34 +0200	[thread overview]
Message-ID: <CAGhLh6FkCbMPGmBDUwmViJmDzwV-NiSk0eevY6nvVAUQOqe+yg@mail.gmail.com> (raw)
In-Reply-To: <877h6rn5ng.fsf@gmail.com>

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

On Fri, Aug 5, 2011 at 7:13 PM, Eric Schulte <schulte.eric@gmail.com> wrote:

> Rainer M Krug <r.m.krug@gmail.com> writes:
>
> > Hi
> >
> > I have an R package in org, and would like to tangle it before I submit
> to
> > svn.
> >
> > I commit via a code block:
> >
> > #+begin_src sh :results output
> > svn commit  -m "edits"
> > #+end_src
> >
> > How can I tangle automatically before I commit? I could use batch
> execution
> > as described in  http://orgmode.org/manual/Batch-execution.html but I
> think
> > it would be useless to start another emacs instance? I thought that I
> could
> > put it into a header variable to have it evaluated, but I seem to be
> missing
> > something:
> >
> > * test
> > #+begin_src sh :tangle test.sh :var TANGLED=(org-babel-tangle)
> >   echo TEST''
> > #+end_src
> >
> > But I get an error:
> >
> > Saving file /home/rkrug/tmp/test.org...
> > Wrote /home/rkrug/tmp/test.org
> > (No changes need to be saved) [56 times]
> > cons: Lisp nesting exceeds `max-lisp-eval-depth'
> >
> > I have the feeling, I am missing something small.
> >
> > Is there a different way to achieve this?
> >
>
> Hi Rainer,
>
> You are very close, the problem is that the code block whose header
> argument initiates the tangling should not itself be tangled, otherwise
> you will wind up with the infinite recursion error you've noticed.
>
> A setup like the following should work...
>

Works perfectly - I especially like the summary of the tangling via wc
$TANGLED - very nice side effect.

Thanks a lot,

Rainer


>
>
>
> Best -- Eric
>
> --
> Eric Schulte
> http://cs.unm.edu/~eschulte/
>
>


-- 
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology,
UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa

Tel :       +33 - (0)9 53 10 27 44
Cell:       +33 - (0)6 85 62 59 98
Fax (F):       +33 - (0)9 58 10 27 44

Fax (D):    +49 - (0)3 21 21 25 22 44

email:      Rainer@krugs.de

Skype:      RMkrug

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

      reply	other threads:[~2011-08-08  7:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-04 13:21 [babel] tangle from within codeblock? Rainer M Krug
2011-08-05 17:13 ` Eric Schulte
2011-08-08  7:32   ` Rainer M Krug [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=CAGhLh6FkCbMPGmBDUwmViJmDzwV-NiSk0eevY6nvVAUQOqe+yg@mail.gmail.com \
    --to=r.m.krug@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --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).