Agricultural Economics, Michigan State University
walker5@pilot.msu.edu
Before discussing Textures itself, I will give a too brief description of TeX. Interested readers are encouraged to consult the references. TeX is versatile and powerful and has been employed for innumerable types of documents in countless disciplines. I can but scratch the surface.
Donald Knuth, a mathematician and computer scientist, now emeritus professor at Stanford University, began developing TeX (pronounced 'techhh') and its companion font generation program METAFONT in 1978. (Knuth 1979.) Knuth designed TeX for the "creation of beautiful books---and especially for books that contain a lot of mathematics." (Knuth 1986.) Knuth was disturbed by the increasing expense and decreasing quality of hand set type. METAFONT produces pleasing fonts from design parameters. (It was designed before PostScript or TrueType.)
TeX was written using the WEB system, allowing it to be ported to different systems. There are TeX implementations for Amiga, Atari, Macintosh, MSDOS, Windows NT, OS/2, Unix and VMS, among others. Unlike with other programs, there is little difficulty transferring files among systems. This is for three reasons. (1) there is a clear standard for a program to be "TeX"; (2) TeX input files are marked up ASCII text---easily transferable; and (3) TeX is built from the ground up and does not rely on system-specific features. A TeX input file will produce identical output on all TeX systems. This has made TeX popular in the academic community.
TeX has been frozen by Knuth. Apart from major bug corrections, he will make no changes to the program. (Knuth 1990.) TeX's version number now converges to pi (it is currently at 3.14159). METAFONT has become less important as other font technologies emerge. In particular, Textures uses PostScript versions of Knuth's Computer Modern fonts (as well as other PostScript and TrueType fonts).
TeX is international. There are at least 12 TeX users groups around the world. A partial list of languages supported by TeX is arabtex; chinese; devanagari; english; ethiopian; french; german; greek; hebrew; icelandic; indian; italian; japanese; korean; malayalam; oriental; polish; portuguese; scyrillic; swedish; tamil; telugu; turkish and vietnamese. The Babel system for LaTeX (see below) supports the following languages: breton; catalan; croatian; czech; danish; dutch; english; esperant; estonian; finnish; francais; galician; german; irish; italian; isorbian; magyar; norsk; polish; portuges; romanian; scottish; slovak; slovene; spanish; swedish; turkish; and usorbian.
(I have not used TeX's language capabilities. The above lists were culled from the Comprehensive TeX Archive Network. I do not claim they are exhaustive. Interested readers should consult the references (listed below).)
TeX is precise. TeX calculates text placement in RSU's (Ridiculously Small Units) which are approximately 100 times smaller than the wavelength of visible light. (There are 65536 RSU's to a point.) TeX employs very good algorithms for line breaking, hyphenation and other typesetting tasks. TeX output looks good.
TeX is mature. This system has been in use for a long time, as far as programs go. It has an extremely professional underlying design (the sort of work that comes from love of quality rather than love of profits). There are hundreds of extensions available and interested users can design their own.
Though TeX is a powerful typesetting system, it has shortcomings. The most important in my opinion are in usability, incorporation of graphics, and compatibility with other wordprocessors' file formats. The file formats problem is largely unsolvable (though there are TeX to RTF, TeX to WordPerfect, and other translators available) since TeX is vastly more versatile and changeable than wordprocessors. (Though remember that TeX files are marked-up ASCII and therefore readable by any system---with the commands intact.) Graphics will be discussed in the review of Textures proper. There is controversy of the usability issue. TeX is clearly not WYSIWYG and one must learn TeX's syntax. On the other hand, the markup commands employed by TeX (and LaTeX, see below) are intuitive. In particular, the mathematics commands are vastly easier to use than graphical equation editors. Some feel that extensions such as LaTeX (see below) make TeX easier to use by providing "canned" formats. In any event, TeX is a powerful, and therefore complicated, system. For people who write short letters, memos and reports (without much mathematics), TeX is overkill. (In my opinion Word, WordPerfect and other major wordprocessors are also overkill for these tasks.) People who write longer, more technical documents, or whose publishers prefer the TeX format, can benefit from TeX's flexibility and quality.
Included in the LaTeX world are programs to manage and format bibliographies (e.g. BibTeX, the Camel Citator, etc.) and indices (e.g. MakeIndex). The bibliography tools for LaTeX allow reformatting of a general bibliography file into forms suitable for hundreds of different publications. (There are tools available for plain TeX bibliographies as well.) The standard approach in LaTeX is to mark citations in the document with the "\citation" command, give LaTeX the name of a separate ASCII file which contains bibliographic data (and keys to connect the entries to the "\citation" commands), have the program BibTeX do the work of formatting the bibliography (in the selected bibliography style), then have LaTeX combine the formatted bibliography with the document. The bibliography data files must be in a particular format. If one wanted to use a different bibliography manager, one would need to dump the contents of a data file into an ASCII file with the proper format. There is at least one extension to the BibTeX approach (the Camel citator, visit http://rumple.soas.ac.uk/camel-link/camel.html) which can directly use ProCite, EndNotes Plus, Reference Manager and Papyrus.
One more package deserves mention. TeX has a strong heritage in mathematical typesetting. It was so good at typesetting math that it was adopted by the American Mathematical Society (AMS). The AMS has developed an extension to LaTeX, called AMSLaTeX (as well as an earlier extension to plain TeX: AMS-TeX) which further improves LaTeX's already powerful mathematical typesetting abilities. For writers whose documents contain some mathematics, and who care about output quality, LaTeX and AMSLaTeX are vital. Though other programs such as WordPerfect and MS Word offer equation editors, they are clumsy to use, produce relatively poor output, and, most importantly, cannot be extended by the user to handle new typesetting requirements. AMSLaTeX explicitly allows the creation of new mathematics symbols which obey mathematical typesetting rules relating to spacing, line length and height, placement of limits and other things.
Textures does its best to transform TeX into a comfortable Macintosh program. Though the basic TeX system is there (including, of course, TeX's document markup syntax), Textures cleans up and groups the scattered files which make up the typical TeX system, adds a nice system for graphics, incorporates Macintosh font handling, integrates printing and provides an integrated (though simple) Macintosh text editor which includes a customizable macros menu to simplify typing of [La]TeX commands. The show piece of Textures is its "flash mode" in which the document is continually typeset while you edit it. (In ordinary TeX implementations, the document is written, saved, typeset, previewed or printed, edited and retypeset.) In addition, Textures has recompiled some of the TeX code to increase speed.
Installation is straightforward. Total disk size is around 8 megabytes for the (full) 680x0 version including BibTeX, MakeIndex and the Latex2e source code (for those whizzes who want to recompile it). The PostScript fonts are around 2 megabytes. (My installation is 14 megabytes but includes AMSLaTeX and the AMSLaTeX fonts.)
The shortcomings of the editor are less serious since Textures receives Apple Events and can be used with other text editors. Among the many available for the Mac are the freeware BBEdit Light and Tex-Edit Plus (available on InfoMac among others) and the Shareware Alpha (ftp://www.cs.umd.edu/pub/faculty/keleher/Alpha/). There is also a GNU Emacs for the Mac (believe it or not). ("Tex-Edit" refers to the state of Texas, not TeX.)
The Textures editor includes a Macros menu. This is not to be confused with the macro languages of other wordprocessors. The Textures editor macros have a simple purpose: the insertion of canned [La]TeX text. Each TeX format (plain TeX, LaTeX, AMSLaTeX, or user defined formats) can be assigned a set of macros. For instance, the LaTeX macros menu has entries for the standard commands for formats (book, article, etc.), sectioning (chapter, section, etc.), environments (lists, math mode, quotations, centering, footnotes, marginal notes, etc.), and common symbols (the Greek alphabet and some math symbols). One can add keystroke equivalents to the macros but the number of keys is currently limited to only 12 keys (though Blue Sky "expects this to improve in future versions" (Textures Users Guide)).
The macro menu is nice (and is user-customizable) but it has two shortcomings. First, the macros for LaTeX are out of date and incomplete. For instance, LaTeX now has a Slides format which is not included in the Textures format menu. It would be straightforward for me to add it but I would prefer not having to. Second, the macro language is very simple. It has nine commands, three define the menu appearance, one is for comments, the remainder affect the macro itself. For example, the "bold" command inserts "{\bf }" (the LaTeX bold environment) and places the cursor just before the right bracket. A more complicated language, such as that used by the Alpha editor, would make the bold command interactive by defining a key for moving the cursor past the right bracket when the bold text was entered. In this example that hardly seems necessary, but in more complicated environments (like the letter environment which has "fields" for return address, addressee, opening, closing, signature, enclosures and cc) it would be useful. On the other hand, Alpha's macro language is more than I want to learn.
Textures includes PostScript fonts (a version of Knuth's Computer Modern font) and can use TrueType fonts as well. (Note that Textures includes PostScript fonts at many different design sizes. Compare this to the Macintosh Operating system and typical PostScript font collections which provide a single design size, usually around 18 pt.) The factor limiting Textures' use of a font is the availability of metric information. PostScript fonts contain sufficient metric information (usually left unused by Mac applications) which is extricable using the Textures EdMetrics tool (which is easy to use though not self-explanatory). TrueType fonts may or may not have sufficient metric information (also extricable by EdMetrics). The Mac's Helvetica does not. Times does. (The lack of metrics information is not fatal, it just reduces output quality.) Textures can used bitmapped fonts as well if necessary. (The American Mathematical Society distributes bitmapped special symbol fonts in various sizes. Visit http://e-math.ams.org/.)
Textures ability to conveniently use any PostScript or TrueType font is an improvement over other TeX implementations but will seem ordinary to regular Mac users.
Textures avoids this delay through its flash mode. In flash mode, the typesetting engine retypesets the document as you type. Since this is still TeX, the typesetting involves a complete run through of the document, so changes do not appear instantaneously. TeX has to get from the document's beginning to the point of the change. For users of TeX on other systems, flash mode is fantastic. For WYSIWYG fans it is slow. For example, in plain TeX, it took about 10 seconds for a change at the end of a five page document to be reflected in the typeset window. In LaTeX the same change took about 22 seconds since LaTeX does more setup calculations. (The change took 14 second using the suggested "canned" format trick for LaTeX.) Textures starts over at each keystroke so to see the results one must pause in typing. Blue Sky quotes speed improvements of 3.7 times for the PowerPC native version. Note that speed depends critically on the document's format (Plain TeX, precompiled LaTeX, or LaTeX---from fastest to slowest). Screen redraw depends on the PowerPC nativeness (nativity?) of ATM.
When composing a document, I turn flashmode off. It slows down typing, results in continuous disk access, and doesn't show me anything useful. When composing I am interested in what I am writing, not in how it looks. But for correcting the final copy, flash mode is wonderful. The correct and retypeset cycle is still there but is automated. Textures starts the typesetting for me and I do not have to save the document and switch to a separate TeX program as one must do with other implementations. The delay in seeing the final product is not as annoying as you may imagine. My process is to read through the typeset output until I find an error, correct that error and then look at the input text while the typesetting continues. I can scan the input text for syntax or content errors for the ten seconds until the typeset view is available. Given the benefits of TeX, the delay is worth it, particularly since the delay only occurs during the final proofing stage.
Textures is not a WYSIWYG system. There are no drawing tools (like those in WordPerfect for example) in Textures, though one can incorporate PostScript commands (yes, the real low level commands) directly into a TeX document. (This is clearly a capability for wizards only.) One can place a given graphic from another application (in EPSF or PICT format) directly into a TeX document. One specifies the size of the box, text flow and other things directly in TeX. One commonly uses the included TeX macros to do this---such as the BoxedEPS, EPSF, or PSFIG macros. Textures includes a pictures window (similar to the Mac Scrapbook) for display of PICT images. These images must still be included in the document by use of commands similar to those for EPSF files. The pictures window merely serves to collect PICT images in one place and provides information on the images' dimensions. When previewing the typeset document, the images appear properly in the typeset document. The typeset preview window is an accurate rendition of the final output (limited by the resolution of the screen and the scale of the bitmap preview). Note that for PostScript files to appear in the typeset preview window, they must include a PICT preview.
One problem: Blue Sky cannot provide support for the myriad extensions to TeX and LaTeX. Blue Sky provides a referral service to professional TeX consultants. There are also numerous references on TeX and LaTeX---both in print and on-line.
According to Tech Support, most user questions are about printing, fonts, incorporation of graphics or creating new LaTeX formats. Blue Sky's web site has answers to such frequent questions.
Textures failings are largely cosmetic. The editor is too minimalist, the Macro language needs strengthening, dialog boxes could be spruced up. Its core function, typesetting TeX files, it does fast and well. Its incorporation of standard Mac features (graphics, font selection, etc.) is well done. On the whole, I am impressed.
In contrast, in LaTeX, one uses the predefined Letter environment. One can modify this environment within LaTeX or design something similar in Plain TeX. The environment is a "program". It defines fields for return address, addressee, opening, closing, signature, enclosures and cc. The placement, font and style of these fields is defined in the format. One creates a plain text file using LaTeX command syntax for the letter. For instance, the full letter environment might look like this:
Joe Macuser \\
Anywhere \\
Anytime \\
Any PowerMac \\ }
\date{August 8, 1995} % Or use TeX's date command: \date.
\signature{Joe}
\begin{document}
\begin{letter}{%
Bill Gates \\
Microsoft Corporation \\ }
\opening{Dear Napoleon,}
% BODY OF LETTER
\closing{Sincerely,}
\encl{A copy of MacUser}
\cc{John Dvorak}
\end{letter}
\end{document}
Note: \ marks commands,
% is a comment character (remainder of line is ignored),
\\ forces a new line,
{} enclose required arguments,
[] enclose optional arguments.\documentclass[12pt]{letter}
\address{%
(Knuth 1979) Donald E. Knuth. "Mathematical Typography." Bulletin of the American Mathematical Society, March 1979, Vol. 1, No. 2, pp. 337-372. The Josiah William Gibbs Lecture, January 4, 1978. Reprinted in TeX and METAFONT, New Directions in Typesetting. American Mathematical Society and Digital [Equipment Corp.] Press. 1979.
(Knuth 1986) Donald E. Knuth. The TeXbook, volume A of Computers and Typesetting. Addison-Wesley, Reading, 1986. (A more recent version may be available).
(Knuth 1990) Donald E. Knuth. The Future of TeX and METAFONT. TUGboat, 11(4):489, November, 1990.
(Kopka) A Guide to LaTeX. Helmut Kopka and Patrick Daly.
(Lamport) LaTeX: A Document Preparation System by Leslie Lamport.
(Snow) TeX for the Beginner. Wynter Snow.
(Textures Users Guide) Textures Users Guide. Blue Sky Research. Written by Mark Metzler.
The Comprehensive TeX Archive Network (CTAN) contains gigabytes of TeX related files including documentation and the many extensions available for TeX.
Their Web page contains detailed information on product pricing, student discounts, specifications, technical support, documentation and upgrades.
Blue Sky Sales's email address is sales@bluesky.com
or you can call 800-622-8398/503-222-9571
or you can fax 503-222-1643
or you can send real mail to
Blue Sky Research
534 SW Third Ave.
Portland, OR 97204 USA