emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] [babel] FEATURE REQUEST: send results into file


From: Thomas S. Dye
Subject: Re: [Orgmode] [babel] FEATURE REQUEST: send results into file
Date: Wed, 29 Sep 2010 06:02:29 -1000

Aloha Rainer,

Perhaps this will work?  Eric Schulte wrote a function to make a LaTeX table out of an Org-mode table.  You should be able to call it from within a LaTeX source block that tangles to a suitably named file.  There is an added benefit in the support for booktabs rules, so you'll need to have the booktabs package installed.

hth,
Tom

--8<---------------cut here---------------start------------->8---
*** booktabs
This block can be used to wrap a table in the latex =booktabs=
environment, it takes the following arguments -- all but the first two
are optional.
| arg   | description                                |
|-------+--------------------------------------------|
| table | a reference to the table                   |
| align | optional alignment string                  |
| env   | optional environment, default to "tabular" |
| width | optional width specification string        |

#+srcname: booktabs
#+begin_src emacs-lisp :var table='((:head) hline (:body)) :var align='() :var env="tabular" :var width='() :noweb yes :results latex
(flet ((to-tab (tab)
               (orgtbl-to-generic
                (mapcar (lambda (lis)
                          (if (listp lis)
                              (mapcar (lambda (el)
                                        (if (stringp el)
                                            el
                                          (format "%S" el))) lis)
                            lis)) tab)
                (list :lend " \\\\" :sep " & " :hline "\\hline"))))
  (org-fill-template
   "
\\begin{%env}%width%align
\\toprule
%table
\\bottomrule
\\end{%env}\n"
   (list
    (cons "env"       (or env "table"))
    (cons "width"     (if width (format "{%s}" width) ""))
    (cons "align"     (if align (format "{%s}" align) ""))
    (cons "table"
          ;; only use \midrule if it looks like there are column headers
          (if (equal 'hline (second table))
              (concat (to-tab (list (first table)))
                      "\n\\midrule\n"
                      (to-tab (cddr table)))
            (to-tab table))))))
#+end_src
--8<---------------cut here---------------end--------------->8---

once loaded it can be applied as here

--8<---------------cut here---------------start------------->8---
** booktabs
#+tblname: months
| num | Abbrev. |
|-----+---------|
|   1 | Jan.    |
|   2 | Feb.    |
|   3 | Mar.    |

#+call: booktabs(table=months, align="r|l") :results latex :exports results
--8<---------------cut here---------------end--------------->8---

On Sep 28, 2010, at 10:58 PM, Rainer M Krug wrote:

Hi

Based on a discussion in the thread "Problem with PROPERTIES :OPTIONS: when exporting subtree", The idea came ub by Mathew Lundin to be able to "send the results or a source code block (either executed code or exported org snippets) via babel to a target in an external file.".

The scenario or context in which the idea came up:

I am using org babel for literate programming and I document my parameters for simulations in a table in org. Now when writing a paper, for which I use a different program (I use LyX), but I still would like to include the tables from my original org file in them. Therefore I was looking for a possibility to export ONLY the table into a .tex file, so that it can be included in the LyX / LaTeX via \input{theTable.tex} . Therefore I would need an export of the table in LaTeX format, but no preamble or anything. As far as I was told, this possibility does not exist in org.

So Mathew's / my question is if it would be possible to include a functionality to "send the results or a source code block (either executed code or exported org snippets) via babel to a target in an external file.".


Cheers,

Rainer


--
NEW GERMAN FAX NUMBER!!!

Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Natural Sciences Building
Office Suite 2039
Stellenbosch University
Main Campus, Merriman Avenue
Stellenbosch
South Africa

Cell:           +27 - (0)83 9479 042
Fax:            +27 - (0)86 516 2782
Fax:            +49 - (0)321 2125 2244
email:          address@hidden

Skype:          RMkrug
Google:         address@hidden

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


reply via email to

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