1groff_me(7)            Miscellaneous Information Manual            groff_me(7)
2
3
4

Name

6       groff_me - “me” macro package for formatting roff documents
7

Synopsis

9       groff -me [option ...] [file ...]
10       groff -m me [option ...] [file ...]
11

Description

13       The  GNU  implementation  of  the me macro package is part of the groff
14       document formatting system.  The me package of  macro  definitions  for
15       the  roff language provides a convenient facility for preparing techni‐
16       cal papers in various formats.  This version is based on  the  me  dis‐
17       tributed  with  4.4BSD  and can be used with the GNU troff formatter as
18       well as those descended from AT&T troff.
19
20       Some formatter requests affect page layout unpredictably when  used  in
21       conjunction  with this package; however, the following may be used with
22       impunity after the first call to a paragraphing macro like  lp  or  pp.
23       Some  arguments are optional; see groff(7) for details, particularly of
24       requests whose argument list is designated with an ellipsis.  An aster‐
25       isk * marks groff extensions.
26
27       ad c       set text adjustment mode to c
28       af r f     assign format f to register r
29       am m e     append to macro m until e called
30       as s t     append rest of line t to string s
31       bp n       begin new page numbered n
32       br         break output line
33       ce n       center next n output lines
34       cp n       en-/disable AT&T troff compatibility mode*
35       de m e     define macro m until e called
36       do t       interpret input t with compatibility mode off*
37       ds s t     define rest of line t as string s
38       el t       interpret t if corresponding ie false
39       fc c d     set field delimiter c and padding glyph d
40       fi         enable filling
41       hc c       set hyphenation character to c
42       hy m       set automatic hyphenation mode to m
43       ie p t     as if, but enable interpretation of later el
44       if p t     if condition p, interpret rest of line t
45       in h       set indentation to distance h
46       lc c       set leader repetition glyph to c
47       ls n       set line spacing to n
48       mc c h     set (right) margin glyph to c at distance h
49       mk r       mark vertical position in register r
50       na         disable adjustment of text
51       ne v       need vertical space of distance v
52       nf         disable filling
53       nh         disable automatic hyphenation
54       nr r n i   assign register r value n with auto-increment i
55       ns         begin no-space mode
56       pl v       set page length to v
57       pn n       set next page number to n
58       po h       set page offset to h
59       rj n       right-align next n output lines*
60       rm m       remove macro, string, or request m
61       rn m n     rename macro, string, or request m to n
62       rr r       remove register r
63       rs         resume spacing (end no-space mode)
64       rt v       return to vertical position set by mk, or v
65       so f       source (interpolate) input file f
66
67       sp n       insert n lines of vertical space
68       ta ...     set tab stops
69       tc c       set tab repetition glyph to c
70       ti h       set temporary indentation (next line only) to h
71       tl ...     output three-part title
72       tr ...     translate characters
73       ul n       underline next n output lines
74
75       Except  on title pages (produced by calling tp), me suppresses the out‐
76       put of vertical space at the tops of pages (after  the  output  of  any
77       page header); the sp request will thus not work there.  You can instead
78       call bl or enclose the desired spacing request in a diversion, for  in‐
79       stance  by  calling  (b and )b.  me also intercepts the ll request; see
80       the “me Reference Manual” for details.
81
82   Name space
83       Objects in me follow a rigid naming convention.  To avoid conflict, any
84       user-defined register, string, or macro names should be single numerals
85       or uppercase letters, or any longer sequence of  letters  and  numerals
86       with  at  least one uppercase letter.  (For portability between BSD and
87       groff me, limit names to two characters, and avoid  the  name  [  (left
88       square  bracket).)   The  names  employed  by  any preprocessors in use
89       should also not be repurposed.
90
91   Macros
92       $0   post-section heading hook
93       $1   pre-section depth 1 hook
94       $2   pre-section depth 2 hook
95       $3   pre-section depth 3 hook
96       $4   pre-section depth 4 hook
97       $5   pre-section depth 5 hook
98       $6   pre-section depth 6 hook
99       $C   post-chapter title hook
100       $H   page/column heading hook
101       $c   output chapter number and title
102       $f   output footer
103       $h   output header
104       $p   output section heading
105       $s   output footnote area separator
106       (b   begin block
107       (c   begin centered block
108       (d   begin delayed text
109       (f   begin footnote
110       (l   begin list
111       (q   begin long quotation
112       (x   begin index entry
113       (z   begin floating keep
114       )b   end block
115       )c   end centered block
116       )d   end delayed text
117       )f   end footnote
118       )l   end list
119       )q   end long quotation
120       )x   end index entry
121       )z   end floating keep
122       ++   set document segment type
123       +c   begin chapter
124       1c   end multi-column layout
125       2c   begin multi-column layout
126       EN   end eqn equation
127       EQ   begin eqn equation
128       GE   end grn picture with drawing position at bottom
129       GF   end grn picture with drawing position at top
130       GS   start grn picture
131       IE   end ideal picture with drawing position at bottom
132
133       IF   end ideal picture with drawing position at top
134       IS   start ideal picture
135       PE   end pic picture with drawing position at bottom
136       PF   end pic picture with drawing position at top
137       PS   start pic picture
138       TE   end tbl table
139       TH   end heading for multi-page tbl table
140       TS   start tbl table
141       b    embolden argument
142       ba   set base indentation
143       bc   begin new column
144       bi   embolden and italicize argument
145       bx   box argument
146       ef   set even-numbered page footer
147       eh   set even-numbered page header
148       ep   end page
149       fo   set footer
150       he   set header
151       hl   draw horizontal line
152       hx   suppress next page's headers/footers
153       i    italicize argument
154       ip   begin indented paragraph
155       ld   reset localization and date registers and strings*
156       ll   set line length
157       lp   begin fully left-aligned paragraph
158       np   begin numbered paragraph
159       of   set odd-numbered page footer
160       oh   set odd-numbered page header
161       pd   output delayed text
162       pp   begin first-line indented paragraph
163       q    quote argument
164       r    set argument in roman
165       re   reset tab stops
166       sh   begin numbered section
167       sm   set argument at smaller type size
168       sx   change section depth
169       sz   set type size and vertical spacing
170       tp   begin title page
171       u    underline argument
172       uh   begin unnumbered section
173       xl   set line length (local)
174       xp   output index
175
176       Some macros are provided for “old” roff(1) compatibility.  The “me Ref‐
177       erence Manual” describes alternatives for modern documents.
178
179       ar   use Arabic numerals for page numbers
180       bl   insert space (even at page top; cf. sp)
181       ix   set indentation without break
182       m1   set page top to header distance
183       m2   set header to text distance
184       m3   set text to footer distance
185       m4   set footer to page bottom distance
186       n1   begin output line numbering
187       n2   end or alter output line numbering
188       pa   begin page
189       ro   use Roman numerals for page numbers
190       sk   skip next page
191
192   Registers
193       $0   section depth
194       $1   first section number component
195       $2   second section number component
196       $3   third section number component
197       $4   fourth section number component
198
199       $5   fifth section number component
200       $6   sixth section number component
201       $c   current column number
202       $d   delayed text number
203       $f   footnote number
204       $i   paragraph base indentation
205       $l   column width
206       $m   number of available columns
207       $p   numbered paragraph number
208       $s   column spacing (indentation)
209       bi   display (block) indentation
210       bm   distance from text area to page bottom
211       bs   display (block) pre/post space
212       bt   block threshold for keeps
213       ch   current chapter number
214       df   display font
215       dv   vertical spacing of displayed text (as percentage)*
216       es   equation pre/post space
217       ff   footnote font
218       fi   footnote indentation (first line only)
219       fm   footer margin
220       fp   footnote type size in points
221       fs   footnote prespace
222       fu   footnote undent (right indentation)
223       hm   header margin
224       ii   indented paragraph indentation
225       no   line numbering offset*
226       pf   paragraph font
227       pi   paragraph indentation
228       po   page offset
229       pp   paragraph type size in points
230       ps   paragraph prespace
231       qi   long quotation left/right indentation
232       qp   long quotation type size in points
233       qs   long quotation pre/post space
234       sf   section title font
235       si   section indentation per level of depth
236       so   additional section title offset
237       sp   section title type size in points
238       ss   section prespace
239       sx   super/subscript line height increase*
240       tf   title font
241       tm   distance from page top to text area
242       tp   title type size in points
243       tv   vertical spacing of text (as percentage)*
244       xs   index entry prespace
245       xu   index undent (right indentation)
246       y2   year of the century*
247       y4   year*
248       yr   year minus 1900
249       zs   floating keep pre/post space
250
251   Strings
252       #    delayed text marker
253       $n   concatenated section number
254       *    footnote marker
255       -    em dash
256       <    begin subscripting
257       >    end subscripting
258       dw   weekday name
259       lq   left double quotation mark
260       mo   month name
261       rq   right double quotation mark
262       td   date
263       wa   term for “appendix” used by .$c*
264
265       wc   term for “chapter” used by .$c*
266       {    begin superscripting
267       }    end superscripting
268

Files

270       /usr/share/groff/1.23.0/tmac/e.tmac
271              implements the package.
272
273       /usr/share/groff/1.23.0/tmac/refer-me.tmac
274              implements refer(1) support for me.
275
276       /usr/share/groff/1.23.0/tmac/me.tmac
277              is  a  wrapper  enabling the package to be loaded with “groff -m
278              me”.
279

Notes

281       Early roff macro packages often limited their names to a single letter,
282       which  followed the formatter's m flag letter, resulting in mm, ms, mv,
283       mn, and so on.  The “e” in “me” stands for “Eric P. Allman”, who  wrote
284       the  macro  package  and  the  original technical papers documenting it
285       while an undergraduate at the University of California.
286

See also

288       Two manuals are available in source and rendered form.  On your system,
289       they may be compressed and/or available in additional formats.
290
291       /usr/share/doc/groff/meintro.me
292       /usr/share/doc/groff/meintro.ps
293              is  “Writing  Papers  with  Groff Using -me”, by Eric P. Allman,
294              adapted for groff by James Clark.
295
296       /usr/share/doc/groff/meref.me
297       /usr/share/doc/groff/meref.ps
298              is the “me Reference Manual”, by Eric  P.  Allman,  adapted  for
299              groff by James Clark and G. Branden Robinson.
300
301       Groff:  The  GNU Implementation of troff, by Trent A. Fisher and Werner
302       Lemberg, is the primary groff manual.  You can browse it  interactively
303       with “info groff”.
304
305       For   preprocessors  supported  by  me,  see  eqn(1),  grn(1),  pic(1),
306       refer(1), and tbl(1).
307
308       groff(1), troff(1), groff(7)
309
310
311
312groff 1.23.0                    2 November 2023                    groff_me(7)
Impressum