[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] [Babel][Bug] Inconsistent output from babel function depending o
From: |
Eric Schulte |
Subject: |
Re: [O] [Babel][Bug] Inconsistent output from babel function depending on how called |
Date: |
Thu, 26 May 2011 12:46:27 -0600 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Ethan Ligon <address@hidden> writes:
> I'd like to call a simple babel code block to generate org-code
> If I define a list thusly:
>
> #+results: list1
> - foo
> - bar
>
> Then I define a code block thusly, and execute it by C-c C-c on the
> "source" line. That yields the desired result: a sequence of headings
> under "#+results: print_list".
>
> #+source: print_list(lst=list1)
> #+begin_src sh :results output org
> for i in $lst; do
> echo "* $i"
> done
> #+end_src
>
> #+results: print_list
> #+BEGIN_ORG
> * foo
> * bar
> #+END_ORG
>
> Now I want to reuse the code block to generate other sequences of
> headings. But even if I call it with the *same* list, instead of the
> desired headings, I get a literal, as below.
>
> #+call: print_list(lst=list1)
>
> #+results: print_list(lst=list1)
> : * foo
> : * bar
>
> I think this qualifies as a bug---surely the method of calling the
> code block shouldn't affect the output?
>
No, this is expected (if possibly under-documented behavior). The
:results header arguments are associated with the code block and *not*
with the #+call line. To get the desired behavior, you must specify the
:results header argument on the #+call: line thusly.
#+call: print_list(lst=list1) :results output org
Best -- Eric
>
> Thoughts, patches, or work-arounds welcomed!
>
> Thanks,
> -Ethan
--
Eric Schulte
http://cs.unm.edu/~eschulte/