=================================================================== RCS file: /cvs/mandoc/Attic/mdocml.1,v retrieving revision 1.7 retrieving revision 1.23 diff -u -p -r1.7 -r1.23 --- mandoc/Attic/mdocml.1 2008/11/28 11:21:12 1.7 +++ mandoc/Attic/mdocml.1 2008/12/08 16:29:57 1.23 @@ -1,10 +1,6 @@ -.\" $OpenBSD: mdocml.1,v 1.7 2008/11/28 11:21:12 kristaps Exp $ .\" -.\" The following requests are required for all man pages. -.\" -.\" Remove `\&' from the line below. -.Dd $Mdocdate: November 28 2008 $ -.Dt mdocml 1 +.Dd $Mdocdate: December 8 2008 $ +.Dt mdocml 1 alpha .Os .\" .Sh NAME @@ -21,49 +17,99 @@ .Sh DESCRIPTION The .Nm -utility parses -.Xr mdoc -formatted manual source and passes results into the output filter -dictated by -.Fl f Ar filter . -The only current output filter is -.Ar validate , -the default. The arguments are as follows: +utility parses mdoc formatted manual source and passes results into an +output filter. The current output filters are +.Ar html +and +.Ar xml , +the default. Arguments common to all filters follow: .Bl -tag -width "\-o outfile" +.It Fl f Ar filter +The output filter name. .It Fl o Ar outfile -Place output in +Write output to .Ar outfile , which may be -.Qq \- -for standard output. The default is standard output. +.Dq \- +for stdout. +.It Fl W +Print warnings to stderr. +.It Fl v +Make warning and error messages verbose. .It Ar infile Read input from .Ar infile , which may be -.Qq \- -for standard input. The default is standard input. -.It Fl v -Print messages (output depends on filter). -.It Fl W -Print warnings (output depends on filter). +.Dq \- +for stdin. .El -.Ss Validate Filter -The validate filter, specified by -.Fl f Ar validate , -is the default filter. It produces no output, so specifying -.Fl o Ar outfile -results in an empty file. -.\" The following requests should be uncommented and used where appropriate. -.\" This next request is for sections 2, 3, and 9 function return values only. -.\" .Sh RETURN VALUES -.\" This next request is for sections 1, 6, 7 & 8 only. -.\" .Sh ENVIRONMENT -.\" .Sh FILES -.\" .Sh EXAMPLES -.\" This next request is for sections 1, 4, 6, and 8 only. -.\" .Sh DIAGNOSTICS -.\" The next request is for sections 2, 3, and 9 error and signal handling only. -.\" .Sh ERRORS +.Pp +By default, +.Nm +reads from stdin and writes to stdout using the xml filter. +.Pp +.Ex -std mdocml +.\" +.Ss XML Filter +The XML filter, specified by +.Fl f Ar xml , +is the default filter. This filter has no additional arguments. +.Pp +The XML filter creates an XML document where element names are their respective +roff macro names. Each element name has an associated +namespace, which is one of +.Dq block , +.Dq head , +.Dq body , +or +.Dq inline , +corresponding to the display mode of a node. The document root is +always the +.Dq mdoc +element, in the default namespace; the +.Dq head +namespace is for block headers (such as +.Sq .Ss +and +.Sq .Sh ) ; +the +.Dq body +namespace is for block bodies; and the +.Dq inline +namespace is for in-line elements (such as +.Sq .Em ) . +.Ss HTML Filter +The HTML filter, specified by +.Fl f Ar html , +accepts the following filter-specific arguments: +.Bl -tag -width "\-c css" +.It Fl c Ar css +The CSS file location, which defaults to +.Ar mdocml.css . +.It Fl e +Whether to embed the CSS file into the HTML prologue. +.El +.\" +.Sh EXAMPLES +To produce an HTML4-strict document +.Pa mdocml.html +for +.Pa mdocml.1 +with the default, embedded style-sheet: +.Pp +.D1 % mdocml -fhtml -e -o mdocml.html mdocml.1 +.Pp +To create an XML document on standard output from +.Pa mdocml.1 +with the default namespace identifiers +.Li head , +.Li body , +.Li block +and +.Li inline : +.Pp +.D1 % mdocml mdocml.1 +.\" .Sh SEE ALSO .Xr groff 1 , .Xr mdoc.samples 7 , @@ -85,16 +131,26 @@ or the necessary limitations of converting an ad hoc l structured ones: .Bl -enum -compact -offset indent .It -The engine doesn't understand -.Sq \&Xo +The engine doesn't understand the +.Sq \&No , +.Sq \&Db , +.Sq \&Xc , and -.Sq \&Xc -troff macros. +.Sq \&Xo +mdoc macros. .It All macro arguments may be quoted, instead of only some. .It -Blank lines raise warnings. +Blank lines raise errors. .It -Non-ascii characters may cause issues. +If terminating punctuation is found, then +.Em all +remaining tokens are flushed after line scope is closed, not just the +last one. .El +.Pp +The roff engine in +.Nm +produces text in-line; thus, output may already be partially written by +the time an error is encountered. .\" .Sh BUGS