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] feature request - tangle-and-evaluate-tangled-file
Date: Mon, 12 Jul 2010 09:46:32 +0200	[thread overview]
Message-ID: <AANLkTimfpvu7pxmQIQ4zN5v25eTjjbXM9up9PuA48aH8@mail.gmail.com> (raw)
In-Reply-To: <874og8irrn.fsf@gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 4631 bytes --]

Hi Eric,

On Fri, Jul 9, 2010 at 5:44 PM, Eric Schulte <schulte.eric@gmail.com> wrote:

> Hi Rainer,
>
> Rainer M Krug <r.m.krug@gmail.com> writes:
>
> > On Thu, Jul 8, 2010 at 9:03 PM, Eric Schulte <schulte.eric@gmail.com>
> wrote:
> [...]
> >>
> >> (add-hook 'org-babel-post-tangle-hook
> >>          (lambda () (ess-load-file (buffer-file-name))))
> >>
> >
> > Unfortunately, this does not work. I put the code above into my
> > emacs.organd nothing happens - not even an error message. I tried to
> > use the C-h v to customise the variable, but I don't manage it.
>
> If the variable isn't registered with C-h v, then it sounds like maybe
> you need to update Org-mode, and/or re-run make clean && make.
>

OK - that is working now.


>
> > In addition, The filename for es-load-file shoud not be the buffer
> > name, but the buffer name with the extension replaced with R.
> >
>
> `buffer-file-name', returns the name of the file that the buffer is
> visiting, so wouldn't this already be the case if the filename ends with
> .R?
>

Isn't the buffer from which I am tangling the org buffer, and not the result
from the tangling? (see below for further remarks.


>
> This minimal example with the hook defined as above works for me.  After
> tangling I can jump to the *R* buffer where both x and y are defined.
>
> --8<---------------cut here---------------start------------->8---
> ** tangle R and load
>   :PROPERTIES:
>   :tangle:   to-load.r
>   :END:
>
> #+begin_src R :comments yes
>  x <- 8
> #+end_src
>
> #+begin_src R
>  y <- 9
> #+end_src
> --8<---------------cut here---------------end--------------->8---
>

Not here -

Emacs and org-mode version:

GNU Emacs 23.2.1 (i686-pc-linux-gnu, GTK+ Version 2.20.1)
Org-mode version 6.36trans (release_6.36.603.g227b)

1) if no R process is running, I get the following message:
ess-start-process-specific: No ESS processes running; not yet implemented to
start (Initial,nil)
No problem 0 I can start an R process manually.

2) when an R session is running, I get the following error message from ESS:
Errors: Use C-c ` to find error.
Symbol's function definition is void: with-temp-filebuffer

and from ESS:

Error in source("/home/rkrug/tmp/R.org") :
  /home/rkrug/tmp/R.org:1:1: unexpected '^'
1: **

it seems to submit the org file (the buffer is saved as R.org) to R.

So buffer-file-name should actually be replaced with the name from the file
name resulting from the tangling, in the easiest case (which would be fine
with me) the org buffer name with .org replaced with .R.
So I did the following (my firs elisp code!):

  (add-hook 'org-babel-post-tangle-hook
            (lambda () (ess-load-file (replace-regexp-in-string ".org" ".R"
buffer-file-name))))

and it is working - except that I still get the Symbol's function definition
is void: with-temp-filebuffer , but it does not seem to do anything.

Thanks a lot,

Rainer





> >
> > I am sorry about all these questions, but emacs-lisp I have never used
> > emacs-lisp (I should - and I will!)
> >
>
> No problem at all, but be careful about learning too much lisp as you
> may begin to grow dissatisfied with R :)
>
> Best -- Eric
>
> >
> > Cheers and thanks for your patience,
> >
> > Rainer
> >
> >
> >> Best -- Eric
> >>
> >> Rainer M Krug <r.m.krug@gmail.com> writes:
> >>
> >> > Hi
> >> >
> >> > I am using org-babel for literate programming in R and I am using the
> >> > following approach to test the code:
> >> >
> >> > 1) tangle
> >> > 2) refresh buffer containing the tangled code (I use auto-revert-mode
> or
> >> > global-auto-revert-mode for that)
> >> > 3) load the tangled file into an existing R session via ESS R for
> >> evaluation
> >> >
> >> > This involves switching between buffers in always the same sequence.
> >> > Therefore my suggestion:
> >> >
> >> > would it be possible to have a tangle-and-evaluate-tangled-file
> >> funcction,
> >> > which is doing this automatically?
> >> >
> >> > C-c - 0 and org-babel-execute-buffer do not work in this case, as
> >> functions
> >> > are split over several code blocks in R.
> >> >
> >> > Cheers,
> >> >
> >> > Rainer
> >>
>



-- 
NEW GERMAN FAX NUMBER!!!

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

Centre of Excellence for Invasion Biology
Natural Sciences Building
Office Suite 2039
Stellenbosch University
Main Campus, Merriman Avenue
Stellenbosch
South Africa

Cell:           +27 - (0)83 9479 042
Fax:            +27 - (0)86 516 2782
Fax:            +49 - (0)321 2125 2244
email:          Rainer@krugs.de

Skype:          RMkrug
Google:         R.M.Krug@gmail.com

[-- Attachment #1.2: Type: text/html, Size: 7827 bytes --]

[-- Attachment #2: Type: text/plain, Size: 201 bytes --]

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

  reply	other threads:[~2010-07-12  7:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-06  7:55 [babel] feature request - tangle-and-evaluate-tangled-file Rainer M Krug
2010-07-08 19:03 ` Eric Schulte
2010-07-09  7:47   ` Rainer M Krug
2010-07-09 15:44     ` Eric Schulte
2010-07-12  7:46       ` Rainer M Krug [this message]
2010-07-12 17:51         ` Eric Schulte
2010-07-13  8:14           ` Dr Rainer M Krug
2010-07-15 12:37             ` Rainer M Krug
2010-07-16 22:58               ` Eric Schulte
2010-07-19  7:12                 ` Rainer M Krug
2010-07-20  7:55                   ` Rainer M Krug
2010-07-20 22:41                     ` Eric Schulte
2010-07-21  7:23                       ` Rainer M Krug
2010-07-21  7:49                         ` Rainer M Krug
2010-07-21  8:09                           ` Rainer M Krug
2010-07-21 16:50                             ` Eric Schulte
2010-07-22  6:30                               ` Rainer M Krug

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=AANLkTimfpvu7pxmQIQ4zN5v25eTjjbXM9up9PuA48aH8@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).