emacs-orgmode
[Top][All Lists]
Advanced

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

[O] [babel] BUG in call lines


From: Andreas Leha
Subject: [O] [babel] BUG in call lines
Date: Thu, 22 Mar 2012 09:42:19 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux)

Hi all,

there seems to be a bug in call lines:

Suppose, I have a src block with two parameters:

#+name: insert_hline
#+header: :var fulltable=mytable() :var after_row=1
#+begin_src emacs-lisp
  (let ((rrr (cons (quote hline) fulltable))
        (bottomrows (nthcdr after_row fulltable))
        (toprows (reverse (nthcdr (- (length fulltable) after_row) (reverse 
fulltable)))))
    (setcdr rrr bottomrows)
    (setcdr (nthcdr (- after_row 1) fulltable) rrr)
    fulltable)
 #+end_src

As first argument I would like to pass the results of a second
source block:
#+name: mytable
#+begin_src R
  data.frame(par=1:3, val=1:3)
#+end_src

#+results: mytable
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |

So, what I do is:

#+call: insert_hline(fulltable=mytable(),after_row=1) :hlines yes :colnames no

#+results: insert_hline(fulltable=mytable()
| 1 | 1 |
|---+---|
| 2 | 2 |
| 3 | 3 |

But the #+results: name is shortened.

So, the following won't produce another results block, but wrongly update
the block above:
#+call: insert_hline(fulltable=mytable(),after_row=2) :hlines yes :colnames no


The problem seems to be the ")" within the parameter list stopping
some parsing.

Note: This works as expected
#+call: insert_hline[:var fulltable=mytable() :var after_row=1]() :hlines yes 
:colnames no

#+results: insert_hline[:var fulltable=mytable() :var after_row=1]()
| 1 | 1 |
|---+---|
| 2 | 2 |
| 3 | 3 |

#+call: insert_hline[:var fulltable=mytable() :var after_row=2]() :hlines yes 
:colnames no

#+results: insert_hline[:var fulltable=mytable() :var after_row=2]()
| 1 | 1 |
| 2 | 2 |
|---+---|
| 3 | 3 |


Regards,
Andreas




reply via email to

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