$Modified: Wed Feb 9 19:48:19 EST 1994 by dan $
TeX/Mathematica 1.4, for
Mathematica versions 2.1 and 2.2, and
Emacs 18 and 19
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, using a WEB-like notation.
Package generation can be used to document other programming languages.
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 for Mathematica versions 2.1 and 2.2 are
available from Internet host `chem.bu.edu' [128.197.30.18] by anonymous
`ftp' in directory
/pub/tex-mathematica/for-Mathematica-2.1-and-2.2
The TeX/Mathematica tools for Mathematica versions 1.2 and 2.0 are
available in correspondingly named directories. 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.
* `tutorial.ps.Z', the compressed tutorial/LaTeX example formatted
in PostScript.
* `tex-mma.tar.Z', the TeX/Mathematica distribution kit (includes the
first three files).
* Menu:
* Documentation:: LaTeX description of TeX/Mathematica
* Install:: Step-by-step installation instructions
* Changes:: Chenages made from previous versions
* Tool kit:: Contains the TeX/Mathematica tools
LaTeX description of TeX/Mathematica
====================================
Transfer the PostScript document `tutorial.ps.Z' from the `ftp'
directory in binary (image) mode and then print it with
zcat tutorial.ps.Z | lpr
The source for this document is the LaTeX file `tutorial.tex' and the
BibTeX file `tutorial.bib'. You can use `tutorial.tex' as a LaTeX
example of a TeX/Mathematica document.
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. The file `tex-mma.ps.Z' is the compressed TeX formatted version of
the Info on-line documentation of TeX/Mathematica (what you are
reading now), 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 the shell script `tex-mma-install', according to the
instructions there. Then execute it, with, for example,
chmod +x tex-mma-install;
tex-mma-install
This will customize the TeX/Mathematica tools for your system and
place them in the appropriate directories. If you want to change
things, just re-edit `tex-mma-install' and then re-execute it.
4. Add the contents of `tex-mma.m' to your Mathematica initialization
file `init.m' and add the contents of `tex-mma.emacs' to your
Emacs system default file `default.el' or your own initialization
file `.emacs'.
5. The latest version (1.9) of psfig/TeX is included. This works with
compressed figures, which are supported in the latest (5.512a)
version of the Rokicki `dvips' processor. You can print the
documentation for psfig/TeX 1.9 with, for example,
zcat psfig-doc.ps.Z | lpr
You should be ready to go: Execute `rehash', startup emacs, run `M-x
latex-mathematica', for example (*note Startup::.), and have fun.
Changes from previous versions
==============================
TeX/Mathematica incorporates the new graphics prolog of Mathematica
version 2.1 (this is unchanged in version 2.2). Because of the change in
graphics prolog, this version does not work with Mathematica version
2.0.
In LaTeX, `mathematica' is now implemented as a true environment.
The query `Replace output?' has been removed from
`tex-mma-math-update', since synchronization is now handled under
program control. A consequence is that execution of initialization
cells (`C-c i') or all cells (`C-c a') can be done without user
intervention, by using the `C-u' prefix.
`tex-mma.el' has been rewritten as a minor mode, using
`min-bind.el' functions. This means that TeX/Mathematica works
with Emacs 18 and Emacs 19, and with either GNU `tex-mode.el' or
`AUC-TeX'. Thanks to Christian Lynbech (`lynbech@daimi.aau.dk')
for the original nudge, Per Abrahamsen
(`abraham@research.att.com') for suggesting the minor-mode
approach, and Inge Frick (`inge@nada.kth.se') for providing
`min-bind.el'.
The new function `tex-mma-math-interrupt' has been added, to
interrupt evaluation of the current cell. It is bound to to `C-c
C-c'. A related change is that `tex-mma-math-send-cell' has been
modified to optionally interrupt Mathematica when `C-g'
(`keyboard-quit') is entered.
`TeX-mma-mode-map' has been changed to `tex-mma-keymap'. The map
now contains just the TeX/Mathematica-specific bindings. These
bindings can be augmented or changed using startup hooks.
Startup hooks have been changed from `text-mode-hook',
`TeX-mma-mode-hook', and `plain-TeX-mode-hook' to
`tex-mma-minor-mode-hook' and `plain-tex-mma-minor-mode-hook' The hooks
FILE`-tex-mma-hook', used to setup new cell types, are left unchnaged.
Upon package assembly (`C-c m'), the assembled file is made visible
in another window.
`C-u' was inadvertently disabled as the universal prefix character.
This has been fixed.
Files in the distribution kit
=============================
The TeX/Mathematica tools 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 files (this file) for on-line Emacs
documentation
* `tutorial.tex', LaTeX tutorial/example of TeX/Mathematica
* `tutorial.bib', BibTeX file for `tutorial.tex'
* `tutorial.ps.Z', compressed LaTeX tutorial formatted in PostScript
* `tutorial-fig.ps.Z' and `tutorial-fig.ps.bb', compressed
Mathematica-generated figure and bounding box information included
in `tutorial.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::.)
* `shell-tex-mma.el', example implementation of cell-type `shell'
* `min-bind.el', Inge Frick's (`inge@nada.kth.se') package to bind
keymaps, syntax tables and varibales in minor modes. Used by
`tex-mma.el'
* `kill-fix.el', used by `min-bind.el'
* `min-out.el', outline minor mode, provided as a convenience
for editing `tex-mma.el'
TeX/LaTeX things:
* `mathematica10pt.tex', TeX 10 point TeX/Mathematica interface
* `mathematica12pt.tex', TeX 12 point TeX/Mathematica interface
* `mathematica.tex', macros for formatting TeX/Mathematica
documents, used by the preceding files
* `mathematicag.tex', `mma-tex-mma.tex' and `shell-tex-mma.tex' are
alternatives to and `mathematica.tex' for multiple-cell types
(*note Macros::.)
* `mathematica.sty', `verbatim.sty', `vrbinput.sty', and
`vrbtabs.sty' are macros for formatting LaTeX/Mathematica documents
* `shell.sty', example definition of new cell types for
LaTeX/Mathematica (*note Macros::.)
* `mathematicaT.sty', template to define other cell types. This
template was used to make `shell.sty'. See comments in the file.
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.el.tmplt', Emacs Lisp template
* `tex-mma-compress', shell script to compress graphics
* `tex-mma-convert', shell script to convert graphics to Mathematica
2.0 format
* `tex-mma-convert.sed', sed script used by `tex-mma-convert'
These are the graphics prologs (*note addBBox::.):
* `mma.pro-2.1', Mathematica Version 2.1 PostScript prolog. Note
that a different prolog is needed for Mathematica Version 2.1.
* `mma.pro-2.0', Mathematica Version 2.0 PostScript prolog. Note
that a different prolog is needed for Mathematica Version 1.2.
This is available from the author (*note Getting tex-math::.).
These are from Trevor Darrell's `psfig/tex' distribution (*note
psfig::.):
* `psfig.tex', `psfig' for TeX.
* `psfig.sty', a symbolic link to `psfig.tex', for LaTeX.
* `psfig-doc.ps.Z', the compressed PostScript documentation of
psfig/TeX 1.9.