=================================================================== RCS file: /cvs/mandoc/Attic/index.sgml,v retrieving revision 1.71 retrieving revision 1.151 diff -u -p -r1.71 -r1.151 --- mandoc/Attic/index.sgml 2010/05/17 02:38:13 1.71 +++ mandoc/Attic/index.sgml 2011/12/14 23:17:12 1.151 @@ -2,372 +2,392 @@ - - mdocml | mdoc macro compiler + mdocml | UNIX manpage compiler - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- mdocml – mdoc macro compiler -
-
-

- DESCRIPTION -

+

+ mdocml – UNIX manpage compiler, current version @VERSION@ (@VDATE@) +

+

+ Sources: current, + cvsweb + (archives) + | + Binaries: windows 32-bit, windows 64-bit, mac os x + (archives) +

+

+ Description +

+

+ 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). +

+

+ mdocml consists of the libmandoc validating compiler and mandoc, which interfaces with the compiler library 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. +

+

+ Disambiguation: mdocml is often referred to by its installed binary, mandoc. +

+

+ Sources +

+

+ 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. +

+

+ Binaries +

+

+ 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. +

+

+ Downstream +

+

+ 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! +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
DragonFly BSD + usr.bin/mandoc +
FreeBSD + ports/textproc/mdocml +
NetBSD + src/external/bsd/mdocml +
OpenBSD + src/usr.bin/mandoc +
pkgsrc + textproc/mdocml +
+

+ Documentation +

+

+ These manuals are generated automatically and refer to the current release. + They are the authoritative documentation for the mdocml system. +

-

- 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 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 is composed of the libmdoc and libman - validating compiler libraries. 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, which formats manuals for display on the terminal. -

- -

- The mdocml utility is a BSD.lv - Project member. -

-
-

- SOURCES -

- -

- Sources correctly build and install on DragonFly BSD, FreeBSD, OpenBSD, NetBSD, and GNU/Linux operating - systems, tested variously on i386, AMD64, alpha, and others. The most current version is @VERSION@, dated @VDATE@. A full ChangeLog (txt) is written with each release. -

- -

- Current -

- - - - - - - - - - - - - - -
Source archive - /snapshots/mdocml.tar.gz - (md5) -
Online source - cvsweb -
- -

- Downstream -

- - - - - - - - - - - - - - - - - - - - - - -
DragonFly BSD - usr.bin/mandoc -
FreeBSD - ports/textproc/mdocml -
NetBSD - src/external/bsd/mdocml -
OpenBSD - src/usr.bin/mandoc -
- -

- Historical -

- - - - - - - - - - -
Source archive - /snapshots/ -
-
-

- DOCUMENTATION -

- -

- These manuals are generated automatically and refer to the current snapshot. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
mandoc(1) (text)format and display UNIX manuals
mandoc_char(7) (text)mandoc special characters
mdoc(7) (text)mdoc language reference
man(7) (text)man language reference
manuals(7) (text)a guide to writing UNIX manuals
mdoc(3) (text)mdoc macro compiler library
man(3) (text)man macro compiler library
roff(7) (text)roff language reference
-
-

- CONTACT -

- -

- For all issues related to mdocml, contact Kristaps Dzonsons, kris...@bsd.lv. -

- -

- You may also subscribe to several mailing lists (these require subscription, which is moderated). An - archive is not yet available. -

- - - - - - - - - - - - - - -
- disc...@mdocml.bsd.lv - discussions and announcements
- sou...@mdocml.bsd.lv - source commit messages
-
-

- NEWS -

- - - - - - - Day 1 of Rostock hackathon: proper handling of quotations in tab-separated - column lists, finished patching of SYNOPSIS breaking (1.9.25), fixed pre-comment - white-space stripping, added end-of-sentence spacing to black partial-implicit - macros, relaxed column warnings, relaxed acceptence of bad standards arguments, - significant documentation of lists in mdoc(7). - Version: 1.9.26. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
xx-05-2010 -
13-05-2010 - Fixed handling of \*(Ba escape. Backed out -fno-ign-chars (pointless complexity). Fixed erroneous - breaking of literal lines. Fixed SYNOPSIS breaking lines before non-initial - macros. Changed default section ordering. Most importantly, the framework for - end-of-sentence double-spacing is in place, now implemented for the - end-of-sentence, end-of-line rule. This is a stable roll-back point - before the mandoc hackathon in Rostock! - Version: 1.9.25. -
09-05-2010 - Rolled back break-at-hyphen. -DUGLY is now the - default (no feature splits!). Free-form text is not de-chunked any more: lines - are passed whole-sale into the front-end, including whitespace. Added mailing - lists. Lastly, mdocml is the focus of two Google Summer of Code - projects this year: mandoc -Tps - (NetBSD) and BSD-licensed - Text-Processing Tools (FreeBSD). - Version: 1.9.24. -
07-04-2010 - mdocml has been linked to the OpenBSD build. This - version incorporates many small changes, mostly from patches by OpenBSD, - allowing crufty manuals to slip by with warnings instead of erroring-out. Some - subtle semantic issues, such as punctuation scope, have also been fixed. - Lastly, some issues with -Thtml have been fixed, which - prompted an update to the online manual pages style - layout. Version: 1.9.23. -
31-03-2010 - Version 1.9.22: adjusted merge of the significant work - by Ingo Schwarze in getting Xo blocks (block full implicit, e.g., - It for non-columnar lists) to work properly. This isn't enabled by - default: you must specify -DUGLY as a compiler flag - (see the Makefile for details). -
30-03-2010 - Version 1.9.20: more efforts to get roff instructions - in -man documents under control. Note that roff instructions embedded in - line-scoped, next-line macros (e.g. B) are not supported. Leading - punctuation for -mdoc macros, such as Fl ( ( a, are now correctly - handled. -
27-03-2010 - Version 1.9.18: many fixes (largely pertaining to - scope) and improvements (e.g., handling of apostrophe-control macros, which - fixes the strange BR seen in some macro output) to handling roff - instructions in -man documents. -
25-03-2010 - Version 1.9.17 highlights: accept perlpod standard preamble. - Also accept (and discard) de, dei, am, ami, and - ig roff macro blocks. -
22-03-2010 - Version 1.9.16 highlights: inspired by patches and bug - reports by Ingo Schwarze, allowed -man to accept - non-printing elements to be nested within next-line scopes, such as br - within B or TH, which is valid roff. Longsoon architecture also - noted and Makefile cleaned up. -
18-02-2010 - Moved to our new BSD.lv home. - Version 1.9.15 highlights: XHTML is now an acceptable - output mode for mandoc(1); Xr made more - compatible with groff; Vt fixed when invoked in SYNOPSIS; \\ - escape removed; end-of-line white-space detected for all lines; subtle bug - fixed in list display for some modes; compatibility layer checked in for - compilation in diverse UNIX systems; and column lengths handled correctly. -
-
-
- Copyright © 2008–2010 Kristaps Dzonsons, $Date: 2010/05/17 02:38:13 $ -
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
apropos(1) + search the manual page database + (text | + xhtml | + pdf | + ps) +
demandoc(1) + emit only text of UNIX manuals + (text | + xhtml | + pdf | + ps) +
mandoc(1) + format and display UNIX manuals + (text | + xhtml | + pdf | + ps) +
preconv(1) + recode multibyte UNIX manuals + (text | + xhtml | + pdf | + ps) +
whatis(1) + search the manual page database + (text | + xhtml | + pdf | + ps) +
mandoc(3) + mandoc macro compiler library + (text | + xhtml | + pdf | + ps) +
man(7) + man language reference + (text | + xhtml | + pdf | + ps) +
man.cgi(7) + cgi for manpage query and display + (text | + xhtml | + pdf | + ps) +
eqn(7) + eqn-mandoc language reference + (text | + xhtml | + pdf | + ps) +
mandoc_char(7) + mandoc special characters + (text | + xhtml | + pdf | + ps) +
mdoc(7) + mdoc language reference + (text | + xhtml | + pdf | + ps) +
roff(7) + roff-mandoc language reference + (text | + xhtml | + pdf | + ps) +
tbl(7) + tbl-mandoc language reference + (text | + xhtml | + pdf | + ps) +
catman(8) + update a man.cgi manpage cache + (text | + xhtml | + pdf | + ps) +
mandocdb(8) + index UNIX manuals + (text | + xhtml | + pdf | + ps) +
+

+ Contact +

+

+ Use the mailing lists for bug-reports, patches, questions, etc. Please check the + TODO for known issues + before posting. All lists are subscription-only: send a blank e-mail to the listed address to subscribe. Beyond that, + contact Kristaps at kris...@bsd.lv. Archives are available at Gmane. +

+ + + + + + + + + + + + + + + + + +
+ disc...@mdocml.bsd.lv + + bug-reports, general questions, and announcements +
+ tec...@mdocml.bsd.lv + + patches and system discussions +
+ sou...@mdocml.bsd.lv + + source commit messages +
+

+ News +

+

+ xx-xx-2011: version 1.12.1 +

+

+ 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 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. +

+

+ 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. +

+

+ 08-10-2011: version 1.12.0 +

+

+ 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. +

+

+ 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. +

+

+ 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. +

+

+ 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. +

+

+ See cvsweb for + historical notes. +

+

+ + Copyright © 2008–2011 + Kristaps Dzonsons, + $Date: 2011/12/14 23:17:12 $ + +