325N/A# The contents of this file are subject to the terms of the
325N/A# Common Development and Distribution License, Version 1.0 only
325N/A# (the "License"). You may not use this file except in compliance
325N/A# See the License for the specific language governing permissions
325N/A# and limitations under the License.
325N/A# When distributing Covered Code, include this CDDL HEADER in each
325N/A# If applicable, add the following below this CDDL HEADER, with the
325N/A# fields enclosed by brackets "[]" replaced with your own identifying
325N/A# information: Portions Copyright [yyyy] [name of copyright owner]
325N/A# Copyright 1989 Sun Microsystems, Inc. All rights reserved.
325N/A# Use is subject to license terms.
325N/A#ident "%Z%%M% %I% %E% SMI"
325N/A# University Copyright- Copyright (c) 1982, 1986, 1988
325N/A# The Regents of the University of California
325N/A# University Acknowledgment- Portions of this document are derived from
325N/A# software developed by the University of California, Berkeley, and its
325N/AThe troff in this directory
325N/Ais a troff that produces machine-independent output.
325N/AIt requires a file of descriptive information about
325N/Athe particular typesetter you have in mind, and produces
325N/Aoutput parameterized for that device.
325N/Aproduces output for the Autologic APS-5.
325N/ATo make this work, you need two things.
325N/AFirst, you need to create a set of
325N/Adevice and font descriptions in the directory
325N/Awhere "xxx" is your device name.
325N/ACurrently supported device is
325N/A aps Autologic APS-5 phototypesetter
325N/ASource for this device is found in the subdirectory
325N/Adevaps of this directory.
325N/AThe file "DESC" contains information about the
325N/AIn addition, each font needs a file describing its
325N/Acharacters, width and device-driving codes;
325N/Asee R and S for typical examples.
325N/AThe program "makedev" will convert these text
325N/Adescriptions into a binary form that the troff can
325N/Aslurp up in a single gulp during initialization;
325N/AThe second half of the job is to write a post-processor
325N/Athat converts the more or less machine-independent troff
325N/Aoutput into specific codes for your favorite typesetter.
325N/Ait will serve as a useful prototype. In particular,
325N/Ait contains a precise description of the output language.
325N/A ta prints ascii on ordinary terminals (crudely)
325N/AOne can always simply run
325N/Aand look at the output; it is guaranteed to be ascii text
325N/Aand thus safe to edit, grep, etc.
325N/A(Since it is ascii, it is also guaranteed to be quite voluminous.)
325N/AThe recommended way to create the necessary files to make troff
325N/Aable to communicate with a new output device
325N/Ais to pick the most similar device for which this software
325N/Aalready exists, and modify it to suit the new device.
325N/AThis release contains prototype software for one
325N/Atype of device -- a phototypesetter (devaps)
325N/AThe devaps subtree contains
325N/Aprofusely-commented programs and strategically placed README
325N/Afiles to help guide the experienced user in making
325N/Amodifications to these files.
325N/ATwo other source of information for users who wish to delve
325N/Adeeply into this software are the manual pages
325N/Atroff(5), which describes the output language produced by troff,
325N/Aand font(5), which describes the format of the device
325N/Aand font description files.
325N/A-----------------------------------------------------------------------------
325N/AChanges since the original release:
325N/AAdded optional 3rd argument to .fp command:
325N/Acauses font to be called xx but data is loaded
325N/AThe intent is to deal with the proliferation of fonts.
325N/ATurned NBLIST up to 2048 so can handle really big
325N/Adiversions. Tends to blow various systems.
325N/ANroff modified to read ascii tables for various devices
325N/Ainstead of the compiled C code nonsense. Only a few
325N/Atables converted; details of language still subject to
325N/AAdded Molly Wagner's code to prevent side effects
325N/Aduring scanning of false branch of an if.
325N/AAdded test warning when one removes a macro during
325N/Aits execution (more precisely, warning when a macro
325N/Aevaluation has encountered a freed block).
325N/A[Disabled Nov 84; it seemed to cause troubles]
325N/ANS = 128; devname[] is bigger; turned off the -t
325N/Aargument (it could be a synonym for -T but that's
325N/Aprobably just as risky.)
325N/AAdded TYPESETTER environment variable
325N/AAdded \X'...' command: ... comes out as
325N/A x X ...\n in proper place. (doesn't nest)
325N/AIn \D comands, unrecognized command letters are passed through
325N/Auntouched. This makes it possible to define things like other
325N/Asplines, filled polygons, etc.
325N/A\s(dd, \s(+dd, \s(-dd size commands.
325N/AAdded .lf line filename to set current line number & filename
325N/AAdded Dan Berry's fixes to handle horizontal resolution properly.
325N/ADennis Ritchie's hashed macro and number register tables;
325N/Acached width computations, general cleanup.
325N/AMinor work on de-linting.
325N/AThis version is the current evolution of 8th Edition troff.
325N/AThe only changes of substance since the export version are
325N/A the end of a sentence is more general; things like
325N/A ." .!'' etc are recognized and padded
325N/A the "font too big for position n" error can no longer arise.
325N/A makedev has a new parameter called biggestfont that
325N/A ensures that all font positions are at least that big.
325N/A this eliminates the "font X too big for position Y" message
325N/A some minor bugs fixes have been made:
325N/A doesn't look for ligatures in \nf
325N/A doesn't put out WORDSP in -a
325N/A troff no longer produces \^ and \| on output,
325N/A but this hasn't been tested much since it takes
325N/A character set changes too.