=================================================================== RCS file: /cvs/mandoc/Attic/index.sgml,v retrieving revision 1.64 retrieving revision 1.132 diff -u -p -r1.64 -r1.132 --- mandoc/Attic/index.sgml 2010/05/09 21:19:42 1.64 +++ mandoc/Attic/index.sgml 2011/07/24 19:03:40 1.132 @@ -2,352 +2,393 @@ - mdocml | mdoc macro compiler - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- mdocml – mdoc macro compiler -
-
-

- DESCRIPTION -

+

+ mdocml – mdoc macro compiler +

+

+ 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; and mandocdb, for indexing manuals. + 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 (mandocdb requires Berkeley Database, installed by + default on all BSD UNIX operating systems). +

+

+ To compile mdocml, run make, then make install to install into + /usr/local. Be aware: if you have an existing groff installation, this may overwrite its preconv binary. The mandocdb utility is not yet linked to the build: you must run make mandocdb to + build it (it does not install). +

+

+ Distributed Win32 binaries are compiled using mingw32. They are + distributed in a ZIP archive consisting of binaries, manuals, and other installable media. +

+

+ The most current version of mdocml is @VERSION@, dated @VDATE@. +

+

+ Current +

+ + + + + + + + + + + + + + + + + +
Source archive + /snapshots/mdocml.tar.gz + (md5) +
Online source + cvsweb +
Win32 binary archive + /binaries/mdocml-win32.zip +
+

+ Downstream +

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

+ Historical +

+ + + + + + + + + + + + + +
Source archive + /snapshots/ +
Binary archive + /binaries/ +
+

+ Documentation +

+

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

-

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

- 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): -

- - - - - - - - - - - -
- disc...@mdocml.bsd.lv - discussions and announcements
-
-

- NEWS -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
09-05-2010 - Fixed handling of \*(Ba escape. Backed out -fno-ign-chars (pointless complexity). - Version: 1.9.24. -
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/09 21:19:42 $ -
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
mandoc(1) + format and display UNIX manuals + + (text | + xhtml | + pdf | + postscript) + +
mandocdb(8) + index UNIX manuals + + (text | + xhtml | + pdf | + postscript) + +
preconv(1) + recode multibyte UNIX manuals + + (text | + xhtml | + pdf | + postscript) + +
mandoc(3) + mandoc macro compiler library + + (text | + xhtml | + pdf | + postscript) + +
man(7) + man language reference + + (text | + xhtml | + pdf | + postscript) + +
eqn(7) + eqn-mandoc language reference + + (text | + xhtml | + pdf | + postscript) + +
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) + +
+

+ Contact +

+

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

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

+ News +

+

+ 24-07-2011: version 1.11.5 +

+

+ Significant eqn improvements. mdocml can now parse arbitrary eqn input + (although few GNU extensions are accepted, nor is mixing low-level roff with eqn). See the eqn + manual for details. For the time being, equations are rendered as simple in-line text. The equation parser satisfies + the language specified in the Second + Edition User's Guide. +

+

+ This is also the first release featuring a distributed Windows binary, available at /binaries/mdocml-win32.zip. +

+

+ 12-07-2011: version 1.11.4 +

+

+ Bug-fixes and clean-ups across all systems, especially in mandocdb makewhatis (note: still not + connected to the general build and must be compiled with make mandocdb make makewhatis) and the man parser. This release was significantly assisted by participants in OpenBSD's c2k11. Thanks! +

+

+ 26-05-2011: version 1.11.3 +

+

+ Introduce locale-encoding of output with the -Tlocale output option and Unicode escaped-character input. + See mandoc and mandoc_char, respectively, for details. + This allows for non-ASCII characters (e.g., \[u5000]) to be rendered in the locale's encoding, if said + environment supports wide-character encoding (if it does not, -Tascii is used instead). + Locale support can be turned off at compile time by removing -DUSE_WCHAR in the Makefile, in which case + -Tlocale is always a synonym for -Tascii. +

+

+ Furthermore, multibyte-encoded documents, such as those in UTF-8, may be on-the-fly recoded into mandoc input by using the newly-added preconv utility. + Note: in the future, this feature may be integrated into mandoc. +

+

+ 12-05-2011: version 1.11.2 +

+

+ Corrected some installation issues in version 1.11.1. + Further migration to libmandoc. + Initial public release (this utility is very much under development) of mandocdbmakewhatis, + initially named mandoc-db. + This utility produces keyword databases of manual content + mandoc-cgi, + mandoc-tools, + which features semantic querying of manual content. +

+

+ See cvsweb for + historical notes. +

+

+ + Copyright © 2008–2011 + Kristaps Dzonsons, + $Date: 2011/07/24 19:03:40 $ + +