ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <pragma@wxs.nl>
Subject: Re: run a ruby script and use the standard output ???
Date: Thu, 28 Sep 2006 09:45:29 +0200	[thread overview]
Message-ID: <451B7D99.20902@wxs.nl> (raw)
In-Reply-To: <451AE846.2090701@nibua-r.org>

Renaud AUBIN wrote:
> Hi all,
>
> Is it possible to run a ruby script from a context document during its 
> processing (I already know how to do that using \write18 but there is 
> maybe a better way...) then get the output of the script to display or 
> use it into the document. It's a little bit hard to describe so I have 
> a simple example:
>
> \starttext
> \def\vartest{3.124325234543523452435}
> \write18{ruby ./myscript.rb \vartest 
> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}
> \stoptext
>
> with myscript.rb:
>
> temp = ARGV[0]
> puts "\nXXXXXXXXXXXXX " + (Math::sqrt(temp.to_f)).to_s + " 
> XXXXXXXXXXXXX\n"
>
> I would store the result of puts into a variable usable within ConTeXt...
>
piping: the latest versions of pdftex support this (i\ve forgotten the syntax, but taco who wrote the patch may remember)

you can also let ruby write a definition to a file temp.tmp which you can read in 

however, luatex can do: 

\edef\SomeVar{\lua{tex.print(math.sqrt(3.124325234543523452435))} or 

\def\GimmeARoot#1{\lua{tex.print(math.sqrt(#1))}

actually, this is one of the examples i use in prelim demos at user group meetings -) 

so, be a bit patient and it will come your way ... 



Hans 


-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------

  reply	other threads:[~2006-09-28  7:45 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-09-27 21:08 Renaud AUBIN
2006-09-28  7:45 ` Hans Hagen [this message]
2006-09-28  9:18   ` Taco Hoekwater
2006-09-29 15:34     ` Renaud AUBIN
2006-09-29 15:45       ` Taco Hoekwater
2006-09-29 18:24         ` Renaud AUBIN
2006-09-29 18:54           ` Taco Hoekwater
2006-09-29 19:18             ` Renaud AUBIN
2006-09-29 19:45             ` Renaud AUBIN
2006-09-30  6:47               ` Taco Hoekwater

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

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

  git send-email \
    --in-reply-to=451B7D99.20902@wxs.nl \
    --to=pragma@wxs.nl \
    --cc=ntg-context@ntg.nl \
    /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.
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 NNTP newsgroup(s).