=================================================================== RCS file: /cvs/mandoc/Attic/mandocdb.8,v retrieving revision 1.13 retrieving revision 1.17.2.2 diff -u -p -r1.13 -r1.17.2.2 --- mandoc/Attic/mandocdb.8 2011/12/16 08:04:34 1.13 +++ mandoc/Attic/mandocdb.8 2014/03/17 09:04:52 1.17.2.2 @@ -1,6 +1,7 @@ -.\" $Id: mandocdb.8,v 1.13 2011/12/16 08:04:34 kristaps Exp $ +.\" $Id: mandocdb.8,v 1.17.2.2 2014/03/17 09:04:52 schwarze Exp $ .\" -.\" Copyright (c) 2011 Kristaps Dzonsons +.\" Copyright (c) 2011, 2012 Kristaps Dzonsons +.\" Copyright (c) 2011, 2012 Ingo Schwarze .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above @@ -14,7 +15,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: December 16 2011 $ +.Dd $Mdocdate: March 17 2014 $ .Dt MANDOCDB 8 .Os .Sh NAME @@ -22,19 +23,21 @@ .Nd index UNIX manuals .Sh SYNOPSIS .Nm -.Op Fl av +.Op Fl avW .Op Fl C Ar file .Nm -.Op Fl av +.Op Fl avW .Ar dir ... .Nm -.Op Fl v +.Op Fl vW .Fl d Ar dir .Op Ar .Nm -.Op Fl v +.Op Fl vW .Fl u Ar dir .Op Ar +.Nm +.Fl t Ar .Sh DESCRIPTION The .Nm @@ -44,7 +47,13 @@ manuals and indexes them in a .Sx Keyword Database and .Sx Index Database -for fast retrieval. +for fast retrieval by +.Xr apropos 1 , +.Xr whatis 1 , +and +.Xr man 1 Ns 's +.Fl k +option. .Pp By default, .Nm @@ -62,14 +71,16 @@ and .Op Ar arch Li / .Ar title . Sy 0 .Sm on -in that directory; -existing databases are truncated. +in that directory. +Existing databases are replaced. If .Ar dir is not provided, .Nm uses the default paths stipulated by -.Xr man 1 . +.Xr manpath 1 , +or +.Xr man.conf 5 . .Pp The arguments are as follows: .Bl -tag -width "-C file" @@ -88,6 +99,17 @@ Merge (remove and re-add) to the database in .Ar dir without truncating it. +.It Fl t Ar +Check the given +.Ar files +for potential problems. +No databases are modified. +Implies +.Fl a +and +.Fl W . +All diagnostic messages are printed to the standard output; +the standard error output is not used. .It Fl u Ar dir Remove .Ar @@ -96,6 +118,9 @@ from the database in without truncating it. .It Fl v Display all files added or removed to the index. +.It Fl W +Print warnings about potential problems with manual pages +to the standard error output. .El .Pp If fatal parse errors are encountered while parsing, the offending file @@ -110,14 +135,13 @@ database with record values consisting of .Pp .Bl -enum -compact .It -the string -.Cm mdoc , -.Cm man , +the character +.Cm d , +.Cm a , or -.Cm cat +.Cm c to indicate the file type .Po -file in .Xr mdoc 7 , .Xr man 7 , and post-formatted, respectively @@ -137,19 +161,18 @@ and the description. .Pp Each of the above is NUL-terminated. .Pp -Both the manual section and description may be zero-length if the record -is unassigned. -Entries are sequentially-numbered, but the filenames are unordered. +If the record value is zero-length, it is unassigned. .Ss Keyword Database The keyword database, .Pa mandoc.db , is a .Xr btree 3 database of NUL-terminated keywords (record length is non-zero string -length plus one) mapping to a 12-byte binary field consisting of the -64-bit keyword type and 32-bit source +length plus one) mapping to a 16-byte binary field consisting of the +64-bit keyword type and the 64-bit .Sx Index Database record number, both in network-byte order. +.Pp The type bit-mask consists of the following values mapping into .Xr mdoc 7 @@ -195,9 +218,6 @@ macro identifiers: .It Li 0x0000001000000000ULL Ta \&Vt .It Li 0x0000002000000000ULL Ta \&Xr .El -.Pp -The last four bytes are a host-ordered record number within the -.Sx Index Database . .Sh IMPLEMENTATION NOTES The time to construct a new database pair grows linearly with the number of keywords in the input files. @@ -239,7 +259,7 @@ error accessing input files. Such errors cause .Nm to exit at once, possibly in the middle of parsing or formatting a file. -The output databases are corrupt and should be removed . +The output databases are corrupt and should be removed. .El .Sh DIAGNOSTICS If the following errors occur, the @@ -268,9 +288,42 @@ arguments. .Xr btree 3 , .Xr recno 3 , .Xr man.conf 5 -.Sh AUTHORS +.Sh HISTORY +A +.Nm makewhatis +utility first appeared in +.Bx 2 . +It was rewritten in +.Xr perl 1 +for +.Ox 2.7 +and in C for +.Ox 5.1 . +.Pp The +.Ar dir +argument first appeared in +.Nx 1.0 ; +the options +.Fl dtu +in +.Ox 2.7 ; +and the options +.Fl aCvW +in +.Ox 5.1 . +.Sh AUTHORS +.An -nosplit +.An Bill Joy +wrote the original +.Bx +.Nm makewhatis +in February 1979, +.An Marc Espie +started the Perl version in 2000, +and the current version of .Nm -utility was written by -.An Kristaps Dzonsons , -.Mt kristaps@bsd.lv . +was written by +.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv +and +.An Ingo Schwarze Aq Mt schwarze@openbsd.org .