- mdocml is a suite of tools compiling “-mdoc”, the roff macro package
- of choice for BSD manual pages, and “-man”, the predominant historical package for UNIX
- manuals. The mission of mdocml is to deprecate groff, the GNU roff implementation, for
- displaying mdoc(7) pages whilst providing token support for man(7).
-
-
-
- What are UNIX manuals? Read manuals(7) for an introduction.
-
+ mdocml is a suite of tools compiling -mdoc, the
+ roff macro package of choice for BSD manual pages, and -man, the
+ predominant historical package for UNIX manuals. The mission of mdocml is to
+ deprecate groff, the GNU troff
+ implementation, for displaying -mdoc pages whilst providing token support for -man.
+
+
+
Why? groff amounts to over 5 MB of source code, most of which is C++ and all of which is GPL. It runs
slowly, produces uncertain output, and varies in operation from system to system. mdocml strives to fix
- this (respectively small, C, ISC-licensed, fast and regular).
-
-
-
- The core of mdocml are the man(3) and mdoc(3) libraries, validating compilers producing intermediate-form
- output from -man or -mdoc input. Both are simple, fast libraries operating on memory buffers, so they
- may be used for a variety of front-ends (terminal-based, CGI and so on).
-
-
-
- The primary front-end is mandoc(1), which formats manuals for
- display on the terminal. Its purpose is to deprecate usage of groff for displaying -mdoc and, to a
- limited extent, -man manuals on the terminal.
-
-
-
- Please submit patches, bug reports and suggestions! Although a significant
- implementation exists, work remains for the backend library and especially the front-end utilities. See
- the contact information below for submissions.
-
-
-
-
-
-
- INSTALLING SOURCES
-
-
-
- Sources correctly build and install on FreeBSD, OpenBSD, NetBSD and Linux operating systems, tested
- variously on i386, AMD64, alpha and others.
-
-
-
- The most current version is @VERSION@, dated
- @VDATE@.
-
-
-
- Snapshot source
-
-
-
- CVS sources are checkedout and snapshotted with version updates. These may be found in the /snapshots/ directory. A full ChangeLog is
- written with each new snapshot.
-
- Please contact Kristaps, kris...@kth.se, with questions, bug reports, patches, and so
- on.
-
-
-
- If you'd like to submit patches, please contact us beforehand in case larger changes are pending but not
- checked in. If making a bug report, please make sure it's repeatable on the most current snapshot.
-
-
-
+ this (respectively small, C, ISC-licensed, fast and regular).
+
+
+
+ mdocml consists of the libmdoc, libman, and libroff validating compilers; and mandoc, which interfaces with the compiler libraries to format output for UNIX
+ terminals, XHTML, HTML, and PostScript. mdocml is a BSD.lv project.
+
+
+
+ Disambiguation: mdocml is often referred to by its installed binary,
+ mandoc.
+
+ mdocml is architecture- and system-neutral, written in plain-old C. The most
+ current version is @VERSION@, dated @VDATE@. A full
+ ChangeLog (txt) is written with each release.
+
+ Please use the mailing lists for bug-reports, patches, questions, etc. Beyond that, contact
+ Kristaps at kris...@bsd.lv.
+
+
+
+ You may also subscribe to several mailing lists (these require subscription, which is
+ moderated). An archive is not yet available on-line, although you may request one once
+ subscribed.
+
many minor bug-fixes and formatting issues resolved
+
+
+
+
+ 19-06-2010:
+ version 1.10.2
+
+
+ Small release featuring text-decoration in -Tps output, a few
+ minor relaxations of errors, and some optimisations.
+
+
+
+
+ 07-06-2010:
+ version 1.10.1
+
+
+ This primarily focusses on the Bl and It macros described in mdoc. Multi-line column support is now fully compatible with
+ groff, as are implicit list entries for columns. Removed manuals.7 in favour of http://manpages.bsd.lv. The way we
+ handle the SYNOPSIS section (see the SYNOPSIS documentation in MANUAL STRUCTURE) has also
+ been considerably simplified compared to groff's method. Furthermore, the -Owidth=width output option has been added to -Tascii (see mandoc). Lastly, initial
+ PostScript output has been added with the -Tps option to mandoc. It's brutally simple at the moment: fixed-font, with
+ no font decorations.
+
+
+
+
+ 29-05-2010:
+ version 1.10.0
+
+
+ Release consisting of the results from the m2k10 hackathon and up-merge from OpenBSD.
+ This requires a significant note of thanks to Ingo Schwarze (OpenBSD) and Joerg
+ Sonnenberger (NetBSD) for their hard work, and again to Joerg for hosting m2k10.
+ Highlights (mostly cribbed from Ingo's m2k10 report) follow in no particular order:
+