[plt-scheme] Using DrScheme and tex2page on Mac OS X 10.1.5

From: peter.ilberg at ni.com (peter.ilberg at ni.com)
Date: Fri Aug 6 12:40:30 EDT 2004

Hello!

I've run into a couple of problems with DrScheme and tex2page on Mac
OS X 10.1.5.

1) DrScheme is installed in /Applications/PLT Scheme v206pl (using the
   package installer from the DrScheme website).

   I've so far unsuccessfully tried to add the bin folder in that
   location to my path variable so I can use mzc, slatex, tex2page,
   etc from the command line. On Mac OS X 10.1.5 you're supposed to do
   this in ~/Library/init/tcsh/path:

   setenv PATH ${PATH}:/Applications/PLT\ Scheme\ v206pl/bin

   Or some permutation thereof (single-quotes, double-quotes,
   etc). All of this seems to choke on the spaces in the path. As a
   result I always get

   PATH    ...lots of paths...:/Applications/PLT:Scheme:v206pl/bin

   For some reason the syntax above works in single-quotes when I
   create an alias in ~/Library/init/tcsh/environment.mine. I'd just
   like to use a more general solution where I don't have to alias
   every single tool.

   What is the magic incantation to get this to work in tcsh?

2) tex2page uses images for mathematic formulas. It generates a dvi
   for every single formula, converts it to ps with dvips, and then
   does a few specific conversions depending on whether you want a
   gif, png, or jpeg image.

   I'd like to change this process by redefining a few functions in
   tex2page-aux.ss. When you run mydocument.tex through tex2page, it
   already loads mydocument.t2p with document-specific customizations
   if it find this file. I'd like to reuse that mechanism and stick my
   changes in there rather that change tex2page generally on my
   system.

   tex2page provides a very handy \eval{} directive that allows you to
   run arbitrary scheme code in TeX documents.

   But I don't know how to change the definition of a function in
   (module tex2page-aux.ss mzscheme). I don't even know if it's
   possible to do this from outside the module. (I'm assuming I'm
   outside that module because (define...) doesn't work, nor does
   (set!...).) I can call functions exported by that module however.

   The PLT documentation describes how you have create another module
   to extend the first one. But my new function obviously is invisible
   to the old module and never gets called instead of the old
   function.

   Is it possible to redefine/set! a function in a module from the
   outside? And if so how do I do it?

Thanks in advance,

Peter


Posted on the users mailing list.