[BACK]Return to index.sgml CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Annotation of mandoc/index.sgml, Revision 1.161

1.1       kristaps    1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
1.40      kristaps    2: <HTML>
                      3:        <HEAD>
                      4:                <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
                      5:                <LINK REL="stylesheet" HREF="index.css" TYPE="text/css" MEDIA="all">
1.149     kristaps    6:                <TITLE>mdocml | UNIX manpage compiler</TITLE>
1.40      kristaps    7:        </HEAD>
                      8:        <BODY>
1.112     kristaps    9:                <P CLASS="head">
1.149     kristaps   10:                        <B>mdocml</B> &#8211; UNIX manpage compiler, current version @VERSION@ (@VDATE@)
1.136     kristaps   11:                </P>
                     12:                <P CLASS="subhead">
                     13:                        Sources: <A HREF="/snapshots/mdocml.tar.gz">current</A>,
                     14:                        <A HREF="/cgi-bin/cvsweb/?cvsroot=mdocml">cvsweb</A>
                     15:                        (<A HREF="/snapshots/">archives</A>)
1.112     kristaps   16:                </P>
                     17:                <H1>
1.118     kristaps   18:                        <A NAME="description">Description</A>
1.112     kristaps   19:                </H1>
                     20:                <P>
                     21:                        <SPAN CLASS="nm">mdocml</SPAN> is a suite of tools compiling <I><A HREF="mdoc.7.html">mdoc</A></I>, the roff macro
                     22:                        package of choice for BSD manual pages, and <I><A HREF="man.7.html">man</A></I>, the predominant historical package for
                     23:                        UNIX manuals.  The mission of <SPAN CLASS="nm">mdocml</SPAN> is to deprecate <A
                     24:                        HREF="http://www.gnu.org/software/groff/" CLASS="external">groff</A>, the GNU troff implementation, for displaying <I>mdoc</I>
                     25:                        pages whilst providing token support for <I>man</I>.
                     26:                </P>
                     27:                <P>
1.159     schwarze   28:                        Why?  groff amounts to over 5 MB of source code, most of which is C++ and GPL version 3.  It runs slowly, produces
1.112     kristaps   29:                        uncertain output, and varies in operation from system to system.  mdocml strives to fix this (respectively small, C, <A
                     30:                        CLASS="external" HREF="http://www.isc.org/software/license">ISC</A>-licensed, fast and regular).
                     31:                </P>
                     32:                <P>
                     33:                        <SPAN CLASS="nm">mdocml</SPAN> consists of the <A HREF="mandoc.3.html">libmandoc</A> validating compiler and <A
1.121     kristaps   34:                        HREF="mandoc.1.html">mandoc</A>, which interfaces with the compiler library to format output for UNIX terminals (with
                     35:                        support for wide-character locales), XHTML, HTML, PostScript, and PDF.
1.158     kristaps   36:                        It also includes <A HREF="preconv.1.html">preconv</A> for recoding multibyte manuals,
                     37:                        <A HREF="demandoc.1.html">demandoc</A> for emitting only text parts of manuals,
                     38:                        <A HREF="mandocdb.8.html">mandocdb</A> for indexing manuals,
                     39:                        <A HREF="apropos.1.html">apropos</A> (includes whatis mode) for indexed manual search, and
                     40:                        <A HREF="man.cgi.7.html">man.cgi</A> for indexed manual search online.
1.121     kristaps   41:                        It is a <A CLASS="external" HREF="http://bsd.lv/">BSD.lv</A> project.
1.112     kristaps   42:                </P>
                     43:                <P>
                     44:                        <I>Disambiguation</I>: <SPAN CLASS="nm">mdocml</SPAN> is often referred to by its installed binary, <Q>mandoc</Q>.
                     45:                </P>
1.137     kristaps   46:                <H2>
1.118     kristaps   47:                        <A NAME="sources">Sources</A>
1.137     kristaps   48:                </H2>
1.112     kristaps   49:                <P>
1.156     kristaps   50:                        <SPAN CLASS="nm">mdocml</SPAN> is in ISO C99 and should build and run on any modern system; however, you'll need <A
1.158     kristaps   51:                        HREF="http://www.sqlite.org">sqlite3</A> to build <A HREF="apropos.1.html">apropos</A> (links to whatis),
                     52:                        <A HREF="man.cgi.7.html">man.cgi</A>, and <A HREF="mandocdb.8.html">mandocdb</A>.
1.156     kristaps   53:                        To build and install into <I>/usr/local/</I>, just run <CODE>make install</CODE>.
                     54:                        Be careful: the <B>preconv</B>, <B>apropos</B>, and <B>whatis</B> binary names are usually taken by existing utilities.
1.132     kristaps   55:                </P>
1.137     kristaps   56:                <H2>
1.112     kristaps   57:                        Downstream
1.137     kristaps   58:                </H2>
1.135     kristaps   59:                <P>
                     60:                        Several systems come bundled with <SPAN CLASS="nm">mdocml</SPAN> utilities.
                     61:                        If your system does not appear below, the maintainers have not contacted me and it should not be considered
                     62:                        <Q>official</Q>.
                     63:                        Please <A HREF="#contact">contact us</A> if you plan on maintaining a downstream version!
                     64:                </P>
1.112     kristaps   65:                <TABLE WIDTH="100%" SUMMARY="Downstream Sources">
1.136     kristaps   66:                        <COL WIDTH="175">
1.112     kristaps   67:                        <COL>
                     68:                        <TBODY>
                     69:                                <TR>
                     70:                                        <TD>DragonFly BSD</TD>
                     71:                                        <TD>
1.161   ! schwarze   72:                                        <A HREF="http://gitweb.dragonflybsd.org/dragonfly.git/tree/HEAD:/contrib/mdocml" CLASS="external">contrib/mdocml</A> (1.12.2 sources)
1.159     schwarze   73:                                        <A HREF="http://gitweb.dragonflybsd.org/dragonfly.git/tree/HEAD:/lib/libmandoc" CLASS="external">lib/libmandoc</A>
                     74:                                        <A HREF="http://gitweb.dragonflybsd.org/dragonfly.git/tree/HEAD:/usr.bin/mandoc" CLASS="external">usr.bin/mandoc</A> (build system)
1.112     kristaps   75:                                        </TD>
                     76:                                </TR>
                     77:                                <TR>
1.159     schwarze   78:                                        <TD>FreeBSD 10.0, -CURRENT</TD>
1.112     kristaps   79:                                        <TD>
1.159     schwarze   80:                                        <A HREF="http://svnweb.freebsd.org/base/head/contrib/mdocml/" CLASS="external">contrib/mdocml</A> (1.12.1 sources)
                     81:                                        <A HREF="http://svnweb.freebsd.org/base/head/usr.bin/mandoc/" CLASS="external">usr.bin/mandoc</A> (build system)
                     82:                                        </TD>
                     83:                                </TR>
                     84:                                <TR>
                     85:                                        <TD>FreeBSD 9.x, 8.x</TD>
                     86:                                        <TD>
1.160     schwarze   87:                                        <A HREF="http://svnweb.freebsd.org/ports/head/textproc/mdocml/" CLASS="external">ports/textproc/mdocml</A> (1.12.1 port)
1.112     kristaps   88:                                        </TD>
                     89:                                </TR>
                     90:                                <TR>
                     91:                                        <TD>NetBSD</TD>
                     92:                                        <TD>
1.159     schwarze   93:                                        <A HREF="http://cvsweb.netbsd.org/bsdweb.cgi/src/external/bsd/mdocml/" CLASS="external">src/external/bsd/mdocml</A> (1.12.1 sources plus patches and build system)
1.112     kristaps   94:                                        </TD>
                     95:                                </TR>
                     96:                                <TR>
                     97:                                        <TD>OpenBSD</TD>
                     98:                                        <TD>
1.159     schwarze   99:                                        <A HREF="http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/mandoc/" CLASS="external">src/usr.bin/mandoc</A> (1.12.2 sources and build system)
1.112     kristaps  100:                                        </TD>
                    101:                                </TR>
1.148     kristaps  102:                                <TR>
                    103:                                        <TD>pkgsrc</TD>
                    104:                                        <TD>
1.160     schwarze  105:                                        <A HREF="http://pkgsrc.se/textproc/mdocml" CLASS="external">textproc/mdocml</A> (1.12.2 port)
1.148     kristaps  106:                                        </TD>
                    107:                                </TR>
1.153     kristaps  108:                                <TR>
                    109:                                        <TD>Minix3</TD>
                    110:                                        <TD>
1.159     schwarze  111:                                        <A HREF="http://git.minix3.org/?p=minix.git;a=tree;f=external/bsd/mdocml" CLASS="external">external/bsd/mdocml</A> (1.10.9 sources and build system)
1.153     kristaps  112:                                        </TD>
                    113:                                </TR>
1.160     schwarze  114:                                <TR>
                    115:                                        <TD>Alpine Linux</TD>
                    116:                                        <TD>
                    117:                                        <A HREF="http://git.alpinelinux.org/cgit/aports/tree/main/mdocml" CLASS="external">aports/main/mdocml</A> (1.12.1 port)
                    118:                                        </TD>
                    119:                                </TR>
1.112     kristaps  120:                        </TBODY>
                    121:                </TABLE>
                    122:                <H1>
1.118     kristaps  123:                        <A NAME="documentation">Documentation</A>
1.112     kristaps  124:                </H1>
                    125:                <P>
1.135     kristaps  126:                        These manuals are generated automatically and refer to the current release.
                    127:                        They are the authoritative documentation for the <SPAN CLASS="nm">mdocml</SPAN> system.
1.112     kristaps  128:                </P>
                    129:
                    130:                <TABLE WIDTH="100%" SUMMARY="Documentation">
1.136     kristaps  131:                        <COL WIDTH="175">
1.112     kristaps  132:                        <COL>
                    133:                        <TBODY>
                    134:                                <TR>
1.144     kristaps  135:                                        <TD VALIGN="top"><A HREF="apropos.1.html">apropos(1)</A></TD>
1.112     kristaps  136:                                        <TD VALIGN="top">
1.144     kristaps  137:                                                search the manual page database
1.112     kristaps  138:                                        </TD>
                    139:                                </TR>
                    140:                                <TR>
1.138     kristaps  141:                                        <TD VALIGN="top"><A HREF="demandoc.1.html">demandoc(1)</A></TD>
1.114     kristaps  142:                                        <TD VALIGN="top">
1.138     kristaps  143:                                                emit only text of UNIX manuals
1.114     kristaps  144:                                        </TD>
                    145:                                </TR>
                    146:                                <TR>
1.144     kristaps  147:                                        <TD VALIGN="top"><A HREF="mandoc.1.html">mandoc(1)</A></TD>
                    148:                                        <TD VALIGN="top">
                    149:                                                format and display UNIX manuals
                    150:                                        </TD>
                    151:                                </TR>
                    152:                                <TR>
1.120     kristaps  153:                                        <TD VALIGN="top"><A HREF="preconv.1.html">preconv(1)</A></TD>
                    154:                                        <TD VALIGN="top">
                    155:                                                recode multibyte UNIX manuals
                    156:                                        </TD>
                    157:                                </TR>
                    158:                                <TR>
1.112     kristaps  159:                                        <TD VALIGN="top"><A HREF="mandoc.3.html">mandoc(3)</A></TD>
                    160:                                        <TD VALIGN="top">
                    161:                                                mandoc macro compiler library
                    162:                                        </TD>
                    163:                                </TR>
                    164:                                <TR>
1.159     schwarze  165:                                        <TD VALIGN="top"><A HREF="tbl.3.html">tbl(3)</A></TD>
                    166:                                        <TD VALIGN="top">
                    167:                                                roff table parser library for mandoc
                    168:                                        </TD>
                    169:                                </TR>
                    170:                                <TR>
                    171:                                        <TD VALIGN="top"><A HREF="eqn.7.html">eqn(7)</A></TD>
                    172:                                        <TD VALIGN="top">
                    173:                                                eqn-mandoc language reference
                    174:                                        </TD>
                    175:                                </TR>
                    176:                                <TR>
1.112     kristaps  177:                                        <TD VALIGN="top"><A HREF="man.7.html">man(7)</A></TD>
                    178:                                        <TD VALIGN="top">
                    179:                                                man language reference
                    180:                                        </TD>
                    181:                                </TR>
                    182:                                <TR>
1.150     kristaps  183:                                        <TD VALIGN="top"><A HREF="man.cgi.7.html">man.cgi(7)</A></TD>
                    184:                                        <TD VALIGN="top">
                    185:                                                cgi for manpage query and display
                    186:                                        </TD>
                    187:                                </TR>
                    188:                                <TR>
1.112     kristaps  189:                                        <TD VALIGN="top"><A HREF="mandoc_char.7.html">mandoc_char(7)</A></TD>
                    190:                                        <TD VALIGN="top">
                    191:                                                mandoc special characters
                    192:                                        </TD>
                    193:                                </TR>
                    194:                                <TR>
                    195:                                        <TD VALIGN="top"><A HREF="mdoc.7.html">mdoc(7)</A></TD>
                    196:                                        <TD VALIGN="top">
                    197:                                                mdoc language reference
                    198:                                        </TD>
                    199:                                </TR>
                    200:                                <TR>
                    201:                                        <TD VALIGN="top"><A HREF="roff.7.html">roff(7)</A></TD>
                    202:                                        <TD VALIGN="top">
                    203:                                                roff-mandoc language reference
                    204:                                        </TD>
                    205:                                </TR>
                    206:                                <TR>
                    207:                                        <TD VALIGN="top"><A HREF="tbl.7.html">tbl(7)</A></TD>
                    208:                                        <TD VALIGN="top">
                    209:                                                tbl-mandoc language reference
                    210:                                        </TD>
                    211:                                </TR>
1.138     kristaps  212:                                <TR>
                    213:                                        <TD VALIGN="top"><A HREF="mandocdb.8.html">mandocdb(8)</A></TD>
                    214:                                        <TD VALIGN="top">
                    215:                                                index UNIX manuals
                    216:                                        </TD>
                    217:                                </TR>
1.112     kristaps  218:                        </TBODY>
                    219:                </TABLE>
                    220:                <H1>
1.118     kristaps  221:                        <A NAME="contact">Contact</A>
1.112     kristaps  222:                </H1>
                    223:                <P>
1.139     kristaps  224:                        Use the mailing lists for bug-reports, patches, questions, etc.  Please check the
1.112     kristaps  225:                        <A HREF="http://mdocml.bsd.lv/cgi-bin/cvsweb/TODO?cvsroot=mdocml">TODO</A> for known issues
1.139     kristaps  226:                        before posting.  All lists are subscription-only: send a blank e-mail to the listed address to subscribe.  Beyond that,
                    227:                        contact Kristaps at <A HREF="http://mailhide.recaptcha.net/d?k=01M6h_w7twDp58ZgH57eWC_w==&amp;c=Q2DBUt401ePlSeupJFrq_Q==" TITLE="Reveal
1.149     kristaps  228:                        this e-mail address">kris...</A>@bsd.lv.  Archives are available at <A HREF="http://gmane.org/" CLASS="external">Gmane</A>.
1.112     kristaps  229:                </P>
                    230:                <TABLE WIDTH="100%" SUMMARY="Mailing Lists">
1.136     kristaps  231:                        <COL WIDTH="175">
1.112     kristaps  232:                        <COL>
                    233:                        <TBODY>
                    234:                                <TR>
                    235:                                        <TD>
                    236:                                                disc<A CLASS="external" TITLE="Reveal this e-mail address"
                    237:                                                HREF="http://www.google.com/recaptcha/mailhide/d?k=01KQ80PFH5n3BBNpF5Gs4sRg==&amp;c=EV1QytpQqTHSItc2IXvZyocgYLPnG5K0JKw_gwMC9yc=">...</A>@mdocml.bsd.lv
                    238:                                        </TD>
                    239:                                        <TD>
                    240:                                                bug-reports, general questions, and announcements
                    241:                                        </TD>
                    242:                                </TR>
                    243:                                <TR>
                    244:                                        <TD>
                    245:                                                tec<A CLASS="external" TITLE="Reveal this e-mail address"
                    246:                                                HREF="http://www.google.com/recaptcha/mailhide/d?k=01qDX_iV0RlUOarEvb6mR28g==&amp;c=gRXsTjza0NNCFPaYu-Taj2tF0pmYZSc90EZkFkhkxgo=">...</A>@mdocml.bsd.lv
                    247:                                        </TD>
                    248:                                        <TD>
                    249:                                                patches and system discussions
                    250:                                        </TD>
                    251:                                </TR>
                    252:                                <TR>
                    253:                                        <TD>
                    254:                                                sou<A CLASS="external" TITLE="Reveal this e-mail address"
                    255:                                                HREF="http://www.google.com/recaptcha/mailhide/d?k=01prQrAZhhl2EbIwVcRfABsQ==&amp;c=KtTW4Yic9xk-8g40KzJoca4fR3MYXv28g8NC6OQV-T8=">...</A>@mdocml.bsd.lv
                    256:                                        </TD>
                    257:                                        <TD>
                    258:                                                source commit messages
                    259:                                        </TD>
                    260:                                </TR>
                    261:                        </TBODY>
                    262:                </TABLE>
                    263:                <H1>
1.118     kristaps  264:                        <A NAME="news">News</A>
1.112     kristaps  265:                </H1>
1.124     kristaps  266:                <P CLASS="news">
1.159     schwarze  267:                        xx-xx-2013: version 1.13.0
                    268:                </P>
                    269:                <P>
                    270:                         The <A HREF="mandocdb.8.html">mandocdb</A> tools (<A HREF="mandocdb.8.html">mandocdb</A>, <A
                    271:                        HREF="apropos.1.html">apropos</A> (absorbing whatis), and <A HREF="man.cgi.7.html">man.cgi</A>) have been re-written to
                    272:                        use <A CLASS="external" HREF="http://www.sqlite.org">sqlite3</A> as a database.
                    273:                </P>
                    274:                <P CLASS="news">
1.160     schwarze  275:                        05-10-2013: version 1.12.2
1.159     schwarze  276:                </P>
                    277:                <P>
                    278:                        The <A HREF="mdoc.7.html">mdoc(7)</A> to <A HREF="man.7.html">man(7)</A> converter,
                    279:                        to be called as <CODE>mandoc -Tman</CODE>, is now fully functional.
                    280:                </P>
                    281:                <P>
                    282:                        The <A HREF="mandoc.1.html">mandoc(1)</A> utility now supports the <CODE>-Ios</CODE> (default operating system)
                    283:                        input option, and the <CODE>-Tutf8</CODE> output mode now actually works.
                    284:                </P>
                    285:                <P>
                    286:                        The <A HREF="mandocdb.8.html">mandocdb(8)</A> utility no longer truncates existing databases when starting to build new ones,
                    287:                        but only replaces them when the build actually succeeds.
                    288:                </P>
                    289:                <P>
                    290:                        The <A HREF="man.7.html">man(7)</A> parser now supports the <EM>PD</EM> macro (paragraph distance),
                    291:                        and (for GNU man-ext compatibility only) <EM>EX</EM> (example block) and <EM>EE</EM> (example end).
                    292:                        Plus several bugfixes regarding indentation, line breaks, and vertical spacing,
                    293:                        and regarding <EM>RS</EM> following <EM>TP</EM>.
                    294:                </P>
                    295:                <P>
                    296:                        The <A HREF="roff.7.html">roff(7)</A> parser now supports the <EM>\f(BI</EM> (bold+italic) font escape,
                    297:                        the <EM>\z</EM> (zero cursor advance) escape and the <EM>cc</EM> (change control character)
                    298:                        and <EM>it</EM> (input line trap) requests.
                    299:                        Plus bugfixes regarding the <EM>\t</EM> (tab) escape, nested escape sequences, and conditional requests.
                    300:                </P>
                    301:                <P>
                    302:                        In <A HREF="mdoc.7.html">mdoc(7)</A>, several bugs were fixed related to UTF-8 output of quoting enclosures,
                    303:                        delimiter handling, list indentation and horizontal and vertical spacing,
                    304:                        formatting of the <EM>Lk</EM>, <EM>%U</EM>, and <EM>%C</EM> macros,
                    305:                        plus some bugfixes related to the handling of syntax errors like badly nested font blocks,
                    306:                        stray <EM>Ta</EM> macros outside column lists, unterminated <EM>It Xo</EM> blocks,
                    307:                        and non-text children of <EM>Nm</EM> blocks.
1.149     kristaps  308:                </P>
1.151     kristaps  309:                <P>
1.159     schwarze  310:                        In <A HREF="tbl.7.html">tbl(7)</A>, the width of horizontal spans and the vertical spacing around tables was corrected,
                    311:                        and in <A HREF="man.7.html">man(7)</A> files, a crash was fixed that was triggered by some particular unclosed <EM>T{</EM> macros.
1.151     kristaps  312:                </P>
1.142     kristaps  313:                <P>
1.159     schwarze  314:                        For mandoc developers, we now provide a <A HREF="tbl.3.html">tbl(3)</A> library manual and <CODE>gmdiff</CODE>,
                    315:                        a very small, very simplistic groff-versus-mandoc output comparison tool.
                    316:                </P>
1.160     schwarze  317:                <P>
                    318:                        See <A HREF="NEWS">NEWS</A> for historical notes.
                    319:                </P>
1.159     schwarze  320:                <P CLASS="news">
1.160     schwarze  321:                        23-03-2012: version 1.12.1
1.159     schwarze  322:                </P>
                    323:                <P>
                    324:                        Significant work on <A HREF="apropos.1.html">apropos</A> and <A HREF="mandocdb.8.html">mandocdb</A>.  These tools are
                    325:                        now much more robust.
                    326:                        A <A HREF="whatis.1.html">whatis</A> implementation is now handled as an <A HREF="apropos.1.html">apropos</A> mode.
                    327:                        These tools are also able to minimally handle pre-formatted pages, that is, those already formatted by another utility
                    328:                        such as GNU troff.
                    329:                </P>
                    330:                <P>
                    331:                        The <A HREF="man.cgi.7.html">man.cgi</A> script is also now available for wider testing.  It interfaces with <A
                    332:                        HREF="mandocdb.8.html">mandocdb</A> manuals cached by <A HREF="catman.8.html">catman</A>.  HTML output is generated
                    333:                        on-the-fly by <A HREF="mandoc.3.html">libmandoc</A> or internal methods to convert pre-formatted pages.
                    334:                </P>
                    335:                <P>
                    336:                        The mailing list archive for the discuss and tech lists are being hosted by <A CLASS="external"
                    337:                        HREF="http://www.gmane.org">Gmane</A> at <A HREF="http://dir.gmane.org/gmane.comp.tools.mdocml.user"
                    338:                        CLASS="external">gmane.comp.tools.mdocml.user</A> and <A HREF="http://dir.gmane.org/gmane.comp.tools.mdocml.devel"
                    339:                        CLASS="external">gmane.comp.tools.mdocml.devel</A>, respectively.
                    340:                </P>
                    341:                <P>
                    342:                        Lastly, I'm no longer providing binaries, as nobody has asked for them.
1.141     schwarze  343:                </P>
1.112     kristaps  344:                <P>
                    345:                        See <A HREF="http://mdocml.bsd.lv/cgi-bin/cvsweb/index.sgml?cvsroot=mdocml">cvsweb</A> for
                    346:                        historical notes.
                    347:                </P>
                    348:                <P CLASS="foot">
1.118     kristaps  349:                        <SMALL>
                    350:                                Copyright &#169; 2008&#8211;2011
                    351:                                <A CLASS="external" HREF="http://kristaps.bsd.lv">Kristaps Dzonsons</A>,
1.159     schwarze  352:                                &#169; 2013 Ingo Schwarze,
1.161   ! schwarze  353:                                $Date: 2013/10/05 20:09:24 $
1.118     kristaps  354:                        </SMALL>
1.112     kristaps  355:                </P>
1.40      kristaps  356:        </BODY>
                    357: </HTML>

CVSweb