emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Re: [babel] Is ":results output inline" possible
@ 2009-10-20  6:12 emailorama
  0 siblings, 0 replies; 5+ messages in thread
From: emailorama @ 2009-10-20  6:12 UTC (permalink / raw)
  To: emacs-orgmode


Thanks very much for your reply Eric.

    So the ":results org" feature was there all along.
    Searching for "raw" in "org-babel.el" shows it's nicely
    explained in the doc-string for "org-babel-insert-result".
    (maybe I should have done that sooner)

    I also noticed the ":results html" and ":results latex"
    options which look very useful.

    The latex option encloses the output in a
    #+BEGIN_LaTeX ... #+END_LaTeX block, which is nice because
    when the source block is re-executed, the new results
    replace the old results.

 -- Would it be possible to have something like that for "raw"
    or "org" mode?  
    (Maybe that would need a #+BEGIN_org ... #+END_org kind
    of construct.)

    Also, I've been looking at #+lob: which looks like another
    really useful idea, and there are two things I am wondering
    about.

 -- Is it possible to use #+lob: with ":results output org" ?

 -- Is it possible for #+lob: to take a string argument ?
    
    The 4 examples below show things I have tried.
      1. and 2. work fine.  
      3. and 4. are what I can't work out.


Thanks for any ideas you have about these things.

al

--------------------------------------------------
1.  :results output org -> works
--------------------------------------------------
#+srcname: randone
#+begin_src ruby :results output org
description = "lucky"
number = 3
maximum = 100
puts "* Random numbers\n" +
"Here are some #{description} numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+resname: randone
* Random numbers
Here are some lucky numbers: 48, 69, 6.


--------------------------------------------------
2. :results value  -> works with #+lob:
--------------------------------------------------
#+srcname: randtwo(n,max)
#+begin_src ruby :results value
number = n
maximum = max
"* Random numbers\n" +
"Here are some random numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+lob: randtwo(n=3,max=100)

#+resname: randtwo(n=3,max=100)
: * Random numbers
: Here are some random numbers: 14, 77, 75.


--------------------------------------------------
3. :results output org -> doesn't work with #+lob:
--------------------------------------------------
#+srcname: randthree(n,max)
#+begin_src ruby :results output org
number = n
maximum = max
puts "* Random numbers\n" +
"Here are some random numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+lob: randthree(n=3,max=10)

#+resname: randthree(n=3,max=10)
: nil


--------------------------------------------------
4. Not sure how to use string argument with #+lob:
--------------------------------------------------
#+srcname: randfour(n,max,desc)
#+begin_src ruby :results value
description = desc
number = n
maximum = max
"* Random numbers\n" +
"Here are some #{description} numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+lob: randfour(n=3,max=100,desc="lucky")

#+resname: randfour(n=3,max=100,desc="lucky")
: randfour





^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [babel] Is ":results output inline" possible
@ 2009-10-20  6:14 emailorama
  2009-10-20 13:44 ` Dan Davison
  0 siblings, 1 reply; 5+ messages in thread
From: emailorama @ 2009-10-20  6:14 UTC (permalink / raw)
  To: emacs-orgmode


Thanks very much for your reply Eric.

    So the ":results org" feature was there all along.
    Searching for "raw" in "org-babel.el" shows it's nicely
    explained in the doc-string for "org-babel-insert-result".
    (maybe I should have done that sooner)

    I also noticed the ":results html" and ":results latex"
    options which look very useful.

    The latex option encloses the output in a
    #+BEGIN_LaTeX ... #+END_LaTeX block, which is nice because
    when the source block is re-executed, the new results
    replace the old results.

 -- Would it be possible to have something like that for "raw"
    or "org" mode?  
    (Maybe that would need a #+BEGIN_org ... #+END_org kind
    of construct.)

    Also, I've been looking at #+lob: which looks like another
    really useful idea, and there are two things I am wondering
    about.

 -- Is it possible to use #+lob: with ":results output org" ?

 -- Is it possible for #+lob: to take a string argument ?
    
    The 4 examples below show things I have tried.
      1. and 2. work fine.  
      3. and 4. are what I can't work out.


Thanks for any ideas you have about these things.

al

--------------------------------------------------
1.  :results output org -> works
--------------------------------------------------
#+srcname: randone
#+begin_src ruby :results output org
description = "lucky"
number = 3
maximum = 100
puts "* Random numbers\n" +
"Here are some #{description} numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+resname: randone
* Random numbers
Here are some lucky numbers: 48, 69, 6.


--------------------------------------------------
2. :results value  -> works with #+lob:
--------------------------------------------------
#+srcname: randtwo(n,max)
#+begin_src ruby :results value
number = n
maximum = max
"* Random numbers\n" +
"Here are some random numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+lob: randtwo(n=3,max=100)

#+resname: randtwo(n=3,max=100)
: * Random numbers
: Here are some random numbers: 14, 77, 75.


--------------------------------------------------
3. :results output org -> doesn't work with #+lob:
--------------------------------------------------
#+srcname: randthree(n,max)
#+begin_src ruby :results output org
number = n
maximum = max
puts "* Random numbers\n" +
"Here are some random numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+lob: randthree(n=3,max=10)

#+resname: randthree(n=3,max=10)
: nil


--------------------------------------------------
4. Not sure how to use string argument with #+lob:
--------------------------------------------------
#+srcname: randfour(n,max,desc)
#+begin_src ruby :results value
description = desc
number = n
maximum = max
"* Random numbers\n" +
"Here are some #{description} numbers: " +
(1..number).collect {|x| (rand * maximum).ceil }.join(", ") +
"."
#+end_src

#+lob: randfour(n=3,max=100,desc="lucky")

#+resname: randfour(n=3,max=100,desc="lucky")
: randfour





^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [babel] Is ":results output inline" possible
@ 2009-10-23  7:45 emailorama
  0 siblings, 0 replies; 5+ messages in thread
From: emailorama @ 2009-10-23  7:45 UTC (permalink / raw)
  To: emacs-orgmode

>>>  -- Is it possible to use #+lob: with ":results output org" ?
>>>  -- Is it possible for #+lob: to take a string argument ?
>>
>> Both these were bugs, which are fixed in my development branch -- they
>> should be merged into org-core by Eric soon.
>
> Those changes are in the main org git repo now, so your examples should
> work. Note that with your third example, the header args need to be
> placed on the #+lob line rather than with the source block, so
> that #+lob knows that it is to output org code (header args placed
> with #+lob are inherited by the referenced source block).

Hello Dan,

Wow - that was fixed quickly !

org-mode is a great package, and babel and #+lob bring
such nice integration with several useful languages.
I'm probably just beginning to realize the potential.

Thanks very much for your response,

al






^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-10-23  7:45 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-10-20  6:12 [babel] Is ":results output inline" possible emailorama
  -- strict thread matches above, loose matches on Subject: below --
2009-10-20  6:14 emailorama
2009-10-20 13:44 ` Dan Davison
2009-10-20 15:20   ` Dan Davison
2009-10-23  7:45 emailorama

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).