Annotation of mandoc/index.sgml, Revision 1.2
1.1 kristaps 1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2: <html>
3: <head>
4: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5: <meta name="resource-type" content="document">
6: <link rel="stylesheet" href="style.css" type="text/css" media="all">
7: <title>mdocml.bsd.lv</title>
8: </head>
9: <body>
10: <table width="600">
11: <col width="100%">
12: <tbody>
13: <tr>
14: <td>
15: <div class="head">
16: <b>mdocml</b> – mdoc macro compiler
17: </div>
18: </td>
19: </tr>
20: <tr>
21: <td valign="top">
22: <h1>
23: DESCRIPTION
24: </h1>
25:
26: <p>
27: <span class="nm">mdocml</span> is a suite of tools that compile “mdoc”, the roff macro
28: package of the BSD manual pages. The mission of <span class="nm">mdocml</span> is to deprecate <a
29: href="http://www.gnu.org/software/groff/" class="external">groff</a>, the GNU roff implementation, for
30: displaying BSD mdoc pages. groff amounts to over 60 000 lines of GPL C++ source, which is a
31: considerable encumbrance to BSD operating system.
32: </p>
33:
34: <p>
35: The core of <span class="nm">mdocml</span> is the libmdoc library, a validating scanner-parser producing
36: intermediate-form output from mdoc input. libmdoc is a simple, fast library operating on memory buffers
37: of mdoc input. Its intermediate output, an abstract syntax tree, is fully documented in the <span
38: class="man">mdoc(3)</span> reference manual.
39: </p>
40:
41: <p>
42: There are three utilities implementing <span class="man">mdoc(3)</span>:
43: </p>
44:
45: <ul>
46: <li><span class="man">mdocterm(1)</span> – formats mdoc input for display on the terminal
47: <li><span class="man">mdochtml(1)</span> – formats mdoc input as strict HTML (nascent)
48: <li><span class="man">mdoclint(1)</span> – validates mdoc input
49: <li><span class="man">mdoctree(1)</span> – prints input abstract syntax tree
50: </ul>
51:
52: <p>
53: The <span class="man">mdocterm(1)</span> utility is intended to deprecate usage of <a
54: href="http://www.gnu.org/software/groff/" class="external">groff</a> for displaying BSD manuals to the
55: terminal, either directly or cached as a “catman” page.
56: </p>
57:
58: <p>
59: <span class="attn">Please submit patches!</span> Although a significant implementation exists, work
60: remains for the backend library and especially the front-end utilities. See the <a
61: href="#contact">contact</a> information below to submit patches and bug reports.
62: </p>
63: </td>
64: </tr>
65: <tr>
66: <td>
67: <h1>
68: INSTALLING SOURCES
69: </h1>
70:
1.2 ! kristaps 71: <p>
! 72: Sources correctly build and install on OpenBSD, NetBSD and Linux operating systems, tested variously on
! 73: i386, AMD64 and Alpha.
! 74: </p>
! 75:
1.1 kristaps 76: <h2>
77: nightly source
78: </h2>
79:
80: <p>
81: CVS sources are checkedout and snapshotted nightly. These may be found in the <a
82: href="/snapshots/">/snapshots/</a> directory.
83: </p>
84:
85: <p class="boxed">
86: % cd /tmp<br>
87: % ftp -V -o- http://mdocml.bsd.lv/snapshots/mdocml.tgz | tar -zxf -<br>
88: % cd mdocml<br>
89: % make<br>
90: % make regress<br>
91: % make install
92: </p>
93:
94: <h2>
95: nightly port
96: </h2>
97:
98: <p>
99: The nightly snapshot is automatically converted into an OpenBSD port (ports for other BSD systems not
100: yet available). These may be found in the <a href="/ports-openbsd/">/ports-openbsd/</a> directory.
101: </p>
102:
103: <p>
104: If installing for the first time:
105: </p>
106:
107: <p class="boxed">
108: % ftp -V -o- http://mdocml.bsd.lv/ports-openbsd/mdocml.tgz | tar -zxf -<br>
109: % cd mdocml<br>
110: % sudo make<br>
111: % sudo make install
112: </p>
113:
114: <p>
115: Subsequent installations:
116: </p>
117:
118: <p class="boxed">
119: % sudo pkg_add -r mdocml
120: </p>
121: </td>
122: </tr>
123: <tr>
124: <td>
125: <h1>
126: CONTACT
127: </h1>
128:
129: <p>
130: Please contact Kristaps, kris<a class="external"
131: href="http://mailhide.recaptcha.net/d?k=01jt88xIsFONwVjHZmGpc4AQ==&c=sb5E6ulipc-eTnpTVqI-BQ=="
132: onclick="window.open('http://mailhide.recaptcha.net/d?k=01jt88xIsFONwVjHZmGpc4AQ==&c=sb5E6ulipc-eTnpTVqI-BQ==',
133: '', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=300'); return
134: false;" title="Reveal this e-mail address">...</a>@kth.se, with questions, bug reports, patches, and so on.
135: </p>
136:
137: <p>
138: If you'd like to submit patches, please contact us beforehand in case larger changes are pending but not
139: checked in. If making a bug report, please make sure it's repeatable on the most current snapshot.
140: </p>
141: </td>
142: </tr>
143: <tr>
144: <td>
145: <div class="foot">
1.2 ! kristaps 146: Copyright © 2009 Kristaps Džonsons, $Date: 2009/02/23 15:19:47 $
1.1 kristaps 147: </div>
148: </td>
149: </tr>
150: </tbody>
151: </table>
152: </body>
153: </html>
CVSweb