emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: tsd@tsdye.com (Thomas S. Dye)
To: emacs-orgmode@gnu.org
Subject: Re: babel output as LaTeX code: help please!
Date: Tue, 10 Mar 2015 08:42:15 -1000	[thread overview]
Message-ID: <m24mpsk83c.fsf@tsdye.com> (raw)
In-Reply-To: <871tkwn4sm.fsf@ucl.ac.uk> (Eric S. Fraga's message of "Tue, 10 Mar 2015 17:25:13 +0000")

Hi Eric,

Eric S Fraga <e.fraga@ucl.ac.uk> writes:

> Hi,
>
> I am using babel with awk to generate some LaTeX code that I would like
> exported and interpreted as LaTeX.  I have the following which works if
> I were to use the src block directly but I wish to /call/ the src block
> with different tables:
>
> #+begin_src org
>   ,* layout
>   ,#+caption: Position of each circle
>   ,#+tblname: solution
>   |   | \(R_i\) |   \(r_i\) | \(\theta_i\) |  \(x\) |  \(y\) |
>   |---+---------+-----------+--------------+--------+--------|
>   | 1 |       6 | 19.834868 |     5.358859 |  11.95 | -15.83 |
>   | 2 |       7 | 21.443075 |     0.101102 |  21.33 |   2.16 |
>   | 3 |       8 | 19.005610 |     1.547045 |   0.45 |  19.00 |
>   | 4 |       9 | 20.688749 |     3.604317 | -18.51 |  -9.24 |
>   | 5 |      11 |  0.046762 |     3.863237 |  -0.04 |  -0.03 |
>   ,#+TBLFM: $5=$3*cos($4);R%.2f::$6=$3*sin($4);R%.2f
>
>   ,#+call: drawlayout[:stdin solution]()
>
>   ,#+name: drawlayout
>   ,#+header: :results raw
>   ,#+begin_src awk
>     BEGIN {
>         print "#+begin_latex"
>         print "\\begin{tikzpicture}[scale=0.1]"
>         print "\\draw"
>     }
>     /^[0-9]/ {
>         printf("(%f,%f) circle (%f) node {%d}\n", $5, $6, $2, $1);
>     }
>     END {
>         print ";"
>         print "\\end{tikzpicture}"
>         print "#+end_latex"
>     }
>   ,#+end_src
> #+end_src
>
> I cannot figure out the magic incantation of [inside header arguments]
> and [end header arguments] that will export the output of the awk block
> when called as raw LaTeX code.
>
> If I put ":results raw" and ":exports results" on the src block,
> exporting that block works just fine.  The call however is wrapped in an
> EXAMPLE block which does me no good!
>
> Any suggestions welcome!

Have you tried

#+call: drawlayout[:stdin solution]() :results raw

or,

#+call: drawlayout[:stdin solution]() :results latex

which should make the print "#+begin_latex" etc. lines of drawlayout redundant?

All the best,
Tom

-- 
Thomas S. Dye
http://www.tsdye.com

  reply	other threads:[~2015-03-10 18:42 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-10 17:25 babel output as LaTeX code: help please! Eric S Fraga
2015-03-10 18:42 ` Thomas S. Dye [this message]
2015-03-10 19:14   ` Eric S Fraga
2015-03-10 19:49     ` Thomas S. Dye

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=m24mpsk83c.fsf@tsdye.com \
    --to=tsd@tsdye.com \
    --cc=emacs-orgmode@gnu.org \
    /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).