version 1.1, 2011/07/14 14:36:37 |
version 1.4, 2011/08/18 08:58:44 |
|
|
.Nd index UNIX manuals |
.Nd index UNIX manuals |
.Sh SYNOPSIS |
.Sh SYNOPSIS |
.Nm |
.Nm |
.Op Fl ruv |
.Op Fl v |
.Op Fl d Ar dir |
.Op Ar dir... |
.Ar |
.Nm |
|
.Op Fl v |
|
.Fl d Ar dir |
|
.Op Ar |
|
.Nm |
|
.Op Fl v |
|
.Fl u Ar dir |
|
.Op Ar |
.Sh DESCRIPTION |
.Sh DESCRIPTION |
The |
The |
.Nm |
.Nm |
utility extracts keywords from |
utility extracts keywords from |
.Ux |
.Ux |
manuals and indexes them for fast retrieval. |
manuals and indexes them in a |
|
.Sx Keyword Database |
|
and |
|
.Sx Index Database |
|
for fast retrieval. |
The arguments are as follows: |
The arguments are as follows: |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
.It Fl d Ar dir |
.It Fl d Ar dir |
The directory into which to write the keyword and index databases. |
Remove |
.It Ar |
.Ar |
Read input from zero or more files in |
from the databases in |
.Xr mdoc 7 |
.Ar dir . |
or |
.It Fl u Ar dir |
.Xr man 7 |
Update (remove and re-add) |
.Ux |
.Ar |
manual format. |
from the databases in |
.It Fl r |
.Ar dir . |
Remove entries. |
.It Ar dir... |
This will remove the index and keyword references. |
Recursively add files rooted at each |
If the record is not found, it is ignored. |
.Ar dir |
.It Fl u |
to the databases in the respective |
Update the record. |
.Ar dir . |
This will first remove the record (as in |
Existing databases are truncated. |
.Fl r ) |
|
then re-add it. |
|
.It Fl v |
.It Fl v |
Verbose output. |
Verbose operation. |
If specified once, prints the name of each indexed file. |
Use once to display all files added or removed and twice for keywords as |
If twice, prints keywords for each file. |
well. |
.El |
.El |
.Pp |
.Pp |
By default, |
By default, |
.Nm |
.Nm |
constructs a new |
creates databases in each |
.Sx Index Database |
.Ar dir |
and |
using files rooted in that directory. |
.Sx Keyword Database |
|
in the current working directory. |
|
Existing databases are truncated. |
|
.Pp |
.Pp |
If fatal parse errors are encountered, the offending file is printed to |
If fatal parse errors are encountered while parsing, the offending file |
stderr, omitted from the index, and the parse continues with the next |
is printed to stderr, omitted from the index, and the parse continues |
input file. |
with the next input file. |
.Ss Index Database |
.Ss Index Database |
The index database, |
The index database, |
.Pa mandoc.index , |
.Pa mandoc.index , |
Line 90 a nil-terminated architecture |
|
Line 96 a nil-terminated architecture |
|
and a nil-terminated description. |
and a nil-terminated description. |
.El |
.El |
.Pp |
.Pp |
Both the manual section and description may be zero-length. |
Both the manual section and description may be zero-length if the record |
|
is unassigned. |
Entries are sequentially-numbered, but the filenames are unordered. |
Entries are sequentially-numbered, but the filenames are unordered. |
.Ss Keyword Database |
.Ss Keyword Database |
The keyword database, |
The keyword database, |
|
|
.Ud |
.Ud |
.Sh IMPLEMENTATION NOTES |
.Sh IMPLEMENTATION NOTES |
The time to construct a new database pair grows linearly with the |
The time to construct a new database pair grows linearly with the |
number of keywords in the input. |
number of keywords in the input files. |
However, removing or updating entries with |
However, removing or updating entries with |
.Fl r |
.Fl u |
or |
or |
.Fl u , |
.Fl d , |
respectively, grows as a multiple of the index length and input size. |
respectively, grows as a multiple of the index length and input size. |
.Sh FILES |
.Sh FILES |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
Line 183 to exit at once, possibly in the middle of parsing or |
|
Line 190 to exit at once, possibly in the middle of parsing or |
|
The output databases are corrupt and should be removed . |
The output databases are corrupt and should be removed . |
.El |
.El |
.Sh SEE ALSO |
.Sh SEE ALSO |
.Xr mandoc 1 |
.Xr mandoc 1 , |
|
.Xr btree 3 , |
|
.Xr recno 3 |
.Sh AUTHORS |
.Sh AUTHORS |
The |
The |
.Nm |
.Nm |
utility was written by |
utility was written by |
.An Kristaps Dzonsons Aq kristaps@bsd.lv . |
.An Kristaps Dzonsons , |
|
.Mt kristaps@bsd.lv . |