emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: "Thomas S. Dye" <tsd@tsdye.com>
To: Rainer M Krug <r.m.krug@gmail.com>
Cc: emacs-orgmode <emacs-orgmode@gnu.org>
Subject: Re: [babel] FEATURE REQUEST: send results into file
Date: Wed, 29 Sep 2010 06:02:29 -1000	[thread overview]
Message-ID: <5AEB6EE1-152E-4DDC-BAB7-5897FE774E51@tsdye.com> (raw)
In-Reply-To: <AANLkTi=zas0KnqwH7sZrNPTT_OGhbuHeTpP+RrYTaL2t@mail.gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 4712 bytes --]

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:          Rainer@krugs.de
>
> Skype:          RMkrug
> Google:         R.M.Krug@gmail.com
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[-- Attachment #1.2: Type: text/html, Size: 10253 bytes --]

[-- Attachment #2: Type: text/plain, Size: 201 bytes --]

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

  parent reply	other threads:[~2010-09-29 16:02 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-29  8:58 [babel] FEATURE REQUEST: send results into file Rainer M Krug
2010-09-29  9:21 ` Sébastien Vauban
2010-09-29 10:24   ` Rainer M Krug
2010-09-29 10:59     ` Sébastien Vauban
2010-09-29 11:54       ` Rainer M Krug
2010-09-29 15:53 ` Eric Schulte
2010-09-29 16:02 ` Thomas S. Dye [this message]
2010-09-29 16:22   ` Eric Schulte

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5AEB6EE1-152E-4DDC-BAB7-5897FE774E51@tsdye.com \
    --to=tsd@tsdye.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=r.m.krug@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).