version 1.4, 2014/04/30 12:54:26 |
version 1.11, 2019/04/09 16:57:29 |
|
|
.\" $Id$ |
.\" $Id$ |
.\" |
.\" |
.\" Copyright (c) 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
.\" Copyright (c) 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
|
.\" Copyright (c) 2019 Ingo Schwarze <schwarze@openbsd.org> |
.\" |
.\" |
.\" Permission to use, copy, modify, and distribute this software for any |
.\" Permission to use, copy, modify, and distribute this software for any |
.\" purpose with or without fee is hereby granted, provided that the above |
.\" purpose with or without fee is hereby granted, provided that the above |
|
|
.Os |
.Os |
.Sh NAME |
.Sh NAME |
.Nm docbook2mdoc |
.Nm docbook2mdoc |
.Nd Convert DocBook refentry to mdoc |
.Nd convert DocBook to mdoc |
.Sh SYNOPSIS |
.Sh SYNOPSIS |
.Nm docbook2mdoc |
.Nm docbook2mdoc |
|
.Op Fl W |
.Op Ar file |
.Op Ar file |
.Sh DESCRIPTION |
.Sh DESCRIPTION |
The |
The |
.Nm |
.Nm |
utility reads |
utility reads DocBook input from a |
.Ar file |
.Ar file |
and |
and translates it to |
generates |
|
.Xr mdoc 7 |
.Xr mdoc 7 |
from the |
and |
.Aq refentry |
.Xr eqn 7 . |
section of DocBook source, ignoring other sections. |
If |
If unspecified or |
|
.Ar \&- , |
|
.Ar file |
.Ar file |
is taken to be standard input. |
is |
|
.Sq Cm \- |
|
or omitted, standard input is used. |
|
.Pp |
The arguments are as follows: |
The arguments are as follows: |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
.It Fl W |
.It Fl W |
Output non-fatal warning messages. |
Report warnings on standard error output, and if any occur, raise the |
|
.Sx EXIT STATUS |
|
to at least 2. |
.El |
.El |
.Pp |
.Pp |
.Nm |
A subset of DocBook 5.1 elements are recognized, |
supports only well-formed XML DocBook V4.x until V5.1. |
as well as some elements from earlier versions. |
SGML DocBook documents may be parsed unless they contain SGML-specific |
The parser is optimized for robustness even on invalid input, |
constructs, such as empty end tags |
always producing some output on a best-effort basis. |
.Li </> . |
Input is not required to be well-formed, nor to adhere to DocBook |
The only non-DocBook construct recognised (and discarded) is |
syntactic or semantic requirements. |
.Aq xi:include \(sl . |
.Pp |
|
Unknown elements are ignored in the sense that they do not affect |
|
formatting and only their content is rendered. |
|
Unknown attributes are silently discarded. |
|
.Pp |
|
In addition to DocBook elements, the following constructs are handled: |
|
.Bl -tag -width Ds |
|
.It Eo <! |
|
.Ic DOCTYPE No ... |
|
.Eo "[ <!" Ic ENTITY Ar name Qo Ar definition Qc Ec "> ]" |
|
.Ec > |
|
Internal subset declaration to define an XML entity. |
|
.It Eo <! |
|
.Ic DOCTYPE No ... |
|
.Eo "[ <!" Ic ENTITY Ar name Cm SYSTEM Qo Ar file Qc Ec "> ]" |
|
.Ec > |
|
Internal subset declaration to define an XML entity using an external |
|
.Ar file . |
|
.It Eo < Ic mml : Ns ... Ec > |
|
Elements from the MathML namespace. |
|
These are translated to |
|
.Xr eqn 7 . |
|
.It Eo < |
|
.Ic xi : Ns Ic include No ... |
|
.Cm href Ns = Ns Qq Ar file |
|
.Ec > |
|
Include an external DocBook file into the current document. |
|
.El |
.Sh EXIT STATUS |
.Sh EXIT STATUS |
.Ex -std |
The |
|
.Nm |
|
utility exits with one of the following values: |
|
.Bl -tag -width 2n |
|
.It 0 |
|
No error occurred, and if |
|
.Fl W |
|
was specified, no warning occurred either. |
|
.It 2 |
|
At least one warning occurred, but no error, and |
|
.Fl W |
|
was specified. |
|
.It 3 |
|
At least one parsing error occurred. |
|
.It 5 |
|
Invalid command line arguments were specified. |
|
No input files have been read. |
|
.It 6 |
|
Memory was exhausted. |
|
Parsing was aborted immediately. |
|
.El |
.Sh EXAMPLES |
.Sh EXAMPLES |
To pipe a DocBook document |
To pipe a DocBook document |
.Pa foo.xml |
.Pa foo.xml |
|
|
.Xr mandoc 1 |
.Xr mandoc 1 |
and a pager: |
and a pager: |
.Pp |
.Pp |
.Dl % docbook2mdoc foo.xml | mandoc | more |
.Dl $ docbook2mdoc foo.xml | mandoc -l |
|
.Sh DIAGNOSTICS |
|
Messages displayed by |
|
.Nm |
|
follow this format: |
|
.Pp |
|
.D1 Nm : Ar file : Ns Ar line : Ns Ar column : level : message |
|
.Pp |
|
The first three fields identify the |
|
.Ar file |
|
name, |
|
.Ar line |
|
number, and |
|
.Ar column |
|
number of the input file where the message was triggered. |
|
The line and column numbers start at 1. |
|
.Pp |
|
Message levels have the following meanings: |
|
.Bl -tag -width warning |
|
.It Sy fatal |
|
An operating system error occurred, typically memory exhaustion, |
|
and parsing was aborted immediately. |
|
.It Sy error |
|
Indicates a risk of information loss or severe misformatting, |
|
for example caused by unknown elements or missing include files. |
|
.It Sy warning |
|
Indicates a risk that the information shown or its formatting |
|
may mismatch the author's intent in minor ways. |
|
For example, mismatched or missing end tags are classified as warnings. |
|
.El |
.Sh SEE ALSO |
.Sh SEE ALSO |
.Xr mandoc 1 , |
.Xr mandoc 1 , |
|
.Xr eqn 7 , |
.Xr mdoc 7 |
.Xr mdoc 7 |
.Sh AUTHORS |
.Sh AUTHORS |
.Nm |
.Nm |
was written by |
was written by |
.Ar Kristaps Dzonsons , |
.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv |
.Mt kristaps@bsd.lv . |
and |
|
.An Ingo Schwarze Aq Mt schwarze@openbsd.org . |
.Sh CAVEATS |
.Sh CAVEATS |
The |
The |
.Nm |
.Nm |
utility is experimental. |
utility is experimental. |
As such, only a modest subset of the |
Many elements are not recognized yet. |
.Aq refentry |
|
domain is accepted. |
|
.Pp |
.Pp |
The output |
The output |
.Xr mdoc 7 |
.Xr mdoc 7 |