=================================================================== RCS file: /cvs/mandoc/Attic/index.sgml,v retrieving revision 1.151 retrieving revision 1.164 diff -u -p -r1.151 -r1.164 --- mandoc/Attic/index.sgml 2011/12/14 23:17:12 1.151 +++ mandoc/Attic/index.sgml 2013/12/26 14:39:35 1.164 @@ -7,18 +7,13 @@
+ mdocml – UNIX manpage compiler, current version @VERSION@ (@VDATE@)
Sources: current, cvsweb (archives) - | - Binaries: windows 32-bit, windows 64-bit, mac os x - (archives)
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. + UNIX manuals. + It is small, ISO C, ISC-licensed, and quite fast.
- 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). -
-- mdocml consists of the libmandoc validating compiler and mandoc, which interfaces with the compiler library to format output for UNIX terminals (with + The tool set features mandoc, + based on the libmandoc validating compiler, + to format output for UNIX terminals (with support for wide-character locales), XHTML, HTML, PostScript, and PDF. It also includes preconv, for recoding multibyte manuals; demandoc, for emitting only text parts of manuals; mandocdb, for indexing manuals; and apropos, whatis, and man.cgi (via catman) for semantic search of manual content. - It is a BSD.lv project.
+ mdocml has predominantly been developed on OpenBSD + and is both an OpenBSD + and a BSD.lv project. + We strive to support all interested free operating systems, in particular + DragonFly, + NetBSD, + FreeBSD, + Minix 3, + and GNU/Linux, + as well as all systems running the pkgsrc portable package build system. + All of these projects have helped to make mdocml better, by providing feedback and advice, + bug reports, and patches. +
+
Disambiguation: mdocml is often referred to by its installed binary, mandoc
.
- mdocml is in plain-old ANSI C and should build and run on any modern system; however, you'll
- need libdb to build apropos, whatis, man.cgi, catman, and mandocdb (this is installed by default on BSD UNIX
- systems — see the Makefile if you're running Linux). To build and install into /usr/local/, just
- run make install
. Be careful: the preconv, apropos, and whatis binary names are
- usually taken by existing utilities.
+ mdocml is in ISO C99 and should build and run on any modern system; however, you'll need sqlite3 to build apropos (links to whatis),
+ man.cgi, and mandocdb.
+ To build and install into /usr/local/, just run make install
.
+ Be careful: the preconv, apropos, and whatis binary names are usually taken by existing utilities.
- Binary archives consist of pre-compiled binaries, manuals, and other necessary files. - Universal (Mac OS X) binaries are compiled for the PCC, i386, and x86_64 architectures. - Windows binaries are compiled with MingW for the 32-bit (i686) and - 64-bit (x86_64) architectures. -
-
Several systems come bundled with mdocml utilities.
If your system does not appear below, the maintainers have not contacted me and it should not be considered
- official
.
- Please contact us if you plan on maintaining a downstream version!
+ official
, so please contact us if you plan on maintaining a downstream version!
DragonFly BSD | - usr.bin/mandoc + contrib/mdocml (post-1.12.2 sources) + lib/libmandoc + usr.bin/mandoc (build system) | |
FreeBSD | +FreeBSD 10.0, -CURRENT | - ports/textproc/mdocml + contrib/mdocml (1.12.1 sources) + usr.bin/mandoc (build system) |
FreeBSD 9.x, 8.x | ++ ports/textproc/mdocml (1.12.2 port) + | +|
NetBSD | - src/external/bsd/mdocml + src/external/bsd/mdocml (1.12.1 sources plus patches and build system) | |
OpenBSD | - src/usr.bin/mandoc + src/usr.bin/mandoc (post-1.12.2 sources under active development and build system) | |
pkgsrc | - textproc/mdocml + textproc/mdocml (1.12.2 port) | |
Minix3 | ++ external/bsd/mdocml (1.10.9 sources and build system) + | +|
Alpine Linux | ++ aports/main/mdocml (1.12.2 port) + | +
- xx-xx-2011: version 1.12.1 + xx-xx-2013: version 1.13.0
- Significant work on apropos and mandocdb. These tools are - now much more robust and in line with other manpage systems. A whatis implementation is now - handled as an apropos mode. These tools are also able to minimally handle pre-formatted - pages, that is, those already formatted by another utility such as GNU troff. + The mandocdb tools (mandocdb, apropos (absorbing whatis), and man.cgi) have been re-written to + use sqlite3 as a database.
++ 05-10-2013: version 1.12.2 +
- The man.cgi script is also now available for wider testing. It interfaces with mandocdb manuals cached by catman. HTML output is generated
- on-the-fly by libmandoc or internal methods to convert pre-formatted pages.
+ The mdoc(7) to man(7) converter,
+ to be called as mandoc -Tman
, is now fully functional.
- Lastly, the mailing list archive for the discuss and tech lists are being hosted by Gmane at gmane.comp.tools.mdocml.user and gmane.comp.tools.mdocml.devel, respectively.
+ The mandoc(1) utility now supports the -Ios
(default operating system)
+ input option, and the -Tutf8
output mode now actually works.
- 08-10-2011: version 1.12.0 +
+ The mandocdb(8) utility no longer truncates existing databases when starting to build new ones, + but only replaces them when the build actually succeeds.
- This version features a new, work-in-progress mandoc output mode: -Tman. This mode - allows a system maintainer to distribute man media for older systems that may not natively - support mdoc, such as old Solaris systems. - The -Ofragment option was added to mandoc's -Thtml and -Txhtml modes. + The man(7) parser now supports the PD macro (paragraph distance), + and (for GNU man-ext compatibility only) EX (example block) and EE (example end). + Plus several bugfixes regarding indentation, line breaks, and vertical spacing, + and regarding RS following TP.
- While adding features, an apropos utility has been merged from the mandoc-tools sandbox. - This interfaces with mandocdb for semantic search of manual content. apropos is different from the traditional apropos primarily in allowing keyword search - (such as for functions, utilities, etc.) and regular expressions. - Note that the calling syntax for apropos is likely to change as it settles down. + The roff(7) parser now supports the \f(BI (bold+italic) font escape, + the \z (zero cursor advance) escape and the cc (change control character) + and it (input line trap) requests. + Plus bugfixes regarding the \t (tab) escape, nested escape sequences, and conditional requests.
- In documentation news, the mdoc and man manuals have been made - considerably more readable by adding MACRO OVERVIEW sections, by moving the gory details of the LANGUAGE - SYNTAX to the roff manual, and by moving the very technical MACRO SYNTAX sections - down to the bottom of the page. + In mdoc(7), several bugs were fixed related to UTF-8 output of quoting enclosures, + delimiter handling, list indentation and horizontal and vertical spacing, + formatting of the Lk, %U, and %C macros, + plus some bugfixes related to the handling of syntax errors like badly nested font blocks, + stray Ta macros outside column lists, unterminated It Xo blocks, + and non-text children of Nm blocks.
- Furthermore, for tbl, the -Tascii mode horizontal spacing of tables was rewritten - completely. It is now compatible with groff, both - with and without frames and rulers. Nesting of indented blocks is now supported in man, and - several bugs were fixed regarding indentation and alignment. The page headers in mdoc are now - nicer for very long titles. + In tbl(7), the width of horizontal spans and the vertical spacing around tables was corrected, + and in man(7) files, a crash was fixed that was triggered by some particular unclosed T{ macros.
- See cvsweb for
- historical notes.
+ For mandoc developers, we now provide a tbl(3) library manual and gmdiff
,
+ a very small, very simplistic groff-versus-mandoc output comparison tool.
+ 23-03-2012: version 1.12.1 +
++ Significant work on apropos and mandocdb. These tools are + now much more robust. + A whatis implementation is now handled as an apropos mode. + These tools are also able to minimally handle pre-formatted pages, that is, those already formatted by another utility + such as GNU troff. +
++ The man.cgi script is also now available for wider testing. It interfaces with mandocdb manuals cached by catman. HTML output is generated + on-the-fly by libmandoc or internal methods to convert pre-formatted pages. +
++ The mailing list archive for the discuss and tech lists are being hosted by Gmane at gmane.comp.tools.mdocml.user and gmane.comp.tools.mdocml.devel, respectively. +
++ Lastly, I'm no longer providing binaries, as nobody has asked for them. +
+Copyright © 2008–2011 Kristaps Dzonsons, - $Date: 2011/12/14 23:17:12 $ + © 2013 Ingo Schwarze, + $Date: 2013/12/26 14:39:35 $