On Fri, Mar 29, 2013 at 09:04:42AM -0600, Eric Schulte wrote: > Rick Frankel <r...@rickster.com> writes: > > Users may want to insert a "-" in their tables, and I think it would be > surprising to magically replace floating "-" characters with hlines. > There are numerous existing options for inserting hlines into tables, > e.g., the :colnames header argument, using the raw, wrap and org result > types and printing literal Org-mode syntax from your block, additionally > any result could be passed through an elisp code block which may insert > hline symbols at will. > > Is there a specific use case which isn't addressed by the existing > functionality?
Yes and no. :colnames works, but often the header comes from the processing, so they may not be static (I use a lot of call:s). Also, I've been having trouble using the output from raw results as input -- it seems that unless the results are cached (:cache yes), the table is not parsed on input, but passed as a multiline string. I was hoping to avoid this problem using value returns (now that Achim has made the perl parsing work better). Here's an example (btw, this breaks in 7.4 as well): * Cache vs. uncached raw #+name: uncached #+begin_src elisp :results raw "|c1|c2| |- |a|1| |b|2|" #+end_src #+call: uncached() #+results: uncached() : |c1|c2| : |- : |a|1| : |b|2| #+name: cached #+begin_src elisp :results raw :cache yes "|c1|c2| |- |a|1| |b|2|" #+end_src #+results[62ca3004bf7cb363e47635216b3289cfdc39684c]: cached | c1 | c2 | |----+----| | a | 1 | | b | 2 | #+call: cached() #+results: cached() | a | 1 | | b | 2 |