Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OpenBSD-5.7)
Apropos / Subsearch:
optional field

MANDOC.DB(5)                BSD File Formats Manual               MANDOC.DB(5)

     mandoc.db -- manual page database

     The mandoc.db SQLite3 file format is used to store information about
     installed manual pages to facilitate semantic searching for manuals.
     Each manual page tree contains its own mandoc.db file; see FILES for

     Such database files are generated by makewhatis(8) and used by apropos(1)
     and whatis(1).

     One line in the following tables describes:

     mpages  One physical manual page file, no matter how many times and under
             which names it may appear in the file system.

     mlinks  One entry in the file system, no matter which content it points

     names   One manual page name, no matter whether it appears in a page
             header, in a NAME or SYNOPSIS section, or as a file name.

     keys    One chunk of text from some macro invocation.

     Each record in the latter three tables uses its pageid column to point to
     a record in the mpages table.

     The other columns are as follows; unless stated otherwise, they are of
     type TEXT.

     mpages.desc  The description line ('Nd') of the page.

     mpages.form  An INTEGER bit field.  If bit FORM_GZ is set, the page is
                  compressed and requires gunzip(1) for display.  If bit
                  FORM_SRC is set, the page is unformatted, that is in mdoc(7)
                  or man(7) format, and requires mandoc(1) for display.  If
                  bit FORM_SRC is not set, the page is formatted, i.e. a 'cat'

     mlinks.sec   The manual section as found in the subdirectory name.

     mlinks.arch  The manual architecture as found in the subdirectory name,
                  or "any".

     mlinks.name  The manual name as found in the file name.

     names.bits   An INTEGER bit mask telling whether the name came from a
                  header line, from the NAME or SYNOPSIS section, or from a
                  file name.  Bits are defined in <mansearch.h>.

     names.name   The name itself.

     keys.bits    An INTEGER bit mask telling which semantic contexts the key
                  was found in; defined in <mansearch.h>, documented in

     keys.key     The string found in those contexts.

     /usr/share/man/mandoc.db  The manual page database for the base system.
     /usr/X11R6/man/mandoc.db  The same for the X(7) Window System.
     /usr/local/man/mandoc.db  The same for packages(7).

     apropos(1), man(1), sqlite3(1), whatis(1), makewhatis(8)

     A manual page database /usr/lib/whatis first appeared in 2BSD.  The
     present format first appeared in OpenBSD 5.6.

     The original version of makewhatis(8) was written by Bill Joy in 1979.
     An SQLite3 version was first implemented by Kristaps Dzonsons
     <kristaps@bsd.lv> in 2012.  The present database format was designed by
     Ingo Schwarze <schwarze@openbsd.org> in 2014.

BSD                            December 30, 2014                           BSD