images

The format Macros

Throughout this book, we’ve made extensive references to portions of the extended ms macro package that we use in our technical writing business. These macros are used in conjunction with the format shell script to provide a complete document formatting environment.

This package was originally developed by Steve Talbott of Massachusetts Computer Corp. (MASSCOMP). We have extended and generalized it to meet the document design needs of many different clients.

The purpose of this appendix is to summarize, in one place, the function of the macros that the package contains. We have found that this set of macros covers the basic needs of people involved in the development of technical books and manuals.

The package relies on the existence of the underlying ms macros. In this sense, it is not a complete package. However, it is possible to define a simple subset of the ms macros to cover the basics if the full implementation of ms is not available.

For more information on the full implementation of these macros, please feel free to contact us in care of the publisher.

▪   Summary of the Macros   ▪

The following list summarizes the user-callable macros in the format macro package.

.[ABCD]h A-level head, B-level head, and so on.
.Dr Specify whether the current version is a draft. (Drafts are dated.)
.Fs Start a figure.
.Fe title Figure end. Figures are automatically numbered, and given the specified title.
.Hl [c] Print a horizontal line the width of the page, using character c. (Default is underscore.)
.IOC [strings] Start an interoffice memo.
.TO List of names following .TO " " will be placed in separate distribution list.
.TO name name is addressee. Maximum of five such .TO lines.
.DA date date is date of the memo; will be included in page footer.
.ND date date is date of the memo; will be omitted from page footer.
.FR name name is sender. Maximum of five such .FR lines.
.CC name name is person to receive copy of memo. Maximum of five .CC lines.
.SU subject subject is subject of the memo.
.IP label indent [0] Begin paragraph with “hanging indent.” Following text is indented, while label remains at the margin.
.LP [0] Start a (left-justified) paragraph. 0 suppresses blank line.
.Ls [type] [indent] [bullet] Start a (possibly nested) list. type is N (number), A (alphabetical uppercase), a (alphabetical lowercase), I (Roman numeral uppercase), i (Roman numeral lower-case), B (bullet). Default indent is 5. bullet is alternative bullet string (null string is acceptable).
.Li [0] List item. 0 suppresses preceding blank line.
.Le [0] End of innermost list. 0 suppresses preceding blank line.
.Lt [1 | 2] Enter address blocks and date (1), and salutation (2) of a letter.
.Nd n Need n lines. If n lines do not remain on the page, eject new page. Unlike .ne, .Nd causes a break.
.Nh [1 10] Enable/disable numbered headings (enabled by default).
.NS type Start a NOTE of type N (Note), C (Caution), w (Warning), R (Review Note), or P (Private Note). Review notes are printed in the text and summarized in a list at the end. Private notes appear only in the end list.
.Ne End a note.
.OB string Print an overbar (over a string).
.Ps [indent] Start a “printout” (display). Text is printed in the CW font and preserved as is—there is no filling.
.Pe End a printout. See .Ps.
.Rh [0 1 1] [desc] head... Create reference page header.
.Se [number] [title] Start a section (chapter). This sets up many defaults, and is desirable to use for most documents.
.SE Screen end. End a computer screen illustration begun with .ss.
.SS [width] [height] Start a screen illustration (box with curved comers). If width and height are not specified, scale to size of contents.
.TC level Specify what level of heading will be saved in the table of contents (Ah to Dh)
.Ti text Title—goes in left page footer.
.St text Subtitle—goes in right page footer.
.Ts title Start a table with given caption. Tables are automatically numbered.
.Te End a table. (Output a blank line.)
.XX text Make an index entry out of text, with automatic addition of a page number.
.XN text Make an index cross-reference out of text (no page number).

Get UNIX° TEXT PROCESSING now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.