DESCRIPTION
The
makemandb utility traverses the directories containing man pages, parses the manual pages with the help of libmandoc and builds an Sqlite database to support full text searches by
apropos(1). It obtains the list of directories to traverse using the
-path and
-p options of
man(1).
It supports the following options:
-
-C path
-
Use different man(1) configuration file than the default, /etc/man.conf.
-
-f
-
Force rebuilding the index from scratch, pruning the existing one.
-
-l
-
Limit the parsing to only the NAME section of the pages. This option can be used to mimic the behavior of the classic apropos(1) and also to substantially save disk space.
-
-o
-
Use this option to optimize the index for speed and also to significantly reduce disk space usage. This is a somewhat expensive operation.
-
-Q
-
Print only fatal error messages (i.e., when the database is left in an inconsistent state and needs manual intervention).
-
-q
-
Print only warnings and error messages but no status updates.
-
-v
-
Enable verbose output. This prints the name of every file being parsed and a summary at the end of the index update.
The index generated by makemandb is also used by the whatis(1) program, replacing the old “makewhatis” program.
DATABASE SCHEMA
The name of the FTS table is mandb and its schema is as follows:
section |
The section number of the page |
name |
The name of the page from the NAME section. |
name_desc |
The one line description from the NAME section. |
desc |
The DESCRIPTION section. |
lib |
The LIBRARY section. |
return_vals |
The RETURN VALUES section. |
env |
The ENVIRONMENT section. |
files |
The FILES section. |
exit_status |
The EXIT STATUS section. |
diagnostics |
The DIAGNOSTICS section. |
errors |
The ERRORS section. |
md5_hash |
MD5 checksum of the man page. |
machine |
The machine architecture (if any) for which the man page is relevant. |