* doc/groff.texinfo, src/roff/troff/troff.man: Document evc request.
[s-roff.git] / tmac / groff_ms.man
blob0e1f64c741f514e538622f1ed683bf2fcbd7efab
1 .ig \"-*- nroff -*-
2 Copyright (C) 1989-1995 Free Software Foundation, Inc.
4 Permission is granted to make and distribute verbatim copies of
5 this manual provided the copyright notice and this permission notice
6 are preserved on all copies.
8 Permission is granted to copy and distribute modified versions of this
9 manual under the conditions for verbatim copying, provided that the
10 entire resulting derived work is distributed under the terms of a
11 permission notice identical to this one.
13 Permission is granted to copy and distribute translations of this
14 manual into another language, under the above conditions for modified
15 versions, except that this permission notice may be included in
16 translations approved by the Free Software Foundation instead of in
17 the original English.
19 .TH GROFF_MS @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
20 .SH NAME
21 groff_ms \- groff ms macros
22 .SH SYNOPSIS
23 .B groff
24 .B \-m@TMAC_S_PREFIX@s
26 .IR options .\|.\|.
29 .IR files .\|.\|.
31 .SH DESCRIPTION
32 This manual page describes the GNU version of the ms macros,
33 which is part of the groff document formatting system.
34 The groff ms macros are intended to be compatible with the
35 documented behaviour of the 4.3
36 .SM BSD
37 Unix ms macros subject to the following limitations:
38 .IP \(bu
39 the internals of groff ms are not similar to the internals of Unix ms
40 and so documents that depend upon implementation details of Unix ms
41 may well not work with groff ms;
42 .IP \(bu
43 there is no support for typewriter-like devices;
44 .IP \(bu
45 Berkeley localisms, in particular the
46 .B TM
47 and
48 .B CT
49 macros, are not implemented;
50 .IP \(bu
51 groff ms
52 does not provide cut marks;
53 .IP \(bu
54 multiple line spacing is not allowed
55 (use a larger vertical spacing instead);
56 .IP \(bu
57 groff ms does not work in compatibility mode (eg with the
58 .B \-C
59 option);
60 .IP \(bu
61 the error-handling policy of groff ms
62 is to detect and report errors,
63 rather than silently to ignore them.
64 .LP
65 The groff ms macros make use of many features of GNU troff
66 and therefore cannot be used with any other troff.
67 .LP
68 Bell Labs localisms are not implemented in either the
69 .SM BSD
70 ms macros or in the groff ms macros.
71 .LP
72 Some Unix ms documentation says that the
73 .B CW
74 and
75 .B GW
76 number registers can be used to control the column width and
77 gutter width respectively.
78 This is not the case.
79 These number registers are not used in groff ms.
80 .LP
81 Macros that cause a reset set the indent.
82 Macros that change the indent do not increment or decrement
83 the indent, but rather set it absolutely.
84 This can cause problems for documents that define
85 additional macros of their own.
86 The solution is to use not the
87 .B in
88 request but instead the
89 .B RS
90 and
91 .B RE
92 macros.
93 .LP
94 The number register
95 .B GS
96 is set to 1 by the groff ms macros,
97 but is not used by the Unix ms macros.
98 It is intended that documents that need to determine whether
99 they are being formatted with Unix ms or groff ms make use of this
100 number register.
102 Footnotes are implemented so that they can safely be used within
103 keeps and displays.
104 Automatically numbered footnotes within floating keeps are
105 not recommended.
106 It is safe to have another
107 .B \e**
108 between a
109 .B \e**
110 and the corresponding
111 .BR .FS ;
112 it is required only that each
113 .B .FS
114 occur after the corresponding
115 .B \e**
116 and that the occurrences of
117 .B .FS
118 are in the same order as the corresponding occurrences of
119 .BR \e** .
121 The strings
122 .B \e*{
124 .B \e*}
125 can be used to begin and end a superscript.
127 Some Unix V10 ms features are implemented.
129 .BR B ,
130 .BR I
132 .B BI
133 macros can have an optional third argument which will be printed
134 in the current font before the first argument.
135 There is a macro
136 .B CW
137 like
138 .B B
139 that changes to a constant-width font.
141 The following strings can be redefined to adapt the groff ms macros
142 to languages other than English:
145 .ta \w'REFERENCES'u+2n
146 String  Default Value
147 .sp .3v
148 REFERENCES      References
149 ABSTRACT        ABSTRACT
150 TOC     Table of Contents
151 MONTH1  January
152 MONTH2  February
153 MONTH3  March
154 MONTH4  April
155 MONTH5  May
156 MONTH6  June
157 MONTH7  July
158 MONTH8  August
159 MONTH9  September
160 MONTH10 October
161 MONTH11 November
162 MONTH12 December
165 The font family is reset from the string
166 .BR FAM ;
167 at initialization if this string is undefined it is set to the current
168 font family.
169 The point size, vertical spacing, and inter-paragraph spacing for footnotes
170 are taken from the number registers
171 .BR FPS ,
172 .BR FVS ,
174 .BR FPD ;
175 at initialization these are set to
176 .BR \en(PS-2 ,
177 .BR \en[FPS]+2 ,
179 .B \en(PD/2
180 respectively; however, if any of these registers has been defined
181 before initialization, it will not be set.
182 The hyphenation flags (as set by the
183 .B .hy
184 request) are set from the
185 .B HY
186 register;
187 if this has not been defined at initialization,
188 it will be set to 14.
190 Right-aligned displays are available with
191 .B ".DS R"
193 .BR .RD .
195 The following conventions are used for names of macros, strings and
196 number registers.
197 External names available to documents that use the groff ms
198 macros contain only uppercase letters and digits.
199 Internally the macros are divided into modules.
200 Names used only within one module are of the form
201 .IB module * name\fR.
202 Names used outside the module in which they are defined are of the form
203 .IB module @ name\fR.
204 Names associated with a particular environment are of the form
205 .IB environment : name;
206 these are used only within the
207 .B par
208 module,
210 .I name
211 does not have a module prefix.
212 Constructed names used to implement arrays are of the form
213 .IB array ! index\fR.
214 Thus the groff ms macros reserve the following names:
215 .IP \(bu
216 names containing
217 .BR * ;
218 .IP \(bu
219 names containing
220 .BR @ ;
221 .IP \(bu
222 names containing
223 .BR : ;
224 .IP \(bu
225 names containing only uppercase letters and digits.
226 .SH FILES
227 .B @MACRODIR@/tmac.@TMAC_S_PREFIX@s
228 .SH "SEE ALSO"
229 .BR groff (@MAN1EXT@),
230 .BR @g@troff (@MAN1EXT@),
231 .BR @g@tbl (@MAN1EXT@),
232 .BR @g@pic (@MAN1EXT@),
233 .BR @g@eqn (@MAN1EXT@)
235 .BR ms (@MAN7EXT@)