home *** CD-ROM | disk | FTP | other *** search
-
-
-
- MACWRITE TO SCRIPT/TROFF TRANSLATOR
-
-
- As promised earlier, here is a source distribution of the MacWrite to Script
- and MacWrite to Troff translator written at Brown. This has been fairly-well
- tested at Brown, and has proven to be crash-free over the last few months.
- It runs with Version 2.2 MacWrite documents only right now, and will be
- updated for the new version when a stable one arrives.
-
- The SCRIPT version runs with University of Waterloo SCRIPT, and
- is customized for a Xerox 9700 laser printer with a file
- called "mwprof script". This will be included in the distribution as well.
-
- The TROFF version is customized for an TROFF output device, but will work with
- NROFF as well. Users of the MacWrite to Troff translator are encouraged to
- look at the already archived translator done by Mike Caplinger at Rice
- University to determine if this software is more appropriate for their use.
-
- USE
-
- The translator accepts the data fork of a MacWrite file as standard input and
- generates a translated file as standard output. For example:
-
- mwscript <bazinga.data >bazinga.script
- mwtroff <bazinga.data >bazinga.me
-
- translates the MacWrite file bazinga.data to the script file bazinga.script,
- and
- the MacWrite file bazinga.data to the troff/me file bazinga.me.
-
- Once a translated the Script file is processed normally on the VM side (running
- it through the appropriate Xerox 9700/SCRIPT execs if available at your site)
- with the CPI=32 option.
- The translated troff file is simply run through troff with the -me package.
-
- The translator was written not to generate SCRIPT/TROFF files that an end
- user would want to edit, but to generate files that would be processed and
- sent directly to a laser printer. Thus, some of the SCRIPT/TROFF codings are
- concerned with getting accurate output, not providing an elegantly readable
- SCRIPT/TROFF file.
-
- KNOWN BUGS/FEATURES
-
- The software has several known bugs/features not implemented:
-
- - Headers and footers are not implemented. Given the shortcomings of
- SCRIPT and TROFF in processing these and MacWrite in storing valuable
- semantic information about page numbers and the like, this was left
- out in the hopes that the newer versions of MacWrite might correct
- some of this.
-
- - Tabs are not guaranteed to work after the first line of the paragraph
- (TROFF only). Troff does character placement following tabs based
- upon where the tab falls on the INPUT line, not on the OUTPUT line
- that is being built up. Thus, it is extremely difficult to get tabs
- correct for any but the first line, since the translator wraps lines
- when it needs to.
-
- - Tabs are not guaranteed to work on lines with font changes (TROFF only).
- Again, because Troff determines tabs based upon the INPUT line, and
- because changing leading in TROFF cannot be done inline, one runs into
- the above problem.
-
- - Decimal tabs are treated as right-aligned tabs in TROFF. (TROFF does
- not implement decimal tabs.)
-
- - Only plain, bold, and italic are implemented in TROFF.
-
- - Only plain, bold, italic, and bold-italic are implemented in SCRIPT.
-
- - Point size changes are not implemented in SCRIPT.
-
- - Pictures are treated as a page advance at all times.
-
- CAVEATS
-
- Because this is not a WYSIWYG (what you see is what you get) system, the
- formatting (line breaks and page breaks) will not be exactly as seen on
- the screen, though attempts are made to use character fonts that most closely
- match the size of those in use on the Macintosh. Be warned that because of
- fluctuations in character sizes, tabs with very close tolerances may not work
- properly, as the characters in a previous tab field might spill over into the
- next tab field. When working with tabbed columns, leave a little extra room for
- safety.
-
- As well, SCRIPT and TROFF commands do not pass through the translator as
- commands -- they are treated as if they are normal text. This allows one to
- have lines that begin with periods, for example:
-
- ...and seven years ago
-
- without causing the SCRIPT or TROFF processors to interpret and as a command
- and subsequently choke.
-
- INSTALLATION
-
- Script
-
- Currently the SCRIPT version runs on VAXes and SUNs running 4.2 UNIX; it
- has not been ported to the Waterloo C Compiler for VM, but it should port
- with little effort. To compile the script version for UNIX, simply do
-
- cc -o mwscript mwxlate.c -DWSCRIPT
-
- As well, on the VM system where it will be appropriately accessible,
- install the file "mwprof script" so that it can be imbedded properly
- in each individual's script document (this file contains the appropriate
- input translations to get special characters).
-
- Troff
-
- The TROFF version runs on VAXes and SUNs running 4.2 UNIX and has produced
- output for 240, 300, and 480 dot/inch Imagens and a 240 dot/inch Varian
- plotter. To compile the troff version for UNIX, simply do
-
- cc -o mwtroff mwxlate.c -DTROFF
-
- This is all that should be needed for this version.
-
- SUPPORT
-
- We expect to be keeping this version up-to-date with any bug fixes that
- may be reported, or an additions that people may desire to make. You are
- encouraged to mail any additions or problems to
-
- nkm%brown@csnet-relay (CSNET) or
- nkm@browncs (BITNET)
-
- so that we may include them in subsequent releases. If you do find bugs,
- that you believe are worthy of reporting, please send a written description of
- the problem, a machine down-loadable version of the original MacWrite document,
- and the translated version to the above address. Because of limited manpower,
- we won't be able to provide telephone consulting for individual problems,
- but will try to answer electronic mail that comes our way.
-
- DISTRIBUTION FORMAT
-
- Mailed to net.sources and archived on info-mac will be two files:
-
- mwxlate.c -- the source code for both the troff and script translators
- mwprof.script -- the script include file for the script translated
- documents.
-
- COPYRIGHT
-
- The translator is (c) 1984 Brown University. It is distributed at no cost,
- with no warantees expressed or implied, and may used and modified, but not
- sold without permission.
-
- FINAL THOUGHTS
-
- Good luck. We know that this is but a first crack at the problem, but hope
- it will be of some use to those of you out there, and encourage additions,
- criticisms, complaints, and anything else you might like to add. Bon Voyage!
-
- Norman Meyrowitz <nkm%iris%brown.csnet@csnet-relay.arpa>
- Institute for Research in Information and Scholarship (IRIS)
- Brown University
- Box 1946
- Providence, RI 02912
-
-