summaryrefslogtreecommitdiff
path: root/textproc/mdoclint/files/mdoclint.1
blob: 206484091c324adb6280b70aa2a01983b3843255 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
.\"	$OpenBSD: mdoclint.1,v 1.7 2009/04/13 19:06:38 jmc Exp $
.\" $NetBSD: mdoclint.1,v 1.20 2017/06/01 14:38:50 wiz Exp $
.\"
.\" Copyright (c) 2001-2013 Thomas Klausner
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR, THOMAS KLAUSNER,
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd May 15, 2017
.Dt MDOCLINT 1
.Os
.Sh NAME
.Nm mdoclint
.Nd man page verifier
.Sh SYNOPSIS
.Nm
.Op Fl DdeFhlmnoprSvwx
.Ar
.Sh DESCRIPTION
.Nm
is a man page verifier.
It tries to automatically find as many common
errors that occur when writing man pages as possible.
If no flags are given,
.Fl DdelmnoprSx
is assumed (that is, everything except
.Fl Fhvw ) .
.Pp
The options are as follows:
.Bl -tag -width xxxx -compact
.It Fl D
Warn about bad casing and architectures in the .Dt macro.
.It Fl d
Warn about bad date strings (in the .Dd macro).
.It Fl e
Warn about unsorted errors (for functions).
.It Fl F
Delete whitespace at the end of input lines.
.It Fl h
Display usage.
.It Fl l
Warn about unknown libraries used as arguments to Lb.
.It Fl m
Warn if man page is not in
.Xr mdoc 7
format.
.It Fl n
Warn when the .Nd macro's argument ends in a dot, that is
.Sq \&. .
.It Fl o
Warn when the .Os macro has an argument (it shouldn't have one at
least in the base system, because on
.Nx
the current version is default).
.It Fl p
Warn about possible punctuation problems at the end of macro arguments,
abuse of .Ns to get punctuation directly next to a word,
and sentences not starting on a new line.
.It Fl r
Warn about missing RCS Id.
.It Fl S
Warn about any unknown sections or about a section that comes in the
wrong order (see
.Xr mdoc 7 ) .
.It Fl v
Verbose output.
.It Fl w
Display the section name,
in addition to the relevant line number,
in warnings.
.It Fl x
Warn about cross-references whose target is missing, cross-references
to itself, or plain bogus cross-references.
.Pp
For
.Dq .Xr name X ,
the following files are checked:
.Pa /usr/share/man/manX/name.X ,
.Pa /usr/share/man/manX/`uname -m`/name.X ,
.Pa /usr/X11R7/man/manX/name.X ,
and
.Pa ./name.X .
.El
.Sh SEE ALSO
.Xr mdoc 7 ,
.Xr mdoc.samples 7
.Sh AUTHORS
.An Thomas Klausner
.Aq Mt wiz@NetBSD.org
.An Marc Espie
.Aq Mt espie@OpenBSD.org
.An Ingo Schwarze
.Aq Mt schwarze@OpenBSD.org
.Sh BUGS
The
.Fl o
and
.Fl p
flags currently produce too many bogus warnings.
.Pp
The
.Fl x
flag sometimes erroneously warns about xrefs to man pages for
machine-dependent drivers that are not for the architecture
.Nm
is running on.