[O] babel :results output and format of output

2013-02-24 Thread D M German

hi everybody,


I have been testing babel with perl and I am very puzzled by the
following:


Say I have the following script that outputs 10 numbers. org/babel wraps
it as a begin_example


#+begin_src perl :results output 
for (my $i=0;$i10;$i++) {
  print $i\n;
}
#+end_src

#+RESULTS:
#+begin_example
0
1
2
3
4
5
6
7
8
9
#+end_example


But if my script only outputs 9 lines then the format is not wrapped by
#+begin_example, and instead is prefixed by :

#+begin_src perl :results output 
for (my $i=0;$i9;$i++) {
  print $i\n;
}
#+end_src

#+RESULTS:
: 0
: 1
: 2
: 3
: 4
: 5
: 6
: 7
: 8

Is this behaviour expected? Is the threshold at which it happens
configurable?

thanks a lot for your help,


--dmg



--
Daniel M. German  In questions of science the authority of
   a thousand is not worth the humble
   Galileo -  reasoning of a single individual.
http://turingmachine.org/
http://silvernegative.com/
dmg (at) uvic (dot) ca
replace (at) with @ and (dot) with .

 



Re: [O] babel :results output and format of output

2013-02-24 Thread Sean O'Halpin
On Sun, Feb 24, 2013 at 10:50 AM, D M German d...@uvic.ca wrote:

 hi everybody,


 I have been testing babel with perl and I am very puzzled by the
 following:


 Say I have the following script that outputs 10 numbers. org/babel wraps
 it as a begin_example


 #+begin_src perl :results output
 for (my $i=0;$i10;$i++) {
   print $i\n;
 }
 #+end_src

 #+RESULTS:
 #+begin_example
 0
 1
 2
 3
 4
 5
 6
 7
 8
 9
 #+end_example


 But if my script only outputs 9 lines then the format is not wrapped by
 #+begin_example, and instead is prefixed by :

 #+begin_src perl :results output
 for (my $i=0;$i9;$i++) {
   print $i\n;
 }
 #+end_src

 #+RESULTS:
 : 0
 : 1
 : 2
 : 3
 : 4
 : 5
 : 6
 : 7
 : 8

 Is this behaviour expected? Is the threshold at which it happens
 configurable?

Yes - it's controlled by =org-babel-min-lines-for-block-output= in
lisp/ob-core.el:

#+BEGIN_QUOTE
(defvar org-babel-min-lines-for-block-output 10
  The minimum number of lines for block output.
If number of lines of output is equal to or exceeds this
value, the output is placed in a #+begin_example...#+end_example
block.  Otherwise the output is marked as literal by inserting
colons at the starts of the lines.  This variable only takes
effect if the :results output option is in effect.)
#+END_QUOTE

Regards,
Sean