=================================================================== RCS file: /cvs/mandoc/Attic/index.sgml,v retrieving revision 1.117 retrieving revision 1.160 diff -u -p -r1.117 -r1.160 --- mandoc/Attic/index.sgml 2011/05/13 01:04:07 1.117 +++ mandoc/Attic/index.sgml 2013/10/05 20:09:24 1.160 @@ -3,17 +3,20 @@ - mdocml | mdoc macro compiler + mdocml | UNIX manpage compiler

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

- +

+ Sources: current, + cvsweb + (archives) +

- DESCRIPTION + 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 @@ -21,124 +24,107 @@ HREF="http://www.gnu.org/software/groff/" CLASS="external">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 + Why? groff amounts to over 5 MB of source code, most of which is C++ and GPL version 3. 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, XHTML, - HTML, PostScript, and PDF. It is a BSD.lv project. + HREF="mandoc.1.html">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, + apropos (includes whatis mode) for indexed manual search, and + man.cgi for indexed manual search online. + It is a BSD.lv project.

-

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

- -

- SOURCES -

- +

+ Sources +

- mdocml is in plain-old ANSI C and should build and run on any UNIX system. The most current - version is @VERSION@, dated @VDATE@. If your system doesn't come - with mdocml (see Downstream), run make to compile and make - install to install into /usr/local. + 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.

-

- Note that makewhatis is not yet linked to the build. You must run make - makewhatis to build it. -

-

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

+
- + - + - -
Source archiveDragonFly BSD - /snapshots/mdocml.tar.gz - (md5) + contrib/mdocml (1.12.1 sources) + lib/libmandoc + usr.bin/mandoc (build system)
Online sourceFreeBSD 10.0, -CURRENT - cvsweb + contrib/mdocml (1.12.1 sources) + usr.bin/mandoc (build system)
- -

- Downstream -

- - - - - - + - + - + - + - -
DragonFly BSDFreeBSD 9.x, 8.x - usr.bin/mandoc + ports/textproc/mdocml (1.12.1 port)
FreeBSDNetBSD - ports/textproc/mdocml + src/external/bsd/mdocml (1.12.1 sources plus patches and build system)
NetBSDOpenBSD - src/external/bsd/mdocml + src/usr.bin/mandoc (1.12.2 sources and build system)
OpenBSDpkgsrc - src/usr.bin/mandoc + textproc/mdocml (1.12.2 port)
- -

- Historical -

- - - - - - + + + + +
Source archiveMinix3 - /snapshots/ + external/bsd/mdocml (1.10.9 sources and build system)
Alpine Linux + aports/main/mdocml (1.12.1 port) +
-

- DOCUMENTATION + Documentation

-

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

@@ -146,128 +132,101 @@ + + + + + + + + - + - + + + + + + + + + + + + +
apropos(1) + search the manual page database +
demandoc(1) + emit only text of UNIX manuals +
mandoc(1) format and display UNIX manuals - - (text | - xhtml | - pdf | - postscript) -
makewhatis(1)preconv(1) - index UNIX manuals - - (text | - xhtml | - pdf | - postscript) - + recode multibyte UNIX manuals
mandoc(3) mandoc macro compiler library - - (text | - xhtml | - pdf | - postscript) -
man(7)tbl(3) - man language reference - - (text | - xhtml | - pdf | - postscript) - + roff table parser library for mandoc
eqn(7) eqn-mandoc language reference - - (text | - xhtml | - pdf | - postscript) -
man(7) + man language reference +
man.cgi(7) + cgi for manpage query and display +
mandoc_char(7) mandoc special characters - - (text | - xhtml | - pdf | - postscript) -
mdoc(7) mdoc language reference - - (text | - xhtml | - pdf | - postscript) -
roff(7) roff-mandoc language reference - - (text | - xhtml | - pdf | - postscript) -
tbl(7) tbl-mandoc language reference - - (text | - xhtml | - pdf | - postscript) -
mandocdb(8) + index UNIX manuals +
-

- CONTACT + Contact

-

- Use the mailing lists for bug-reports, patches, questions, etc. (these require subscription). Please check the + Use the mailing lists for bug-reports, patches, questions, etc. Please check the TODO for known issues - before posting. Beyond that, contact Kristaps at kris...@bsd.lv. + 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.

- @@ -279,7 +238,6 @@ @@ -289,7 +247,6 @@ @@ -299,99 +256,102 @@
bug-reports, general questions, and announcements - (archive)
patches and system discussions - (archive)
source commit messages - (archive)
-

- NEWS + News

-

- 12-05-2011: version 1.11.2 + xx-xx-2013: version 1.13.0

- Corrected some installation issues in version 1.11.1. - Further migration to libmandoc. - Initial public release (this utility is very much under development) of makewhatis, - initially named mandoc-db. - This utility produces keyword databases of manual content - mandoc-cgi, which features semantic querying of manual content. + The mandocdb tools (mandocdb, apropos (absorbing whatis), and man.cgi) have been re-written to + use sqlite3 as a database.

-

- 04-04-2011: version 1.11.1 + 05-10-2013: version 1.12.2

- The earlier libroff, libmdoc, and libman soup have been merged into - a single library, libmandoc, which manages all aspects of - parsing real manuals (from line-handling to tbl parsing). + The mdoc(7) to man(7) converter, + to be called as mandoc -Tman, is now fully functional.

- Beyond this structural change, initial eqn functionality is in - place. For the time being, this is limited to the recognition of equation blocks; - future version of mdocml will expand upon this framework. + The mandoc(1) utility now supports the -Ios (default operating system) + input option, and the -Tutf8 output mode now actually works.

- As usual, many general fixes and improvements have also occurred. In particular, a great - deal of redundancy and superfluous code has been removed with the merging of the backend - libraries. + The mandocdb(8) utility no longer truncates existing databases when starting to build new ones, + but only replaces them when the build actually succeeds.

- -

- 07-01-2011: version 1.10.9 +

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

- Many back-end fixes have been implemented: argument handling (quoting), man improvements, error/warning classes, and many more. + 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.

- Initial tbl functionality (see the TS, TE, and - T& macros in the roff manual) has been - merged from tbl.bsd.lv. Output is - still minimal, especially for -Thtml and -Txhtml, but manages to at least display data. This means that mandoc now has built-in support for two troff preprocessors via - libroff: soelim and tbl. + 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.

- +

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

+

+ For mandoc developers, we now provide a tbl(3) library manual and gmdiff, + a very small, very simplistic groff-versus-mandoc output comparison tool. +

+

+ See NEWS for historical notes. +

- 24-12-2010: version 1.10.8 + 23-03-2012: version 1.12.1

- Significant improvements merged from OpenBSD downstream, including + 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.

-

- Also overhauled the -Thtml and -Txhtml output modes. They now display readable output in arbitrary - browsers, including text-based ones like lynx. See HTML and XHTML manuals in the DOCUMENTATION section for examples. Attention: available style-sheet classes have been considerably - changed! See the example.style.css file for details. - Lastly, libmdoc and libman have been - cleaned up and reduced in size and complexity. + 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. +

+

See cvsweb for historical notes.

-

- Copyright © 2008–2011 - Kristaps Dzonsons, - $Date: 2011/05/13 01:04:07 $ + + Copyright © 2008–2011 + Kristaps Dzonsons, + © 2013 Ingo Schwarze, + $Date: 2013/10/05 20:09:24 $ +