TeX/Mathematica is a set of tools that provide facilities of
Mathematica Notebooks in a UNIX environment, under GNU Emacs. They
permit interaction between a text and a Mathematica buffer and, if
desired, the use of TeX/LaTeX to annotate Mathematica-based
explorations and programs. Inclusion of Mathematica-generated
graphics in TeX/LaTeX documents printed using PostScript is
supported. The tools also support the automatic generation of
Mathematica packages from Mathematica documents.
With these tools one can interactively develop and refine teaching and
research documents. The interactive nature of the tools encourages
Mathematica-based exploration as a natural part of the writing
process.
Getting TeX/Mathematica
***********************
The TeX/Mathematica tools are available from Internet host
`chem.bu.edu' [128.197.30.18] by anonymous `ftp' in directory
`/pub/tex-mathematica'. The author can be reached at Internet address
`dan@chem.bu.edu'.
The `ftp' directory contains four files
* `README', which duplicates the information
in this node.
* `CHANGES', which describes changes that have been made.
* `tex-mma-j.ps.Z', the compressed PostScript documentation/example.
* `tex-mma.tar.Z', the TeX/Mathematica distribution kit (includes the
first three files).
LaTeX description of TeX/Mathematica
====================================
The PostScript document `tex-mma-j.ps.Z' is derived from the LaTeX
description of TeX/Mathematica. Transfer the document from the
`ftp' directory in binary (image) mode and then print it with
zcat tex-mma-j.ps.Z | lpr
The source for this document is the LaTeX file `tex-mma-j.tex' and
the BibTeX file `tex-mma-j.bib'. You can use `tex-mma-j.tex'
as a LaTeX example of a TeX/Mathematica document.
Files in the distribution kit
=============================
The file `tex-mma.tar.Z' contains the TeX/Mathematica
tools. These consist of the following:
Documentation things:
* `tex-mma.texinfo', Texinfo documentation of TeX/Mathematica
* `tex-mma.ps.Z', compressed Texinfo document
formatted with TeX into PostScript
* `tex-mma.info', Info file
(this file)
for on-line Emacs documentation
* `tex-mma-j.tex', LaTeX description/example of TeX/Mathematica
* `tex-mma-j.bib', BibTeX file for `tex-mma-j.tex'
* `tex-mma-j.ps.Z', compressed LaTeX documentation formatted in
PostScript
* `sin3x.ps', Mathematica-generated figure included in
`tex-mma-j.tex'
* `tex-mma-tex.tex', TeX example of TeX/Mathematica
* `texinfo.tex', TeX macros used to format `tex-mma.texinfo'
GNU Emacs things:
* `tex-mma.el', the `tex-mathematica' package
* `math.el', David Jacobson's Mathematica mode package (*Note math::)
* `unix-tex-mma.el', example implementation of cell-type `unix'
TeX/LaTeX things:
* `mathematica10pt.tex', TeX 10 point TeX/Mathematica interface
* `mathematica12pt.tex', TeX 12 point TeX/Mathematica interface
* `mathematica.sty', LaTeX generic TeX/Mathematica interface
* `mathematica.tex', macros for formatting TeX/Mathematica
documents, used by the preceding files
Shell scripts and Mathematica commands for processing graphics, and
shell script and template file for Mathematica package assembly:
* `PSTeX.m', generates `psfig'-adapted graphics to a file, without
PostScript prolog
* `addBBox', shell script called by `PSTeX'
* `PSTeXpro.m', generates `psfig'-adapted graphics to a file, with
PostScript prolog
* `addBBoxpro', shell script called by `PSTeXpro'
* `addBBoxpro.awk', `awk' script called by `addBBoxpro'
* `PSFile.m', generates full-page graphics to a file, with PostScript
prolog
* `tex-mma-assemble-package', shell script for Mathematica package
assembly
* `tex-mma-assemble-package.tmplt', Emacs Lisp template used by
`tex-mma-assemble-package'
This is from Cameron Smith (*Note addBBox::):
* `mma.pro.1.2', Mathematica Version 1.2 PostScript prolog. Note
that a different prolog will be needed for Mathematica Version 2.0.
This will be available from the author (*Note Getting tex-math::).
These are from Trevor Darrell's `psfig/tex' distribution (*Note psfig::):
* `psfig.pro', `psfig' PostScript prolog.
* `psfig.sty', `psfig' for LaTeX.
* `psfig.tex', `psfig' for TeX.
Installation procedure
======================
1. Transfer `tex-mma.tar.Z' in binary (image) mode into an empty
directory, and extract its contents, with (for example)
zcat tex-mma.tar.Z | tar xvf -
2. Install the Info on-line documentation file `tex-mma.info' where
your Emacs looks for Info file. If desired, add a pointer to it to your
Info directory file so that it will appear in the Info top-level menu.
The source for `tex-mma.info' is `tex-mma.texinfo'. The file
`tex-mma.ps.Z' is the compressed TeX formatted version, made
using the `texinfo.tex' included in the distribution (see the
beginning of `tex-mma.texinfo' for directions). The formatted
version can be printed with
zcat tex-mma.ps.Z | lpr
It contains complete details of the TeX/Mathematica tools.
3. Edit `tex-mma.el' to
* set `tex-mma-process-string' to the command
you use to start Mathematica (default is `math');
* set `tex-mma-info-file' to point to where you put the file
`tex-mma.info'
4. Run `M-x byte-compile' on `tex-mma.el' and store the resulting
`tex-mma.elc' wherever your GNU Emacs looks for files.
5. Add the following to the GNU Emacs initialization file
(autoload 'tex-mathematica "tex-mma"
"Major-mode for interaction with Mathematica from TeX." t)
(autoload 'plain-tex-mathematica "tex-mma"
"Major-mode for interaction with Mathematica from TeX." t)
(autoload 'latex-mathematica "tex-mma"
"Major-mode for interaction with Mathematica from TeX." t)
6. If you do not have David Jacobson's Mathematica mode package
`math.el', install it following the instructions in `math.el'.
If you do have `math.el', make sure your version is at least as
current as the one here, which contains changes necessary for use with
`tex-mma.el'. Make sure you place the file `math.el' (or,
better, the byte-compiled file `math.elc') where your Emacs looks
for libraries, so that `tex-mma.elc' will be able to load it if it
is not already loaded.
7. Edit `mathematica.tex' (at the end) to specify where the PostScript
prolog files `psfig.pro' and `mma.pro.1.2' will be, and put the
prolog files there.
8. If you are using a LaTeX *earlier* than 2 May 90, edit
`mathematica.sty' according to the comments there.
9. Put `mathematica.tex', `mathematica.sty', `mathematica12pt.tex',
`mathematica10pt.tex', `psfig.sty', and `psfig.tex' where your
TeX looks for macro files.
10. Put `PSTeX.m', `PSTeXpro.m' and `PSFile.m' where your
Mathematica looks for packages.
11. Edit `addBBoxpro' to specify which `awk' you use (default is GNU
awk, `gawk').
12. Edit `tex-mma-assemble-package' to set the variables `bindir', `tmpdir'
and `tmpdirsed' for your system, as described in the comments there
and then place `tex-mma-assemble-package.tmplt' in `bindir'.
13. Put `addBBox', `addBBoxpro', `addBBoxpro.awk' and
`tex-mma-assemble-package' on your system's binary search path, make sure
they have execute status, and then execute `rehash'.
You should be ready to go: Startup emacs, run `M-x tex-mathematica'
and have fun.