emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] How to pass a block of text to a code block as data?


From: Michael Baum
Subject: Re: [O] How to pass a block of text to a code block as data?
Date: Fri, 8 Feb 2013 21:59:20 -0500

Sebastien:

Thanks! That helps a lot. I'm having trouble extending your example, however. A couple of questions --

- What signals the end of the block of text to be used as data? I take it that it's important that these all be comment lines staring with a colon after the #+name label? Is there a way to do the same thing with a begin and end block construction?

- In this line:
       #+begin_src sh :stdin lines-of-text :results output

does the flag :stdin mean that the following named block literally becomes the STDIN stream for the code block? If I replace your shell/grep example with this:

#+begin_src perl :stdin lines-of-text :results output
while (<>) {
   print $_;
}
#+end_src

...it doesn't work, although as far as I know that perl code snippet should in fact simply print out the incoming lines from stdin.

Thanks again,

Michael

On Fri, Feb 8, 2013 at 3:17 PM, Sebastien Vauban <address@hidden> wrote:
Hi Michael,

Michael Baum wrote:
> I haven't been able to figure this out from the org-mode documents yet.
> What I would like to do is have a source code block in python or perl or
> something similar. to which I can pass a reference to several lines of text
> that the source code block, when evaluated, would then act on. Which would
> involve iterating through the data text one line at a time and writing the
> output to a buffer.
>
> The text data could be indicated by a specific headline or a named block of
> some sort or maybe an internal link, I'm not particularly fussy just so
> there's a mechanism to do this.
>
> Would appreciate any guidance.

#+name: lines-of-text
: I haven't been able to figure this out from the org-mode documents yet.
: What I would like to do is have a source code block in python or perl or
: something similar. to which I can pass a reference to several lines of text
: that the source code block, when evaluated, would then act on. Which would
: involve iterating through the data text one line at a time and writing the
: output to a buffer.

#+begin_src sh :stdin lines-of-text :results output
  grep would
#+end_src

#+results:
#+begin_example
What I would like to do is have a source code block in python or perl or
that the source code block, when evaluated, would then act on. Which would
#+end_example

Best regards,
  Seb

--
Sebastien Vauban





--
====================================
Michael Baum <address@hidden>

You should never have your best trousers on when you go out
 to fight for freedom and truth. - Ibsen
reply via email to

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