]> git.cameronkatri.com Git - mandoc.git/blob - mdocterm.1
Noted lacking areas in mdocterm.1.
[mandoc.git] / mdocterm.1
1 .\" $Id: mdocterm.1,v 1.9 2009/03/02 17:29:16 kristaps Exp $
2 .\"
3 .\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se>
4 .\"
5 .\" Permission to use, copy, modify, and distribute this software for any
6 .\" purpose with or without fee is hereby granted, provided that the
7 .\" above copyright notice and this permission notice appear in all
8 .\" copies.
9 .\"
10 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11 .\" WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13 .\" AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14 .\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15 .\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16 .\" TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17 .\" PERFORMANCE OF THIS SOFTWARE.
18 .\"
19 .Dd $Mdocdate: March 2 2009 $
20 .Dt mdocmterm 1
21 .Os
22 .\" SECTION
23 .Sh NAME
24 .Nm mdocmterm
25 .Nd mdoc macro compiler
26 .\" SECTION
27 .Sh SYNOPSIS
28 .Nm mdocmterm
29 .Op Fl v
30 .Op Fl W Ns Ar err...
31 .Op Ar infile
32 .\" SECTION
33 .Sh DESCRIPTION
34 The
35 .Nm
36 utility formats a BSD
37 .Dq mdoc
38 manual page for display on the terminal. The arguments are as follows:
39 .Bl -tag -width "\-Werr... "
40 .\" ITEM
41 .It Fl v
42 Print verbose parsing output.
43 .\" ITEM
44 .It Fl W Ns Ar err...
45 Print warning messages. May be set to
46 .Fl W Ns Ar all
47 for all warnings,
48 .Ar compat
49 for groff/troff-compatibility warnings, or
50 .Ar syntax
51 for syntax warnings. If
52 .Fl W Ns Ar error
53 is specified, warnings are considered errors and cause utility
54 termination. Multiple
55 .Fl W
56 arguments may be comma-separated, such as
57 .Fl W Ns Ar error,all .
58 .\" ITEM
59 .It Ar infile
60 Read input from
61 .Ar infile ,
62 which may be
63 .Dq \-
64 for stdin.
65 .El
66 .\" PARAGRAPH
67 .Pp
68 The
69 .Nm
70 utility is a formatting front-end for
71 .Xr mdoc 3 ,
72 which parses the
73 .Dq mdoc
74 input, documented at
75 .Xr mdoc 7
76 and
77 .Xr mdoc.samples 7 ,
78 into an abstract syntax tree.
79 .\" PARAGRAPH
80 .Pp
81 By default,
82 .Nm
83 reads from stdin and prints terminal-encoded output to stdout.
84 .\" PARAGRAPH
85 .Pp
86 .Ex -std mdocmterm
87 .\" PARAGRAPH
88 .Pp
89 .Nm
90 is
91 .Ud
92 .\" SUB-SECTION
93 .Ss Character Escapes
94 This section documents the character-escapes accepted by
95 .Xr mdocterm 1 .
96 Note that the \\x, \\(xx and \\[n] forms are described here; the \\*(xx
97 and \\*x forms described in
98 .Xr mdoc.samples 7
99 are deprecated, but still correctly rendered. For all two-character
100 sequences, \\(xx is equivalent to the n-character \\[xx].
101 .Pp
102 Note that the
103 .Em Output
104 column will render differently whether executed with
105 .Xr mdocterm 1
106 or another output filter.
107 .\" PARAGRAPH
108 .Pp
109 Enclosures:
110 .Pp
111 .Bl -tag -width "OutputXXXX" -offset "XXXX" -compact
112 .It Em Output
113 .Em Input (Name)
114 .It \(rB
115 \\(rB (right bracket)
116 .It \(lB
117 \\(rB (left bracket)
118 .It \(lq
119 \\(lq (left double-quote)
120 .It \(rq
121 \\(rq (right double-quote)
122 .It \(oq
123 \\(lq (left single-quote)
124 .It \(aq
125 \\(aq (right single-quote, apostrophe)
126 .El
127 .\" PARAGRAPH
128 .Pp
129 Indicatives:
130 .Pp
131 .Bl -tag -width "OutputXXXX" -offset "XXXX" -compact
132 .It Em Output
133 .Em Input (Name)
134 .It \(<-
135 \\(<- (left arrow)
136 .It \(->
137 \\(-> (right arrow)
138 .It \(ua
139 \\(ua (up arrow)
140 .It \(da
141 \\(da (down arrow)
142 .El
143 .\" PARAGRAPH
144 .Pp
145 Mathematical:
146 .Pp
147 .Bl -tag -width "OutputXXXX" -offset "XXXX" -compact
148 .It Em Output
149 .Em Input (Name)
150 .It \(<=
151 \\(<= (less-than-equal)
152 .It \(>=
153 \\(>= (greater-than-equal)
154 .It \(==
155 \\(== (greater-than-equal)
156 .It \(!=
157 \\(!= (not equal)
158 .It \(if
159 \\(if (infinity)
160 .It \(na
161 \\(na (NaN)*
162 .It \(+-
163 \\(+- (plus-minus)
164 .El
165 .\" PARAGRAPH
166 .Pp
167 *This is a deviation from the standard, as NaN is usually rendered as
168 \\*(Na, which is a deprecated form. We introduce \\(na, which follows
169 the more general syntax.
170 .Pp
171 Diacritics:
172 .Pp
173 .Bl -tag -width "OutputXXXX" -offset "XXXX" -compact
174 .It Em Output
175 .Em Input (Name)
176 .It \(ga
177 \\(ga (accent grave)
178 .It \(aa
179 \\(aa (accent accute)
180 .El
181 .\" PARAGRAPH
182 .Pp
183 Special symbols:
184 .Pp
185 .Bl -tag -width "OutputXXXX" -offset "XXXX" -compact
186 .It Em Output
187 .Em Input (Name)
188 .It \(bu
189 \\(bu (bullet)
190 .It \(ba
191 \\(ba (bar)
192 .El
193 .\" SECTION
194 .Sh EXAMPLES
195 To display this manual page:
196 .\" PARAGRAPH
197 .Pp
198 .D1 % mdocmterm \-Wall,error mdocmterm.1
199 .\" PARAGRAPH
200 .Pp
201 To pipe a manual page to the pager:
202 .Pp
203 .D1 % mdocterm mdocterm.1 | less -R
204 .\" SECTION
205 .Sh SEE ALSO
206 .Xr mdoctree 1 ,
207 .Xr mdoclint 1 ,
208 .Xr mdoc.samples 7 ,
209 .Xr mdoc 7 ,
210 .Xr mdoc 3
211 .\"
212 .Sh AUTHORS
213 The
214 .Nm
215 utility was written by
216 .An Kristaps Dzonsons Aq kristaps@kth.se .
217 .\" SECTION
218 .Sh CAVEATS
219 See
220 .Xr mdoc 3
221 for a list of bugs, caveats, and incomplete macros regarding the
222 document parse.
223 .Pp
224 The
225 .Nm
226 utility doesn't yet know how to display the following:
227 .Pp
228 .Bl -bullet -compact
229 .It
230 Only \-bullet , \-dash , \-enum , \-hyphen , \-tag and \-ohang
231 .Sq \&Bl
232 lists are supported.
233 .It
234 The \-literal and \-unfilled
235 .Sq \&Bd
236 displays only accept text contents.
237 .It
238 The
239 .Sq \&Xo/Xc
240 pair isn't supported (and never will be).
241 .El