Annotation of src/usr.bin/checknr/checknr.1, Revision 1.12
1.12 ! millert 1: .\" $OpenBSD: checknr.1,v 1.11 2000/11/21 13:43:52 aaron Exp $
1.1 deraadt 2: .\" $NetBSD: checknr.1,v 1.5 1995/03/26 04:10:14 glass Exp $
3: .\"
4: .\" Copyright (c) 1980, 1990, 1993
5: .\" The Regents of the University of California. All rights reserved.
6: .\"
7: .\" Redistribution and use in source and binary forms, with or without
8: .\" modification, are permitted provided that the following conditions
9: .\" are met:
10: .\" 1. Redistributions of source code must retain the above copyright
11: .\" notice, this list of conditions and the following disclaimer.
12: .\" 2. Redistributions in binary form must reproduce the above copyright
13: .\" notice, this list of conditions and the following disclaimer in the
14: .\" documentation and/or other materials provided with the distribution.
1.12 ! millert 15: .\" 3. Neither the name of the University nor the names of its contributors
1.1 deraadt 16: .\" may be used to endorse or promote products derived from this software
17: .\" without specific prior written permission.
18: .\"
19: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22: .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29: .\" SUCH DAMAGE.
30: .\"
31: .\" @(#)checknr.1 8.1 (Berkeley) 6/6/93
32: .\"
33: .Dd June 6, 1993
34: .Dt CHECKNR 1
1.5 aaron 35: .Os
1.1 deraadt 36: .Sh NAME
37: .Nm checknr
38: .Nd check nroff/troff files
39: .Sh SYNOPSIS
40: .Nm checknr
1.11 aaron 41: .Op Fl fs
1.1 deraadt 42: .Op Fl a Ns Ar \&.x1.y1.x2.y2. ... \&.xn.yn
1.10 aaron 43: .Op Fl c Ns Ar \&.x1.x2.x3. ... \&.xn
44: .Op Ar file
1.1 deraadt 45: .Sh DESCRIPTION
1.6 aaron 46: .Nm
1.1 deraadt 47: checks a list of
48: .Xr nroff 1
49: or
50: .Xr troff 1
51: input files for certain kinds of errors
52: involving mismatched opening and closing delimiters
53: and unknown commands.
54: If no files are specified,
1.6 aaron 55: .Nm
1.1 deraadt 56: checks the standard input.
57: .Pp
1.7 aaron 58: The options are as follows:
1.1 deraadt 59: .Bl -tag -width Ds
60: .It Fl a
61: Add additional pairs of macros to the list of known macros.
62: This must be followed by groups of six characters, each group defining
63: a pair of macros.
64: The six characters are
65: a period,
66: the first macro name,
67: another period,
68: and the second macro name.
69: For example, to define a pair .BS and .ES, use
1.8 aaron 70: .Dq Li \-a.BS.ES
1.1 deraadt 71: .It Fl c
72: Define commands which would otherwise be complained about
73: as undefined.
74: .It Fl f
75: Request
1.6 aaron 76: .Nm
1.1 deraadt 77: to ignore
78: .Ql \ef
79: font changes.
80: .It Fl s
81: Ignore
82: .Ql \es
83: size changes.
84: .El
85: .Pp
86: Delimiters checked are:
87: .Bl -enum
88: .It
89: Font changes using \efx ... \efP.
90: .It
91: Size changes using \esx ... \es0.
92: .It
93: Macros that come in open ... close forms, for example,
94: the .TS and .TE macros which must always come in pairs.
95: .El
96: .Pp
1.6 aaron 97: .Nm
1.1 deraadt 98: is intended for use on documents that are prepared with
1.6 aaron 99: .Nm
1.1 deraadt 100: in mind, much the same as
101: .Xr lint 1 .
102: It expects a certain document writing style for
103: .Ql \ef
104: and
105: .Ql \es
106: commands,
107: in that each
108: .Ql \efx
109: must be terminated with
110: .Ql \efP
111: and
112: each
113: .Ql \esx
114: must be terminated with
115: .Ql \es0 .
116: While it will work to directly go into the next font or explicitly
117: specify the original font or point size,
118: and many existing documents actually do this,
119: such a practice will produce complaints from
120: .Nm checknr .
121: Since it is probably better to use the
122: .Ql \efP
123: and
124: .Ql \es0
125: forms anyway,
126: you should think of this as a contribution to your document
127: preparation style.
128: .Pp
1.6 aaron 129: .Nm
1.1 deraadt 130: knows about the
131: .Xr ms 7
132: and
133: .Xr me 7
134: macro packages.
135: .Sh DIAGNOSTICS
136: .Bd -ragged -compact
137: Complaints about unmatched delimiters.
138: Complaints about unrecognized commands.
139: Various complaints about the syntax of commands.
140: .Ed
1.9 aaron 141: .Sh SEE ALSO
142: .Xr nroff 1 ,
143: .Xr troff 1 ,
144: .Xr me 7 ,
145: .Xr ms 7
146: .Sh HISTORY
147: The
148: .Nm
149: command appeared in
150: .Bx 4.0 .
1.1 deraadt 151: .Sh BUGS
152: There is no way to define a 1 character macro name using
153: .Fl a .
154: .Pp
155: Does not correctly recognize certain reasonable constructs,
156: such as conditionals.