aboutsummaryrefslogtreecommitdiff
path: root/man/man1
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2005-01-14 03:45:44 +0000
committerrsc <devnull@localhost>2005-01-14 03:45:44 +0000
commit78e51a8c6678b6e3dff3d619aa786669f531f4bc (patch)
tree015e00fde4fc837fd31b705e18d17dc913829388 /man/man1
parent2634795b5f0053bc0ff08e5d7bbc0eda8efea061 (diff)
downloadplan9port-78e51a8c6678b6e3dff3d619aa786669f531f4bc.tar.gz
plan9port-78e51a8c6678b6e3dff3d619aa786669f531f4bc.tar.bz2
plan9port-78e51a8c6678b6e3dff3d619aa786669f531f4bc.zip
checkpoint
Diffstat (limited to 'man/man1')
-rw-r--r--man/man1/9.html100
-rw-r--r--man/man1/9c.html172
-rw-r--r--man/man1/9p.html122
-rw-r--r--man/man1/9term.html259
-rw-r--r--man/man1/acid.html486
-rw-r--r--man/man1/acme.html481
-rw-r--r--man/man1/acmeevent.html332
-rw-r--r--man/man1/ascii.html159
-rw-r--r--man/man1/astro.html125
-rw-r--r--man/man1/basename.html63
-rw-r--r--man/man1/bc.html272
-rw-r--r--man/man1/bundle.html95
-rw-r--r--man/man1/cal.html81
-rw-r--r--man/man1/calendar.html82
-rw-r--r--man/man1/cat.html126
-rw-r--r--man/man1/cleanname.html65
-rw-r--r--man/man1/clog.html61
-rw-r--r--man/man1/cmp.html84
-rw-r--r--man/man1/colors.html92
-rw-r--r--man/man1/comm.html79
-rw-r--r--man/man1/core.html83
-rw-r--r--man/man1/crop.html127
-rw-r--r--man/man1/date.html75
-rw-r--r--man/man1/db.html548
-rw-r--r--man/man1/dc.html199
-rw-r--r--man/man1/deroff.html102
-rw-r--r--man/man1/dial.html67
-rw-r--r--man/man1/dict.html168
-rw-r--r--man/man1/diff.html141
-rw-r--r--man/man1/doctype.html88
-rw-r--r--man/man1/echo.html62
-rw-r--r--man/man1/ed.html439
-rw-r--r--man/man1/eqn.html203
-rw-r--r--man/man1/factor.html73
-rw-r--r--man/man1/fmt.html100
-rw-r--r--man/man1/fortune.html64
-rw-r--r--man/man1/freq.html69
-rw-r--r--man/man1/fsize.html68
-rw-r--r--man/man1/grap.html232
-rw-r--r--man/man1/graph.html117
-rw-r--r--man/man1/grep.html117
-rw-r--r--man/man1/gview.html155
-rw-r--r--man/man1/gzip.html135
-rw-r--r--man/man1/hoc.html136
-rw-r--r--man/man1/idiff.html87
-rw-r--r--man/man1/index.html449
-rw-r--r--man/man1/intro.html221
-rw-r--r--man/man1/join.html144
-rw-r--r--man/man1/jpg.html175
-rw-r--r--man/man1/kill.html96
-rw-r--r--man/man1/label.html117
-rw-r--r--man/man1/lex.html110
-rw-r--r--man/man1/look.html96
-rw-r--r--man/man1/ls.html121
-rw-r--r--man/man1/man.html139
-rw-r--r--man/man1/map.html483
-rw-r--r--man/man1/mc.html64
-rw-r--r--man/man1/mk.html621
-rw-r--r--man/man1/mk9660.1232
-rw-r--r--man/man1/mkdir.html79
-rw-r--r--man/man1/namespace.html61
-rw-r--r--man/man1/news.html91
-rw-r--r--man/man1/p.html63
-rw-r--r--man/man1/page.html97
-rw-r--r--man/man1/pic.html435
-rw-r--r--man/man1/plot.html88
-rw-r--r--man/man1/plumb.html80
-rw-r--r--man/man1/pr.html90
-rw-r--r--man/man1/proof.html119
-rw-r--r--man/man1/ps.html95
-rw-r--r--man/man1/psfonts.html148
-rw-r--r--man/man1/pwd.html73
-rw-r--r--man/man1/rc.html655
-rw-r--r--man/man1/rio.html172
-rw-r--r--man/man1/rm.html66
-rw-r--r--man/man1/sam.html577
-rw-r--r--man/man1/scat.html385
-rw-r--r--man/man1/secstore.html145
-rw-r--r--man/man1/sed.html300
-rw-r--r--man/man1/seq.html99
-rw-r--r--man/man1/sleep.html91
-rw-r--r--man/man1/sort.html200
-rw-r--r--man/man1/spell.html125
-rw-r--r--man/man1/split.html91
-rw-r--r--man/man1/src.html99
-rw-r--r--man/man1/stats.html214
-rw-r--r--man/man1/strings.html69
-rw-r--r--man/man1/sum.html92
-rw-r--r--man/man1/tail.html116
-rw-r--r--man/man1/tbl.html187
-rw-r--r--man/man1/tcs.html131
-rw-r--r--man/man1/tee.html56
-rw-r--r--man/man1/test.html156
-rw-r--r--man/man1/time.html63
-rw-r--r--man/man1/touch.html69
-rw-r--r--man/man1/tr.html107
-rw-r--r--man/man1/tr2post.html152
-rw-r--r--man/man1/troff.html126
-rw-r--r--man/man1/troff2html.196
-rw-r--r--man/man1/troff2html.html108
-rw-r--r--man/man1/tweak.html194
-rw-r--r--man/man1/uniq.html79
-rw-r--r--man/man1/units.html156
-rw-r--r--man/man1/vac.html160
-rw-r--r--man/man1/wc.html75
-rw-r--r--man/man1/web.html115
-rw-r--r--man/man1/wintext.html124
-rw-r--r--man/man1/xd.html99
-rw-r--r--man/man1/yacc.html170
109 files changed, 17497 insertions, 0 deletions
diff --git a/man/man1/9.html b/man/man1/9.html
new file mode 100644
index 00000000..1ddef719
--- /dev/null
+++ b/man/man1/9.html
@@ -0,0 +1,100 @@
+<head>
+<title>9(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>9(1)</b><td align=right><b>9(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ 9 &ndash; run Plan 9 commands<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9</font></tt> <i>cmd</i> [ <i>args</i> ... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>. 9<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Because Plan 9 supplies commands with the same name as but different
+ behavior than many basic Unix system commands (e.g., <tt><font size=+1>grep</font></tt>, <tt><font size=+1>sed</font></tt>,
+ <tt><font size=+1>mkdir</font></tt>, <tt><font size=+1>rm</font></tt>), it is not recommended to run with the Plan 9 bin directory
+ ahead of the system directories.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9</i> is a shell script that sets up a Plan 9 environment and runs
+ <i>cmd .</i> It sets <tt><font size=+1>$PLAN9</font></tt> and adds <tt><font size=+1>$PLAN9/bin</font></tt> to the beginning of <tt><font size=+1>$PATH</font></tt>
+ before running <i>cmd</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If run with no arguments, <tt><font size=+1>9</font></tt> does not do anything. This is so that
+ it can be invoked from <i>sh</i>-style shells using <tt><font size=+1>. 9</font></tt> in order to make
+ the current shell start running in the Plan 9 environment.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Search for greek in the password file:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>$ 9 grep '[&#945;&#8722;&#950;]' /etc/passwd<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Start an <a href="../man1/rc.html"><i>rc</i>(1)</a> with the Plan 9 commands in the path before the
+ system commands.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9 rc<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/9<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/intro.html"><i>intro</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/9c.html b/man/man1/9c.html
new file mode 100644
index 00000000..894a34ae
--- /dev/null
+++ b/man/man1/9c.html
@@ -0,0 +1,172 @@
+<head>
+<title>9c(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>9C(1)</b><td align=right><b>9C(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ 9c, 9a, 9l, 9ar &ndash; C compiler, assembler, linker, archiver<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9c</font></tt> [ <tt><font size=+1>&#8722;I</font></tt> <i>path</i> ] [ <tt><font size=+1>&#8722;D</font></tt> <i>name</i> ] <i>file</i> ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>9a</font></tt> <i>file</i> ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>9l</font></tt> [ <i>-o target</i> ] <i>object</i> ... [ <i>library</i> ... ] [ <tt><font size=+1>&#8722;L</font></tt><i>path</i> ... ] [ <tt><font size=+1>&#8722;l</font></tt><i>name</i>
+ ... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>9ar</font></tt> <i>key</i> [ <i>posname</i> ] <i>afile</i> [ <i>file</i> ... ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ These programs are shell scripts that invoke the appropriate standard
+ tools for the current operating system and architecture. One can
+ use them to write portable recipes for mkfiles.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9c</i> compiles the named C <i>files</i> into object files for the current
+ system. The system C compiler is invoked with warnings enabled.
+ The <tt><font size=+1>&#8722;I</font></tt> option adds <i>path</i> to the include path, and the <tt><font size=+1>&#8722;D</font></tt> option
+ defines <i>name</i> in the C preprocessor. <i>9c</i> always defines the symbol
+ <tt><font size=+1>PLAN9PORT</font></tt> defined in the C preprocessor and adds
+ <tt><font size=+1>$PLAN9/include</font></tt> to the include path.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9c</i> also defines <tt><font size=+1>__sun__</font></tt> on SunOS systems and <tt><font size=+1>__Linux26__</font></tt> on Linux
+ systems with 2.6-series kernels.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9a</i> assembles the named files into object files for the current
+ system. Unlike some system assemblers, it does <i>not</i> promise to
+ run the C preprocessor on the source files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9l</i> links the named object files and libraries to create the target
+ executable. Each <tt><font size=+1>&#8722;l</font></tt> option specifies that a library named <tt><font size=+1>lib</font></tt><i>name</i><tt><font size=+1>.a</font></tt>
+ be found and linked. The <tt><font size=+1>&#8722;L</font></tt> option adds directories to the library
+ search path. <i>9l</i> invokes the system linker with <tt><font size=+1>$PLAN9/lib</font></tt> already
+ on the library search path.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9l</i> searches the named objects and libraries for symbols of the
+ form <tt><font size=+1>__p9l_autolib_</font></tt><i>name</i>, which it takes as indication that it
+ should link <tt><font size=+1>$PLAN9/lib/lib</font></tt><i>name</i><tt><font size=+1>.a</font></tt> as well. It also examines such
+ libraries to find their own dependencies. A single <tt><font size=+1>&#8722;l</font></tt> option at
+ the beginning of the command line disables this
+ behavior. The symbol <tt><font size=+1>__p9l_autolib_</font></tt><i>name</i> is added to an object
+ file by the macro <tt><font size=+1>AUTOLIB( name )</font></tt>, defined in <tt><font size=+1>&lt;u.h&gt;.</font></tt> Header files
+ associated with libraries contain <tt><font size=+1>AUTOLIB</font></tt> annotations; ordinary
+ programs need not use them. Due to shortcomings in the implementation,
+ a source file may not contain the
+ same <tt><font size=+1>AUTOLIB</font></tt> statement multiple times.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9ar</i> maintains object file archives called libraries. The exact
+ set of valid command keys varies from system to system, but <i>9ar</i>
+ always provides the following key characters:<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete <i>files</i> from the archive file.<br>
+ <tt><font size=+1>r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace <i>files</i> in the archive file, or add them if missing.<br>
+ <tt><font size=+1>t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List a table of contents of the archive. If names are given,
+ only those files are listed.<br>
+ <tt><font size=+1>x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extract the named files. If no names are given, all files in
+ the archive are extracted. In neither case does <tt><font size=+1>x</font></tt> alter the archive
+ file.<br>
+ <tt><font size=+1>v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Verbose. Give a file-by-file description of the making of a new
+ archive file from the old archive and the constituent files. With
+ <tt><font size=+1>t</font></tt>, give a long listing of all information about the files, somewhat
+ like a listing by <a href="../man1/ls.html"><i>ls</i>(1)</a>, showing<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>mode uid/gid size date name<br>
+ </font></tt>
+ </table>
+
+ </table>
+ <tt><font size=+1>c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create. Normally <i>9ar</i> will create a new archive when <i>afile</i> does
+ not exist, and give a warning. Option <tt><font size=+1>c</font></tt> discards any old contents
+ and suppresses the warning.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When a <tt><font size=+1>d</font></tt>, <tt><font size=+1>r</font></tt>, or <tt><font size=+1>m</font></tt> <i>key</i> is specified, <i>9ar</i> inserts a table of contents,
+ required by the linker, at the front of the library. The table
+ of contents is rebuilt whenever the archive is modified.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9c file1.c file2.c file3.c<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Compile three C source files.<br>
+
+ </table>
+ <tt><font size=+1>9a file4.s<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Assemble one assembler source file.<br>
+
+ </table>
+ <tt><font size=+1>9ar rvc lib.a file[12].o<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Archive the first two object files into a library.<br>
+
+ </table>
+ <tt><font size=+1>9l &#8722;o prog file3.o file4.o lib.a<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Link the final two object files and any necessary objects from
+ the library into an executable.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/9p.html b/man/man1/9p.html
new file mode 100644
index 00000000..449d0eb5
--- /dev/null
+++ b/man/man1/9p.html
@@ -0,0 +1,122 @@
+<head>
+<title>9p(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>9P(1)</b><td align=right><b>9P(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ 9p &ndash; read and write files on a 9P server<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9p</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> <i>addr</i> ] <tt><font size=+1>read</font></tt> <i>path<br>
+ </i><tt><font size=+1>9p</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> <i>addr</i> ] <tt><font size=+1>readfd</font></tt> <i>path
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>9p</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> <i>addr</i> ] <tt><font size=+1>write</font></tt> <i>path<br>
+ </i><tt><font size=+1>9p</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> <i>addr</i> ] <tt><font size=+1>writefd</font></tt> <i>path
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>9p</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> <i>addr</i> ] <tt><font size=+1>stat</font></tt> <i>path<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>9p</i> is a trivial 9P client that can access a single file on a 9P
+ server. It can be useful for manual interaction with a 9P server
+ or for accessing simple 9P services from within shell scripts.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The first argument is a command, one of:<br>
+ <tt><font size=+1>read</font></tt>print the contents of <i>path</i> to standard output<br>
+ <tt><font size=+1>write<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ write data on standard input to <i>path<br>
+ </i>
+ </table>
+ <tt><font size=+1>readfd</font></tt>, <tt><font size=+1>writefd<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ like <tt><font size=+1>read</font></tt> and <tt><font size=+1>write</font></tt> but use <i>openfd</i>(9p) instead of <i>open</i>; this masks
+ errors and is mainly useful for debugging the implementation of
+ <i>openfd<br>
+ </i>
+ </table>
+ <tt><font size=+1>stat</font></tt>execute <i>stat (9p)</i> on <i>path</i> and print the result
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9p</i> dials <i>address</i> to connect to the 9P server. If the <tt><font size=+1>&#8722;a</font></tt> option
+ is not given, <i>9p</i> requires the <i>path</i> to be of the form <i>service</i><tt><font size=+1>/</font></tt><i>subpath</i>;
+ it connects to the Unix domain socket <i>service</i> in the name space
+ directory (see <a href="../man4/intro.html"><i>intro</i>(4)</a>) and then accesses <i>subpath</i>.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ To update <a href="../man4/plumber.html"><i>plumber</i>(4)</a>&#8217;s copy of your plumbing rules after editing
+ <tt><font size=+1>$HOME/lib/plumbing</font></tt>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cat $HOME/lib/plumbing | 9p write plumb/rules<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ To display the contents of the current <a href="../man4/acme.html"><i>acme</i>(4)</a> window:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9p read acme/$winid/body<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/9p.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man4/intro.html"><i>intro</i>(4)</a>, <i>intro</i>(9p), <a href="../man3/9pclient.html"><i>9pclient</i>(3)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/9term.html b/man/man1/9term.html
new file mode 100644
index 00000000..7d6a741f
--- /dev/null
+++ b/man/man1/9term.html
@@ -0,0 +1,259 @@
+<head>
+<title>9term(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>9TERM(1)</b><td align=right><b>9TERM(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ 9term &ndash; terminal windows<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9term</font></tt> [ <tt><font size=+1>&#8722;as</font></tt> ] [ <tt><font size=+1>&#8722;f</font></tt> <i>font</i> ] [ <i>cmd</i> ... ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>9term</i> is a terminal window program for the X Window System, providing
+ an interface similar to that used on Plan 9.<br>
+ <p><font size=+1><b>Command </b></font><br>
+ The <i>9term</i> command starts a new window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;a</font></tt> flag causes button 2 to send the selection immediately,
+ like acme. Otherwise button 2 brings up a menu, described below.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;s</font></tt> option initializes windows so that text scrolls; the default
+ is not to scroll.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <i>font</i> argument to <tt><font size=+1>&#8722;f</font></tt> names a font used to display text, both
+ in <i>9term</i>&#8217;s menus and as a default for any programs running in
+ its windows; it also establishes the environment variable <tt><font size=+1>$font</font></tt>.
+ If <tt><font size=+1>&#8722;f</font></tt> is not given, <i>9term</i> uses the imported value of <tt><font size=+1>$font</font></tt> if
+ set; otherwise it uses the graphics system default.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9term</i> runs the given command in the window, or <tt><font size=+1>$SHELL</font></tt> if no command
+ is given.<br>
+ <p><font size=+1><b>Text windows </b></font><br>
+ Characters typed on the keyboard collect in the window to form
+ a long, continuous document.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There is always some <i>selected text</i>, a contiguous string marked
+ on the screen by reversing its color. If the selected text is
+ a null string, it is indicated by a hairline cursor between two
+ characters. The selected text may be edited by mousing and typing.
+ Text is selected by pointing and clicking button 1 to make a null-
+ string selection, or by pointing, then sweeping with button 1
+ pressed. Text may also be selected by double-clicking: just inside
+ a matched delimiter-pair with one of <tt><font size=+1>{[(&lt;`'&quot;</font></tt> on the left and <tt><font size=+1>}])&gt;`'&quot;</font></tt>
+ on the right, it selects all text within the pair; at the beginning
+ or end of a line, it selects the line; within or at the
+ edge of an alphanumeric word, it selects the word.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Characters typed on the keyboard replace the selected text; if
+ this text is not empty, it is placed in a <i>snarf buffer</i> common
+ to all windows but distinct from that of <a href="../man1/sam.html"><i>sam</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Programs access the text in the window at a single point maintained
+ automatically by <i>9term</i>. The <i>output point</i> is the location in the
+ text where the next character written by a program to the terminal
+ will appear; afterwards, the output point is the null string beyond
+ the new character. The output point is also the location
+ in the text of the next character that will be read (directly
+ from the text in the window, not from an intervening buffer) by
+ a program. Since Unix does not make it possible to know when a
+ program is reading the terminal, lines are sent as they are completed
+ (when the user types a newline character).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In general there is text in the window after the output point,
+ usually placed there by typing but occasionally by the editing
+ operations described below. A pending read of the terminal will
+ block until the text after the output point contains a newline,
+ whereupon the read may acquire the text, up to and including the
+ newline. After the read, as described above, the output point
+ will be at the beginning of the next line of text. In normal circumstances,
+ therefore, typed text is delivered to programs a line at a time.
+ Changes made by typing or editing before the text is read will
+ not be seen by the program reading it. Because of the
+ Unix issues mentioned above, a line of text is only editable until
+ it is completed with a newline character, or when hold mode (see
+ below) is enabled.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Even when there are newlines in the output text, <i>9term</i> will not
+ honor reads if the window is in <i>hold mode</i>, which is indicated
+ by a white cursor and blue text and border. The ESC character
+ toggles hold mode. Some programs automatically turn on hold mode
+ to simplify the editing of multi-line text; type ESC when done
+ to allow <i>mail</i> to read the text.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An EOT character (control-D) behaves exactly like newline except
+ that it is not delivered to a program when read. Thus on an empty
+ line an EOT serves to deliver an end-of-file indication: the read
+ will return zero characters. The BS character (control-H) erases
+ the character before the selected text. The ETB character
+ (control-W) erases any nonalphanumeric characters, then the alphanumeric
+ word just before the selected text. &#8216;Alphanumeric&#8217; here means
+ non-blanks and non-punctuation. The NAK character (control-U)
+ erases the text after the output point, and not yet read by a
+ program, but not more than one line. All these
+ characters are typed on the keyboard and hence replace the selected
+ text; for example, typing a BS with a word selected places the
+ word in the snarf buffer, removes it from the screen, and erases
+ the character before the word.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An ACK character (control-F) or Insert character triggers file
+ name completion for the preceding string (see <a href="../man3/complete.html"><i>complete</i>(3)</a>).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Text may be moved vertically within the window. A scroll bar on
+ the left of the window shows in its clear portion what fragment
+ of the total output text is visible on the screen, and in its
+ gray part what is above or below view; it measures characters,
+ not lines. Mousing inside the scroll bar moves text: clicking
+ button 1
+ with the mouse pointing inside the scroll bar brings the line
+ at the top of the window to the cursor&#8217;s vertical location; button
+ 3 takes the line at the cursor to the top of the window; button
+ 2, treating the scroll bar as a ruler, jumps to the indicated
+ portion of the stored text. Holding a button pressed in the scroll
+ bar will
+ cause the text to scroll continuously until the button is released.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Typing down-arrow scrolls forward one third of a window, and up-arrow
+ scrolls back. Typing page-down scrolls forward two thirds of a
+ window, and page-up scrolls back. Typing Home scrolls to the top
+ of the window; typing End scrolls to the end.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The DEL character sends an <tt><font size=+1>interrupt</font></tt> note to all processes in
+ the window&#8217;s process group. Unlike the other characters, the DEL
+ and arrow keys do not affect the selected text. The left (right)
+ arrow key moves the selection to one character before (after)
+ the current selection.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9term</i> relies on the kernel&#8217;s terminal processing to handle EOT
+ and DEL, so the terminal must be set up with EOT as the &#8220;eof&#8221;
+ character and DEL as the &#8220;intr&#8221; character. <i>9term</i> runs <a href="../man1/stty.html"><i>stty</i>(1)</a>
+ to establish this when the terminal is created.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Normally, written output to a window blocks when the text reaches
+ the end of the screen and the terminal buffer fills; a button
+ 2 menu item toggles scrolling.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>9term</i> changes behavior according to the terminal settings of the
+ running programs. Most programs run with echo enabled. In this
+ mode, <i>9term</i> displays and allows editing of the input. Some programs,
+ typically those reading passwords, run with echo disabled. In
+ this mode, <i>9term</i> passes keystrokes through directly,
+ without echoing them or buffering until a newline character. These
+ heuristics work well in many cases, but there are a few common
+ ones where they fall short. First, programs using the GNU readline
+ library typically disable terminal echo and perform echoing themselves.
+ The most common example is the shell
+ <a href="../man1/bash.html"><i>bash</i>(1)</a>. Disabling the use of readline with &#8220;<tt><font size=+1>set +o emacs</font></tt>&#8221; [<i>sic</i>]
+ usually restores the desired behavior. Second, remote terminal
+ programs such as <a href="../man1/ssh.html"><i>ssh</i>(1)</a> typically run with echo disabled, relying
+ on the remote system to echo characters as desired. Plan 9&#8217;s <i>ssh</i>
+ has a <tt><font size=+1>&#8722;C</font></tt> flag to disable this, leaving the terminal in
+ &#8220;cooked&#8221; mode. For similar situations on Unix, <i>9term</i>&#8217;s button
+ 2 menu has an entry to toggle the forced use of cooked mode, despite
+ the terminal settings. In such cases, it is useful to run &#8220;<tt><font size=+1>stty
+ &#8722;echo</font></tt>&#8221; on the remote system to avoid seeing your input twice.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Editing operations are selected from a menu on button 2. The <tt><font size=+1>cut</font></tt>
+ operation deletes the selected text from the screen and puts it
+ in the snarf buffer; <tt><font size=+1>snarf</font></tt> copies the selected text to the buffer
+ without deleting it; <tt><font size=+1>paste</font></tt> replaces the selected text with the
+ contents of the buffer; and <tt><font size=+1>send</font></tt> copies the snarf buffer to
+ just after the output point, adding a final newline if missing.
+ <tt><font size=+1>Paste</font></tt> will sometimes and <tt><font size=+1>send</font></tt> will always place text after the
+ output point; the text so placed will behave exactly as described
+ above. Therefore when pasting text containing newlines after the
+ output point, it may be prudent to turn on hold mode first.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>plumb</font></tt> menu item sends the contents of the selection (not the
+ snarf buffer) to the <i>plumber</i> (see <a href="../man1/plumb.html"><i>plumb</i>(1)</a>). If the selection
+ is empty, it sends the white-space-delimited text containing the
+ selection (typing cursor). A typical use of this feature is to
+ tell the editor to find the source of an error by plumbing the
+ file and
+ line information in a compiler&#8217;s diagnostic.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each <i>9term</i> listens for connections on a Unix socket. When a client
+ connects, the <i>9term</i> writes the window contents to the client and
+ then hangs up. <i>9term</i> installs the name of this socket in the environment
+ as <tt><font size=+1>$text9term</font></tt> before running <i>cmd</i>.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/9term<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ There should be a program to toggle the current window&#8217;s hold
+ mode.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Unix makes everything harder.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/wintext.html"><i>wintext</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/acid.html b/man/man1/acid.html
new file mode 100644
index 00000000..f04c9baa
--- /dev/null
+++ b/man/man1/acid.html
@@ -0,0 +1,486 @@
+<head>
+<title>acid(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ACID(1)</b><td align=right><b>ACID(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ acid, acidtypes &ndash; debugger<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>acid</font></tt> [ <tt><font size=+1>&#8722;l</font></tt> <i>library</i> ] [ <tt><font size=+1>&#8722;wq</font></tt> ] [ <tt><font size=+1>&#8722;m</font></tt> <i>machine</i> ] [ <i>pid</i> | <i>core</i> ] [ <i>textfile</i>
+ ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>acidtypes</font></tt> [ <tt><font size=+1>&#8722;p</font></tt> <i>prefix</i> ] <i>file</i> ...<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Acid</i> is a programmable symbolic debugger. It can inspect one or
+ more processes that share an address space. A program to be debugged
+ may be specified by the process id of a running or defunct process,
+ or by the name of the program&#8217;s text file (<tt><font size=+1>a.out</font></tt> by default).
+ At the prompt, <i>acid</i> will store function definitions
+ or print the value of expressions. Options are<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allow the textfile to be modified.<br>
+ <tt><font size=+1>&#8722;q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print variable renamings at startup.<br>
+ <tt><font size=+1>&#8722;l</font></tt> <i>library</i>&nbsp;&nbsp;&nbsp;&nbsp;Load from <i>library</i> at startup; see below.<br>
+ <tt><font size=+1>&#8722;m</font></tt> <i>machine</i>&nbsp;&nbsp;&nbsp;Assume instructions are for the given CPU type (see
+ <a href="../man3/mach.html"><i>mach</i>(3)</a>) instead of using the executable header to select the
+ CPU type.<br>
+ <tt><font size=+1>&#8722;k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug the kernel state for the process, rather than the user
+ state.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ At startup, <i>acid</i> obtains standard function definitions from the
+ library file <tt><font size=+1>/usr/local/plan9/acid/port</font></tt>, architecture-dependent
+ functions from <tt><font size=+1>/usr/local/plan9/acid/$objtype</font></tt>, user-specified
+ functions from <tt><font size=+1>$home/lib/acid</font></tt>, and further functions from <tt><font size=+1>&#8722;l</font></tt> files.
+ Definitions in any file may
+ override previously defined functions. If the function <i>acidinit</i>()
+ is defined, it will be invoked after all modules have been loaded.
+ Then the function <i>acidmap</i>() will be invoked if defined. <tt><font size=+1>/usr/local/plan9/acid/port</font></tt>
+ provides a definition of <i>acidmap</i> that attaches all the shared
+ libraries being used by the target
+ process and then runs <i>acidtypes</i> (<i>q.v.</i>) to create <i>acid</i> functions
+ for examining data structures.<br>
+ <p><font size=+1><b>Language </b></font><br>
+ Symbols of the program being debugged become integer variables
+ whose values are addresses. Contents of addresses are obtained
+ by indirection. Local variables are qualified by function name,
+ for example <tt><font size=+1>main:argv</font></tt>. When program symbols conflict with <i>acid</i>
+ words, distinguishing <tt><font size=+1>$</font></tt> signs are prefixed. Such
+ renamings are reported at startup; option <tt><font size=+1>&#8722;q</font></tt> suppresses them.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Variable types (<i>integer, float, list, string</i>) and formats are
+ inferred from assignments. Truth values false/true are attributed
+ to zero/nonzero integers or floats and to empty/nonempty lists
+ or strings. Lists are sequences of expressions surrounded by <tt><font size=+1>{}</font></tt>
+ and separated by commas.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Expressions are much as in C, but yield both a value and a format.
+ Casts to complex types are allowed. Lists admit the following
+ operators, with subscripts counted from 0.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>head</font></tt> <i>list<br>
+ </i><tt><font size=+1>tail</font></tt> <i>list<br>
+ </i><tt><font size=+1>append</font></tt> <i>list</i><tt><font size=+1>,</font></tt> <i>element<br>
+ </i><tt><font size=+1>delete</font></tt> <i>list</i><tt><font size=+1>,</font></tt> <i>subscript
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ Format codes are the same as in <a href="../man1/db.html"><i>db</i>(1)</a>. Formats may be attached
+ to (unary) expressions with <tt><font size=+1>\</font></tt>, e.g. <tt><font size=+1>(32*7)\D</font></tt>. There are two indirection
+ operators, <tt><font size=+1>*</font></tt> to address a core image, <tt><font size=+1>@</font></tt> to address a text file.
+ The type and format of the result are determined by the format
+ of the operand, whose type must be integer.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Statements are<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>if</font></tt> <i>expr</i> <tt><font size=+1>then</font></tt> <i>statement</i> [ <tt><font size=+1>else</font></tt> <i>statement</i> ]<br>
+ <tt><font size=+1>while</font></tt> <i>expr</i> <tt><font size=+1>do</font></tt> <i>statement<br>
+ </i><tt><font size=+1>loop</font></tt> <i>expr</i><tt><font size=+1>,</font></tt> <i>expr</i> <tt><font size=+1>do</font></tt> <i>statement<br>
+ </i><tt><font size=+1>defn</font></tt> <i>name</i><tt><font size=+1>(</font></tt><i>args</i><tt><font size=+1>) {</font></tt> <i>statement</i> <tt><font size=+1>}<br>
+ defn</font></tt> <i>name<br>
+ name</i><tt><font size=+1>(</font></tt><i>args</i><tt><font size=+1>)<br>
+ builtin</font></tt> <i>name</i><tt><font size=+1>(</font></tt><i>args</i><tt><font size=+1>)<br>
+ local</font></tt> <i>name<br>
+ </i><tt><font size=+1>return</font></tt> <i>expr<br>
+ </i><tt><font size=+1>whatis</font></tt> [ <i>name</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ The statement <tt><font size=+1>defn</font></tt> <i>name</i> clears the definition for <i>name</i>. A <tt><font size=+1>defn</font></tt>
+ may override a built-in function; prefixing a function call with
+ <tt><font size=+1>builtin</font></tt> ignores any overriding <tt><font size=+1>defn</font></tt>, forcing the use of the built-in
+ function.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Here is a partial list of functions; see the manual for a complete
+ list.<br>
+ <tt><font size=+1>stk()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a stack trace for current process.<br>
+ <tt><font size=+1>lstk()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a stack trace with values of local variables.<br>
+ <tt><font size=+1>gpr()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print general registers. Registers can also be accessed by
+ name, for example <tt><font size=+1>*R0</font></tt>.<br>
+ <tt><font size=+1>spr()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print special registers such as program counter and stack
+ pointer.<br>
+ <tt><font size=+1>fpr()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print floating-point registers.<br>
+ <tt><font size=+1>regs()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Same as <tt><font size=+1>spr();gpr()</font></tt>.<br>
+ <tt><font size=+1>fmt(</font></tt><i>expr</i><tt><font size=+1>,</font></tt><i>format</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Expression <i>expr</i> with format given by the character value of expression
+ <i>format</i>.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>src(</font></tt><i>address</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print 10 lines of source around the program address.<br>
+ <tt><font size=+1>Bsrc(</font></tt><i>address</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Get the source line for the program address into
+ a window of a running <a href="../man1/sam.html"><i>sam</i>(1)</a> and select it.<br>
+ <tt><font size=+1>line(</font></tt><i>address</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print source line nearest to the program address.<br>
+ <tt><font size=+1>source()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List current source directories.<br>
+ <tt><font size=+1>addsrcdir(</font></tt><i>string</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Add a source directory to the list.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>filepc(</font></tt><i>where</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;Convert a string of the form <i>sourcefile</i><tt><font size=+1>:</font></tt><i>linenumber</i>
+ to a machine address.<br>
+ <tt><font size=+1>pcfile(</font></tt><i>address</i><tt><font size=+1>)</font></tt>Convert a machine address to a source file name.<br>
+ <tt><font size=+1>pcline(</font></tt><i>address</i><tt><font size=+1>)</font></tt>Convert a machine address to a source line number.<br>
+ <tt><font size=+1>bptab()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List breakpoints set in the current process.<br>
+ <tt><font size=+1>bpset(</font></tt><i>address</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;Set a breakpoint in the current process at the given
+ address. (Doesn&#8217;t work on Unix yet.)<br>
+ <tt><font size=+1>bpdel(</font></tt><i>address</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;Delete a breakpoint from the current process.<br>
+ <tt><font size=+1>cont()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Continue execution of current process and wait for it to
+ stop.<br>
+ <tt><font size=+1>step()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute a single machine instruction in the current process.
+ (Doesn&#8217;t work on Unix yet.)<br>
+ <tt><font size=+1>func()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Step repeatedly until after a function return.<br>
+ <tt><font size=+1>stopped(</font></tt><i>pid</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;This replaceable function is called automatically
+ when the given process stops. It normally prints the program counter
+ and returns to the prompt.<br>
+ <tt><font size=+1>asm(</font></tt><i>address</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Disassemble 30 machine instructions beginning at the
+ given address.<br>
+ <tt><font size=+1>mem(</font></tt><i>address</i><tt><font size=+1>,</font></tt><i>string</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print a block of memory interpreted according to a string of format
+ codes.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>dump(</font></tt><i>address</i><tt><font size=+1>,</font></tt><i>n</i><tt><font size=+1>,</font></tt><i>string</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Like <tt><font size=+1>mem</font></tt>(), repeated for <i>n</i> consecutive blocks.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>print(</font></tt><i>expr</i><tt><font size=+1>,</font></tt><i>...</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;Print the values of the expressions.<br>
+ <tt><font size=+1>newproc(</font></tt><i>arguments</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Start a new process with arguments given as a string and halt
+ at the first instruction.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>new()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Like <i>newproc</i>(), but take arguments (except <tt><font size=+1>argv[0]</font></tt>) from
+ string variable <tt><font size=+1>progargs</font></tt>.<br>
+ <tt><font size=+1>win()</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Like <i>new</i>(), but run the process in a separate window.<br>
+ <tt><font size=+1>start(</font></tt><i>pid</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Start a stopped process.<br>
+ <tt><font size=+1>kill(</font></tt><i>pid</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kill the given process.<br>
+ <tt><font size=+1>setproc(</font></tt><i>pid</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Make the given process current.<br>
+ <tt><font size=+1>rc(</font></tt><i>string</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Escape to the shell, <a href="../man1/rc.html"><i>rc</i>(1)</a>, to execute the command string.<br>
+ <tt><font size=+1>include(</font></tt><i>string</i><tt><font size=+1>)</font></tt>Read acid commands from the named file.<br>
+ <tt><font size=+1>includepipe(</font></tt><i>string</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Run the command string, reading its standard output as acid commands.<br>
+
+ </table>
+
+ </table>
+ <p><font size=+1><b>Shared library segments </b></font><br>
+ When a pid or core file is specified on the command line, <i>acid</i>
+ will, as part of its startup, determine the set of shared libraries
+ in use by the process image and map those at appropriate locations.
+ If <i>acid</i> is started without a pid or core file and is subsequently
+ attached to a process via <tt><font size=+1>setproc</font></tt>, the shared library maps
+ can be initialized by calling <tt><font size=+1>dynamicmap()</font></tt>.<br>
+ <p><font size=+1><b>Type information </b></font><br>
+ Unix compilers conventionally include detailed type information
+ in the debugging symbol section of binaries. The external program
+ <tt><font size=+1>acidtypes</font></tt> extracts this information and formats it as <i>acid</i> program
+ text. Once the shared libraries have been mapped, the default
+ <i>acid</i> startup invokes <tt><font size=+1>acidtypes</font></tt> (via
+ <tt><font size=+1>includepipe</font></tt>) on the set of currently mapped text files. The function
+ <tt><font size=+1>acidtypes()</font></tt> can be called to rerun the command after changing
+ the set of mapped text files.<br>
+ <p><font size=+1><b>Acid Libraries </b></font><br>
+ There are a number of <i>acid</i> &#8216;libraries&#8217; that provide higher-level
+ debugging facilities. One notable example is <i>trump</i>, which uses
+ <i>acid</i> to trace memory allocation. <i>Trump</i> requires starting <i>acid</i>
+ on the program, either by attaching to a running process or by
+ executing <tt><font size=+1>new()</font></tt> on a binary (perhaps after setting <tt><font size=+1>progargs</font></tt>),
+ stopping the process, and then running <tt><font size=+1>trump()</font></tt> to execute the
+ program under the scaffolding. The output will be a trace of the
+ memory allocation and free calls executed by the program. When
+ finished tracing, stop the process and execute <tt><font size=+1>untrump()</font></tt> followed
+ by <tt><font size=+1>cont()</font></tt> to resume execution.
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Start to debug <tt><font size=+1>/bin/ls</font></tt>; set some breakpoints; run up to the first
+ one (this example doesn&#8217;t work on Unix yet):<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% acid /bin/ls<br>
+ /bin/ls: mips plan 9 executable<br>
+ /sys/lib/acid/port<br>
+ /sys/lib/acid/mips<br>
+ acid: new()<br>
+ 70094: system call &nbsp;&nbsp;&nbsp;_main &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADD &nbsp;&nbsp;&nbsp;$&#8722;0x14,R29<br>
+ 70094: breakpoint &nbsp;&nbsp;&nbsp;&nbsp;main+0x4 &nbsp;&nbsp;&nbsp;MOVW R31,0x0(R29)<br>
+ acid: pid<br>
+ 70094<br>
+ acid: argv0 = **main:argv\s<br>
+ acid: whatis argv0<br>
+ integer variable format s<br>
+ acid: *argv0<br>
+ /bin/ls<br>
+ acid: bpset(ls)<br>
+ acid: cont()<br>
+ 70094: breakpoint &nbsp;&nbsp;&nbsp;ls &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADD &nbsp;&nbsp;&nbsp;$&#8722;0x16c8,R29<br>
+ acid: <br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Display elements of a linked list of structures:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>complex Str { 'D' 0 val; 'X' 4 next; };<br>
+ s = *headstr;<br>
+ while s != 0 do{<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ complex Str s;<br>
+ print(s.val, &quot;\n&quot;);<br>
+ s = s.next;<br>
+
+ </table>
+ }<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Note the use of the <tt><font size=+1>.</font></tt> operator instead of <tt><font size=+1>&#8722;&gt;</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Display an array of bytes declared in C as <tt><font size=+1>char array[]</font></tt>.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>*(array\s)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ This example gives <tt><font size=+1>array</font></tt> string format, then prints the string
+ beginning at the address (in <i>acid</i> notation) <tt><font size=+1>*array</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Trace the system calls executed by <a href="../man1/ls.html"><i>ls</i>(1)</a> (neither does this one):<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% acid &#8722;l truss /bin/ls<br>
+ /bin/ls:386 plan 9 executable<br>
+ /sys/lib/acid/port<br>
+ /sys/lib/acid/kernel<br>
+ /sys/lib/acid/truss<br>
+ /sys/lib/acid/386<br>
+ acid: progargs = &quot;&#8722;l lib/profile&quot;<br>
+ acid: new()<br>
+ acid: truss()<br>
+ open(&quot;#c/pid&quot;, 0)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 3<br>
+
+ </table>
+ pread(3, 0x7fffeeac, 20, &#8722;1)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 12<br>
+ data: &quot; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;166 &quot;<br>
+
+ </table>
+ ...<br>
+ stat(&quot;lib/profile&quot;, 0x0000f8cc, 113)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 65<br>
+
+ </table>
+ open(&quot;/env/timezone&quot;, 0)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 3<br>
+
+ </table>
+ pread(3, 0x7fffd7c4, 1680, &#8722;1)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 1518<br>
+ data: &quot;EST &#8722;18000 EDT &#8722;14400<br>
+ 9943200 &nbsp;&nbsp;&nbsp;&nbsp;25664400 &nbsp;&nbsp;&nbsp;&nbsp;41392800 &nbsp;&nbsp;&nbsp;&nbsp;57718800 &nbsp;&nbsp;&nbsp;&nbsp;73447200 &nbsp;&nbsp;&nbsp;&nbsp;89168400<br>
+ 104896800 &nbsp;&nbsp;&nbsp;...&quot;<br>
+
+ </table>
+ close(3)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 0<br>
+
+ </table>
+ pwrite(1, &quot;&#8722;&#8722;rw&#8722;rw&#8722;r&#8722;&#8722; M 9 rob rob 2519 Mar 22 10:29 lib/profile<br>
+ &quot;, 54, &#8722;1)<br>
+ &#8722;&#8722;rw&#8722;rw&#8722;r&#8722;&#8722; M 9 rob rob 2519 Mar 22 10:29 lib/profile<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ return value: 54<br>
+
+ </table>
+ ...<br>
+ 166: breakpoint &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_exits+0x5 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INTB $0x40<br>
+ acid: cont()<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/acid/$objtype<br>
+ /usr/local/plan9/acid/port<br>
+ /usr/local/plan9/acid/kernel<br>
+ /usr/local/plan9/acid/trump<br>
+ /usr/local/plan9/acid/truss<br>
+ $home/lib/acid<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/acid<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/mk.html"><i>mk</i>(1)</a>, <a href="../man1/db.html"><i>db</i>(1)</a><br>
+ Phil Winterbottom, &#8220;Acid Manual&#8221;.<br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ At termination, kill commands are proposed for processes that
+ are still active.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ There is no way to redirect the standard input and standard output
+ of a new process.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Source line selection near the beginning of a file may pick an
+ adjacent file.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ With the extant stepping commands, one cannot step through instructions
+ outside the text segment and it is hard to debug across process
+ forks.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Breakpoints do not work yet. Therefore, commands such as <tt><font size=+1>step</font></tt>,
+ <tt><font size=+1>new</font></tt>, and <tt><font size=+1>truss</font></tt> do not work either. <tt><font size=+1>New</font></tt> in particular will need
+ some help to cope with dynamic libraries.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/acme.html b/man/man1/acme.html
new file mode 100644
index 00000000..bc1063bd
--- /dev/null
+++ b/man/man1/acme.html
@@ -0,0 +1,481 @@
+<head>
+<title>acme(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ACME(1)</b><td align=right><b>ACME(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ acme, win, awd &ndash; interactive text windows<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>acme</font></tt> [ <tt><font size=+1>&#8722;f</font></tt> <i>varfont</i> ] [ <tt><font size=+1>&#8722;F</font></tt> <i>fixfont</i> ] [ <tt><font size=+1>&#8722;c</font></tt> <i>ncol</i> ] [ <tt><font size=+1>&#8722;br</font></tt> ] [ <tt><font size=+1>&#8722;l</font></tt> <i>file</i>
+ | <i>file</i> ... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>win</font></tt> [ <i>command</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>awd</font></tt> [ <i>label</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Acme</i> manages windows of text that may be edited interactively
+ or by external programs. The interactive interface uses the keyboard
+ and mouse; external programs use a set of files served by <i>acme</i>;
+ these are discussed in <a href="../man4/acme.html"><i>acme</i>(4)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Any named <i>files</i> are read into <i>acme</i> windows before <i>acme</i> accepts
+ input. With the <tt><font size=+1>&#8722;l</font></tt> option, the state of the entire system is loaded
+ from <i>file</i>, which should have been created by a <tt><font size=+1>Dump</font></tt> command (q.v.),
+ and subsequent <i>file</i> names are ignored. Plain files display as
+ text; directories display as columnated lists of the
+ names of their components, as in <tt><font size=+1>ls &#8722;p directory|mc</font></tt> except that
+ the names of subdirectories have a slash appended.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;f</font></tt> (<tt><font size=+1>&#8722;F</font></tt>) option sets the main font, usually variable-pitch
+ (alternate, usually fixed-pitch); the default is <tt><font size=+1>/usr/local/plan9/font/lucidasans/euro.8.font</font></tt>
+ (<tt><font size=+1>.../lucm/unicode.9.font</font></tt>). Tab intervals are set to the width
+ of 4 (or the value of <tt><font size=+1>$tabstop</font></tt>) numeral zeros in the appropriate
+ font.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <p><font size=+1><b>Windows </b></font><br>
+ <i>Acme</i> windows are in two parts: a one-line <i>tag</i> above a multi-line
+ <i>body</i>. The body typically contains an image of a file, as in <a href="../man1/sam.html"><i>sam</i>(1)</a>,
+ or the output of a program, as in an <a href="../man1/rio.html"><i>rio</i>(1)</a> window. The tag contains
+ a number of blank-separated words, followed by a vertical bar
+ character, followed by anything. The first word is the
+ name of the window, typically the name of the associated file
+ or directory, and the other words are commands available in that
+ window. Any text may be added after the bar; examples are strings
+ to search for or commands to execute in that window. Changes to
+ the text left of the bar will be ignored, unless the result is
+ to change the name of the window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If a window holds a directory, the name (first word of the tag)
+ will end with a slash.<br>
+ <p><font size=+1><b>Scrolling </b></font><br>
+ Each window has a scroll bar to the left of the body. The scroll
+ bar behaves much as in <a href="../man1/sam.html"><i>sam</i>(1)</a> or <a href="../man1/rio.html"><i>rio</i>(1)</a> except that scrolling
+ occurs when the button is pressed, rather than released, and continues
+ as long as the mouse button is held down in the scroll bar. For
+ example, to scroll slowly through a file, hold button 3
+ down near the top of the scroll bar. Moving the mouse down the
+ scroll bar speeds up the rate of scrolling. (The experimental
+ option <tt><font size=+1>&#8722;r</font></tt> reverses the scrolling behavior of buttons 1 and 3,
+ to behave more like <a href="../man1/xterm.html"><i>xterm</i>(1)</a>.)<br>
+ <p><font size=+1><b>Layout </b></font><br>
+ <i>Acme</i> windows are arranged in columns. By default, it creates two
+ columns when starting; this can be overridden with the <tt><font size=+1>&#8722;c</font></tt> option.
+ Placement is automatic but may be adjusted using the <i>layout box</i>
+ in the upper left corner of each window and column. Pressing and
+ holding any mouse button in the box drags the
+ associated window or column. For windows, just clicking in the
+ layout box grows the window in place: button 1 grows it a little,
+ button 2 grows it as much as it can, still leaving all other tags
+ in that column visible, and button 3 takes over the column completely,
+ temporarily hiding other windows in the column. (They
+ will return <i>en masse</i> if any of them needs attention.) The layout
+ box in a window is normally white; when it is black in the center,
+ it records that the file is &#8216;dirty&#8217;: <i>acme</i> believes it is modified
+ from its original contents.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Tags exist at the top of each column and across the whole display.
+ <i>Acme</i> pre-loads them with useful commands. Also, the tag across
+ the top maintains a list of executing long-running commands.<br>
+ <p><font size=+1><b>Typing </b></font><br>
+ The behavior of typed text is similar to that in <a href="../man1/rio.html"><i>rio</i>(1)</a> except
+ that the characters are delivered to the tag or body under the
+ mouse; there is no &#8216;click to type&#8217;. (The experimental option <tt><font size=+1>&#8722;b</font></tt>
+ causes typing to go to the most recently clicked-at or made window.)
+ The usual backspacing conventions apply. As in <a href="../man1/sam.html"><i>sam</i>(1)</a> but not
+ <i>rio</i>, the ESC key selects the text typed since the last mouse action,
+ a feature particularly useful when executing commands. A side
+ effect is that typing ESC with text already selected is identical
+ to a <tt><font size=+1>Cut</font></tt> command (<i>q.v.</i>).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Most text, including the names of windows, may be edited uniformly.
+ The only exception is that the command names to the left of the
+ bar in a tag are maintained automatically; changes to them are
+ repaired by <i>acme</i>.<br>
+ <p><font size=+1><b>Directory context </b></font><br>
+ Each window&#8217;s tag names a directory: explicitly if the window
+ holds a directory; implicitly if it holds a regular file (e.g.
+ the directory <tt><font size=+1>/adm</font></tt> if the window holds <tt><font size=+1>/adm/users</font></tt>). This directory
+ provides a <i>context</i> for interpreting file names in that window.
+ For example, the string <tt><font size=+1>users</font></tt> in a window labeled <tt><font size=+1>/adm/</font></tt> or
+ <tt><font size=+1>/adm/keys</font></tt> will be interpreted as the file name <tt><font size=+1>/adm/users</font></tt>. The
+ directory is defined purely textually, so it can be a non-existent
+ directory or a real directory associated with a non-existent file
+ (e.g. <tt><font size=+1>/adm/not&#8722;a&#8722;file</font></tt>). File names beginning with a slash are
+ assumed to be absolute file names.
+ <p><font size=+1><b>Errors </b></font><br>
+ Windows whose names begin with <tt><font size=+1>&#8722;</font></tt> or <tt><font size=+1>+</font></tt> conventionally hold diagnostics
+ and other data not directly associated with files. A window labeled
+ <tt><font size=+1>+Errors</font></tt> receives all diagnostics produced by <i>acme</i> itself. Diagnostics
+ from commands run by <i>acme</i> appear in a window named <i>directory</i><tt><font size=+1>/+Errors</font></tt>
+ where <i>directory</i> is
+ identified by the context of the command. These error windows
+ are created when needed.<br>
+ <p><font size=+1><b>Mouse button 1 </b></font><br>
+ Mouse button 1 selects text just as in <a href="../man1/sam.html"><i>sam</i>(1)</a> or <a href="../man1/rio.html"><i>rio</i>(1)</a><i>,</i> including
+ the usual double-clicking conventions.<br>
+ <p><font size=+1><b>Mouse button 2 </b></font><br>
+ By an action similar to selecting text with button 1, button 2
+ indicates text to execute as a command. If the indicated text
+ has multiple white-space-separated words, the first is the command
+ name and the second and subsequent are its arguments. If button
+ 2 is &#8216;clicked&#8217;--indicates a null string--<i>acme expands</i> the
+ indicated text to find a command to run: if the click is within
+ button-1-selected text, <i>acme</i> takes that selection as the command;
+ otherwise it takes the largest string of valid file name characters
+ containing the click. Valid file name characters are alphanumerics
+ and <tt><font size=+1>_ . &#8722; + /</font></tt>. This behavior is similar to double-clicking
+ with button 1 but, because a null command is meaningless, only
+ a single click is required.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Some commands, all by convention starting with a capital letter,
+ are <i>built-ins</i> that are executed directly by <i>acme</i>:<br>
+ <tt><font size=+1>Cut</font></tt>&nbsp;&nbsp;&nbsp;Delete most recently selected text and place in snarf buffer.<br>
+ <tt><font size=+1>Del</font></tt>&nbsp;&nbsp;&nbsp;Delete window. If window is dirty, instead print a warning;
+ a second <tt><font size=+1>Del</font></tt> will succeed.<br>
+ <tt><font size=+1>Delcol<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete column and all its windows, after checking that windows
+ are not dirty.<br>
+
+ </table>
+ <tt><font size=+1>Delete<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete window without checking for dirtiness.<br>
+
+ </table>
+ <tt><font size=+1>Dump</font></tt>Write the state of <i>acme</i> to the file name, if specified, or
+ <tt><font size=+1>$home/acme.dump</font></tt> by default.<br>
+ <tt><font size=+1>Edit</font></tt>Treat the argument as a text editing command in the style
+ of <a href="../man1/sam.html"><i>sam</i>(1)</a>. The full <tt><font size=+1>Sam</font></tt> language is implemented except for the
+ commands <tt><font size=+1>k</font></tt>, <tt><font size=+1>n</font></tt>, <tt><font size=+1>q</font></tt>, and <tt><font size=+1>!</font></tt>. The <tt><font size=+1>=</font></tt> command is slightly different:
+ it includes the file name and gives only the line address unless
+ the command is explicitly <tt><font size=+1>=#</font></tt>. The &#8216;current window&#8217; for the
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ command is the body of the window in which the <tt><font size=+1>Edit</font></tt> command is
+ executed. Usually the <tt><font size=+1>Edit</font></tt> command would be typed in a tag; longer
+ commands may be prepared in a scratch window and executed, with
+ <tt><font size=+1>Edit</font></tt> itself in the current window, using the 2-1 chord described
+ below.
+
+ </table>
+ <tt><font size=+1>Exit</font></tt>Exit <i>acme</i> after checking that windows are not dirty.<br>
+ <tt><font size=+1>Font</font></tt>With no arguments, change the font of the associated window
+ from fixed-spaced to proportional-spaced or <i>vice versa</i>. Given
+ a file name argument, change the font of the window to that stored
+ in the named file. If the file name argument is prefixed by <tt><font size=+1>var</font></tt>
+ (<tt><font size=+1>fix</font></tt>), also set the default proportional-spaced
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ (fixed-spaced) font for future use to that font. Other existing
+ windows are unaffected.<br>
+
+ </table>
+ <tt><font size=+1>Get</font></tt>&nbsp;&nbsp;&nbsp;Load file into window, replacing previous contents (after checking
+ for dirtiness as in <tt><font size=+1>Del</font></tt>). With no argument, use the existing file
+ name of the window. Given an argument, use that file but do not
+ change the window&#8217;s file name.<br>
+ <tt><font size=+1>ID</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print window ID number (<i>q.v.</i>).<br>
+ <tt><font size=+1>Incl</font></tt>When opening &#8216;include&#8217; files (those enclosed in <tt><font size=+1>&lt;&gt;</font></tt>) with button
+ 3, <i>acme</i> searches in directories <tt><font size=+1>/$objtype/include</font></tt> and <tt><font size=+1>/sys/include</font></tt>.
+ <tt><font size=+1>Incl</font></tt> adds its arguments to a supplementary list of include directories,
+ analogous to the <tt><font size=+1>&#8722;I</font></tt> option to the compilers. This list is per-window
+ and is inherited when
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ windows are created by actions in that window, so <i>Incl</i> is most
+ usefully applied to a directory containing relevant source. With
+ no arguments, <i>Incl</i> prints the supplementary list. This command
+ is largely superseded by plumbing (see <a href="../man7/plumb.html"><i>plumb</i>(7)</a>).<br>
+
+ </table>
+ <tt><font size=+1>Kill</font></tt>Send a <tt><font size=+1>kill</font></tt> note to <i>acme</i>-initiated commands named as arguments.<br>
+ <tt><font size=+1>Local<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ In the Plan 9 <i>acme</i>, this prefix causes a command to be run in
+ <i>acme</i>&#8217;s<i>own</i> file name space and environment variable group. On Unix
+ this is impossible. <tt><font size=+1>Local</font></tt> is recognized as a prefix, but has no
+ effect on the command being executed.<br>
+
+ </table>
+ <tt><font size=+1>Load</font></tt>Restore the state of <i>acme</i> from a file (default <tt><font size=+1>$home/acme.dump</font></tt>)
+ created by the <tt><font size=+1>Dump</font></tt> command.<br>
+ <tt><font size=+1>Look</font></tt>Search in body for occurrence of literal text indicated by
+ the argument or, if none is given, by the selected text in the
+ body.<br>
+ <tt><font size=+1>New</font></tt>&nbsp;&nbsp;&nbsp;Make new window. With arguments, load the named files into
+ windows.<br>
+ <tt><font size=+1>Newcol<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Make new column.<br>
+
+ </table>
+ <tt><font size=+1>Paste<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Replace most recently selected text with contents of snarf buffer.<br>
+
+ </table>
+ <tt><font size=+1>Put</font></tt>&nbsp;&nbsp;&nbsp;Write window to the named file. With no argument, write to
+ the file named in the tag of the window.<br>
+ <tt><font size=+1>Putall<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Write all dirty windows whose names indicate existing regular
+ files.<br>
+
+ </table>
+ <tt><font size=+1>Redo</font></tt>Complement of <tt><font size=+1>Undo</font></tt>.<br>
+ <tt><font size=+1>Send</font></tt>Append selected text or snarf buffer to end of body; used
+ mainly with <i>win</i>.<br>
+ <tt><font size=+1>Snarf<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Place selected text in snarf buffer.<br>
+
+ </table>
+ <tt><font size=+1>Sort</font></tt>Arrange the windows in the column from top to bottom in lexicographical
+ order based on their names.<br>
+ <tt><font size=+1>Tab</font></tt>&nbsp;&nbsp;&nbsp;Set the width of tab stops for this window to the value of
+ the argument, in units of widths of the zero character. With no
+ arguments, it prints the current value.<br>
+ <tt><font size=+1>Undo</font></tt>Undo last textual change or set of changes.<br>
+ <tt><font size=+1>Zerox<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Create a copy of the window containing most recently selected
+ text.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ A common place to store text for commands is in the tag; in fact
+ <i>acme</i> maintains a set of commands appropriate to the state of the
+ window to the left of the bar in the tag.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the text indicated with button 2 is not a recognized built-in,
+ it is executed as a shell command. For example, indicating <tt><font size=+1>date</font></tt>
+ with button 2 runs <a href="../man1/date.html"><i>date</i>(1)</a>. The standard and error outputs of
+ commands are sent to the error window associated with the directory
+ from which the command was run, which will be created if
+ necessary. For example, in a window <tt><font size=+1>/etc/passwd</font></tt> executing <tt><font size=+1>pwd</font></tt>
+ will produce the output <tt><font size=+1>/etc</font></tt> in a (possibly newly-created) window
+ labeled <tt><font size=+1>/etc/+Errors</font></tt>; in a window containing <tt><font size=+1>/home/rob/sam/sam.c</font></tt>
+ executing <tt><font size=+1>mk</font></tt> will run <a href="../man1/mk.html"><i>mk</i>(1)</a> in <tt><font size=+1>/home/rob/sam</font></tt>, producing output
+ in a window labeled
+ <tt><font size=+1>/home/rob/sam/+Errors</font></tt>. The environment of such commands contains
+ the variable <tt><font size=+1>$%</font></tt> with value set to the filename of the window in
+ which the command is run, and <tt><font size=+1>$winid</font></tt> set to the window&#8217;s id number
+ (see <a href="../man4/acme.html"><i>acme</i>(4)</a>).<br>
+ <p><font size=+1><b>Mouse button 3 </b></font><br>
+ Pointing at text with button 3 instructs <i>acme</i> to locate or acquire
+ the file, string, etc. described by the indicated text and its
+ context. This description follows the actions taken when button
+ 3 is released after sweeping out some text. In the description,
+ <i>text</i> refers to the text of the original sweep or, if it was null,
+ the
+ result of applying the same expansion rules that apply to button
+ 2 actions.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the text names an existing window, <i>acme</i> moves the mouse cursor
+ to the selected text in the body of that window. If the text names
+ an existing file with no associated window, <i>acme</i> loads the file
+ into a new window and moves the mouse there. If the text is a
+ file name contained in angle brackets, <i>acme</i> loads the
+ indicated include file from the directory appropriate to the suffix
+ of the file name of the window holding the text. (The <tt><font size=+1>Incl</font></tt> command
+ adds directories to the standard list.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the text begins with a colon, it is taken to be an address,
+ in the style of <a href="../man1/sam.html"><i>sam</i>(1)</a>, within the body of the window containing
+ the text. The address is evaluated, the resulting text highlighted,
+ and the mouse moved to it. Thus, in <i>acme</i>, one must type <tt><font size=+1>:/regexp</font></tt>
+ or <tt><font size=+1>:127</font></tt> not just <tt><font size=+1>/regexp</font></tt> or <tt><font size=+1>127</font></tt>. (There is an easier
+ way to locate literal text; see below.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the text is a file name followed by a colon and an address,
+ <i>acme</i> loads the file and evaluates the address. For example, clicking
+ button 3 anywhere in the text <tt><font size=+1>file.c:27</font></tt> will open <tt><font size=+1>file.c</font></tt>, select
+ line 27, and put the mouse at the beginning of the line. The rules
+ about Error files, directories, and so on all combine
+ to make this an efficient way to investigate errors from compilers,
+ etc.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the text is not an address or file, it is taken to be literal
+ text, which is then searched for in the body of the window in
+ which button 3 was clicked. If a match is found, it is selected
+ and the mouse is moved there. Thus, to search for occurrences
+ of a word in a file, just click button 3 on the word. Because
+ of the rule of
+ using the selection as the button 3 action, subsequent clicks
+ will find subsequent occurrences without moving the mouse.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In all these actions, the mouse motion is not done if the text
+ is a null string within a non-null selected string in the tag,
+ so that (for example) complex regular expressions may be selected
+ and applied repeatedly to the body by just clicking button 3 over
+ them.<br>
+ <p><font size=+1><b>Chords of mouse buttons </b></font><br>
+ Several operations are bound to multiple-button actions. After
+ selecting text, with button 1 still down, pressing button 2 executes
+ <tt><font size=+1>Cut</font></tt> and button 3 executes <tt><font size=+1>Paste</font></tt>. After clicking one button, the
+ other undoes the first; thus (while holding down button 1) 2 followed
+ by 3 is a <tt><font size=+1>Snarf</font></tt> that leaves the file undirtied; 3
+ followed by 2 is a no-op. These actions also apply to text selected
+ by double-clicking because the double-click expansion is made
+ when the second click starts, not when it ends.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Commands may be given extra arguments by a mouse chord with buttons
+ 2 and 1. While holding down button 2 on text to be executed as
+ a command, clicking button 1 appends the text last pointed to
+ by button 1 as a distinct final argument. For example, to search
+ for literal <tt><font size=+1>text</font></tt> one may execute <tt><font size=+1>Look text</font></tt> with
+ button 2 or instead point at <tt><font size=+1>text</font></tt> with button 1 in any window,
+ release button 1, then execute <tt><font size=+1>Look</font></tt>, clicking button 1 while 2
+ is held down.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When an external command (e.g. <a href="../man1/echo.html"><i>echo</i>(1)</a>) is executed this way,
+ the extra argument is passed as expected and an environment variable
+ <tt><font size=+1>$acmeaddr</font></tt> is created that holds, in the form interpreted by button
+ 3, the fully-qualified address of the extra argument.<br>
+ <p><font size=+1><b>Support programs </b></font><br>
+ <i>Win</i> creates a new <i>acme</i> window and runs a <i>command</i> (default <tt><font size=+1>$SHELL</font></tt>)
+ in it, turning the window into something analogous to an <a href="../man1/rio.html"><i>rio</i>(1)</a>
+ window. Executing text in a <i>win</i> window with button 2 is similar
+ to using <tt><font size=+1>Send</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Awd</i> loads the tag line of its window with the directory in which
+ it&#8217;s running, suffixed <tt><font size=+1>&#8722;</font></tt><i>label</i> (default <tt><font size=+1>rc</font></tt>); it is intended to
+ be executed by a <tt><font size=+1>cd</font></tt> function for use in <i>win</i> windows. An example
+ definition is<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fn cd { builtin cd $1 &amp;&amp; awd $sysname }<br>
+ </font></tt>
+ </table>
+ <p><font size=+1><b>Applications and guide files </b></font><br>
+ In the directory <tt><font size=+1>/acme</font></tt> live several subdirectories, each corresponding
+ to a program or set of related programs that employ <i>acme&#8217;s</i> user
+ interface. Each subdirectory includes source, binaries, and a
+ <tt><font size=+1>readme</font></tt> file for further information. It also includes a <tt><font size=+1>guide</font></tt>,
+ a text file holding sample commands to invoke the
+ programs. The idea is to find an example in the guide that best
+ matches the job at hand, edit it to suit, and execute it.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Whenever a command is executed by <i>acme</i>, the default search path
+ includes the directory of the window containing the command and
+ its subdirectory <tt><font size=+1>$cputype</font></tt>. The program directories in <tt><font size=+1>/acme</font></tt> contain
+ appropriately labeled subdirectories of binaries, so commands
+ named in the guide files will be found
+ automatically when run. Also, <i>acme</i> binds the directories <tt><font size=+1>/acme/bin</font></tt>
+ and <tt><font size=+1>/acme/bin/$cputype</font></tt> to the end of <tt><font size=+1>/bin</font></tt> when it starts; this
+ is where <i>acme</i>-specific programs such as <i>win</i> and <i>awd</i> reside.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>$home/acme.dump</font></tt>&nbsp;&nbsp;&nbsp;default file for <tt><font size=+1>Dump</font></tt> and <tt><font size=+1>Load</font></tt>; also where state
+ is written if <i>acme</i> dies or is killed unexpectedly, e.g. by deleting
+ its window.<br>
+ <tt><font size=+1>/acme/*/guide</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;template files for applications<br>
+ <tt><font size=+1>/acme/*/readme</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;informal documentation for applications<br>
+ <tt><font size=+1>/acme/*/src</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;source for applications<br>
+ <tt><font size=+1>/acme/*/mips</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MIPS-specific binaries for applications<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/acme<br>
+ /usr/local/plan9/src/cmd/9term/win.c<br>
+ /usr/local/plan9/bin/awd<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man4/acme.html"><i>acme</i>(4)</a><br>
+ Rob Pike, <i>Acme: A User Interface for Programmers.<br>
+ </i>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ With the <tt><font size=+1>&#8722;l</font></tt> option or <tt><font size=+1>Load</font></tt> command, the recreation of windows
+ under control of external programs such as <i>win</i> is just to rerun
+ the command; information may be lost.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/acmeevent.html b/man/man1/acmeevent.html
new file mode 100644
index 00000000..230145ce
--- /dev/null
+++ b/man/man1/acmeevent.html
@@ -0,0 +1,332 @@
+<head>
+<title>acmeevent(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ACMEEVENT(1)</b><td align=right><b>ACMEEVENT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ acmeevent, acme.rc &ndash; shell script support for acme clients<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9p read acme/acme/$winid/event | acmeevent
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>. /usr/local/plan9/lib/acme.rc
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>newwindow
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>winread</font></tt> <i>file
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>winwrite</font></tt> <i>file
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>winctl</font></tt> <i>cmd
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>windump</font></tt> [ <i>dumpdir</i> | <tt><font size=+1>&#8722;</font></tt> ] [ <i>dumpcmd</i> | <tt><font size=+1>&#8722;</font></tt> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>winname</font></tt> <i>name
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>windel</font></tt> [ <tt><font size=+1>sure</font></tt> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>winwriteevent</font></tt> <i>c1 c2 q0 q1</i> [ <i>eq0 eq1 flag textlen text chordarg
+ chordaddr</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>wineventloop<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Acmeevent</i> and <i>acme.rc</i> make it easy to write simple <a href="../man1/acme.html"><i>acme</i>(1)</a> client
+ programs as shell scripts.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Acme</i> clients read the <tt><font size=+1>event</font></tt> files (see <a href="../man4/acme.html"><i>acme</i>(4)</a>) for the windows
+ they control, reacting to the events. The events are presented
+ in a format that is easy to read with C programs but hard to read
+ with shell scripts.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Acmeevent</i> reads an <a href="../man4/acme.html"><i>acme</i>(4)</a> event stream from standard input, printing
+ a shell-friendly version of the events, one per line, on standard
+ output. Each output line from <i>acmeevent</i> has the form:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>event</font></tt> <i>c1 c2 q0 q1 eq0 eq1 flag textlen text chordarg chordaddr
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ The fields are:<br>
+ <i>c1</i>&nbsp;&nbsp;&nbsp;&nbsp;A character indicating the origin or cause of the action. The
+ possible causes are: a write to the body or tag file (<tt><font size=+1>E</font></tt>), a write
+ to the window&#8217;s other files (<tt><font size=+1>F</font></tt>), input via the keyboard (<tt><font size=+1>K</font></tt>), and
+ input via the mouse (<tt><font size=+1>M</font></tt>).<br>
+ <i>c2</i>&nbsp;&nbsp;&nbsp;&nbsp;A character indicating the type of action. The possible types
+ are: text deleted from the body (<tt><font size=+1>D</font></tt>), text deleted from the tag
+ (<tt><font size=+1>d</font></tt>), text inserted in the body (<tt><font size=+1>I</font></tt>), text inserted in the tag (<tt><font size=+1>i</font></tt>),
+ a button 3 action in the body (<tt><font size=+1>L</font></tt>), a button 3 action in the tag
+ (<tt><font size=+1>l</font></tt>), a button 2 action in the body (<tt><font size=+1>X</font></tt>), and a button 2 action
+ in the
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tag (<tt><font size=+1>x</font></tt>).<br>
+
+ </table>
+ <i>q0</i>, <i>q1</i>The character addresses of the action.<br>
+ <i>eq0</i>, <i>q1<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The expanded character addresses of the action. If the text indicated
+ by <i>q0</i>, <i>q1</i> is a null string that has a non-null expansion, <i>eq0</i>,
+ <i>eq1</i> are the addresses of the expansion. Otherwise they are the
+ same as <i>q0</i>, <i>q1</i>.<br>
+
+ </table>
+ <i>flag&nbsp;&nbsp;&nbsp;Flag</i> is a bitwise OR (reported decimally) of the following:
+ 1 if the text indicated is recognized as an <i>acme</i> built-in command;
+ 2 if the text indicated is a null string that has a non-null expansion
+ (see <i>eq0</i>, <i>eq1</i> above); 8 if the command has an extra (chorded)
+ argument (see <i>chordarg</i> below). <i>Flag</i> remains from the
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man4/acme.html"><i>acme</i>(4)</a> event format. Because <i>eq0</i>, <i>eq1</i>, and <i>chordarg</i> are explicit
+ in each event (unlike in <a href="../man4/acme.html"><i>acme</i>(4)</a> events), <i>flag</i> can usually be
+ ignored.<br>
+
+ </table>
+ <i>textlen<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The length of the action text (or its expansion) for button 2
+ and button 3 events in characters.<br>
+
+ </table>
+ <i>text</i>&nbsp;&nbsp;&nbsp;If <i>textlen</i> is less than 256 chracters, <i>text</i> is the action
+ text itself. Otherwise it is an empty string and must be read
+ from the <tt><font size=+1>data</font></tt> file.<br>
+ <i>chordarg<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The chorded argument for an action.<br>
+
+ </table>
+ <i>chordorigin<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ If the chord argument is in the body of a named window, <i>chordorigin</i>
+ specifies the full address of the argument, as in <tt><font size=+1>/etc/group:#123,#234</font></tt>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ To experiment with <i>acmeevent</i>, create an empty window in <i>acme</i> (using
+ <i>New</i>),<i>type<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>9p read acme/$winid/event | acmeevent<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ inside it, and execute it. Actions performed on the window will
+ be printed as events in the <tt><font size=+1>+Errors</font></tt> window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Acme.rc</i> is a library of <a href="../man1/rc.html"><i>rc</i>(1)</a> shell functions useful for writing
+ acme clients.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Newwindow</i> creates a new acme window and sets <tt><font size=+1>$winid</font></tt> to the new
+ window&#8217;s id. The other commands all use <tt><font size=+1>$winid</font></tt> to determine which
+ window to operate on.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Winread</i> prints the current window&#8217;s <i>file</i> to standard output. It
+ is equivalent to <tt><font size=+1>cat /mnt/acme/acme/$winid/</font></tt><i>file</i> on Plan 9. Similarly,
+ <i>winwrite</i> writes standard input to the current window&#8217;s <i>file</i>. <i>Winread</i>
+ and <i>winwrite</i> are useful mainly in building more complex functions.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Winctl</i> writes <i>cmd</i> to the window&#8217;s <tt><font size=+1>ctl</font></tt> file. The most commonly-used
+ command is <tt><font size=+1>clean</font></tt>, which marks the window as clean. See <a href="../man4/acme.html"><i>acme</i>(4)</a>
+ for a full list of commands.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Windump</i> sets the window&#8217;s dump directory and dump command (see
+ <a href="../man4/acme.html"><i>acme</i>(4)</a>). If either argument is omitted or is <tt><font size=+1>&#8722;</font></tt>, that argument
+ is not set.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Winname</i> sets the name displayed in the window&#8217;s tag.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Windel</i> simulates the <tt><font size=+1>Del</font></tt> command. If the argument <tt><font size=+1>sure</font></tt> is given,
+ it simulates the <tt><font size=+1>Delete</font></tt> command.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Winwriteevent</i> writes an event to the window&#8217;s event file. The
+ event is in the format produced by <i>acmeevent</i>. Only the first four
+ arguments are necessary: the rest are ignored. Event handlers
+ should call <i>winwriteevent</i> to pass unhandled button 2 or button
+ 3 events back to <i>acme</i> for processing.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Wineventloop</i> executes the current window&#8217;s event file, as output
+ by <i>acmeevent</i>. It returns when the window has been deleted. Before
+ running <i>wineventloop ,</i> clients must define a shell function named
+ <tt><font size=+1>event</font></tt>, which will be run for each incoming event, as <i>rc</i> executes
+ the output of <i>acmeevent</i>. A typical event function
+ need only worry about button 2 and button 3 events. Those events
+ not handled should be sent back to <i>acme</i> with <i>winwriteevent</i>.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Adict</i>, a dictionary browser, is implemented using <i>acmeevent</i> and
+ <i>acme.rc</i>. The <i>event</i> handler is:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fn event {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ switch($1$2){<br>
+ case Mx MX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# button 2 &#8722; pass back to acme<br>
+ winwriteevent $*<br>
+ case Ml ML &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# button 3 &#8722; open new window on dictionary or entry<br>
+ {<br>
+ if(~ $dict NONE)<br>
+ dictwin /adict/$7/ $7<br>
+ if not<br>
+ dictwin /adict/$dict/$7 $dict $7<br>
+ } &amp;<br>
+ }<br>
+
+ </table>
+ }<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Note that the button 3 handler starts a subshell in which to run
+ <i>dictwin</i>. That subshell will create a new window, set its name,
+ possibly fill the window with a dictionary list or dictionary
+ entry, mark the window as clean, and run the event loop:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fn dictwin {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ newwindow<br>
+ winname $1<br>
+ dict=$2<br>
+ if(~ $dict NONE)<br>
+ dict &#8722;d '?' &gt;[2=1] | sed 1d | winwrite body<br>
+ if(~ $#* 3)<br>
+ dict &#8722;d $dict $3 &gt;[2=1] | winwrite body<br>
+ winctl clean<br>
+ wineventloop<br>
+
+ </table>
+ }<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ The script starts with an initial window:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>dictwin /adict/ NONE<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Button 3 clicking on a dictionary name in the initial window will
+ create a new empty window for that dictionary. Typing and button
+ 3 clicking on a word in that window will create a new window with
+ the dictionary&#8217;s entry for that word.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ See <tt><font size=+1>/usr/local/plan9/bin/adict</font></tt> for the full implementation.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/acmeevent.c<br>
+ /usr/local/plan9/lib/acme.rc<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/acme.html"><i>acme</i>(1)</a>, <a href="../man4/acme.html"><i>acme</i>(4)</a>, <a href="../man1/rc.html"><i>rc</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ There is more that could be done to ease the writing of complicated
+ clients.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/ascii.html b/man/man1/ascii.html
new file mode 100644
index 00000000..4067eece
--- /dev/null
+++ b/man/man1/ascii.html
@@ -0,0 +1,159 @@
+<head>
+<title>ascii(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ASCII(1)</b><td align=right><b>ASCII(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ ascii, unicode &ndash; interpret ASCII, Unicode characters<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>ascii</font></tt> [ <tt><font size=+1>&#8722;8</font></tt> ] [ <tt><font size=+1>&#8722;oxdb</font></tt><i>n</i> ] [ <tt><font size=+1>&#8722;nct</font></tt> ] [ <i>text</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>unicode</font></tt> [ <tt><font size=+1>&#8722;nt</font></tt> ] <i>hexmin</i><tt><font size=+1>&#8722;</font></tt><i>hexmax
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>unicode</font></tt> [ <tt><font size=+1>&#8722;t</font></tt> ] <i>hex</i> [ ... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>unicode</font></tt> [ <tt><font size=+1>&#8722;n</font></tt> ] <i>characters
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>look</font></tt> <i>hex</i> <tt><font size=+1>/usr/local/plan9/lib/unicode<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Ascii</i> prints the ASCII values corresponding to characters and
+ <i>vice versa</i>; under the <tt><font size=+1>&#8722;8</font></tt> option, the ISO Latin-1 extensions (codes
+ 0200-0377) are included. The values are interpreted in a settable
+ numeric base; <tt><font size=+1>&#8722;o</font></tt> specifies octal, <tt><font size=+1>&#8722;d</font></tt> decimal, <tt><font size=+1>&#8722;x</font></tt> hexadecimal (the
+ default), and <tt><font size=+1>&#8722;b</font></tt><i>n</i> base <i>n</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ With no arguments, <i>ascii</i> prints a table of the character set in
+ the specified base. Characters of <i>text</i> are converted to their
+ ASCII values, one per line. If, however, the first <i>text</i> argument
+ is a valid number in the specified base, conversion goes the opposite
+ way. Control characters are printed as two- or three-character
+ mnemonics. Other options are:<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Force numeric output.<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Force character output.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Convert from numbers to running text; do not interpret control
+ characters or insert newlines.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Unicode</i> is similar; it converts between UTF and character values
+ from the Unicode Standard (see <a href="../man7/utf.html"><i>utf</i>(7)</a>). If given a range of hexadecimal
+ numbers, <i>unicode</i> prints a table of the specified Unicode characters
+ -- their values and UTF representations. Otherwise it translates
+ from UTF to numeric value or vice versa, depending
+ on the appearance of the supplied text; the <tt><font size=+1>&#8722;n</font></tt> option forces numeric
+ output to avoid ambiguity with numeric characters. If converting
+ to UTF , the characters are printed one per line unless the <tt><font size=+1>&#8722;t</font></tt>
+ flag is set, in which case the output is a single string containing
+ only the specified characters. Unlike <i>ascii</i>, <i>unicode</i> treats
+ no characters specially.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The output of <i>ascii</i> and <i>unicode</i> may be unhelpful if the characters
+ printed are not available in the current font.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The file <tt><font size=+1>/usr/local/plan9/lib/unicode</font></tt> contains a table of characters
+ and descriptions, sorted in hexadecimal order, suitable for <a href="../man1/look.html"><i>look</i>(1)</a>
+ on the lower case <i>hex</i> values of characters.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>ascii &#8722;d<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the ASCII table base 10.<br>
+
+ </table>
+ <tt><font size=+1>unicode p<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the hex value of &#8216;p&#8217;.<br>
+
+ </table>
+ <tt><font size=+1>unicode 2200&#8722;22f1<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print a table of miscellaneous mathematical symbols.<br>
+
+ </table>
+ <tt><font size=+1>look 039 /usr/local/plan9/lib/unicode<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ See the start of the Greek alphabet&#8217;s encoding in the Unicode
+ Standard.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/lib/unicode<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ table of characters and descriptions.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/ascii.c<br>
+ /usr/local/plan9/src/cmd/unicode.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/look.html"><i>look</i>(1)</a>, <a href="../man1/tcs.html"><i>tcs</i>(1)</a>, <a href="../man7/utf.html"><i>utf</i>(7)</a>, <a href="../man7/font.html"><i>font</i>(7)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/astro.html b/man/man1/astro.html
new file mode 100644
index 00000000..f410421c
--- /dev/null
+++ b/man/man1/astro.html
@@ -0,0 +1,125 @@
+<head>
+<title>astro(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ASTRO(1)</b><td align=right><b>ASTRO(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ astro &ndash; print astronomical information<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>astro</font></tt> [ <tt><font size=+1>&#8722;dlpsatokm</font></tt> ] [ <tt><font size=+1>&#8722;c</font></tt> n ] [ <tt><font size=+1>&#8722;C</font></tt> d ] [ <tt><font size=+1>&#8722;e</font></tt> <i>obj1 obj2</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Astro</i> reports upcoming celestial events, by default for 24 hours
+ starting now. The options are:<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read the starting date. A prompt gives the input format.<br>
+ <tt><font size=+1>l</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read the north latitude, west longitude, and elevation of the
+ observation point. A prompt gives the input format. If <tt><font size=+1>l</font></tt> is missing,
+ the initial position is read from the file <tt><font size=+1>/usr/local/plan9/sky/here</font></tt>.<br>
+ <tt><font size=+1>c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report for <i>n</i> (default 1) successive days.<br>
+ <tt><font size=+1>C</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Used with <tt><font size=+1>&#8722;c</font></tt>, set the interval to <tt><font size=+1>d</font></tt> days (or fractions of days).<br>
+ <tt><font size=+1>e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report distance between the centers of objects, in arc seconds,
+ during eclipses or occultations involving <i>obj1</i> and <i>obj2</i>.<br>
+ <tt><font size=+1>p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the positions of objects at the given time rather than
+ searching for interesting conjunctions. For each, the name is
+ followed by the right ascension (hours, minutes, seconds), declination
+ (degrees, minutes, seconds), azimuth (degrees), elevation (degrees),
+ and semidiameter (arc seconds). For the sun and
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ moon, the magnitude is also printed. The first line of output
+ presents the date and time, sidereal time, and the latitude, longitude,
+ and elevation.<br>
+
+ </table>
+ <tt><font size=+1>s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print output in English words suitable for speech synthesizers.<br>
+ <tt><font size=+1>a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Include a list of artificial earth satellites for interesting
+ events. (There are no orbital elements for the satellites, so
+ this option is not usable.)<br>
+ <tt><font size=+1>t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read &#916;T from standard input. &#916;T is the difference between ephemeris
+ and universal time (seconds) due to the slowing of the earth&#8217;s
+ rotation. &#916;T is normally calculated from an empirical formula.
+ This option is needed only for very accurate timing of occultations,
+ eclipses, etc.<br>
+ <tt><font size=+1>o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Search for stellar occultations.<br>
+ <tt><font size=+1>k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print times in local time (&#8216;kitchen clock&#8217;) as described in the
+ <tt><font size=+1>timezone</font></tt> environment variable.<br>
+ <tt><font size=+1>m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Includes a single comet in the list of objects. This is modified
+ (in the source) to refer to an approaching comet but in steady
+ state usually refers to the last interesting comet (currently
+ Hale-Bopp, C/1995 O1).<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/sky/estartab<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ ecliptic star data<br>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/sky/here<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ default latitude (N), longitude (W), and elevation (meters)<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/astro<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/scat.html"><i>scat</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <tt><font size=+1>k</font></tt> option reverts to GMT outside of 1970-2036.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/basename.html b/man/man1/basename.html
new file mode 100644
index 00000000..b04ce45d
--- /dev/null
+++ b/man/man1/basename.html
@@ -0,0 +1,63 @@
+<head>
+<title>basename(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>BASENAME(1)</b><td align=right><b>BASENAME(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ basename &ndash; strip file name affixes<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>basename</font></tt> [ <tt><font size=+1>&#8722;d</font></tt> ] <i>string</i> [ <i>suffix</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Basename</i> deletes any prefix ending in slash (<tt><font size=+1>/</font></tt>) and the <i>suffix</i>,
+ if present in <i>string</i>, from <i>string</i>, and prints the result on the
+ standard output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;d</font></tt> option instead prints the directory component, that is,
+ <i>string</i> up to but not including the final slash. If the string
+ contains no slash, a period and newline are printed.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/basename.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/bc.html b/man/man1/bc.html
new file mode 100644
index 00000000..c4f7e7ba
--- /dev/null
+++ b/man/man1/bc.html
@@ -0,0 +1,272 @@
+<head>
+<title>bc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>BC(1)</b><td align=right><b>BC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ bc &ndash; arbitrary-precision arithmetic language<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>bc</font></tt> [ <tt><font size=+1>&#8722;c</font></tt> ] [ <tt><font size=+1>&#8722;l</font></tt> ] [ <tt><font size=+1>&#8722;s</font></tt> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Bc</i> is an interactive processor for a language that resembles C
+ but provides arithmetic on numbers of arbitrary length with up
+ to 100 digits right of the decimal point. It takes input from
+ any files given, then reads the standard input. The <tt><font size=+1>&#8722;l</font></tt> argument
+ stands for the name of an arbitrary precision math library. The
+ <tt><font size=+1>&#8722;s
+ </font></tt>argument suppresses the automatic display of calculation results;
+ all output is via the <tt><font size=+1>print</font></tt> command.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The following syntax for <i>bc</i> programs is like that of C; <i>L</i> means
+ letter <tt><font size=+1>a</font></tt>-<tt><font size=+1>z</font></tt>, <i>E</i> means expression, <i>S</i> means statement.<br>
+ Lexical<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ comments are enclosed in <tt><font size=+1>/* */<br>
+ </font></tt>newlines end statements<br>
+
+ </table>
+
+ </table>
+ Names<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ simple variables: <i>L<br>
+ </i>array elements: <i>L</i><tt><font size=+1>[</font></tt><i>E</i><tt><font size=+1>]<br>
+ </font></tt>The words <tt><font size=+1>ibase</font></tt>, <tt><font size=+1>obase</font></tt>, and <tt><font size=+1>scale<br>
+ </font></tt>
+ </table>
+
+ </table>
+ Other operands<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ arbitrarily long numbers with optional sign and decimal point.<br>
+ <tt><font size=+1>(</font></tt><i>E</i><tt><font size=+1>)<br>
+ sqrt(</font></tt><i>E</i><tt><font size=+1>)<br>
+ length(</font></tt><i>E</i><tt><font size=+1>)<br>
+ </font></tt>number of significant decimal digits<br>
+ <tt><font size=+1>scale(</font></tt><i>E</i><tt><font size=+1>)<br>
+ </font></tt>number of digits right of decimal point<br>
+ <i>L</i><tt><font size=+1>(</font></tt><i>E</i><tt><font size=+1>,</font></tt><i>...</i><tt><font size=+1>,</font></tt><i>E</i><tt><font size=+1>)<br>
+ </font></tt>function call<br>
+
+ </table>
+
+ </table>
+ Operators<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>+ &nbsp;&nbsp;&nbsp;&#8722; &nbsp;&nbsp;&nbsp;* &nbsp;&nbsp;&nbsp;/ &nbsp;&nbsp;&nbsp;% &nbsp;&nbsp;&nbsp;^ </font></tt> (<tt><font size=+1>%</font></tt> is remainder; <tt><font size=+1>^</font></tt> is power)<br>
+ <tt><font size=+1>++ &nbsp;&nbsp;&nbsp;&#8722;&#8722; <br>
+ == &nbsp;&nbsp;&nbsp;&lt;= &nbsp;&nbsp;&nbsp;&gt;= &nbsp;&nbsp;&nbsp;!= &nbsp;&nbsp;&nbsp;&lt; &nbsp;&nbsp;&nbsp;&gt;<br>
+ = &nbsp;&nbsp;&nbsp;+= &nbsp;&nbsp;&nbsp;&#8722;= &nbsp;&nbsp;&nbsp;*= &nbsp;&nbsp;&nbsp;/= &nbsp;&nbsp;&nbsp;%= &nbsp;&nbsp;&nbsp;^=<br>
+ </font></tt>
+ </table>
+
+ </table>
+ Statements<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>E<br>
+ </i><tt><font size=+1>{</font></tt> <i>S</i> <tt><font size=+1>;</font></tt> ... <tt><font size=+1>;</font></tt> <i>S</i> <tt><font size=+1>}<br>
+ print</font></tt> <i>E<br>
+ </i><tt><font size=+1>if (</font></tt> <i>E</i> <tt><font size=+1>)</font></tt> <i>S<br>
+ </i><tt><font size=+1>while (</font></tt> <i>E</i> <tt><font size=+1>)</font></tt> <i>S<br>
+ </i><tt><font size=+1>for (</font></tt> <i>E</i> <tt><font size=+1>;</font></tt> <i>E</i> <tt><font size=+1>;</font></tt> <i>E</i> <tt><font size=+1>)</font></tt> <i>S<br>
+ </i>null statement<br>
+ <tt><font size=+1>break<br>
+ quit<br>
+ &quot;</font></tt>text<tt><font size=+1>&quot;<br>
+ </font></tt>
+ </table>
+
+ </table>
+ Function definitions<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>define</font></tt> <i>L</i> <tt><font size=+1>(</font></tt> <i>L</i> <tt><font size=+1>,</font></tt> ... <tt><font size=+1>,</font></tt> <i>L</i> <tt><font size=+1>){<br>
+ auto</font></tt> <i>L</i> <tt><font size=+1>,</font></tt> ... <tt><font size=+1>,</font></tt> <i>L<br>
+ S</i> <tt><font size=+1>;</font></tt> ... <tt><font size=+1>;</font></tt> <i>S<br>
+ </i><tt><font size=+1>return</font></tt> <i>E
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>}<br>
+ </font></tt>
+ </table>
+
+ </table>
+ Functions in<tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&#8722;l</font></tt> math library<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>s(</font></tt><i>x</i><tt><font size=+1>)</font></tt>sine<br>
+ <tt><font size=+1>c(</font></tt><i>x</i><tt><font size=+1>)</font></tt>cosine<br>
+ <tt><font size=+1>e(</font></tt><i>x</i><tt><font size=+1>)</font></tt>exponential<br>
+ <tt><font size=+1>l(</font></tt><i>x</i><tt><font size=+1>)</font></tt>log<br>
+ <tt><font size=+1>a(</font></tt><i>x</i><tt><font size=+1>)</font></tt>arctangent<br>
+ <tt><font size=+1>j(</font></tt><i>n, x</i><tt><font size=+1>)<br>
+ </font></tt>Bessel function<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+
+ </table>
+ All function arguments are passed by value.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The value of an expression at the top level is printed unless
+ the main operator is an assignment or the <tt><font size=+1>&#8722;s</font></tt> command line argument
+ is given. Text in quotes, which may include newlines, is always
+ printed. Either semicolons or newlines may separate statements.
+ Assignment to <tt><font size=+1>scale</font></tt> influences the number of digits to
+ be retained on arithmetic operations in the manner of <a href="../man1/dc.html"><i>dc</i>(1)</a>. Assignments
+ to <tt><font size=+1>ibase</font></tt> or <tt><font size=+1>obase</font></tt> set the input and output number radix respectively.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The same letter may be used as an array, a function, and a simple
+ variable simultaneously. All variables are global to the program.
+ Automatic variables are pushed down during function calls. In
+ a declaration of an array as a function argument or automatic
+ variable empty square brackets must follow the array name.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Bc</i> is actually a preprocessor for <a href="../man1/dc.html"><i>dc</i>(1)</a>, which it invokes automatically,
+ unless the <tt><font size=+1>&#8722;c</font></tt> (compile only) option is present. In this case the
+ <i>dc</i> input is sent to the standard output instead.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Define a function to compute an approximate value of the exponential.
+ Use it to print 10 values. (The exponential function in the library
+ gives better answers.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>scale = 20<br>
+ define e(x) {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ auto a, b, c, i, s<br>
+ a = 1<br>
+ b = 1<br>
+ s = 1<br>
+ for(i=1; 1; i++) {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ a *= x<br>
+ b *= i<br>
+ c = a/b<br>
+ if(c == 0) return s<br>
+ s += c<br>
+
+ </table>
+ }<br>
+
+ </table>
+ }<br>
+ for(i=1; i&lt;=10; i++) print e(i)<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/lib/bclib</font></tt> mathematical library<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/bc.y<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/dc.html"><i>dc</i>(1)</a>, <a href="../man1/hoc.html"><i>hoc</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ No <tt><font size=+1>&amp;&amp;</font></tt>, <tt><font size=+1>||</font></tt>, or <tt><font size=+1>!</font></tt> operators.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A <tt><font size=+1>for</font></tt> statement must have all three <tt><font size=+1>E</font></tt>s.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A <tt><font size=+1>quit</font></tt> is interpreted when read, not when executed.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/bundle.html b/man/man1/bundle.html
new file mode 100644
index 00000000..4f052d42
--- /dev/null
+++ b/man/man1/bundle.html
@@ -0,0 +1,95 @@
+<head>
+<title>bundle(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>BUNDLE(1)</b><td align=right><b>BUNDLE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ bundle &ndash; collect files for distribution<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>bundle</font></tt> <i>file ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Bundle</i> writes on its standard output a shell script for <a href="../man1/rc.html"><i>rc</i>(1)</a>
+ or a Bourne shell which, when executed, will recreate the original
+ <i>files</i>. Its main use is for distributing small numbers of text
+ files by <a href="../man1/mail.html"><i>mail</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Although less refined than standard archives from <i>9ar</i> (see <a href="../man1/9c.html"><i>9c</i>(1)</a>)
+ or <a href="../man1/tar.html"><i>tar</i>(1)</a>, a <i>bundle</i> file is self-documenting and complete; little
+ preparation is required on the receiving machine.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>bundle mkfile *.[ch] | mail kremvax!boris<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Send a makefile to Boris together with related <tt><font size=+1>.c</font></tt> and <tt><font size=+1>.h</font></tt> files.
+ Upon receiving the mail, Boris may save the file sans postmark,
+ say in <tt><font size=+1>gift/horse</font></tt>, then do<br>
+
+ </table>
+ <tt><font size=+1>cd gift; sh horse; mk<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/bundle<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>9ar</i> (in <a href="../man1/9c.html"><i>9c</i>(1)</a>), <a href="../man1/tar.html"><i>tar</i>(1)</a>, <a href="../man1/mail.html"><i>mail</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Bundle</i> will not create directories and is unsatisfactory for non-text
+ files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Beware of gift horses.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/cal.html b/man/man1/cal.html
new file mode 100644
index 00000000..ec3cffc2
--- /dev/null
+++ b/man/man1/cal.html
@@ -0,0 +1,81 @@
+<head>
+<title>cal(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CAL(1)</b><td align=right><b>CAL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cal &ndash; print calendar<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cal</font></tt> [ <i>month</i> ] [ <i>year</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Cal</i> prints a calendar. <i>Month</i> is either a number from 1 to 12,
+ a lower case month name, or a lower case three-letter prefix of
+ a month name. <i>Year</i> can be between 1 and 9999. If either <i>month</i>
+ or <i>year</i> is omitted, the current month or year is used. If only
+ one argument is given, and it is a number larger than 12, a
+ calendar for all twelve months of the given year is produced;
+ otherwise a calendar for just one month is printed. The calendar
+ produced is that for England and her colonies.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Try<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cal sep 1752<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/cal.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The year is always considered to start in January even though
+ this is historically naive.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Beware that <tt><font size=+1>cal 90</font></tt> refers to the early Christian era, not the
+ 20th century.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/calendar.html b/man/man1/calendar.html
new file mode 100644
index 00000000..48b9816b
--- /dev/null
+++ b/man/man1/calendar.html
@@ -0,0 +1,82 @@
+<head>
+<title>calendar(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CALENDAR(1)</b><td align=right><b>CALENDAR(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ calendar &ndash; print upcoming events<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>calendar</font></tt> [ <tt><font size=+1>&ndash;y</font></tt> ] [ <tt><font size=+1>&ndash;p days</font></tt> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Calendar</i> reads the named files, default <tt><font size=+1>$HOME/lib/calendar</font></tt>, and
+ writes to standard output any lines containing today&#8217;s or tomorrow&#8217;s
+ date. Examples of recognized date formats are &quot;4/11&quot;, &quot;April 11&quot;,
+ &quot;Apr 11&quot;, &quot;11 April&quot;, and &quot;11 Apr&quot;. All comparisons are case insensitive.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the <tt><font size=+1>&ndash;y</font></tt> flag is given, an attempt is made to match on year too.
+ In this case, dates of the forms listed above will be accepted
+ if they are followed by the current year (or last two digits thereof)
+ or not a year &#8212; digits not followed by white space or non-digits.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the <tt><font size=+1>&ndash;p</font></tt> flag is given, its argument is the number of days ahead
+ to match dates. This flag is not repeatable, and it performs no
+ special processing at the end of the week.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ On Friday and Saturday, events through Monday are printed.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ To have your calendar mailed to you every day, use <a href="../man8/cron.html"><i>cron</i>(8)</a>.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>$HOME/lib/calendar</font></tt>&nbsp;&nbsp;&nbsp;personal calendar<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/calendar.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/cat.html b/man/man1/cat.html
new file mode 100644
index 00000000..36d6923e
--- /dev/null
+++ b/man/man1/cat.html
@@ -0,0 +1,126 @@
+<head>
+<title>cat(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CAT(1)</b><td align=right><b>CAT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cat, read, nobs &ndash; catenate files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cat</font></tt> [ <i>file ...</i> ]<br>
+ <tt><font size=+1>read</font></tt> [ <tt><font size=+1>&#8722;m</font></tt> ] [ <tt><font size=+1>&#8722;n</font></tt> <i>nline</i> ] [ <i>file ...</i> ]<br>
+ <tt><font size=+1>nobs</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Cat</i> reads each <i>file</i> in sequence and writes it on the standard
+ output. Thus<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cat file
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ prints a file and<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cat file1 file2 &gt;file3
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ concatenates the first two files and places the result on the
+ third.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If no <i>file</i> is given, <i>cat</i> reads from the standard input. Output
+ is buffered in blocks matching the input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Read</i> copies to standard output exactly one line from the named
+ <i>file</i>, default standard input. It is useful in interactive <a href="../man1/rc.html"><i>rc</i>(1)</a>
+ scripts.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;m</font></tt> flag causes it to continue reading and writing multiple
+ lines until end of file; <tt><font size=+1>&#8722;n</font></tt> causes it to read no more than <i>nline</i>
+ lines.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Read</i> always executes a single <tt><font size=+1>write</font></tt> for each line of input, which
+ can be helpful when preparing input to programs that expect line-at-a-time
+ data. It never reads any more data from the input than it prints
+ to the output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Nobs</i> copies the named files to standard output except that it
+ removes all backspace characters and the characters that precede
+ them. It is useful to use as <tt><font size=+1>$PAGER</font></tt> with the Unix version of <a href="../man1/man.html"><i>man</i>(1)</a>
+ when run inside a <i>win</i> (see <a href="../man1/acme.html"><i>acme</i>(1)</a>) window.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/cat.c<br>
+ /usr/local/plan9/src/cmd/read.c<br>
+ /usr/local/plan9/bin/nobs<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/cp.html"><i>cp</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Read</i> exits with status <tt><font size=+1>eof</font></tt> on end of file or, in the <tt><font size=+1>&#8722;n</font></tt> case,
+ if it doesn&#8217;t read <i>nlines</i> lines.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Beware of <tt><font size=+1>cat a b &gt;a</font></tt> and <tt><font size=+1>cat a b &gt;b</font></tt>, which destroy input files before
+ reading them.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/cleanname.html b/man/man1/cleanname.html
new file mode 100644
index 00000000..8f736fbd
--- /dev/null
+++ b/man/man1/cleanname.html
@@ -0,0 +1,65 @@
+<head>
+<title>cleanname(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CLEANNAME(1)</b><td align=right><b>CLEANNAME(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cleanname &ndash; clean a path name<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cleanname</font></tt> [ <tt><font size=+1>&#8722;d</font></tt> <i>pwd</i> ] <i>names ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ For each file name argument, <i>cleanname</i>, by lexical processing
+ only, prints the shortest equivalent string that names the same
+ (possibly hypothetical) file. It eliminates multiple and trailing
+ slashes, and it lexically interprets <tt><font size=+1>.</font></tt> and <tt><font size=+1>..</font></tt> directory components
+ in the name. If the <tt><font size=+1>&#8722;d</font></tt> option is present, unrooted names are
+ prefixed with <i>pwd</i><tt><font size=+1>/</font></tt> before processing.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/cleanname.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/cleanname.html"><i>cleanname</i>(3)</a>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/clog.html b/man/man1/clog.html
new file mode 100644
index 00000000..6c12e0be
--- /dev/null
+++ b/man/man1/clog.html
@@ -0,0 +1,61 @@
+<head>
+<title>clog(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CLOG(1)</b><td align=right><b>CLOG(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ auxclog &ndash; create date-stamped console log<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>auxclog</font></tt> <i>console logfile<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Auxclog</i> opens the file <i>console</i> and writes every line read from
+ it, prefixed by the ASCII time, to the file <i>logfile</i>.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/auxclog.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Should be named <i>aux/clog</i>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/cmp.html b/man/man1/cmp.html
new file mode 100644
index 00000000..cc7831a9
--- /dev/null
+++ b/man/man1/cmp.html
@@ -0,0 +1,84 @@
+<head>
+<title>cmp(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CMP(1)</b><td align=right><b>CMP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cmp &ndash; compare two files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cmp</font></tt> [ <tt><font size=+1>&#8722;lsL</font></tt> ] <i>file1 file2</i> [ <i>offset1</i> [ <i>offset2</i> ] ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The two files are compared. A diagnostic results if the contents
+ differ, otherwise there is no output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options are:<br>
+ <tt><font size=+1>l</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the byte number (decimal) and the differing bytes (hexadecimal)
+ for each difference.<br>
+ <tt><font size=+1>s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print nothing for differing files, but set the exit status.<br>
+ <tt><font size=+1>L</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the line number of the first differing byte.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If offsets are given, comparison starts at the designated byte
+ position of the corresponding file. Offsets that begin with <tt><font size=+1>0x</font></tt>
+ are hexadecimal; with <tt><font size=+1>0</font></tt>, octal; with anything else, decimal.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/cmp.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/diff.html"><i>diff</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ If a file is inaccessible or missing, the exit status is <tt><font size=+1>open</font></tt>.
+ If the files are the same, the exit status is empty (true). If
+ they are the same except that one is longer than the other, the
+ exit status is <tt><font size=+1>EOF</font></tt>. Otherwise <i>cmp</i> reports the position of the
+ first disagreeing byte and the exit status is <tt><font size=+1>differ</font></tt>.
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/colors.html b/man/man1/colors.html
new file mode 100644
index 00000000..af67eec2
--- /dev/null
+++ b/man/man1/colors.html
@@ -0,0 +1,92 @@
+<head>
+<title>colors(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>COLORS(1)</b><td align=right><b>COLORS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ colors, cmapcube &ndash; display color map<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>colors</font></tt> [ <tt><font size=+1>&#8722;r &#8722;x</font></tt> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>cmapcube</font></tt> [ <tt><font size=+1>&#8722;nbw</font></tt> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Colors</i> presents a grid showing the colors in the RGBV color map
+ (see <a href="../man7/color.html"><i>color</i>(7)</a>).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Clicking mouse button 1 over a color in the grid will display
+ the map index for that color, its red, green, and blue components,
+ and the 32-bit hexadecimal color value as defined in <a href="../man3/allocimage.html"><i>allocimage</i>(3)</a>.
+ If the <tt><font size=+1>&#8722;x</font></tt> option is specified, the components will also be listed
+ in hexadecimal.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;r</font></tt> option instead shows, in the same form, a grey-scale ramp.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A menu on mouse button 3 contains a single entry, to exit the
+ program.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Cmapcube</i> presents the same colors but in a 3-dimensional cube.
+ Dragging with button 1 rotates the cube. Clicking on a color with
+ button 2 displays the map index for that color. Clicking button
+ 3 exits.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;n</font></tt> option disables drawing of the color squares. The <tt><font size=+1>&#8722;b</font></tt> and
+ <tt><font size=+1>&#8722;w</font></tt> options set the background (default grey) to black or white.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/colors.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man7/color.html"><i>color</i>(7)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/comm.html b/man/man1/comm.html
new file mode 100644
index 00000000..860a0956
--- /dev/null
+++ b/man/man1/comm.html
@@ -0,0 +1,79 @@
+<head>
+<title>comm(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>COMM(1)</b><td align=right><b>COMM(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ comm &ndash; select or reject lines common to two sorted files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>comm</font></tt> [ <tt><font size=+1>&#8722;123</font></tt> ] <i>file1 file2<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Comm</i> reads <i>file1</i> and <i>file2</i>, which are in lexicographical order,
+ and produces a three column output: lines only in <i>file1</i>; lines
+ only in <i>file2</i>; and lines in both files. The file name <tt><font size=+1>&#8722;</font></tt> means
+ the standard input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Flag <tt><font size=+1>1</font></tt>, <tt><font size=+1>2</font></tt>, or <tt><font size=+1>3</font></tt> suppresses printing of the corresponding column.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>comm &#8722;12 file1 file2<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print lines common to two sorted files.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/comm.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sort.html"><i>sort</i>(1)</a>, <a href="../man1/cmp.html"><i>cmp</i>(1)</a>, <a href="../man1/diff.html"><i>diff</i>(1)</a>, <a href="../man1/uniq.html"><i>uniq</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/core.html b/man/man1/core.html
new file mode 100644
index 00000000..9c1cf3df
--- /dev/null
+++ b/man/man1/core.html
@@ -0,0 +1,83 @@
+<head>
+<title>core(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CORE(1)</b><td align=right><b>CORE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ core &ndash; print information about dead processes<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>core</font></tt> [ <i>dir</i> | <i>corefile</i> ]...<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Core</i> prints information about dead processes that have been saved
+ as core dumps.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Core reads its arguments in order. If a directory is encountered,
+ <i>core</i> reads every core file named <tt><font size=+1>core.*</font></tt> or <tt><font size=+1>*.core</font></tt> in that directory.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ For each core file read, <i>core</i> prints the date and time the core
+ was generated, the command that generated it, and a short stack
+ trace at the time of the core dump.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If no arguments are given, <i>core</i> searches the directory <tt><font size=+1>$COREDIR</font></tt>
+ for core files; if <tt><font size=+1>$COREDIR</font></tt> is not set, <i>core</i> searches the current
+ directory.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/core.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/acid.html"><i>acid</i>(1)</a>, <a href="../man1/db.html"><i>db</i>(1)</a>, <a href="../man5/core.html"><i>core</i>(5)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Core</i> has not been written.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/crop.html b/man/man1/crop.html
new file mode 100644
index 00000000..34a4eefb
--- /dev/null
+++ b/man/man1/crop.html
@@ -0,0 +1,127 @@
+<head>
+<title>crop(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>CROP(1)</b><td align=right><b>CROP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ crop, iconv &ndash; frame, crop, and convert image<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>crop</font></tt> [ <tt><font size=+1>&#8722;c</font></tt> <i>red green blue</i> ] [ <tt><font size=+1>&#8722;i</font></tt> <i>n</i> | <tt><font size=+1>&#8722;x</font></tt> <i>dx</i> | <tt><font size=+1>&#8722;y</font></tt> <i>dy</i> | <tt><font size=+1>&#8722;r</font></tt> <i>minx miny
+ maxx maxy</i> ] [ <tt><font size=+1>&#8722;t</font></tt> <i>tx ty</i> ] [ <tt><font size=+1>&#8722;b</font></tt> <i>red green blue</i> ] [ <i>file</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>iconv</font></tt> [ <tt><font size=+1>&#8722;u</font></tt> ] [ <tt><font size=+1>&#8722;c</font></tt> <i>chandesc</i> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Crop</i> reads an <a href="../man7/image.html"><i>image</i>(7)</a> file (default standard input), crops it,
+ and writes it as a compressed <a href="../man7/image.html"><i>image</i>(7)</a> file to standard output.
+ There are two ways to specify a crop, by color value or by geometry.
+ They may be combined in a single run of <i>crop</i>, in which case the
+ color value crop will be done first.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;c</font></tt> option takes a red-green-blue triplet as described in <a href="../man3/color.html"><i>color</i>(3)</a>.
+ (For example, white is <tt><font size=+1>255 255 255</font></tt>.) The corresponding color is
+ used as a value to be cut from the outer edge of the picture;
+ that is, the image is cropped to remove the maximal outside rectangular
+ strip in which every pixel has the specified color.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;i</font></tt> option insets the image rectangle by a constant amount,
+ <i>n</i>, which may be negative to generate extra space around the image.
+ The <tt><font size=+1>&#8722;x</font></tt> and <tt><font size=+1>&#8722;y</font></tt> options are similar, but apply only to the <i>x</i> or
+ <i>y</i> coordinates of the image.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;r</font></tt> option specifies an exact rectangle.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;t</font></tt> option specifies that the image&#8217;s coordinate system should
+ be translated by <i>tx</i>, <i>ty</i> as the last step of processing.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;b</font></tt> option specifies a background color to be used to fill
+ around the image if the cropped image is larger than the original,
+ such as if the <tt><font size=+1>&#8722;i</font></tt> option is given a negative argument. This can
+ be used to draw a monochrome frame around the image. The default
+ color is black.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Iconv</i> changes the format of pixels in the image <i>file</i> (default
+ standard input) and writes the resulting image to standard output.
+ Pixels in the image are converted according to the channel descriptor
+ <i>chandesc</i>, (see <a href="../man7/image.html"><i>image</i>(7)</a>). For example, to convert a 4-bit-per-pixel
+ grey-scale image to an 8-bit-per-pixel color-mapped
+ image, <i>chandesc</i> should be <tt><font size=+1>m8</font></tt>. If <i>chandesc</i> is not given, the format
+ is unchanged. The output image is by default compressed; the <tt><font size=+1>&#8722;u</font></tt>
+ option turns off the compression.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ To crop white edges off the picture and add a ten-pixel pink border,<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>crop &#8722;c 255 255 255 &#8722;i &#8722;10 &#8722;b 255 150 150 imagefile &gt; cropped<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/crop.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man7/image.html"><i>image</i>(7)</a>, <a href="../man3/color.html"><i>color</i>(3)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Iconv</i> should be able to do Floyd-Steinberg error diffusion or
+ dithering when converting to small image depths.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/date.html b/man/man1/date.html
new file mode 100644
index 00000000..a8cbbf9a
--- /dev/null
+++ b/man/man1/date.html
@@ -0,0 +1,75 @@
+<head>
+<title>date(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DATE(1)</b><td align=right><b>DATE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ date &ndash; date and time<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>date</font></tt> [ <i>option</i> ] [ <i>seconds</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the date, in the format
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>Tue Aug 16 17:03:52 CDT 1977
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ The options are<br>
+ <tt><font size=+1>&#8722;u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Report Greenwich Mean Time (GMT) rather than local time.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Report the date as the number of seconds since the epoch, 00:00:00
+ GMT, January 1, 1970.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The conversion from Greenwich Mean Time to local time depends
+ on the <tt><font size=+1>$timezone</font></tt> environment variable; see <a href="../man3/ctime.html"><i>ctime</i>(3)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the optional argument <i>seconds</i> is present, it is used as the
+ time to convert rather than the real time.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/date.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/db.html b/man/man1/db.html
new file mode 100644
index 00000000..eed2c3f9
--- /dev/null
+++ b/man/man1/db.html
@@ -0,0 +1,548 @@
+<head>
+<title>db(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DB(1)</b><td align=right><b>DB(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ db &ndash; debugger<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>db</font></tt> [ <i>option ...</i> ] [ <i>textfile</i> ] [ <i>pid</i> | <i>corefile</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Db</i> is a general purpose debugging program. It may be used to examine
+ files and to provide a controlled environment for the execution
+ of programs.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A <i>textfile</i> is a file containing the text and initialized data
+ of an executable program. A <i>pid</i> or <i>corefile</i> specifies the memory
+ image of a process. A <i>pid</i> gives the id of an executing process
+ to be accessed via <a href="../man2/ptrace.html"><i>ptrace</i>(2)</a>. A <i>corefile</i> specifies the name of
+ a core dump (see <a href="../man5/core.html"><i>core</i>(5)</a> on your system of choice) containing
+ the
+ memory image of a terminated process. This manual refers to the
+ memory image specified by <i>pid</i> or <i>corefile</i> as a <i>memfile</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A <i>map</i> associated with each <i>textfile</i> or <i>memfile</i> supports accesses
+ to instructions and data in the file; see &#8216;Addresses&#8217;.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An argument consisting entirely of digits is assumed to be a process
+ id; otherwise, it is the name of a <i>textfile</i> or <i>corefile</i>. When
+ a <i>textfile</i> is given, the textfile map is associated with it. If
+ only a <i>memfile</i> is given, the textfile map is derived from the
+ corresponding <i>textfile</i>, if it can be determined (this varies from
+ system to
+ system). When a <i>memfile</i> is given, the memfile map is associated
+ with it; otherwise the map is undefined and accesses to it are
+ not permitted.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Commands to <i>db</i> are read from the standard input and responses
+ are to the standard output. The options are<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Open <i>textfile</i> and <i>memfile</i> for writing as well as reading.<br>
+ <tt><font size=+1>&#8722;I</font></tt><i>path<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Directory in which to look for relative path names in <tt><font size=+1>$&lt;</font></tt> and <tt><font size=+1>$&lt;&lt;</font></tt>
+ commands.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;m</font></tt><i>machine<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Assume instructions are for the given CPU type (possible names
+ include <tt><font size=+1>386</font></tt> and <tt><font size=+1>powerpc</font></tt>; adding the suffix <tt><font size=+1>&#8722;co</font></tt> as in <tt><font size=+1>386&#8722;co</font></tt> and
+ <tt><font size=+1>powerpc&#8722;co</font></tt> selects disassembly in the manufacturer&#8217;s syntax, if
+ available, rather than the default Plan 9 syntax).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Most <i>db</i> commands have the following form:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ [<i>address</i>] [<tt><font size=+1>,</font></tt> <i>count</i>] [<i>command</i>]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ If <i>address</i> is present then the current position, called &#8216;dot&#8217;,
+ is set to <i>address</i>. Initially dot is set to 0. Most commands are
+ repeated <i>count</i> times with dot advancing between repetitions. The
+ default <i>count</i> is 1. <i>Address</i> and <i>count</i> are expressions. Multiple
+ commands on one line must be separated by <tt><font size=+1>;</font></tt>.
+ <p><font size=+1><b>Expressions </b></font><br>
+ Expressions are evaluated as long <i>ints</i>.<br>
+ <tt><font size=+1>.</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of dot.<br>
+ <tt><font size=+1>+</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of dot incremented by the current increment.<br>
+ <tt><font size=+1>^</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of dot decremented by the current increment.<br>
+ <tt><font size=+1>&quot;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The last <i>address</i> typed.<br>
+ <i>integer<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A number, in decimal radix by default. The prefixes <tt><font size=+1>0</font></tt> and <tt><font size=+1>0o</font></tt> and
+ <tt><font size=+1>0O</font></tt> (zero oh) force interpretation in octal radix; the prefixes
+ <tt><font size=+1>0t</font></tt> and <tt><font size=+1>0T</font></tt> force interpretation in decimal radix; the prefixes
+ <tt><font size=+1>0x</font></tt>, <tt><font size=+1>0X</font></tt>, and <tt><font size=+1>#</font></tt> force interpretation in hexadecimal radix. Thus
+ <tt><font size=+1>020</font></tt>, <tt><font size=+1>0o20</font></tt>, <tt><font size=+1>0t16</font></tt>, and <tt><font size=+1>#10</font></tt> all represent sixteen.
+
+ </table>
+ <i>integer</i><tt><font size=+1>.</font></tt><i>fraction<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A single-precision floating point number.<br>
+
+ </table>
+ <tt><font size=+1>'</font></tt><i>c</i><tt><font size=+1>'</font></tt>&nbsp;&nbsp;&nbsp;The 16-bit value of a character. <tt><font size=+1>\</font></tt> may be used to escape a
+ <tt><font size=+1>'</font></tt>.<br>
+ <tt><font size=+1>&lt;</font></tt><i>name<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value of <i>name</i>, which is a register name. The register names
+ are those printed by the <tt><font size=+1>$r</font></tt> command.<br>
+
+ </table>
+ <i>symbol<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A <i>symbol</i> is a sequence of upper or lower case letters, underscores
+ or digits, not starting with a digit. <tt><font size=+1>\</font></tt> may be used to escape
+ other characters. The location of the <i>symbol</i> is calculated from
+ the symbol table in <i>textfile</i>.<br>
+
+ </table>
+ <i>routine</i><tt><font size=+1>.</font></tt><i>name<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The address of the variable <i>name</i> in the specified C routine. Both
+ <i>routine</i> and <i>name</i> are <i>symbols</i>. If <i>name</i> is omitted the value is
+ the address of the most recently activated stack frame corresponding
+ to <i>routine</i>; if <i>routine</i> is omitted, the active procedure is assumed.<br>
+
+ </table>
+ <i>file</i><tt><font size=+1>:</font></tt><i>integer<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The address of the instruction corresponding to the source statement
+ at the indicated line number of the file. If the source line contains
+ no executable statement, the address of the instruction associated
+ with the nearest executable source line is returned. Files begin
+ at line 1. If multiple files of the same name
+ are loaded, an expression of this form resolves to the first file
+ encountered in the symbol table.<br>
+
+ </table>
+ <tt><font size=+1>(</font></tt><i>exp</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value of the expression <i>exp</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <i>Monadic operators<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>*</font></tt><i>exp</i>&nbsp;&nbsp;&nbsp;The contents of the location addressed by <i>exp</i> in <i>memfile</i>.<br>
+ <tt><font size=+1>@</font></tt><i>exp</i>&nbsp;&nbsp;&nbsp;The contents of the location addressed by <i>exp</i> in <i>textfile</i>.<br>
+ <tt><font size=+1>&#8722;</font></tt><i>exp</i>&nbsp;&nbsp;&nbsp;Integer negation.<br>
+ <tt><font size=+1>~</font></tt><i>exp</i>&nbsp;&nbsp;&nbsp;Bitwise complement.<br>
+ <tt><font size=+1>%</font></tt><i>exp</i>&nbsp;&nbsp;&nbsp;When used as an <i>address</i>, <i>exp</i> is an offset into the segment
+ named <i>ublock</i>; see &#8216;Addresses&#8217;.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <i>Dyadic operators</i> are left-associative and are less binding than
+ monadic operators.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>e1</i><tt><font size=+1>+</font></tt><i>e2</i>Integer addition.<br>
+ <i>e1</i><tt><font size=+1>&#8722;</font></tt><i>e2</i>Integer subtraction.<br>
+ <i>e1</i><tt><font size=+1>*</font></tt><i>e2</i>Integer multiplication.<br>
+ <i>e1</i><tt><font size=+1>%</font></tt><i>e2</i>Integer division.<br>
+ <i>e1</i><tt><font size=+1>&amp;</font></tt><i>e2</i>Bitwise conjunction.<br>
+ <i>e1</i><tt><font size=+1>|</font></tt><i>e2</i>Bitwise disjunction.<br>
+ <i>e1</i><tt><font size=+1>#</font></tt><i>e2E1</i> rounded up to the next multiple of <i>e2</i>.<br>
+
+ </table>
+ <p><font size=+1><b>Commands </b></font><br>
+ Most commands have the following syntax:<br>
+ <tt><font size=+1>?</font></tt><i>f</i>&nbsp;&nbsp;&nbsp;&nbsp;Locations starting at <i>address</i> in <i>textfile</i> are printed according
+ to the format <i>f</i>.<br>
+ <tt><font size=+1>/</font></tt><i>f</i>&nbsp;&nbsp;&nbsp;&nbsp;Locations starting at <i>address</i> in <i>memfile</i> are printed according
+ to the format <i>f</i>.<br>
+ <tt><font size=+1>=</font></tt><i>f</i>&nbsp;&nbsp;&nbsp;&nbsp;The value of <i>address</i> itself is printed according to the format
+ <i>f</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A <i>format</i> consists of one or more characters that specify a style
+ of printing. Each format character may be preceded by a decimal
+ integer that is a repeat count for the format character. If no
+ format is given then the last format is used.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Most format letters fetch some data, print it, and advance (a
+ local copy of) dot by the number of bytes fetched. The total number
+ of bytes in a format becomes the <i>current</i>increment<i>.<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print two-byte integer in octal.<br>
+ <tt><font size=+1>O</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print four-byte integer in octal.<br>
+ <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print two-byte integer in signed octal.<br>
+ <tt><font size=+1>Q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print four-byte integer in signed octal.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print two-byte integer in decimal.<br>
+ <tt><font size=+1>D</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print four-byte integer in decimal.<br>
+ <tt><font size=+1>V</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print eight-byte integer in decimal.<br>
+ <tt><font size=+1>Z</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print eight-byte integer in unsigned decimal.<br>
+ <tt><font size=+1>x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print two-byte integer in hexadecimal.<br>
+ <tt><font size=+1>X</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print four-byte integer in hexadecimal.<br>
+ <tt><font size=+1>Y</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print eight-byte integer in hexadecimal.<br>
+ <tt><font size=+1>u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print two-byte integer in unsigned decimal.<br>
+ <tt><font size=+1>U</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print four-byte integer in unsigned decimal.<br>
+ <tt><font size=+1>f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print as a single-precision floating point number.<br>
+ <tt><font size=+1>F</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print double-precision floating point.<br>
+ <tt><font size=+1>b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the addressed byte in hexadecimal.<br>
+ <tt><font size=+1>c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the addressed byte as an ASCII character.<br>
+ <tt><font size=+1>C</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the addressed byte as a character. Printable ASCII characters
+ are represented normally; others are printed in the form <tt><font size=+1>\xnn</font></tt>.<br>
+ <tt><font size=+1>s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the addressed characters, as a UTF string, until a zero
+ byte is reached. Advance dot by the length of the string, including
+ the zero terminator.<br>
+ <tt><font size=+1>S</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a string using the escape convention (see <tt><font size=+1>C</font></tt> above).<br>
+ <tt><font size=+1>r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print as UTF the addressed two-byte integer (rune).<br>
+ <tt><font size=+1>R</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print as UTF the addressed two-byte integers as runes until a
+ zero rune is reached. Advance dot by the length of the string,
+ including the zero terminator.<br>
+ <tt><font size=+1>i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print as machine instructions. Dot is incremented by the size
+ of the instruction.<br>
+ <tt><font size=+1>I</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;As <tt><font size=+1>i</font></tt> above, but print the machine instructions in an alternate
+ form if possible.<br>
+ <tt><font size=+1>M</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the addressed machine instruction in a machine-dependent
+ hexadecimal form.<br>
+ <tt><font size=+1>a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the value of dot in symbolic form. Dot is unaffected.<br>
+ <tt><font size=+1>A</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the value of dot in hexadecimal. Dot is unaffected.<br>
+ <tt><font size=+1>z</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the function name, source file, and line number corresponding
+ to dot (textfile only). Dot is unaffected.<br>
+ <tt><font size=+1>p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the addressed value in symbolic form. Dot is advanced by
+ the size of a machine address.<br>
+ <tt><font size=+1>t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When preceded by an integer, tabs to the next appropriate tab
+ stop. For example, <tt><font size=+1>8t</font></tt> moves to the next 8-space tab stop. Dot
+ is unaffected.<br>
+ <tt><font size=+1>n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a newline. Dot is unaffected.<br>
+ <tt><font size=+1>&quot;</font></tt>...<tt><font size=+1>&quot;</font></tt>&nbsp;&nbsp;&nbsp;Print the enclosed string. Dot is unaffected.<br>
+ <tt><font size=+1>^</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dot is decremented by the current increment. Nothing is printed.<br>
+ <tt><font size=+1>+</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dot is incremented by 1. Nothing is printed.<br>
+ <tt><font size=+1>&#8722;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dot is decremented by 1. Nothing is printed.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Other commands include:<br>
+ newline<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Update dot by the current increment. Repeat the previous command
+ with a <i>count</i> of 1.<br>
+
+ </table>
+ [<tt><font size=+1>?/</font></tt>]<tt><font size=+1>l</font></tt> <i>value mask<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Words starting at dot are masked with <i>mask</i> and compared with <i>value</i>
+ until a match is found. If <tt><font size=+1>l</font></tt> is used, the match is for a two-byte
+ integer; <tt><font size=+1>L</font></tt> matches four bytes. If no match is found then dot is
+ unchanged; otherwise dot is set to the matched location. If <i>mask</i>
+ is omitted then ~0 is used.
+
+ </table>
+ [<tt><font size=+1>?/</font></tt>]<tt><font size=+1>w</font></tt> <i>value ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Write the two-byte <i>value</i> into the addressed location. If the command
+ is <tt><font size=+1>W</font></tt>, write four bytes.<br>
+
+ </table>
+ [<tt><font size=+1>?/</font></tt>]<tt><font size=+1>m</font></tt> <i>s b e f</i> [<tt><font size=+1>?</font></tt>]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ New values for (<i>b, e, f</i>) in the segment named <i>s</i> are recorded.
+ Valid segment names are <i>text</i>, <i>data</i>, or <i>ublock</i>. If less than three
+ address expressions are given, the remaining parameters are left
+ unchanged. If the list is terminated by <tt><font size=+1>?</font></tt> or <tt><font size=+1>/</font></tt> then the file (<i>textfile</i>
+ or <i>memfile</i> respectively) is used for subsequent
+ requests. For example, <tt><font size=+1>/m?</font></tt> causes <tt><font size=+1>/</font></tt> to refer to <i>textfile</i>.<br>
+
+ </table>
+ <tt><font size=+1>&gt;</font></tt><i>name<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Dot is assigned to the variable or register named.<br>
+
+ </table>
+ <tt><font size=+1>!</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The rest of the line is passed to <a href="../man1/rc.html"><i>rc</i>(1)</a> for execution.<br>
+ <tt><font size=+1>$</font></tt><i>modifier<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Miscellaneous commands. The available <i>modifiers</i> are:<br>
+ <tt><font size=+1>&lt;</font></tt><i>f</i>&nbsp;&nbsp;&nbsp;&nbsp;Read commands from the file <i>f</i>. If this command is executed in
+ a file, further commands in the file are not seen. If <i>f</i> is omitted,
+ the current input stream is terminated. If a <i>count</i> is given, and
+ is zero, the command is ignored.<br>
+ <tt><font size=+1>&lt;&lt;</font></tt><i>f</i>&nbsp;&nbsp;&nbsp;Similar to <tt><font size=+1>&lt;</font></tt> except it can be used in a file of commands without
+ causing the file to be closed. There is a (small) limit to the
+ number of <tt><font size=+1>&lt;&lt;</font></tt> files that can be open at once.<br>
+ <tt><font size=+1>&gt;</font></tt><i>f</i>&nbsp;&nbsp;&nbsp;&nbsp;Append output to the file <i>f</i>, which is created if it does not
+ exist. If <i>f</i> is omitted, output is returned to the terminal.<br>
+ <tt><font size=+1>?</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print process id, the condition which caused stopping or termination,
+ the registers and the instruction addressed by <tt><font size=+1>pc</font></tt>. This is the
+ default if <i>modifier</i> is omitted.<br>
+ <tt><font size=+1>r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the general registers and the instruction addressed by
+ <tt><font size=+1>pc</font></tt>. Dot is set to <tt><font size=+1>pc</font></tt>.<br>
+ <tt><font size=+1>R</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>$r</font></tt>, but include miscellaneous processor control registers
+ and floating point registers.<br>
+ <tt><font size=+1>f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print floating-point register values as single-precision floating
+ point numbers.<br>
+ <tt><font size=+1>F</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print floating-point register values as double-precision floating
+ point numbers.<br>
+ <tt><font size=+1>b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print all breakpoints and their associated counts and commands.
+ &#8216;B&#8217; produces the same results.<br>
+ <tt><font size=+1>c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Stack backtrace. If <i>address</i> is given, it specifies the address
+ of a pair of 32-bit values containing the <tt><font size=+1>sp</font></tt> and <tt><font size=+1>pc</font></tt> of an active
+ process. This allows selecting among various contexts of a multi-threaded
+ process. If <tt><font size=+1>C</font></tt> is used, the names and (long) values of all parameters,
+ automatic and static variables are
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ printed for each active function. If <i>count</i> is given, only the
+ first <i>count</i> frames are printed.<br>
+
+ </table>
+ <tt><font size=+1>a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Attach to the running process whose pid is contained in <i>address</i>.<br>
+ <tt><font size=+1>e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The names and values of all external variables are printed.<br>
+ <tt><font size=+1>w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the page width for output to <i>address</i> (default 80).<br>
+ <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exit from <i>db</i>.<br>
+ <tt><font size=+1>m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the address maps.<br>
+ <tt><font size=+1>k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Simulate kernel memory management.<br>
+ <tt><font size=+1>M</font></tt><i>machine<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the <i>machine</i> type used for disassembling instructions.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>:</font></tt><i>modifier<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Manage a subprocess. Available modifiers are:<br>
+ <tt><font size=+1>h</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Halt an asynchronously running process to allow breakpointing.
+ Unnecessary for processes created under <i>db</i>, e.g. by <tt><font size=+1>:r</font></tt>.<br>
+ <tt><font size=+1>b</font></tt><i>c</i>&nbsp;&nbsp;&nbsp;&nbsp;Set breakpoint at <i>address</i>. The breakpoint is executed <i>count</i>&ndash;1
+ times before causing a stop. Also, if a command <i>c</i> is given it
+ is executed at each breakpoint and if it sets dot to zero the
+ breakpoint causes a stop.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete breakpoint at <i>address</i>.<br>
+ <tt><font size=+1>r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Run <i>textfile</i> as a subprocess. If <i>address</i> is given the program
+ is entered at that point; otherwise the standard entry point is
+ used. <i>Count</i> specifies how many breakpoints are to be ignored before
+ stopping. Arguments to the subprocess may be supplied on the same
+ line as the command. An argument
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ starting with &lt; or &gt; causes the standard input or output to be established
+ for the command.<br>
+
+ </table>
+ <tt><font size=+1>c</font></tt><i>s</i>&nbsp;&nbsp;&nbsp;&nbsp;The subprocess is continued. If <i>s</i> is omitted or nonzero, the
+ subprocess is sent the note that caused it to stop. If 0 is specified,
+ no note is sent. (If the stop was due to a breakpoint or single-step,
+ the corresponding note is elided before continuing.) Breakpoint
+ skipping is the same as for <tt><font size=+1>r</font></tt>.
+ <tt><font size=+1>s</font></tt><i>s</i>&nbsp;&nbsp;&nbsp;&nbsp;As for <tt><font size=+1>c</font></tt> except that the subprocess is single stepped for <i>count</i>
+ machine instructions. If a note is pending, it is received before
+ the first instruction is executed. If there is no current subprocess
+ then <i>textfile</i> is run as a subprocess as for <tt><font size=+1>r</font></tt>. In this case no
+ note can be sent; the remainder of the line is
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ treated as arguments to the subprocess.<br>
+
+ </table>
+ <tt><font size=+1>S</font></tt><i>s</i>&nbsp;&nbsp;&nbsp;&nbsp;Identical to <tt><font size=+1>s</font></tt> except the subprocess is single stepped for <i>count</i>
+ lines of C source. In optimized code, the correspondence between
+ C source and the machine instructions is approximate at best.<br>
+ <tt><font size=+1>x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The current subprocess, if any, is released by <i>db</i> and allowed
+ to continue executing normally.<br>
+ <tt><font size=+1>k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The current subprocess, if any, is terminated.<br>
+ <tt><font size=+1>n</font></tt><i>c</i>&nbsp;&nbsp;&nbsp;&nbsp;Display the pending notes for the process. If <i>c</i> is specified,
+ first delete <i>c&#8217;th</i> pending note.<br>
+
+ </table>
+ <p><font size=+1><b>Addresses </b></font><br>
+ The location in a file or memory image associated with an address
+ is calculated from a map associated with the file. Each map contains
+ one or more quadruples (<i>t, f, b, e, o</i>), defining a segment named
+ <i>t</i> (usually, <i>text</i>, <i>data</i>, or <i>core</i>) in file <i>f</i> mapping addresses in
+ the range <i>b</i> through <i>e</i> to the part of the file beginning at
+ offset <i>o</i>. If segments overlap, later segments obscure earlier
+ ones. An address <i>a</i> is translated to a file address by finding
+ the last segment in the list for which <i>b</i>&le;<i>a</i>&lt;<i>e</i>; the location in the
+ file is then <i>address</i>+<i>f</i>&ndash;<i>b</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Usually, the text and initialized data of a program are mapped
+ by segments called <i>text</i>, <i>data</i>, and <i>bss</i>. Since a program file does
+ not contain stack data, this data is not mapped. The text segment
+ is mapped similarly in a normal (i.e., non-kernel) <i>memfile</i>. However,
+ one or more segments called <i>data</i> provide access to
+ process memory. This region contains the program&#8217;s static data,
+ the bss, the heap and the stack.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Sometimes it is useful to define a map with a single segment mapping
+ the region from 0 to 0xFFFFFFFF; a map of this type allows an
+ entire file to be examined without address translation.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>$m</font></tt> command dumps the currently active maps. The <tt><font size=+1>?m</font></tt> and <tt><font size=+1>/m</font></tt>
+ commands modify the segment parameters in the <i>textfile</i> and <i>memfile</i>
+ maps, respectively.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ To set a breakpoint at the beginning of <tt><font size=+1>write()</font></tt> in extant process
+ 27:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% db 27<br>
+ :h<br>
+ write:b<br>
+ :c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ To set a breakpoint at the entry of function <tt><font size=+1>parse</font></tt> when the local
+ variable <tt><font size=+1>argc</font></tt> in <tt><font size=+1>main</font></tt> is equal to 1:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>parse:b *main.argc&#8722;1=X<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ This prints the value of <tt><font size=+1>argc&#8722;1</font></tt> which as a side effect sets dot;
+ when <tt><font size=+1>argc</font></tt> is one the breakpoint will fire. Beware that local variables
+ may be stored in registers; see the BUGS section.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/acid.html"><i>acid</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/db<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Exit status is 0, unless the last command failed or returned non-zero
+ status.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Examining a local variable with <i>routine.name</i> returns the contents
+ of the memory allocated for the variable, but with optimization,
+ variables often reside in registers. Also, on some architectures,
+ the first argument is always passed in a register.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Variables and parameters that have been optimized away do not
+ appear in the symbol table, returning the error <i>bad local variable</i>
+ when accessed by <i>db</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Breakpoints should not be set on instructions scheduled in delay
+ slots. When a program stops on such a breakpoint, it is usually
+ impossible to continue its execution.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/dc.html b/man/man1/dc.html
new file mode 100644
index 00000000..95b7fd24
--- /dev/null
+++ b/man/man1/dc.html
@@ -0,0 +1,199 @@
+<head>
+<title>dc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DC(1)</b><td align=right><b>DC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ dc &ndash; desk calculator<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>dc</font></tt> [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Dc</i> is an arbitrary precision desk calculator. Ordinarily it operates
+ on decimal integers, but one may specify an input base, output
+ base, and a number of fractional digits to be maintained. The
+ overall structure of <i>dc</i> is a stacking (reverse Polish) calculator.
+ If an argument is given, input is taken from that file until its
+ end, then from the standard input. The following constructions
+ are recognized:<br>
+ number<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value of the number is pushed on the stack. A number is an
+ unbroken string of the digits <tt><font size=+1>0&#8722;9A&#8722;F</font></tt> or <tt><font size=+1>0&#8722;9a&#8722;f</font></tt>. A hexadecimal
+ number beginning with a lower case letter must be preceded by
+ a zero to distinguish it from the command associated with the
+ letter. It may be preceded by an underscore <tt><font size=+1>_</font></tt> to
+ input a negative number. Numbers may contain decimal points.<br>
+
+ </table>
+ <tt><font size=+1>+ &nbsp;&nbsp;&nbsp;&#8722; / &nbsp;&nbsp;&nbsp;* &nbsp;&nbsp;&nbsp;% &nbsp;&nbsp;&nbsp;^<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Add <tt><font size=+1>+</font></tt>, subtract <tt><font size=+1>&#8722;</font></tt>, multiply <tt><font size=+1>*</font></tt>, divide <tt><font size=+1>/</font></tt>, remainder <tt><font size=+1>%</font></tt>, or exponentiate
+ <tt><font size=+1>^</font></tt> the top two values on the stack. The two entries are popped
+ off the stack; the result is pushed on the stack in their place.
+ Any fractional part of an exponent is ignored.<br>
+
+ </table>
+ <tt><font size=+1>s</font></tt><i>x<br>
+ </i><tt><font size=+1>S</font></tt><i>x</i>&nbsp;&nbsp;&nbsp;&nbsp;Pop the top of the stack and store into a register named <i>x</i>,
+ where <i>x</i> may be any character. Under operation <tt><font size=+1>S</font></tt> register <i>x</i> is
+ treated as a stack and the value is pushed on it.<br>
+ <tt><font size=+1>l</font></tt><i>x<br>
+ </i><tt><font size=+1>L</font></tt><i>x</i>&nbsp;&nbsp;&nbsp;&nbsp;Push the value in register <i>x</i> onto the stack. The register <i>x</i>
+ is not altered. All registers start with zero value. Under operation
+ <tt><font size=+1>L</font></tt> register <i>x</i> is treated as a stack and its top value is popped
+ onto the main stack.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Duplicate the top value on the stack.<br>
+ <tt><font size=+1>p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the top value on the stack. The top value remains unchanged.
+ <tt><font size=+1>P</font></tt> interprets the top of the stack as an text string, removes it,
+ and prints it.<br>
+ <tt><font size=+1>f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the values on the stack.<br>
+ <tt><font size=+1>q<br>
+ Q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exit the program. If executing a string, the recursion level
+ is popped by two. Under operation <tt><font size=+1>Q</font></tt> the top value on the stack
+ is popped and the string execution level is popped by that value.<br>
+ <tt><font size=+1>x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Treat the top element of the stack as a character string and
+ execute it as a string of <i>dc</i> commands.<br>
+ <tt><font size=+1>X</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the number on the top of the stack with its scale factor.<br>
+ <tt><font size=+1>[ ... ]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Put the bracketed text string on the top of the stack.<br>
+
+ </table>
+ <tt><font size=+1>&lt;</font></tt><i>x<br>
+ </i><tt><font size=+1>&gt;</font></tt><i>x<br>
+ </i><tt><font size=+1>=</font></tt><i>x</i>&nbsp;&nbsp;&nbsp;&nbsp;Pop and compare the top two elements of the stack. Register
+ <i>x</i> is executed if they obey the stated relation.<br>
+ <tt><font size=+1>v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the top element on the stack by its square root. Any
+ existing fractional part of the argument is taken into account,
+ but otherwise the scale factor is ignored.<br>
+ <tt><font size=+1>!</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Interpret the rest of the line as a shell command.<br>
+ <tt><font size=+1>c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clear the stack.<br>
+ <tt><font size=+1>i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The top value on the stack is popped and used as the number base
+ for further input.<br>
+ <tt><font size=+1>I</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Push the input base on the top of the stack.<br>
+ <tt><font size=+1>o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The top value on the stack is popped and used as the number base
+ for further output. In bases larger than 10, each &#8216;digit&#8217; prints
+ as a group of decimal digits.<br>
+ <tt><font size=+1>O</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Push the output base on the top of the stack.<br>
+ <tt><font size=+1>k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pop the top of the stack, and use that value as a non-negative
+ scale factor: the appropriate number of places are printed on
+ output, and maintained during multiplication, division, and exponentiation.
+ The interaction of scale factor, input base, and output base will
+ be reasonable if all are changed together.
+ <tt><font size=+1>z</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Push the stack level onto the stack.<br>
+ <tt><font size=+1>Z</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the number on the top of the stack with its length.<br>
+ <tt><font size=+1>?</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A line of input is taken from the input source (usually the terminal)
+ and executed.<br>
+ <tt><font size=+1>; :</font></tt>&nbsp;&nbsp;&nbsp;Used by <i>bc</i> for array operations.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The scale factor set by <tt><font size=+1>k</font></tt> determines how many digits are kept
+ to the right of the decimal point. If <i>s</i> is the current scale factor,
+ <i>sa</i> is the scale of the first operand, <i>sb</i> is the scale of the second,
+ and <i>b</i> is the (integer) second operand, results are truncated to
+ the following scales.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>+</font></tt>,<tt><font size=+1>&#8722; </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;max(<i>sa,sb</i>)<br>
+ <tt><font size=+1>* </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min(<i>sa</i>+<i>sb</i> , max(<i>s,sa,sb</i>))<br>
+ <tt><font size=+1>/ </font></tt><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s<br>
+ </i><tt><font size=+1>% </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;so that dividend = divisor*quotient + remainder; remainder has
+ sign of dividend<br>
+ <tt><font size=+1>^ </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min(<i>sa</i>&#215;|<i>b</i>|, max(<i>s,sa</i>))<br>
+ <tt><font size=+1>v </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;max(<i>s,sa</i>)<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the first ten values of <i>n</i>!<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>[la1+dsa*pla10&gt;y]sy<br>
+ 0sa1<br>
+ lyx<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/dc.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/bc.html"><i>bc</i>(1)</a>, <a href="../man1/hoc.html"><i>hoc</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>x</i> <tt><font size=+1>is unimplemented</font></tt>, where <i>x</i> is an octal number: an internal error.<br>
+ &#8216;Out of headers&#8217; for too many numbers being kept around.<br>
+ &#8216;Nesting depth&#8217; for too many levels of nested execution.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ When the input base exceeds 16, there is no notation for digits
+ greater than <tt><font size=+1>F</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Past its time.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/deroff.html b/man/man1/deroff.html
new file mode 100644
index 00000000..cb0c5aff
--- /dev/null
+++ b/man/man1/deroff.html
@@ -0,0 +1,102 @@
+<head>
+<title>deroff(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DEROFF(1)</b><td align=right><b>DEROFF(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ deroff, delatex &ndash; remove formatting requests<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>deroff</font></tt> [ <i>option ...</i> ] <i>file ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>delatex</font></tt> <i>file<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Deroff</i> reads each file in sequence and removes all <i>nroff</i> and <a href="../man1/troff.html"><i>troff</i>(1)</a>
+ requests and non-text arguments, backslash constructions, and
+ constructs of preprocessors such as <a href="../man1/eqn.html"><i>eqn</i>(1)</a>, <a href="../man1/pic.html"><i>pic</i>(1)</a>, and <a href="../man1/tbl.html"><i>tbl</i>(1)</a>.
+ Remaining text is written on the standard output. <i>Deroff</i> follows
+ files included by <tt><font size=+1>.so</font></tt> and <tt><font size=+1>.nx</font></tt> commands; if a file has
+ already been included, a <tt><font size=+1>.so</font></tt> for that file is ignored and a <tt><font size=+1>.nx</font></tt>
+ terminates execution. If no input file is given, <i>deroff</i> reads
+ from standard input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options are<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Output a word list, one &#8216;word&#8217; (string of letters, digits, and
+ properly embedded ampersands and apostrophes, beginning with a
+ letter) per line. Other characters are skipped. Otherwise, the
+ output follows the original, with the deletions mentioned above.<br>
+ <tt><font size=+1>&#8722;_</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>&#8722;w</font></tt>, but consider underscores to be alphanumeric rather
+ than punctuation.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Ignore <tt><font size=+1>.so</font></tt> and <tt><font size=+1>.nx</font></tt> requests.<br>
+ <tt><font size=+1>&#8722;ms<br>
+ &#8722;mm</font></tt>&nbsp;&nbsp;&nbsp;Remove titles, attachments, etc., as well as ordinary <i>troff</i>
+ constructs, from <a href="../man7/ms.html"><i>ms</i>(7)</a> or <i>mm</i> documents.<br>
+ <tt><font size=+1>&#8722;ml</font></tt>&nbsp;&nbsp;&nbsp;Same as <tt><font size=+1>&#8722;mm</font></tt>, but remove lists as well.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Delatex</i> does for <i>tex</i> and <i>latex</i> (see <a href="../man1/tex.html"><i>tex</i>(1)</a>) files what <tt><font size=+1>deroff
+ &#8722;wi</font></tt> does for <i>troff</i> files.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/deroff.c<br>
+ /usr/local/plan9/src/cmd/delatex.lx<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/troff.html"><i>troff</i>(1)</a>, <a href="../man1/tex.html"><i>tex</i>(1)</a>, <a href="../man1/spell.html"><i>spell</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ These filters are not complete interpreters of <i>troff</i> or <i>tex</i>. For
+ example, macro definitions containing <tt><font size=+1>\$</font></tt> cause chaos in <i>deroff</i>
+ when the popular <tt><font size=+1>$$</font></tt> delimiters for <i>eqn</i> are in effect.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Text inside macros is emitted at place of definition, not place
+ of call.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/dial.html b/man/man1/dial.html
new file mode 100644
index 00000000..70456274
--- /dev/null
+++ b/man/man1/dial.html
@@ -0,0 +1,67 @@
+<head>
+<title>dial(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DIAL(1)</b><td align=right><b>DIAL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ dial &ndash; connect to a remote service<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>dial</font></tt> [ <tt><font size=+1>&#8722;e</font></tt> ] <i>addr<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Dial</i> connects to the network address <i>addr</i> (see <a href="../man3/dial.html"><i>dial</i>(3)</a>) and then
+ copies data from the connection to standard output, and from standard
+ input to the connection.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ By default, <i>dial</i> exits when end of file is reached on standard
+ input or on the network connection. The <tt><font size=+1>&#8722;e</font></tt> flag causes <i>dial</i> to
+ exit only in response to end of file on the network connection.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/dial.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/dial.html"><i>dial</i>(3)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/dict.html b/man/man1/dict.html
new file mode 100644
index 00000000..48d086ba
--- /dev/null
+++ b/man/man1/dict.html
@@ -0,0 +1,168 @@
+<head>
+<title>dict(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DICT(1)</b><td align=right><b>DICT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ dict, adict &ndash; dictionary browser<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>dict</font></tt> [ <tt><font size=+1>&#8722;k</font></tt> ] [ <tt><font size=+1>&#8722;d</font></tt> <i>dictname</i> ] [ <tt><font size=+1>&#8722;c</font></tt> <i>command</i> ] [ <i>pattern</i> ] <tt><font size=+1>adict</font></tt> [
+ <tt><font size=+1>&#8722;d</font></tt> <i>dictname</i> ] [ <i>pattern</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Dict</i> is a dictionary browser. If a <i>pattern</i> is given on the command
+ line, <i>dict</i> prints all matching entries; otherwise it repeatedly
+ accepts and executes commands. The options are<br>
+ <tt><font size=+1>&#8722;d</font></tt> <i>dictname</i>&nbsp;&nbsp;&nbsp;Use the given dictionary. A list of available dictionaries
+ is printed by option <tt><font size=+1>&#8722;d?</font></tt>. The default is the first dictionary
+ on the list that is installed on the system.<br>
+ <tt><font size=+1>&#8722;c</font></tt> <i>command</i>&nbsp;&nbsp;&nbsp;Execute one command and quit. The command syntax is
+ described below.<br>
+ <tt><font size=+1>&#8722;k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a pronunciation key.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Patterns are regular expressions (see <a href="../man7/regexp.html"><i>regexp</i>(7)</a>), with an implicit
+ leading <tt><font size=+1>^</font></tt> and trailing <tt><font size=+1>$</font></tt>. Patterns are matched against an index
+ of headwords and variants, to form a &#8216;match set&#8217;. By default,
+ both patterns and the index are folded: upper case characters
+ are mapped into their lower case equivalents, and Latin accented
+ characters are mapped into their non-accented equivalents. In
+ interactive mode, there is always a &#8216;current match set&#8217; and a
+ &#8216;current entry&#8217; within the match set. Commands can change either
+ or both, as well as print the entries or information about them.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Commands have an address followed by a command letter. Addresses
+ have the form:<br>
+ <tt><font size=+1>/</font></tt><i>re</i><tt><font size=+1>/</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the match set to all entries matching the regular expression
+ <i>re</i>, sorted in dictionary order. Set the current entry to the first
+ of the match set.<br>
+ <tt><font size=+1>!</font></tt><i>re</i><tt><font size=+1>!</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>/</font></tt><i>re</i><tt><font size=+1>/</font></tt> but use exact matching, i.e., without case and accent
+ folding.<br>
+ <i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;An integer <i>n</i> means change the current entry to the <i>n</i>th of the
+ current match set.<br>
+ <tt><font size=+1>#</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The integer <i>n</i> is an absolute byte offset into the raw dictionary.
+ (See the <tt><font size=+1>A</font></tt> command, below.)<br>
+ <i>addr</i><tt><font size=+1>+</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;After setting the match set and current entry according to
+ <i>addr</i>, change the match set and current entry to be the next entry
+ in the dictionary (not necessarily in the match set) after the
+ current entry.<br>
+ <i>addr</i><tt><font size=+1>&#8722;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Like <i>addr</i><tt><font size=+1>+</font></tt> but go to previous dictionary entry.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The command letters come in pairs: a lower case and the corresponding
+ upper case letter. The lower case version prints something about
+ the current entry only, and advances the current entry to the
+ next in the match set (wrapping around to the beginning after
+ the last). The upper case version prints something about
+ all of the match set and resets the current entry to the beginning
+ of the set.<br>
+ <tt><font size=+1>p</font></tt>,<tt><font size=+1>P</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print the whole entry.<br>
+ <tt><font size=+1>h</font></tt>,<tt><font size=+1>H</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print only the headword(s) of the entry.<br>
+ <tt><font size=+1>a</font></tt>,<tt><font size=+1>A</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print the dictionary byte offset of the entry.<br>
+ <tt><font size=+1>r</font></tt>,<tt><font size=+1>R</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print the whole entry in raw format (without translating special
+ characters, etc.).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If no command letter is given for the first command, <tt><font size=+1>H</font></tt> is assumed.
+ After an <tt><font size=+1>H</font></tt>, the default command is <tt><font size=+1>p</font></tt>. Otherwise, the default command
+ is the previous command.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Adict</i> is a dictionary browser for <a href="../man1/acme.html"><i>acme</i>(1)</a>. When run with no arguments,
+ it creates a new <i>acme</i> window named <tt><font size=+1>/adict/</font></tt> listing the installed
+ dictionaries. Clicking with button 3 on a dictionary name will
+ create a new empty window named <tt><font size=+1>/adict/</font></tt><i>dict</i><tt><font size=+1>/.</font></tt> Typing and then
+ clicking on a pattern in this window will create
+ a new lookup window named <tt><font size=+1>/adict/</font></tt><i>dict</i><tt><font size=+1>/</font></tt><i>pattern</i> containing the dictionary&#8217;s
+ definition of <i>pattern</i>. Clicking with button 3 on any word in this
+ new window will create new lookup windows.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If <i>adict</i> is run with a <i>pattern ,</i> it starts with the <tt><font size=+1>/adict/</font></tt><i>dict</i><tt><font size=+1>/</font></tt><i>pattern</i>
+ window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If <i>adict</i> is run with no pattern but with a <tt><font size=+1>&#8722;d</font></tt> option, it starts
+ with the <tt><font size=+1>/adict/</font></tt><i>dict</i><tt><font size=+1>/</font></tt> window.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/dict<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ dictionaries<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man7/regexp.html"><i>regexp</i>(7)</a><br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/dict<br>
+ /usr/local/plan9/bin/adict<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A font with wide coverage of the Unicode Standard should be used
+ for best results. (Try <tt><font size=+1>/usr/local/plan9/font/pelm/unicode.9.font</font></tt>.)
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the <i>pattern</i> doesn&#8217;t begin with a few literal characters, matching
+ takes a long time.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The dictionaries are not distributed outside Bell Labs, though
+ see <tt><font size=+1>/usr/local/plan9/dict/README</font></tt> for information on using free
+ dictionaries prepared by Project Gutenberg.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/diff.html b/man/man1/diff.html
new file mode 100644
index 00000000..c5e824be
--- /dev/null
+++ b/man/man1/diff.html
@@ -0,0 +1,141 @@
+<head>
+<title>diff(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DIFF(1)</b><td align=right><b>DIFF(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ diff &ndash; differential file comparator<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>diff</font></tt> [ <tt><font size=+1>&#8722;efmnbwr</font></tt> ] file1 ... file2<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Diff</i> tells what lines must be changed in two files to bring them
+ into agreement. If one file is a directory, then a file in that
+ directory with basename the same as that of the other file is
+ used. If both files are directories, similarly named files in
+ the two directories are compared by the method of <i>diff</i> for text
+ files and
+ <a href="../man1/cmp.html"><i>cmp</i>(1)</a> otherwise. If more than two file names are given, then
+ each argument is compared to the last argument as above. The <tt><font size=+1>&#8722;r</font></tt>
+ option causes <i>diff</i> to process similarly named subdirectories recursively.
+ When processing more than one file, <i>diff</i> prefixes file differences
+ with a single line listing the two differing files, in
+ the form of a <i>diff</i> command line. The <tt><font size=+1>&#8722;m</font></tt> flag causes this behavior
+ even when processing single files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The normal output contains lines of these forms:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>n1</i> <tt><font size=+1>a</font></tt> <i>n3,n4<br>
+ n1,n2</i> <tt><font size=+1>d</font></tt> <i>n3<br>
+ n1,n2</i> <tt><font size=+1>c</font></tt> <i>n3,n4
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ These lines resemble <i>ed</i> commands to convert <i>file1</i> into <i>file2</i>.
+ The numbers after the letters pertain to <i>file2</i>. In fact, by exchanging
+ &#8216;a&#8217; for &#8216;d&#8217; and reading backward one may ascertain equally how
+ to convert <i>file2</i> into <i>file1</i>. As in <i>ed</i>, identical pairs where <i>n1</i>
+ = <i>n2</i> or <i>n3</i> = <i>n4</i> are abbreviated as a single number.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Following each of these lines come all the lines that are affected
+ in the first file flagged by &#8216;&lt;&#8217;, then all the lines that are affected
+ in the second file flagged by &#8216;&gt;&#8217;.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;b</font></tt> option causes trailing blanks (spaces and tabs) to be ignored
+ and other strings of blanks to compare equal. The <tt><font size=+1>&#8722;w</font></tt> option causes
+ all white-space to be removed from input lines before applying
+ the difference algorithm.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;n</font></tt> option prefixes each range with <i>file</i><tt><font size=+1>:</font></tt> and inserts a space
+ around the <tt><font size=+1>a</font></tt>, <tt><font size=+1>c</font></tt>, and <tt><font size=+1>d</font></tt> verbs. The <tt><font size=+1>&#8722;e</font></tt> option produces a script
+ of <i>a, c</i> and <i>d</i> commands for the editor <i>ed</i>, which will recreate
+ <i>file2</i> from <i>file1</i>. The <tt><font size=+1>&#8722;f</font></tt> option produces a similar script, not
+ useful with <i>ed</i>, in the opposite order. It may, however, be useful
+ as
+ input to a stream-oriented post-processor.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Except in rare circumstances, <i>diff</i> finds a smallest sufficient
+ set of file differences.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/tmp/diff[12]<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/diff<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/cmp.html"><i>cmp</i>(1)</a>, <a href="../man1/comm.html"><i>comm</i>(1)</a>, <a href="../man1/ed.html"><i>ed</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Exit status is the empty string for no differences, <tt><font size=+1>some</font></tt> for some,
+ and <tt><font size=+1>error</font></tt> for trouble.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Editing scripts produced under the <tt><font size=+1>&#8722;e</font></tt> or <tt><font size=+1>&#8722;f</font></tt> option are naive about
+ creating lines consisting of a single &#8216;.&#8217;.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When running <i>diff</i> on directories, the notion of what is a text
+ file is open to debate.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/doctype.html b/man/man1/doctype.html
new file mode 100644
index 00000000..f837d915
--- /dev/null
+++ b/man/man1/doctype.html
@@ -0,0 +1,88 @@
+<head>
+<title>doctype(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>DOCTYPE(1)</b><td align=right><b>DOCTYPE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ doctype &ndash; intuit command line for formatting a document<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>doctype</font></tt> [ <tt><font size=+1>&#8722;n</font></tt> ] [ <tt><font size=+1>&#8722;T</font></tt> <i>dev</i> ] [ <i>file</i> ] ...<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Doctype</i> examines a <a href="../man1/troff.html"><i>troff</i>(1)</a> input file to deduce the appropriate
+ text formatting command and prints it on standard output. <i>Doctype</i>
+ recognizes input for <a href="../man1/troff.html"><i>troff</i>(1)</a>, related preprocessors like <a href="../man1/eqn.html"><i>eqn</i>(1)</a>,
+ and the <a href="../man7/ms.html"><i>ms</i>(7)</a> and <i>mm</i> macro packages.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;n</font></tt> invokes <i>nroff</i> instead of <i>troff</i>. The <tt><font size=+1>&#8722;T</font></tt> option is passed
+ to <i>troff</i>.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>eval `{doctype chapter.?} | lp<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Typeset files named <tt><font size=+1>chapter.0</font></tt>, <tt><font size=+1>chapter.1</font></tt>, ...<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/doctype<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/troff.html"><i>troff</i>(1)</a>, <a href="../man1/eqn.html"><i>eqn</i>(1)</a>, <a href="../man1/tbl.html"><i>tbl</i>(1)</a>, <a href="../man1/pic.html"><i>pic</i>(1)</a>, <a href="../man1/grap.html"><i>grap</i>(1)</a>, <a href="../man7/ms.html"><i>ms</i>(7)</a>, <a href="../man7/man.html"><i>man</i>(7)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ In true A.I. style, its best guesses are inspired rather than
+ accurate.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/echo.html b/man/man1/echo.html
new file mode 100644
index 00000000..a4f6e359
--- /dev/null
+++ b/man/man1/echo.html
@@ -0,0 +1,62 @@
+<head>
+<title>echo(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ECHO(1)</b><td align=right><b>ECHO(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ echo &ndash; print arguments<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>echo</font></tt> [ <tt><font size=+1>&#8722;n</font></tt> ] [ <i>arg ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Echo</i> writes its arguments separated by blanks and terminated by
+ a newline on the standard output. Option <tt><font size=+1>&#8722;n</font></tt> suppresses the newline.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/echo.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ If <i>echo</i> draws an error while writing to standard output, the exit
+ status is <tt><font size=+1>write error</font></tt>. Otherwise the exit status is empty.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/ed.html b/man/man1/ed.html
new file mode 100644
index 00000000..a259b9bc
--- /dev/null
+++ b/man/man1/ed.html
@@ -0,0 +1,439 @@
+<head>
+<title>ed(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>ED(1)</b><td align=right><b>ED(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ ed &ndash; text editor<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>ed</font></tt> [ <tt><font size=+1>&#8722;</font></tt> ] [ <tt><font size=+1>&#8722;o</font></tt> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Ed</i> is a venerable text editor.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If a <i>file</i> argument is given, <i>ed</i> simulates an <tt><font size=+1>e</font></tt> command (see below)
+ on that file: it is read into <i>ed&#8217;s</i> buffer so that it can be edited.
+ The options are<br>
+ <tt><font size=+1>&#8722;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Suppress the printing of character counts by <tt><font size=+1>e</font></tt>, <tt><font size=+1>r</font></tt>, and <tt><font size=+1>w</font></tt> commands
+ and of the confirming <tt><font size=+1>!</font></tt> by <tt><font size=+1>!</font></tt> commands.<br>
+ <tt><font size=+1>&#8722;o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;(for output piping) Write all output to the standard error file
+ except writing by <tt><font size=+1>w</font></tt> commands. If no <i>file</i> is given, make <tt><font size=+1>/dev/stdout</font></tt>
+ the remembered file; see the <tt><font size=+1>e</font></tt> command below.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Ed</i> operates on a &#8216;buffer&#8217;, a copy of the file it is editing; changes
+ made in the buffer have no effect on the file until a <tt><font size=+1>w</font></tt> (write)
+ command is given. The copy of the text being edited resides in
+ a temporary file called the <i>buffer</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Commands to <i>ed</i> have a simple and regular structure: zero, one,
+ or two <i>addresses</i> followed by a single character <i>command</i>, possibly
+ followed by parameters to the command. These addresses specify
+ one or more lines in the buffer. Missing addresses are supplied
+ by default.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In general, only one command may appear on a line. Certain commands
+ allow the addition of text to the buffer. While <i>ed</i> is accepting
+ text, it is said to be in <i>input mode.</i> In this mode, no commands
+ are recognized; all input is merely collected. Input mode is left
+ by typing a period <tt><font size=+1>.</font></tt> alone at the beginning of a line.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Ed</i> supports the <i>regular expression</i> notation described in <a href="../man7/regexp.html"><i>regexp</i>(7)</a>.
+ Regular expressions are used in addresses to specify lines and
+ in one command (see <i>s</i> below) to specify a portion of a line which
+ is to be replaced. If it is desired to use one of the regular
+ expression metacharacters as an ordinary character, that
+ character may be preceded by &#8216;<tt><font size=+1>\</font></tt>&#8217;. This also applies to the character
+ bounding the regular expression (often <tt><font size=+1>/</font></tt>) and to <tt><font size=+1>\</font></tt> itself.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ To understand addressing in <i>ed</i> it is necessary to know that at
+ any time there is a <i>current line.</i> Generally, the current line
+ is the last line affected by a command; however, the exact effect
+ on the current line is discussed under the description of each
+ command. Addresses are constructed as follows.
+ 1.&nbsp;&nbsp;&nbsp;&nbsp;The character <tt><font size=+1>.</font></tt>, customarily called &#8216;dot&#8217;, addresses the current
+ line.<br>
+ 2.&nbsp;&nbsp;&nbsp;&nbsp;The character <tt><font size=+1>$</font></tt> addresses the last line of the buffer.<br>
+ 3.&nbsp;&nbsp;&nbsp;&nbsp;A decimal number <i>n</i> addresses the <i>n</i>-th line of the buffer.<br>
+ 4.<tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;'x</font></tt> addresses the line marked with the name <i>x</i>, which must be
+ a lower-case letter. Lines are marked with the <tt><font size=+1>k</font></tt> command.<br>
+ 5.&nbsp;&nbsp;&nbsp;&nbsp;A regular expression enclosed in slashes ( <tt><font size=+1>/</font></tt>) addresses the
+ line found by searching forward from the current line and stopping
+ at the first line containing a string that matches the regular
+ expression. If necessary the search wraps around to the beginning
+ of the buffer.<br>
+ 6.&nbsp;&nbsp;&nbsp;&nbsp;A regular expression enclosed in queries <tt><font size=+1>?</font></tt> addresses the line
+ found by searching backward from the current line and stopping
+ at the first line containing a string that matches the regular
+ expression. If necessary the search wraps around to the end of
+ the buffer.<br>
+ 7.&nbsp;&nbsp;&nbsp;&nbsp;An address followed by a plus sign <tt><font size=+1>+</font></tt> or a minus sign <tt><font size=+1>&#8722;</font></tt> followed
+ by a decimal number specifies that address plus (resp. minus)
+ the indicated number of lines. The plus sign may be omitted.<br>
+ 8.&nbsp;&nbsp;&nbsp;&nbsp;An address followed by <tt><font size=+1>+</font></tt> (or <tt><font size=+1>&#8722;</font></tt>) followed by a regular expression
+ enclosed in slashes specifies the first matching line following
+ (or preceding) that address. The search wraps around if necessary.
+ The <tt><font size=+1>+</font></tt> may be omitted, so <tt><font size=+1>0/x/</font></tt> addresses the <i>first</i> line in the
+ buffer with an <tt><font size=+1>x</font></tt>. Enclosing the regular expression in
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>?</font></tt> reverses the search direction.<br>
+
+ </table>
+ 9.&nbsp;&nbsp;&nbsp;&nbsp;If an address begins with <tt><font size=+1>+</font></tt> or <tt><font size=+1>&#8722;</font></tt> the addition or subtraction
+ is taken with respect to the current line; e.g. <tt><font size=+1>&#8722;5</font></tt> is understood
+ to mean <tt><font size=+1>.&#8722;5</font></tt>.<br>
+ 10.&nbsp;&nbsp;&nbsp;If an address ends with <tt><font size=+1>+</font></tt> or <tt><font size=+1>&#8722;</font></tt>, then 1 is added (resp. subtracted).
+ As a consequence of this rule and rule 9, the address <tt><font size=+1>&#8722;</font></tt> refers
+ to the line before the current line. Moreover, trailing <tt><font size=+1>+</font></tt> and
+ <tt><font size=+1>&#8722;</font></tt> characters have cumulative effect, so <tt><font size=+1>&#8722;&#8722;</font></tt> refers to the current
+ line less 2.<br>
+ 11.&nbsp;&nbsp;&nbsp;To maintain compatibility with earlier versions of the editor,
+ the character <tt><font size=+1>^</font></tt> in addresses is equivalent to <tt><font size=+1>&#8722;</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Commands may require zero, one, or two addresses. Commands which
+ require no addresses regard the presence of an address as an error.
+ Commands which accept one or two addresses assume default addresses
+ when insufficient are given. If more addresses are given than
+ a command requires, the last one or two
+ (depending on what is accepted) are used.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Addresses are separated from each other typically by a comma <tt><font size=+1>,</font></tt>.
+ They may also be separated by a semicolon <tt><font size=+1>;</font></tt>. In this case the
+ current line is set to the previous address before the next address
+ is interpreted. If no address precedes a comma or semicolon, line
+ 1 is assumed; if no address follows, the last line of the
+ buffer is assumed. The second address of any two-address sequence
+ must correspond to a line following the line corresponding to
+ the first address.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In the following list of <i>ed</i> commands, the default addresses are
+ shown in parentheses. The parentheses are not part of the address,
+ but are used to show that the given addresses are the default.
+ &#8216;Dot&#8217; means the current line.<br>
+ (<tt><font size=+1>.</font></tt>)<tt><font size=+1>a<br>
+ </font></tt>&lt;text&gt;<br>
+ <tt><font size=+1>.</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read the given text and append it after the addressed line. Dot
+ is left on the last line input, if there were any, otherwise at
+ the addressed line. Address <tt><font size=+1>0</font></tt> is legal for this command; text
+ is placed at the beginning of the buffer.<br>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>b</font></tt>[<tt><font size=+1>+&#8722;</font></tt>][<i>pagesize</i>][<tt><font size=+1>pln</font></tt>]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Browse. Print a &#8216;page&#8217;, normally 20 lines. The optional <tt><font size=+1>+</font></tt> (default)
+ or <tt><font size=+1>&#8722;</font></tt> specifies whether the next or previous page is to be printed.
+ The optional <i>pagesize</i> is the number of lines in a page. The optional
+ <tt><font size=+1>p</font></tt>, <tt><font size=+1>n</font></tt>, or <tt><font size=+1>l</font></tt> causes printing in the specified format, initially
+ <tt><font size=+1>p</font></tt>. Pagesize and format are remembered between <tt><font size=+1>b
+ </font></tt>commands. Dot is left at the last line displayed.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>c<br>
+ </font></tt>&lt;text&gt;<br>
+ <tt><font size=+1>.</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Change. Delete the addressed lines, then accept input text to
+ replace these lines. Dot is left at the last line input; if there
+ were none, it is left at the line preceding the deleted lines.<br>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>d<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete the addressed lines from the buffer. Dot is set to the
+ line following the last line deleted, or to the last line of the
+ buffer if the deleted lines had no successor.<br>
+
+ </table>
+ <tt><font size=+1>e</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Edit. Delete the entire contents of the buffer; then read the
+ named file into the buffer. Dot is set to the last line of the
+ buffer. The number of characters read is typed. The file name
+ is remembered for possible use in later <tt><font size=+1>e</font></tt>, <tt><font size=+1>r</font></tt>, or <tt><font size=+1>w</font></tt> commands. If
+ <i>filename</i> is missing, the remembered name is used.
+
+ </table>
+ <tt><font size=+1>E</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Unconditional <tt><font size=+1>e</font></tt>; see &#8216;<tt><font size=+1>q</font></tt>&#8217; below.<br>
+
+ </table>
+ <tt><font size=+1>f</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the currently remembered file name. If <i>filename</i> is given,
+ the currently remembered file name is first changed to <i>filename</i>.<br>
+
+ </table>
+ (<tt><font size=+1>1,$</font></tt>)<tt><font size=+1>g/</font></tt><i>regular expression</i><tt><font size=+1>/</font></tt><i>command list<br>
+ </i>(<tt><font size=+1>1,$</font></tt>)<tt><font size=+1>g/</font></tt><i>regular expression</i><tt><font size=+1>/<br>
+ </font></tt>(<tt><font size=+1>1,$</font></tt>)<tt><font size=+1>g/</font></tt><i>regular expression<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Global. First mark every line which matches the given <i>regular</i>expression<i>.</i>
+ Then for every such line, execute the <i>command list</i> with dot initially
+ set to that line. A single command or the first of multiple commands
+ appears on the same line with the global command. All lines of
+ a multi-line list except the last line
+ must end with <tt><font size=+1>\</font></tt>. The &#8216;<tt><font size=+1>.</font></tt>&#8217; terminating input mode for an <tt><font size=+1>a</font></tt>, <tt><font size=+1>i</font></tt>, <tt><font size=+1>c</font></tt>
+ command may be omitted if it would be on the last line of the
+ command list. The commands <tt><font size=+1>g</font></tt> and <tt><font size=+1>v</font></tt> are not permitted in the command
+ list. Any character other than space or newline may be used instead
+ of <tt><font size=+1>/</font></tt> to delimit the regular expression.
+ The second and third forms mean <tt><font size=+1>g/</font></tt><i>regular expression</i><tt><font size=+1>/p</font></tt>.<br>
+
+ </table>
+ (<tt><font size=+1>.</font></tt>)<tt><font size=+1>i<br>
+ </font></tt>&lt;text&gt;<br>
+ <tt><font size=+1>.</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert the given text before the addressed line. Dot is left
+ at the last line input, or, if there were none, at the line before
+ the addressed line. This command differs from the <i>a</i> command only
+ in the placement of the text.<br>
+ (<tt><font size=+1>.,.+1</font></tt>)<tt><font size=+1>j<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Join the addressed lines into a single line; intermediate newlines
+ are deleted. Dot is left at the resulting line.<br>
+
+ </table>
+ (<tt><font size=+1>.</font></tt>)<tt><font size=+1>k</font></tt><i>x</i>Mark the addressed line with name <i>x</i>, which must be a lower-case
+ letter. The address form <tt><font size=+1>'</font></tt><i>x</i> then addresses this line.<br>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>l<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ List. Print the addressed lines in an unambiguous way: a tab is
+ printed as <tt><font size=+1>\t</font></tt>, a backspace as <tt><font size=+1>\b</font></tt>, backslashes as <tt><font size=+1>\\</font></tt>, and non-printing
+ characters as a backslash, an <tt><font size=+1>x</font></tt>, and four hexadecimal digits.
+ Long lines are folded, with the second and subsequent sub-lines
+ indented one tab stop. If the last character in
+ the line is a blank, it is followed by <tt><font size=+1>\n</font></tt>. An <tt><font size=+1>l</font></tt> may be appended,
+ like <tt><font size=+1>p</font></tt>, to any non-I/O command.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>m</font></tt><i>a<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Move. Reposition the addressed lines after the line addressed
+ by <i>a</i>. Dot is left at the last moved line.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>n<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Number. Perform <tt><font size=+1>p</font></tt>, prefixing each line with its line number and
+ a tab. An <tt><font size=+1>n</font></tt> may be appended, like <tt><font size=+1>p</font></tt>, to any non-I/O command.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>p<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the addressed lines. Dot is left at the last line printed.
+ A <tt><font size=+1>p</font></tt> appended to any non-I/O command causes the then current line
+ to be printed after the command is executed.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>P<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ This command is a synonym for <tt><font size=+1>p</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quit the editor. No automatic write of a file is done. A <tt><font size=+1>q</font></tt> or
+ <tt><font size=+1>e</font></tt> command is considered to be in error if the buffer has been
+ modified since the last <tt><font size=+1>w</font></tt>, <tt><font size=+1>q</font></tt>, or <tt><font size=+1>e</font></tt> command.<br>
+ <tt><font size=+1>Q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quit unconditionally.<br>
+ (<tt><font size=+1>$</font></tt>)r <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Read in the given file after the addressed line. If no <i>filename</i>
+ is given, the remembered file name is used. The file name is remembered
+ if there were no remembered file name already. If the read is
+ successful, the number of characters read is printed. Dot is left
+ at the last line read from the file.
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>s</font></tt><i>n</i><tt><font size=+1>/</font></tt><i>regular expression</i><tt><font size=+1>/</font></tt><i>replacement</i><tt><font size=+1>/<br>
+ </font></tt>(<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>s</font></tt><i>n</i><tt><font size=+1>/</font></tt><i>regular expression</i><tt><font size=+1>/</font></tt><i>replacement</i><tt><font size=+1>/g<br>
+ </font></tt>(<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>s</font></tt><i>n</i><tt><font size=+1>/</font></tt><i>regular expression</i><tt><font size=+1>/</font></tt><i>replacement<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Substitute. Search each addressed line for an occurrence of the
+ specified regular expression. On each line in which <i>n</i> matches
+ are found (<i>n</i> defaults to 1 if missing), the <i>n</i>th matched string
+ is replaced by the replacement specified. If the global replacement
+ indicator <tt><font size=+1>g</font></tt> appears after the command, all subsequent
+ matches on the line are also replaced. It is an error for the
+ substitution to fail on all addressed lines. Any character other
+ than space or newline may be used instead of <tt><font size=+1>/</font></tt> to delimit the
+ regular expression and the replacement. Dot is left at the last
+ line substituted. The third form means
+ <tt><font size=+1>s</font></tt><i>n</i><tt><font size=+1>/</font></tt><i>regular expression</i><tt><font size=+1>/</font></tt><i>replacement</i><tt><font size=+1>/p</font></tt>. The second <tt><font size=+1>/</font></tt> may be omitted
+ if the replacement is empty.<br>
+ An ampersand <tt><font size=+1>&amp;</font></tt> appearing in the replacement is replaced by the
+ string matching the regular expression. The characters <tt><font size=+1>\</font></tt><i>n</i>, where
+ <i>n</i> is a digit, are replaced by the text matched by the <i>n</i>-th regular
+ subexpression enclosed between <tt><font size=+1>(</font></tt> and <tt><font size=+1>)</font></tt>. When nested parenthesized
+ subexpressions are present, <i>n</i> is
+ determined by counting occurrences of <tt><font size=+1>(</font></tt> starting from the left.<br>
+ A literal <tt><font size=+1>&amp;</font></tt>, <tt><font size=+1>/</font></tt>, <tt><font size=+1>\</font></tt> or newline may be included in a replacement by
+ prefixing it with <tt><font size=+1>\</font></tt>.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>t</font></tt><i>a<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Transfer. Copy the addressed lines after the line addressed by
+ <i>a</i>. Dot is left at the last line of the copy.<br>
+
+ </table>
+ (<tt><font size=+1>.,.</font></tt>)<tt><font size=+1>u<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Undo. Restore the preceding contents of the first addressed line
+ (sic), which must be the last line in which a substitution was
+ made (double sic).<br>
+
+ </table>
+ (<tt><font size=+1>1,$</font></tt>)<tt><font size=+1>v/</font></tt><i>regular expression</i><tt><font size=+1>/</font></tt><i>command list<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ This command is the same as the global command <tt><font size=+1>g</font></tt> except that the
+ command list is executed with dot initially set to every line
+ <i>except</i> those matching the regular expression.<br>
+
+ </table>
+ (<tt><font size=+1>1,$</font></tt>)<tt><font size=+1>w</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Write the addressed lines to the given file. If the file does
+ not exist, it is created with mode 666 (readable and writable
+ by everyone). If no <i>filename</i> is given, the remembered file name,
+ if any, is used. The file name is remembered if there were no
+ remembered file name already. Dot is unchanged. If the write is
+ successful, the number of characters written is printed.<br>
+
+ </table>
+ (<tt><font size=+1>1,$</font></tt>)<tt><font size=+1>W</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Perform <tt><font size=+1>w</font></tt>, but append to, instead of overwriting, any existing
+ file contents.<br>
+
+ </table>
+ (<tt><font size=+1>$</font></tt>)<tt><font size=+1>=</font></tt>&nbsp;&nbsp;&nbsp;Print the line number of the addressed line. Dot is unchanged.<br>
+ <tt><font size=+1>!</font></tt><i>shell command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Send the remainder of the line after the <tt><font size=+1>!</font></tt> to <a href="../man1/rc.html"><i>rc</i>(1)</a> to be interpreted
+ as a command. Dot is unchanged.<br>
+
+ </table>
+ (<tt><font size=+1>.+1</font></tt>)&lt;newline&gt;<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ An address without a command is taken as a <tt><font size=+1>p</font></tt> command. A terminal
+ <tt><font size=+1>/</font></tt> may be omitted from the address. A blank line alone is equivalent
+ to <tt><font size=+1>.+1p</font></tt>; it is useful for stepping through text.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ If an interrupt signal (DEL) is sent, <i>ed</i> prints a <tt><font size=+1>?</font></tt> and returns
+ to its command level.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When reading a file, <i>ed</i> discards NUL characters and all characters
+ after the last newline.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/tmp/e*<br>
+ ed.hup</font></tt> work is saved here if terminal hangs up<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/ed.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sam.html"><i>sam</i>(1)</a>, <a href="../man1/sed.html"><i>sed</i>(1)</a>, <a href="../man7/regexp.html"><i>regexp</i>(7)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>?</font></tt><i>name</i> for inaccessible file; <tt><font size=+1>?TMP</font></tt> for temporary file overflow;
+ <tt><font size=+1>?</font></tt> for errors in commands or other overflows.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/eqn.html b/man/man1/eqn.html
new file mode 100644
index 00000000..3d819235
--- /dev/null
+++ b/man/man1/eqn.html
@@ -0,0 +1,203 @@
+<head>
+<title>eqn(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>EQN(1)</b><td align=right><b>EQN(1)</b>
+<tr><td width=20><td colspan=2>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ delim $$<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ eqn &ndash; typeset mathematics<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>eqn</font></tt> [ <i>option ...</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Eqn</i> is a <a href="../man1/troff.html"><i>troff</i>(1)</a> preprocessor for typesetting mathematics on
+ a typesetter. Usage is almost always<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>eqn file ... | troff
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ If no files are specified, <i>eqn</i> reads from the standard input.
+ <i>Eqn</i> prepares output for the typesetter named in the <tt><font size=+1>&#8722;T</font></tt><i>dest</i> option
+ (default <tt><font size=+1>&#8722;Tutf</font></tt>; see <a href="../man1/troff.html"><i>troff</i>(1)</a>). When run with other preprocessor
+ filters, <i>eqn</i> usually comes last.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A line beginning with <tt><font size=+1>.EQ</font></tt> marks the start of an equation; the
+ end of an equation is marked by a line beginning with <tt><font size=+1>.EN</font></tt>. Neither
+ of these lines is altered, so they may be defined in macro packages
+ to get centering, numbering, etc. It is also possible to set two
+ characters as &#8216;delimiters&#8217;; text between delimiters is also
+ <i>eqn</i> input. Delimiters may be set to characters <i>x</i> and <i>y</i> with the
+ option <tt><font size=+1>&#8722;d</font></tt><i>xy</i> or (more commonly) with <tt><font size=+1>delim</font></tt> <i>xy</i> between <tt><font size=+1>.EQ</font></tt> and <tt><font size=+1>.EN</font></tt>.
+ Left and right delimiters may be identical. (They are customarily
+ taken to be $font L &quot;$$&quot; )$. Delimiters are turned off by <tt><font size=+1>delim
+ off</font></tt>. All text that is neither between delimiters
+ nor between <tt><font size=+1>.EQ</font></tt> and <tt><font size=+1>.EN</font></tt> is passed through untouched.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Tokens within <i>eqn</i> are separated by spaces, tabs, newlines, braces,
+ double quotes, tildes or circumflexes. Braces {} are used for
+ grouping; generally speaking, anywhere a single character like
+ <tt><font size=+1>x</font></tt> could appear, a complicated construction enclosed in braces
+ may be used instead. Tilde <tt><font size=+1>~</font></tt> represents a full space in the
+ output, circumflex <tt><font size=+1>^</font></tt> half as much.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Subscripts and superscripts are produced with the keywords <tt><font size=+1>sub</font></tt>
+ and <tt><font size=+1>sup</font></tt>. Thus <tt><font size=+1>x sub i</font></tt> makes $x sub i$, <tt><font size=+1>a sub i sup 2</font></tt> produces
+ $a sub i sup 2$, and <tt><font size=+1>e sup {x sup 2 + y sup 2}</font></tt> gives $e sup {x
+ sup 2 + y sup 2}$.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Over</font></tt> makes fractions: <tt><font size=+1>a over b</font></tt> yields $a over b$.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Sqrt</font></tt> produces square roots: <tt><font size=+1>1 over sqrt {ax sup 2 +bx+c}</font></tt> results
+ in $1 over sqrt {ax sup 2 +bx+c}$ .
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The keywords <tt><font size=+1>from</font></tt> and <tt><font size=+1>to</font></tt> introduce lower and upper limits on arbitrary
+ things: $lim from {n -&gt; inf} sum from 0 to n x sub i$ is made with
+ <tt><font size=+1>lim from {n &#8722;&gt; inf} sum from 0 to n x sub i</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Left and right brackets, braces, etc., of the right height are
+ made with <tt><font size=+1>left</font></tt> and <tt><font size=+1>right</font></tt>: <tt><font size=+1>left [ x sup 2 + y sup 2 over alpha
+ right ] ~=~1</font></tt> produces $left [ x sup 2 + y sup 2 over alpha right
+ ] ~=~1$. The <tt><font size=+1>right</font></tt> clause is optional. Legal characters after
+ <tt><font size=+1>left</font></tt> and <tt><font size=+1>right</font></tt> are braces, brackets,
+ bars, <tt><font size=+1>c</font></tt> and <tt><font size=+1>f</font></tt> for ceiling and floor, and <tt><font size=+1>&quot;&quot;</font></tt> for nothing at all (useful
+ for a right-side-only bracket).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Vertical piles of things are made with <tt><font size=+1>pile</font></tt>, <tt><font size=+1>lpile</font></tt>, <tt><font size=+1>cpile</font></tt>, and
+ <tt><font size=+1>rpile</font></tt>: <tt><font size=+1>pile {a above b above c}</font></tt> produces $pile {a above b above
+ c}$. There can be an arbitrary number of elements in a pile. <tt><font size=+1>lpile</font></tt>
+ left-justifies, <tt><font size=+1>pile</font></tt> and <tt><font size=+1>cpile</font></tt> center, with different vertical
+ spacing, and <tt><font size=+1>rpile</font></tt> right justifies.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Matrices are made with <tt><font size=+1>matrix</font></tt>: <tt><font size=+1>matrix { lcol { x sub i above y
+ sub 2 } ccol { 1 above 2 } }</font></tt> produces $matrix { lcol { x sub i
+ above y sub 2 } ccol { 1 above 2 } }$. In addition, there is <tt><font size=+1>rcol</font></tt>
+ for a right-justified column.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Diacritical marks are made with <tt><font size=+1>prime</font></tt>, <tt><font size=+1>dot</font></tt>, <tt><font size=+1>dotdot</font></tt>, <tt><font size=+1>hat</font></tt>, <tt><font size=+1>tilde</font></tt>,
+ <tt><font size=+1>bar</font></tt>, <tt><font size=+1>under</font></tt>, <tt><font size=+1>vec</font></tt>, <tt><font size=+1>dyad</font></tt>, and <tt><font size=+1>under</font></tt>: <tt><font size=+1>x sub 0 sup prime = f(t) bar
+ + g(t) under</font></tt> is $x sub 0 sup prime = f(t) bar + g(t) under$, and
+ <tt><font size=+1>x vec = y dyad</font></tt> is $x vec = y dyad$.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Sizes and fonts can be changed with prefix operators <tt><font size=+1>size</font></tt> <i>n</i>, <tt><font size=+1>size
+ &plusmn;</font></tt><i>n</i>, <tt><font size=+1>fat</font></tt>, <tt><font size=+1>roman</font></tt>, <tt><font size=+1>italic</font></tt>, <tt><font size=+1>bold</font></tt>, or <tt><font size=+1>font</font></tt> <i>n</i>. Size and fonts can be
+ changed globally in a document by <tt><font size=+1>gsize</font></tt> <i>n</i> and <tt><font size=+1>gfont</font></tt> <i>n</i>, or by the
+ command-line arguments <tt><font size=+1>&#8722;s</font></tt><i>n</i> and <tt><font size=+1>&#8722;f</font></tt><i>n</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Normally subscripts and superscripts are reduced by 3 point sizes
+ from the previous size; this may be changed by the command-line
+ argument <tt><font size=+1>&#8722;p</font></tt><i>n</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Successive display arguments can be lined up. Place <tt><font size=+1>mark</font></tt> before
+ the desired lineup point in the first equation; place <tt><font size=+1>lineup</font></tt> at
+ the place that is to line up vertically in subsequent equations.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Shorthands may be defined or existing keywords redefined with
+ <tt><font size=+1>define</font></tt>: <tt><font size=+1>define</font></tt> <i>thing</i> <tt><font size=+1>%</font></tt> <i>replacement</i> <tt><font size=+1>%</font></tt> defines a new token called
+ <i>thing</i> which will be replaced by <i>replacement</i> whenever it appears
+ thereafter. The <tt><font size=+1>%</font></tt> may be any character that does not occur in
+ <tt><font size=+1>replacement</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Keywords like <tt><font size=+1>sum</font></tt> ( sum ), <tt><font size=+1>int</font></tt> ( int ), <tt><font size=+1>inf</font></tt> ( inf ), and shorthands
+ like <tt><font size=+1>&gt;=</font></tt> (&gt;=), <tt><font size=+1>&#8722;&gt;</font></tt> (-&gt;), and <tt><font size=+1>!=</font></tt> ( != ) are recognized. Greek letters
+ are spelled out in the desired case, as in <tt><font size=+1>alpha</font></tt> or <tt><font size=+1>GAMMA</font></tt>. Mathematical
+ words like <tt><font size=+1>sin</font></tt>, <tt><font size=+1>cos</font></tt>, <tt><font size=+1>log</font></tt> are made Roman automatically. <a href="../man1/Troff.html"><i>Troff</i>(1)</a>
+ four-character escapes like <tt><font size=+1>\(lh</font></tt> (<=) can
+ be used anywhere. Strings enclosed in double quotes &quot; &quot; are passed
+ through untouched; this permits keywords to be entered as text,
+ and can be used to communicate with <i>troff</i> when all else fails.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/sys/lib/troff/font/devutf</font></tt>&nbsp;&nbsp;&nbsp;font descriptions for PostScript<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/eqn<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/troff.html"><i>troff</i>(1)</a>, <a href="../man1/tbl.html"><i>tbl</i>(1)</a><br>
+ J. F. Ossanna and B. W. Kernighan, &#8220;Troff User&#8217;s Manual&#8221;.<br>
+ B. W. Kernighan and L. L. Cherry, &#8220;Typesetting Mathematics--User&#8217;s
+ Guide&#8221;, <i>Unix Research System Programmer&#8217;s Manual,</i> Tenth Edition,
+ Volume 2.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ To embolden digits, parens, etc., it is necessary to quote them,
+ as in <tt><font size=+1>bold &quot;12.3&quot;</font></tt>. delim off<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/factor.html b/man/man1/factor.html
new file mode 100644
index 00000000..893f2ad9
--- /dev/null
+++ b/man/man1/factor.html
@@ -0,0 +1,73 @@
+<head>
+<title>factor(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>FACTOR(1)</b><td align=right><b>FACTOR(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ factor, primes &ndash; factor a number, generate large primes<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>factor</font></tt> [ <i>number</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>primes</font></tt> [ <i>start</i> [ <i>finish</i> ] ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Factor</i> prints <i>number</i> and its prime factors, each repeated the
+ proper number of times. The number must be positive and less than
+ 254 (about 1.8&#215;1016).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If no <i>number</i> is given, <i>factor</i> reads a stream of numbers from the
+ standard input and factors them. It exits on any input not a positive
+ integer. Maximum running time is proportional to <i>-/n </i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Primes</i> prints the prime numbers ranging from <i>start</i> to <i>finish</i>,
+ where <i>start</i> and <i>finish</i> are positive numbers less than 256. If
+ <i>finish</i> is missing, <i>primes</i> prints without end; if <i>start</i> is missing,
+ it reads the starting number from the standard input.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/factor.c<br>
+ /usr/local/plan9/src/cmd/primes.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/fmt.html b/man/man1/fmt.html
new file mode 100644
index 00000000..28d339a4
--- /dev/null
+++ b/man/man1/fmt.html
@@ -0,0 +1,100 @@
+<head>
+<title>fmt(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>FMT(1)</b><td align=right><b>FMT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ fmt, htmlfmt &ndash; simple text formatters<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fmt</font></tt> [ <i>option ...</i> ] [ <i>file ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>htmlfmt</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> ] [ <tt><font size=+1>&#8722;c</font></tt> <i>charset</i> ] [ <tt><font size=+1>&#8722;u</font></tt> <i>url</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Fmt</i> copies the given <i>files</i> (standard input by default) to its
+ standard output, filling and indenting lines. The options are<br>
+ <tt><font size=+1>&#8722;l</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;Output line length is <i>n</i>, including indent (default 70).<br>
+ <tt><font size=+1>&#8722;w</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;A synonym for <tt><font size=+1>&#8722;l</font></tt>.<br>
+ <tt><font size=+1>&#8722;i</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;Indent <i>n</i> spaces (default 0).<br>
+ <tt><font size=+1>&#8722;j</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Do not join short lines: only fold long lines.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Empty lines and initial white space in input lines are preserved.
+ Empty lines are inserted between input files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Fmt</i> is idempotent: it leaves already formatted text unchanged.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Htmlfmt</i> performs a similar service, but accepts as input text
+ formatted with HTML tags. It accepts <i>fmt</i>&#8217;s <tt><font size=+1>&#8722;l</font></tt> and <tt><font size=+1>&#8722;w</font></tt> flags and
+ also:<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Normally <i>htmlfmt</i> suppresses the contents of form fields and
+ anchors (URLs and image files); this flag causes it to print them,
+ in square brackets.<br>
+ <tt><font size=+1>&#8722;c</font></tt> <i>charset<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ change the default character set from iso-8859-1 to <i>charset</i>. This
+ is the character set assumed if there isn&#8217;t one specified by the
+ html itself in a &lt;meta&gt; directive.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;u</font></tt> <i>url</i>Use <i>url</i> as the base URL for the document when displaying
+ anchors; sets <tt><font size=+1>&#8722;a</font></tt><i>.<br>
+ </i>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/fmt.c
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>/usr/local/plan9/src/cmd/htmlfmt<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Htmlfmt</i> makes no attempt to render the two-dimensional geometry
+ of tables; it just treats the table entries as plain, to-be-formatted
+ text.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/fortune.html b/man/man1/fortune.html
new file mode 100644
index 00000000..2793ee92
--- /dev/null
+++ b/man/man1/fortune.html
@@ -0,0 +1,64 @@
+<head>
+<title>fortune(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>FORTUNE(1)</b><td align=right><b>FORTUNE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ fortune &ndash; sample lines from a file<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fortune</font></tt> [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Fortune</i> prints a one-line aphorism chosen at random. If a <i>file</i>
+ is specified, the saying is taken from that file; otherwise it
+ is selected from <tt><font size=+1>/usr/local/plan9/lib/fortunes</font></tt>.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/lib/fortunes<br>
+ /usr/local/plan9/lib/fortunes.index</font></tt> fast lookup table, maintained
+ automatically<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/fortune.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/freq.html b/man/man1/freq.html
new file mode 100644
index 00000000..6a4b82d0
--- /dev/null
+++ b/man/man1/freq.html
@@ -0,0 +1,69 @@
+<head>
+<title>freq(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>FREQ(1)</b><td align=right><b>FREQ(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ freq &ndash; print histogram of character frequencies<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>freq</font></tt> [ <tt><font size=+1>&#8722;dxocr</font></tt> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Freq</i> reads the given files (default standard input) and prints
+ histograms of the character frequencies. By default, <i>freq</i> counts
+ each byte as a character; under the <tt><font size=+1>&#8722;r</font></tt> option it instead counts
+ UTF sequences, that is, runes.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each non-zero entry of the table is printed preceded by the byte
+ value, in decimal, octal, hex, and Unicode character (if printable).
+ If any options are given, the <tt><font size=+1>&#8722;d</font></tt>, <tt><font size=+1>&#8722;x</font></tt>, <tt><font size=+1>&#8722;o</font></tt>, <tt><font size=+1>&#8722;c</font></tt> flags specify a subset
+ of value formats: decimal, hex, octal, and character, respectively.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/freq.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man7/utf.html"><i>utf</i>(7)</a>, <a href="../man1/wc.html"><i>wc</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/fsize.html b/man/man1/fsize.html
new file mode 100644
index 00000000..871ef383
--- /dev/null
+++ b/man/man1/fsize.html
@@ -0,0 +1,68 @@
+<head>
+<title>fsize(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>FSIZE(1)</b><td align=right><b>FSIZE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ fsize, mtime &ndash; print file information<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fsize</font></tt> <i>file ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>mtime</font></tt> <i>file ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Fsize</i> prints the name and size of each of the files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Mtime</i> prints the name and modification time (in seconds since
+ the epoch) of each of the files.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/fsize.c<br>
+ /usr/local/plan9/src/cmd/mtime.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The output formats of the two programs are different.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/grap.html b/man/man1/grap.html
new file mode 100644
index 00000000..e4e9c3c4
--- /dev/null
+++ b/man/man1/grap.html
@@ -0,0 +1,232 @@
+<head>
+<title>grap(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>GRAP(1)</b><td align=right><b>GRAP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ grap &ndash; pic preprocessor for drawing graphs<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>grap</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Grap</i> is a <a href="../man1/pic.html"><i>pic</i>(1)</a> preprocessor for drawing graphs on a typesetter.
+ Graphs are surrounded by the <i>troff</i> &#8216;commands&#8217; <tt><font size=+1>.G1</font></tt> and <tt><font size=+1>.G2</font></tt>. Data
+ are scaled and plotted, with tick marks supplied automatically.
+ Commands exist to modify the frame, add labels, override the default
+ ticks, change the plotting style, define coordinate
+ ranges and transformations, and include data from files. In addition,
+ <i>grap</i> provides the same loops, conditionals, and macro processing
+ that <i>pic</i> does.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>frame ht</font></tt> <i>e</i> <tt><font size=+1>wid</font></tt> <i>e</i> <tt><font size=+1>top dotted</font></tt> <i>...</i>: Set the frame around the graph
+ to specified <tt><font size=+1>ht</font></tt> and <tt><font size=+1>wid</font></tt>; default is 2 by 3 (inches). The line
+ <i>styles</i> (<tt><font size=+1>dotted</font></tt>, <tt><font size=+1>dashed</font></tt>, <tt><font size=+1>invis</font></tt>, <tt><font size=+1>solid</font></tt> (default)) of the <i>sides</i> (<tt><font size=+1>top</font></tt>,
+ <tt><font size=+1>bot</font></tt>, <tt><font size=+1>left</font></tt>, <tt><font size=+1>right</font></tt>) of the frame can be set independently.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>label</font></tt> <i>side </i><tt><font size=+1>&quot;a label&quot; &quot;as a set of strings&quot;</font></tt> <i>adjust</i>: Place label on
+ specified side; default side is bottom. <i>adjust</i> is <tt><font size=+1>up</font></tt> (or <tt><font size=+1>down
+ left right</font></tt>) <i>expr</i> to shift default position; <tt><font size=+1>width</font></tt> <i>expr</i> sets the
+ width explicitly.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>ticks</font></tt> <i>side</i> <tt><font size=+1>in at</font></tt> <i>optname expr, expr, ...</i>: Put ticks on <i>side</i> at
+ <i>expr, ...,</i> and label with <i>&quot;expr&quot;</i>. If any <i>expr</i> is followed by &quot;...&quot;,
+ label tick with &quot;...&quot;, and turn off all automatic labels. If &quot;...&quot;
+ contains <tt><font size=+1>%f</font></tt>&#8217;s, they will be interpreted as <tt><font size=+1>printf</font></tt> formatting instructions
+ for the tick value. Ticks point <tt><font size=+1>in</font></tt> or <tt><font size=+1>out</font></tt> (default out). Tick
+ iterator: instead of <tt><font size=+1>at</font></tt> <i>...</i>, use <tt><font size=+1>from</font></tt> <i>expr</i> <tt><font size=+1>to</font></tt> <i>expr</i> <tt><font size=+1>by</font></tt> <i>op expr</i>
+ where <i>op</i> is optionally <tt><font size=+1>+&#8722;*/</font></tt> for additive or multiplicative steps.
+ <tt><font size=+1>by</font></tt> can be omitted, to give steps of size 1. If no ticks are requested,
+ they are supplied automatically; suppress this with <tt><font size=+1>ticks off</font></tt>.
+ Automatic ticks normally leave a margin of 7% on each
+ side; set this to anything by <tt><font size=+1>margin =</font></tt> <i>expr</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>grid</font></tt> <i>side linedesc</i> <tt><font size=+1>at</font></tt> <i>optname expr, expr, ...</i>: Draw grids perpendicular
+ to <i>side</i> in style <i>linedesc</i> at <i>expr, ....</i> Iterators and labels work
+ as with ticks.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>coord</font></tt> <i>optname</i> <tt><font size=+1>x</font></tt> <i>min, max</i> <tt><font size=+1>y</font></tt> <i>min, max</i> <tt><font size=+1>log x &nbsp;&nbsp;&nbsp;log y</font></tt>: Set range of
+ coords and optional log scaling on either or both. This overrides
+ computation of data range. Default value of <i>optname</i> is current
+ coordinate system (each <tt><font size=+1>coord</font></tt> defines a new coordinate system).
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>plot </font></tt><i>&quot;str&quot;</i> <tt><font size=+1>at</font></tt> <i>point</i>; <i>&quot;str&quot;</i> <tt><font size=+1>at</font></tt> <i>point</i>: Put <i>str</i> at <i>point</i>. Text position
+ can be qualified with <tt><font size=+1>rjust</font></tt>, <tt><font size=+1>ljust</font></tt>, <tt><font size=+1>above</font></tt>, <tt><font size=+1>below</font></tt> after &quot;...&quot;.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>line from</font></tt> <i>point</i> <tt><font size=+1>to</font></tt> <i>point linedesc</i>: Draw line from here to there.
+ <tt><font size=+1>arrow</font></tt> works in place of <tt><font size=+1>line</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>next</font></tt> <i>optname</i> <tt><font size=+1>at</font></tt> <i>point linedesc</i>: Continue plot of data in <i>optname
+ to point</i>; default is current.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>draw</font></tt> <i>optname linedesc ...</i>: Set mode for <tt><font size=+1>next</font></tt>: use this style from
+ now on, and plot &quot;...&quot; at each point (if given).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>new</font></tt> <i>optname linedesc ...</i>: Set mode for <tt><font size=+1>next</font></tt>, but disconnect from
+ previous.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A list of numbers <i>x y1 y2 y3 ...</i> is treated as <tt><font size=+1>plot bullet at</font></tt>
+ <i>x,y1</i>; <tt><font size=+1>plot bullet at</font></tt> <i>x,y2</i>; etc., or as <tt><font size=+1>next at</font></tt> <i>x,y1</i> etc., if <tt><font size=+1>draw</font></tt>
+ is specified. Abscissae of 1,2,3,... are provided if there is
+ only one input number per line.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A point <i>optname expr, expr</i> maps the point to the named coordinate
+ system. A <i>linedesc</i> is one of <tt><font size=+1>dot dash invis solid</font></tt> optionally followed
+ by an expression.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>define</font></tt> <i>name</i> <tt><font size=+1>{</font></tt><i>whatever</i><tt><font size=+1>}</font></tt>: Define a macro. There are macros already
+ defined for standard plotting symbols like <tt><font size=+1>bullet</font></tt>, <tt><font size=+1>circle</font></tt>, <tt><font size=+1>star</font></tt>,
+ <tt><font size=+1>plus</font></tt>, etc., in <tt><font size=+1>/usr/local/plan9/lib/grap.defines</font></tt>, which is included
+ if it exists.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>var</i> <tt><font size=+1>=</font></tt> <i>expr</i>: Evaluate an expression. Operators are <tt><font size=+1>+ &#8722; *</font></tt> and <tt><font size=+1>/</font></tt>.
+ Functions are <tt><font size=+1>log</font></tt> and <tt><font size=+1>exp</font></tt> (both base 10), <tt><font size=+1>sin</font></tt>, <tt><font size=+1>cos</font></tt>, <tt><font size=+1>sqrt</font></tt>; <tt><font size=+1>rand</font></tt>
+ returns random number on [0,1); <tt><font size=+1>max(</font></tt><i>e</i><tt><font size=+1>,</font></tt><i>e</i><tt><font size=+1>)</font></tt>, <tt><font size=+1>min(</font></tt><i>e</i><tt><font size=+1>,</font></tt><i>e</i><tt><font size=+1>)</font></tt>, <tt><font size=+1>int(</font></tt><i>e</i><tt><font size=+1>)</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>print</font></tt> <i>expr</i>; <tt><font size=+1>print &quot;</font></tt><i>...</i><tt><font size=+1>&quot;</font></tt>: As a debugging aid, print <i>expr</i> or <i>string</i>
+ on the standard error.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>copy &quot;</font></tt><i>file name</i><tt><font size=+1>&quot;</font></tt>: Include this file right here.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>copy thru</font></tt> <i>macro</i>: Pass rest of input (until <tt><font size=+1>.G2</font></tt>) through <i>macro</i>,
+ treating each field (non-blank, or &quot;...&quot;) as an argument. <i>macro</i>
+ can be the name of a macro previously defined, or the body of
+ one in place, like <tt><font size=+1>/plot $1 at $2,$3/</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>copy thru</font></tt> <i>macro</i> <tt><font size=+1>until &quot;</font></tt><i>string</i><tt><font size=+1>&quot;</font></tt>: Stop copy when input is <i>string</i> (left-justified).
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>pic</font></tt> <i>remainder of line</i>: Copy to output with leading blanks removed.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>graph</font></tt> <i>Name pic-position</i>: Start a new frame, place it at specified
+ position, e.g., <tt><font size=+1>graph Thing2 with .sw at Thing1.se + (0.1,0)</font></tt>.
+ <i>Name</i> must be capitalized to keep <i>pic</i> happy.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>.</font></tt><i>anything at beginning of line</i>: Copied verbatim.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>sh %</font></tt><i>anything</i> <tt><font size=+1>%</font></tt>: Pass everything between the <tt><font size=+1>%</font></tt>&#8217;s to the shell;
+ as with macros, <tt><font size=+1>%</font></tt> may be any character and <i>anything</i> may include
+ newlines.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>#</font></tt> <i>anything</i>: A comment, which is discarded.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Order is mostly irrelevant; no category is mandatory. Any arguments
+ on the <tt><font size=+1>.G1</font></tt> line are placed on the generated <tt><font size=+1>.PS</font></tt> line for <i>pic</i>.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>.G1<br>
+ frame ht 1 top invis right invis<br>
+ coord x 0, 10 y 1, 3 log y<br>
+ ticks left in at 1 &quot;bottommost tick&quot;, 2,3 &quot;top tick&quot;<br>
+ ticks bot in from 0 to 10 by 2<br>
+ label bot &quot;silly graph&quot;<br>
+ label left &quot;left side label&quot; &quot;here&quot;<br>
+ grid left dashed at 2.5<br>
+ copy thru / circle at $1,$2 /<br>
+ 1 1<br>
+ 2 1.5<br>
+ 3 2<br>
+ 4 1.5<br>
+ 10 3<br>
+ .G2<br>
+ frame ht 1 top invis right invis<br>
+ coord x 0, 10 y 1, 3 log y<br>
+ ticks left in at 1 &quot;bottommost tick&quot;, 2,3 &quot;top tick&quot;<br>
+ ticks bot in from 0 to 10 by 2<br>
+ label bot &quot;silly graph&quot;<br>
+ label left &quot;left side label&quot; &quot;here&quot;<br>
+ grid left dashed at 2.5<br>
+ copy thru / circle at $1,$2 /<br>
+ 1 1<br>
+ 2 1.5<br>
+ 3 2<br>
+ 4 1.5<br>
+ 10 3<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/lib/grap.defines</font></tt>&nbsp;&nbsp;&nbsp;definitions of standard plotting
+ characters, e.g., bullet<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/grap<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/pic.html"><i>pic</i>(1)</a>, <a href="../man1/troff.html"><i>troff</i>(1)</a><br>
+ J. L. Bentley and B. W. Kernighan, &#8220;GRAP--A Language for Typesetting
+ Graphs&#8221;, <i>Unix Research System Programmer&#8217;s Manual,</i> Tenth Edition,
+ Volume 2.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/graph.html b/man/man1/graph.html
new file mode 100644
index 00000000..af80b3d4
--- /dev/null
+++ b/man/man1/graph.html
@@ -0,0 +1,117 @@
+<head>
+<title>graph(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>GRAPH(1)</b><td align=right><b>GRAPH(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ graph &ndash; draw a graph<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>graph</font></tt> [ <i>option ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Graph</i> with no options takes pairs of numbers from the standard
+ input as abscissas (<i>x</i>-values) and ordinates (<i>y</i>-values) of a graph.
+ Successive points are connected by straight lines. The graph is
+ encoded on the standard output for display by <a href="../man1/plot.html"><i>plot</i>(1)</a> filters.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If an ordinate is followed by a nonnumeric string, that string
+ is printed as a label beginning on the point. Labels may be surrounded
+ with quotes <tt><font size=+1>&quot; &quot;</font></tt> in which case they may be empty or contain blanks
+ and numbers; labels never contain newlines.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The following options are recognized, each as a separate argument.<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Supply abscissas automatically; no <i>x</i>-values appear in the input.
+ Spacing is given by the next argument (default 1). A second optional
+ argument is the starting point for automatic abscissas (default
+ 0, or 1 with a log scale in <i>x</i>, or the lower limit given by <tt><font size=+1>&#8722;x</font></tt>).<br>
+ <tt><font size=+1>&#8722;b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Break (disconnect) the graph after each label in the input.<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Character string given by next argument is default label for
+ each point.<br>
+ <tt><font size=+1>&#8722;g</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Next argument is grid style, 0 no grid, 1 frame with ticks,
+ 2 full grid (default).<br>
+ <tt><font size=+1>&#8722;l</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Next argument is a legend to title the graph. Grid ranges are
+ automatically printed as part of the title unless a <tt><font size=+1>&#8722;s</font></tt> option
+ is present.<br>
+ <tt><font size=+1>&#8722;m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Next argument is mode (style) of connecting lines: 0 disconnected,
+ 1 connected. Some devices give distinguishable line styles for
+ other small integers. Mode &ndash;1 (default) begins with style 1 and
+ rotates styles for successive curves under option <tt><font size=+1>&#8722;o</font></tt>.<br>
+ <tt><font size=+1>&#8722;o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;(Overlay.) The ordinates for <i>n</i> superposed curves appear in the
+ input with each abscissa value. The next argument is <i>n</i>.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Save screen; no new page for this graph.<br>
+ <tt><font size=+1>&#8722;x l</font></tt>If <tt><font size=+1>l</font></tt> is present, <i>x</i>-axis is logarithmic. Next 1 (or 2) arguments
+ are lower (and upper) <i>x</i> limits. Third argument, if present, is
+ grid spacing on <i>x</i> axis. Normally these quantities are determined
+ automatically.<br>
+ <tt><font size=+1>&#8722;y l</font></tt>Similarly for <i>y</i>.<br>
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Make automatically determined <i>x</i> and <i>y</i> scales equal.<br>
+ <tt><font size=+1>&#8722;h</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Next argument is fraction of space for height.<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Similarly for width.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Next argument is fraction of space to move right before plotting.<br>
+ <tt><font size=+1>&#8722;u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Similarly to move up before plotting.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Transpose horizontal and vertical axes. (Option <tt><font size=+1>&#8722;a</font></tt> now applies
+ to the vertical axis.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If a specified lower limit exceeds the upper limit, the axis is
+ reversed.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/graph<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/plot.html"><i>plot</i>(1)</a>, <a href="../man1/grap.html"><i>grap</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Segments that run out of bounds are dropped, not windowed. Logarithmic
+ axes may not be reversed. Option <tt><font size=+1>&#8722;e</font></tt> actually makes automatic limits,
+ rather than automatic scaling, equal.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/grep.html b/man/man1/grep.html
new file mode 100644
index 00000000..e9682561
--- /dev/null
+++ b/man/man1/grep.html
@@ -0,0 +1,117 @@
+<head>
+<title>grep(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>GREP(1)</b><td align=right><b>GREP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ grep, g &ndash; search a file for a pattern<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>grep</font></tt> [ <i>option ...</i> ] <i>pattern</i> [ <i>file ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>g</font></tt> [ <i>option ...</i> ] <i>pattern</i> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Grep</i> searches the input <i>files</i> (standard input default) for lines
+ that match the <i>pattern</i>, a regular expression as defined in <a href="../man7/regexp.html"><i>regexp</i>(7)</a>
+ with the addition of a newline character as an alternative (substitute
+ for <tt><font size=+1>|</font></tt>) with lowest precedence. Normally, each line matching the
+ pattern is &#8216;selected&#8217;, and each selected line is copied to
+ the standard output. The options are<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print only a count of matching lines.<br>
+ <tt><font size=+1>&#8722;h</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Do not print file name tags (headers) with output lines.<br>
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;The following argument is taken as a <i>pattern</i>. This option makes
+ it easy to specify patterns that might confuse argument parsing,
+ such as <tt><font size=+1>&#8722;n</font></tt>.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Ignore alphabetic case distinctions. The implementation folds
+ into lower case all letters in the pattern and input before interpretation.
+ Matched lines are printed in their original form.<br>
+ <tt><font size=+1>&#8722;l</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;(ell) Print the names of files with selected lines; don&#8217;t print
+ the lines.<br>
+ <tt><font size=+1>&#8722;L</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print the names of files with no selected lines; the converse
+ of <tt><font size=+1>&#8722;l</font></tt>.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Mark each printed line with its line number counted in its file.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Produce no output, but return status.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Reverse: print lines that do not match the pattern.<br>
+ <tt><font size=+1>&#8722;f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;The pattern argument is the name of a file containing regular
+ expressions one per line.<br>
+ <tt><font size=+1>&#8722;b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Don&#8217;t buffer the output: write each output line as soon as it
+ is discovered.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Output lines are tagged by file name when there is more than one
+ input file. (To force this tagging, include <tt><font size=+1>/dev/null</font></tt> as a file
+ name argument.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Care should be taken when using the shell metacharacters <tt><font size=+1>$*[^|()=\</font></tt>
+ and newline in <i>pattern</i>; it is safest to enclose the entire expression
+ in single quotes <tt><font size=+1>'</font></tt>...<tt><font size=+1>'</font></tt>. An expression starting with &#8217;*&#8217; will treat
+ the rest of the expression as literal characters.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>G</i> invokes grep with <tt><font size=+1>&#8722;n</font></tt> and forces tagging of output lines by file
+ name. If no files are listed, it searches all files matching<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>*.C *.b *.c *.h *.m *.cc *.java *.py *.tex *.ms<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/grep<br>
+ /usr/local/plan9/bin/g<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/ed.html"><i>ed</i>(1)</a>, <a href="../man1/awk.html"><i>awk</i>(1)</a>, <a href="../man1/sed.html"><i>sed</i>(1)</a>, <a href="../man1/sam.html"><i>sam</i>(1)</a>, <a href="../man7/regexp.html"><i>regexp</i>(7)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Exit status is null if any lines are selected, or non-null when
+ no lines are selected or an error occurs.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/gview.html b/man/man1/gview.html
new file mode 100644
index 00000000..6abdc7da
--- /dev/null
+++ b/man/man1/gview.html
@@ -0,0 +1,155 @@
+<head>
+<title>gview(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>GVIEW(1)</b><td align=right><b>GVIEW(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ gview &ndash; interactive graph viewer<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>gview</font></tt> [ <tt><font size=+1>&#8722;l</font></tt> <i>logfile</i> ] [ <tt><font size=+1>&#8722;m</font></tt> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Gview</i> reads polygonal lines or a polygonal line drawing from an
+ <tt><font size=+1>ASCII</font></tt> input file (which defaults to standard input), and views
+ it interactively, with commands to zoom in and out, perform simple
+ editing operations, and display information about points and polylines.
+ The editing commands can change the color and
+ thickness of the polylines, delete (or undelete) some of them,
+ and optionally rotate and move them. It is also possible to generate
+ an output file that reflects these changes and is in the same
+ format as the input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Since the <tt><font size=+1>move</font></tt> and <tt><font size=+1>rotate</font></tt> commands are undesirable when just viewing
+ a graph, they are only enabled if <i>gview</i> is invoked with the <tt><font size=+1>&#8722;m</font></tt>
+ option.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Clicking on a polyline with button 1 displays the coordinates
+ and a <i>t</i> value that tells how far along the polyline. <i>(t</i>=0 at the
+ first vertex, <i>t</i>=1 at the first vertex, <i>t</i>=1.5 halfway between the
+ second and third vertices, etc.) The <tt><font size=+1>&#8722;l</font></tt> option generates a log
+ file that lists all points selected in this manner.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The most important interactive operations are to <i>zoom in</i> by sweeping
+ out a rectangle, or to <i>zoom out</i> so that everything currently being
+ displayed shrinks to fit in the swept-out rectangle. Other options
+ on the button 3 menu are <i>unzoom</i> which restores the coordinate
+ system to the default state where everything fits on
+ the screen, <i>recenter</i> which takes a point and makes it the center
+ of the window, and <i>square up</i> which makes the horizontal and vertical
+ scale factors equal.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ To take a graph of a function where some part is almost linear
+ and see how it deviates from a straight line, select two points
+ on this part of the graph (i.e., select one with button 1 and
+ then select the other) and then use the <i>slant</i> command on the button
+ 3 menu. This slants the coordinate system so that the line
+ between the two selected points appears horizontal (but vertical
+ still means positive <i>y</i>). Then the <i>zoom in</i> command can be used
+ to accentuate deviations from horizontal. There is also an <i>unslant</i>
+ command that undoes all of this and goes back to an unslanted
+ coordinate system.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There is a <i>recolor</i> command on button 3 that lets you select a
+ color and change everything to have that color, and a similar
+ command on button 2 that only affects the selected polyline. The
+ <i>thick</i> or <i>thin</i> command on button 2 changes the thickness of the
+ selected polyline and there is also an undo command for such
+ edits.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Finally, button 3 had commands to <i>read</i> a new input file and display
+ it on top of everything else, <i>restack</i> the drawing order (in case
+ lines of different color are drawn on top of each other), <i>write</i>
+ everything into an output file, or <i>exit</i> the program.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each polyline in an input or output file is a space-delimited
+ <i>x y</i> coordinate pair on a line by itself, and the polyline is a
+ sequence of such vertices followed by a label. The label could
+ be just a blank line or it could be a string in double quotes,
+ or virtually any text that does not contain spaces and is on a
+ line by itself. The
+ label at the end of the last polyline is optional. It is not legal
+ to have two consecutive labels, since that would denote a zero-vertex
+ polyline and each polyline must have at least one vertex. (One-vertex
+ polylines are useful for scatter plots.)<br>
+ If the label after a polyline can contains the word <tt><font size=+1>Thick</font></tt> or a
+ color name <tt><font size=+1>(Red</font></tt>, <tt><font size=+1>Pink</font></tt>, <tt><font size=+1>Dkred</font></tt>, <tt><font size=+1>Orange</font></tt>, <tt><font size=+1>Yellow</font></tt>, <tt><font size=+1>Dkyellow</font></tt>, <tt><font size=+1>Green</font></tt>,
+ <tt><font size=+1>Dkgreen</font></tt>, <tt><font size=+1>Cyan</font></tt>, <tt><font size=+1>Blue</font></tt>, <tt><font size=+1>Ltblue</font></tt>, <tt><font size=+1>Magenta</font></tt>, <tt><font size=+1>Violet</font></tt>, <tt><font size=+1>Gray</font></tt>, <tt><font size=+1>Black</font></tt>, <tt><font size=+1>White</font></tt>),
+ whichever color name comes first will be used to color the polyline.
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ To see a graph of the function <i>y</i>=<i>sin(</i>x<i>)/</i>x generate input with
+ an awk script and pipe it into <i>gview</i>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>awk 'BEGIN{for(x=.1;x&lt;500;x+=.1)print x,sin(x)/x}' | gview<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/gview.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/awk.html"><i>awk</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The user interface for the <i>slant</i> command is counter-intuitive.
+ Perhaps it would be better to have a scheme for sweeping out a
+ parallelogram.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/gzip.html b/man/man1/gzip.html
new file mode 100644
index 00000000..3f476f15
--- /dev/null
+++ b/man/man1/gzip.html
@@ -0,0 +1,135 @@
+<head>
+<title>gzip(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>GZIP(1)</b><td align=right><b>GZIP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ gzip, gunzip, bzip2, bunzip2, zip, unzip, &ndash; compress and expand
+ data<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>gzip</font></tt> [<tt><font size=+1>&#8722;cvD</font></tt>[<tt><font size=+1>1&#8722;9</font></tt>]] [<i>file</i> <tt><font size=+1>...</font></tt>]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>gunzip</font></tt> [<tt><font size=+1>&#8722;ctTvD</font></tt>] [<i>file</i> <tt><font size=+1>...</font></tt>]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>bzip2</font></tt> [<tt><font size=+1>&#8722;cvD</font></tt>[<tt><font size=+1>1&#8722;9</font></tt>]] [<i>file</i> <tt><font size=+1>...</font></tt>]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>bunzip2</font></tt> [<tt><font size=+1>&#8722;cvD</font></tt>] [<i>file</i> <tt><font size=+1>...</font></tt>]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>zip</font></tt> [<tt><font size=+1>&#8722;vD</font></tt>[<tt><font size=+1>1&#8722;9</font></tt>]] [<tt><font size=+1>&#8722;f</font></tt> <i>zipfile</i>] <i>file</i> [<tt><font size=+1>...</font></tt>]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>unzip</font></tt> [<tt><font size=+1>&#8722;cistTvD</font></tt>] [<tt><font size=+1>&#8722;f</font></tt> <i>zipfile</i>] <i>[</i>file <tt><font size=+1>...</font></tt>]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Gzip</i> encodes files with a hybrid Lempel-Ziv 1977 and Huffman compression
+ algorithm known as <tt><font size=+1>deflate</font></tt>. Most of the time, the resulting file
+ is smaller, and will never be much bigger. Output files are named
+ by taking the last path element of each file argument and appending
+ <tt><font size=+1>.gz</font></tt>; if the resulting name ends with
+ <tt><font size=+1>.tar.gz</font></tt>, it is converted to <tt><font size=+1>.tgz</font></tt> instead. <i>Gunzip</i> reverses the
+ process. Its output files are named by taking the last path element
+ of each file argument, converting <tt><font size=+1>.tgz</font></tt> to <tt><font size=+1>.tar.gz</font></tt>, and stripping
+ any <tt><font size=+1>.gz</font></tt>; the resulting name must be different from the original
+ name.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Bzip2</i> and <i>bunzip2</i> are similar in interface to <i>gzip</i> and <i>gunzip</i>,
+ but use a modified Burrows-Wheeler block sorting compression algorithm.
+ The default suffix for output files is <tt><font size=+1>.bz2</font></tt>, with <tt><font size=+1>.tar.bz2</font></tt> becoming
+ <tt><font size=+1>.tbz</font></tt>. <i>Bunzip2</i> recognizes the extension <tt><font size=+1>.tbz2</font></tt> as a synonym for
+ <tt><font size=+1>.tbz</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Zip</i> encodes the named files and places the results into the archive
+ <i>zipfile</i>, or the standard output if no file is given. <i>Unzip</i> extracts
+ files from an archive created by <i>zip</i>. If no files are named as
+ arguments, all of files in the archive are extracted. A directory&#8217;s
+ name implies all recursively contained files and subdirectories.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ None of these programs removes the original files. If the process
+ fails, the faulty output files are removed.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options are:<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Write to standard output rather than creating an output file.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Convert all archive file names to lower case.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Streaming mode. Looks at the file data adjacent to each compressed
+ file rather than seeking in the central file directory. This is
+ the mode used by <i>unzip</i> if no <i>zipfile</i> is specified. If <tt><font size=+1>&#8722;s</font></tt> is given,
+ <tt><font size=+1>&#8722;T</font></tt> is ignored.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List matching files in the archive rather than extracting them.<br>
+ <tt><font size=+1>&#8722;T</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the output time to that specified in the archive.<br>
+ <tt><font size=+1>&#8722;1</font></tt> .. <tt><font size=+1>&#8722;9</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the compression level. <tt><font size=+1>&#8722;1</font></tt> is tuned for speed, <tt><font size=+1>&#8722;9</font></tt>
+ for minimal output size. The best compromise is <tt><font size=+1>&#8722;6</font></tt>, the default.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Produce more descriptive output. With <tt><font size=+1>&#8722;t</font></tt>, adds the uncompressed
+ size in bytes and the modification time to the output. Without
+ <tt><font size=+1>&#8722;t</font></tt>, prints the names of files on standard error as they are compressed
+ or decompressed.<br>
+ <tt><font size=+1>&#8722;D</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Produce debugging output.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/gzip<br>
+ /usr/local/plan9/src/cmd/bzip2<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/tar.html"><i>tar</i>(1)</a>, <a href="../man1/compress.html"><i>compress</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Unzip</i> can only extract files which are uncompressed or compressed
+ with the <tt><font size=+1>deflate</font></tt> compression scheme. Recent zip files fall into
+ this category.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/hoc.html b/man/man1/hoc.html
new file mode 100644
index 00000000..21107e8e
--- /dev/null
+++ b/man/man1/hoc.html
@@ -0,0 +1,136 @@
+<head>
+<title>hoc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>HOC(1)</b><td align=right><b>HOC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ hoc &ndash; interactive floating point language<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>hoc</font></tt> [ <i>file ...</i> ] [ <tt><font size=+1>&#8722;e</font></tt> <i>expression</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Hoc</i> interprets a simple language for floating point arithmetic,
+ at about the level of BASIC, with C-like syntax and functions.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The named <i>files</i> are read and interpreted in order. If no <i>file</i>
+ is given or if <i>file</i> is <tt><font size=+1>&#8722;</font></tt> <i>hoc</i> interprets the standard input. The
+ <tt><font size=+1>&#8722;e</font></tt> option allows input to <i>hoc</i> to be specified on the command line,
+ to be treated as if it appeared in a file.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Hoc</i> input consists of <i>expressions</i> and <i>statements</i>. Expressions
+ are evaluated and their results printed. Statements, typically
+ assignments and function or procedure definitions, produce no
+ output unless they explicitly call <i>print</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Variable names have the usual syntax, including <tt><font size=+1>_</font></tt>; the name <tt><font size=+1>_</font></tt>
+ by itself contains the value of the last expression evaluated.
+ The variables <tt><font size=+1>E</font></tt>, <tt><font size=+1>PI</font></tt>, <tt><font size=+1>PHI</font></tt>, <tt><font size=+1>GAMMA</font></tt> and <tt><font size=+1>DEG</font></tt> are predefined; the last
+ is 59.25..., degrees per radian.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Expressions are formed with these C-like operators, listed by
+ decreasing precedence.<br>
+ <tt><font size=+1>^</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exponentiation<br>
+ <tt><font size=+1>! &#8722; ++ &#8722;&#8722;<br>
+ * / %<br>
+ + &#8722;<br>
+ &gt; &gt;= &lt; &lt;= == !=<br>
+ &amp;&amp;<br>
+ ||<br>
+ = += &#8722;= *= /= %=<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ Built in functions are <tt><font size=+1>abs</font></tt>, <tt><font size=+1>acos</font></tt>, <tt><font size=+1>asin</font></tt>, <tt><font size=+1>atan</font></tt> (one argument), <tt><font size=+1>cos</font></tt>,
+ <tt><font size=+1>cosh</font></tt>, <tt><font size=+1>exp</font></tt>, <tt><font size=+1>int</font></tt>, <tt><font size=+1>log</font></tt>, <tt><font size=+1>log10</font></tt>, <tt><font size=+1>sin</font></tt>, <tt><font size=+1>sinh</font></tt>, <tt><font size=+1>sqrt</font></tt>, <tt><font size=+1>tan</font></tt>, and <tt><font size=+1>tanh</font></tt>. The
+ function <tt><font size=+1>read(x)</font></tt> reads a value into the variable <tt><font size=+1>x</font></tt> and returns
+ 0 at EOF; the statement <tt><font size=+1>print</font></tt> prints a list of expressions that
+ may include string constants such as
+ <tt><font size=+1>&quot;hello\n&quot;</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ <tt><font size=+1>
+ </font></tt>Control flow statements are <tt><font size=+1>if</font></tt>-<tt><font size=+1>else</font></tt>, <tt><font size=+1>while</font></tt>, and <tt><font size=+1>for</font></tt>, with braces
+ for grouping. Newline ends a statement. Backslash-newline is equivalent
+ to a space.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Functions and procedures are introduced by the words <tt><font size=+1>func</font></tt> and
+ <tt><font size=+1>proc</font></tt>; <tt><font size=+1>return</font></tt> is used to return with a value from a function.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>func gcd(a, b) {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ temp = abs(a) % abs(b)<br>
+ if(temp == 0) return abs(b)<br>
+ return gcd(b, temp)<br>
+
+ </table>
+ }<br>
+ for(i=1; i&lt;12; i++) print gcd(i,12)<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/hoc<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/bc.html"><i>bc</i>(1)</a>, <a href="../man1/dc.html"><i>dc</i>(1)</a><br>
+ B. W. Kernighan and R. Pike, <i>The Unix Programming Environment,</i>
+ Prentice-Hall, 1984<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Error recovery is imperfect within function and procedure definitions.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/idiff.html b/man/man1/idiff.html
new file mode 100644
index 00000000..15296a37
--- /dev/null
+++ b/man/man1/idiff.html
@@ -0,0 +1,87 @@
+<head>
+<title>idiff(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>IDIFF(1)</b><td align=right><b>IDIFF(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ idiff &ndash; interactive diff<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>idiff</font></tt> [ <tt><font size=+1>&#8722;bw</font></tt> ] <i>file1 file2<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Idiff</i> interactively merges <i>file1</i> and <i>file2</i> onto standard output.
+ Wherever <i>file1</i> and <i>file2</i> differ, <i>idiff</i> displays the differences
+ in the style of &#8220;<tt><font size=+1>diff &#8722;n</font></tt>&#8221; on standard error and prompts the user
+ to select a chunk. Valid responses are:<br>
+ <tt><font size=+1>&lt;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use the chunk from <i>file1</i>.<br>
+ <tt><font size=+1>&gt;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use the chunk from <i>file2</i>.<br>
+ <tt><font size=+1>=</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use the diff output itself.<br>
+ <tt><font size=+1>q&lt;</font></tt>, <tt><font size=+1>q&gt;</font></tt>, <tt><font size=+1>q=<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Use the given response for all future questions.<br>
+
+ </table>
+ <tt><font size=+1>!</font></tt><i>cmd</i>Execute <i>cmd</i> and prompt again.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Idiff</i> invokes <a href="../man1/diff.html"><i>diff</i>(1)</a> to compare the files. The <tt><font size=+1>&#8722;b</font></tt> and <tt><font size=+1>&#8722;w</font></tt> flags,
+ if passed, are passed to <i>diff</i>.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/tmp/idiff.*<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/idiff.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/diff.html"><i>diff</i>(1)</a><br>
+ Kernighan and Pike, <i>The Unix Programming Environment</i>, Prentice-Hall,
+ 1984.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/index.html b/man/man1/index.html
new file mode 100644
index 00000000..c35ab541
--- /dev/null
+++ b/man/man1/index.html
@@ -0,0 +1,449 @@
+<html>
+<head>
+<title>Manual Section 1 - Plan 9 from User Space</title>
+</head>
+<body>
+<table width=100%>
+<tr><td width=20><td>
+<center>
+<table border=0 cellspacing=0 cellpadding=0 width=100%>
+<tr height=1><td width=200><td>
+<tr><td colspan=2>
+ <center>
+ <b>Manual Section 1 - Plan 9 from User Space</b>
+ </center>
+<tr height=10><td>
+<tr><td valign=top><a href="intro.html">intro(1)</a><td>intro &ndash; introduction to Plan 9 from User Space
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="9.html">9(1)</a><td>9 &ndash; run Plan 9 commands
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="9c.html">9c(1)</a><td>9c, 9a, 9l, 9ar &ndash; C compiler, assembler, linker, archiver
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="9p.html">9p(1)</a><td>9p &ndash; read and write files on a 9P server
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="9term.html">9term(1)</a><td>9term &ndash; terminal windows
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="acid.html">acid(1)</a><td>acid, acidtypes &ndash; debugger
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="acme.html">acme(1)</a><td>acme, win, awd &ndash; interactive text windows
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="acmeevent.html">acmeevent(1)</a><td>acmeevent, acme.rc &ndash; shell script support for acme clients
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="ascii.html">ascii(1)</a><td>ascii, unicode &ndash; interpret ASCII, Unicode characters
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="astro.html">astro(1)</a><td>astro &ndash; print astronomical information
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="basename.html">basename(1)</a><td>basename &ndash; strip file name affixes
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="bc.html">bc(1)</a><td>bc &ndash; arbitrary-precision arithmetic language
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="bundle.html">bundle(1)</a><td>bundle &ndash; collect files for distribution
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="cal.html">cal(1)</a><td>cal &ndash; print calendar
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="calendar.html">calendar(1)</a><td>calendar &ndash; print upcoming events
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="cat.html">cat(1)</a><td>cat, read, nobs &ndash; catenate files
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="cleanname.html">cleanname(1)</a><td>cleanname &ndash; clean a path name
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="clog.html">clog(1)</a><td>auxclog &ndash; create date-stamped console log
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="cmp.html">cmp(1)</a><td>cmp &ndash; compare two files
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="colors.html">colors(1)</a><td>colors, cmapcube &ndash; display color map
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="comm.html">comm(1)</a><td>comm &ndash; select or reject lines common to two sorted files
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="core.html">core(1)</a><td>core &ndash; print information about dead processes
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="crop.html">crop(1)</a><td>crop, iconv &ndash; frame, crop, and convert image
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="date.html">date(1)</a><td>date &ndash; date and time
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="db.html">db(1)</a><td>db &ndash; debugger
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="dc.html">dc(1)</a><td>dc &ndash; desk calculator
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="deroff.html">deroff(1)</a><td>deroff, delatex &ndash; remove formatting requests
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="dial.html">dial(1)</a><td>dial &ndash; connect to a remote service
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="dict.html">dict(1)</a><td>dict, adict &ndash; dictionary browser
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="diff.html">diff(1)</a><td>diff &ndash; differential file comparator
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="doctype.html">doctype(1)</a><td>doctype &ndash; intuit command line for formatting a document
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="echo.html">echo(1)</a><td>echo &ndash; print arguments
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="ed.html">ed(1)</a><td>ed &ndash; text editor
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="eqn.html">eqn(1)</a><td>eqn &ndash; typeset mathematics
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="factor.html">factor(1)</a><td>factor, primes &ndash; factor a number, generate large primes
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="fmt.html">fmt(1)</a><td>fmt, htmlfmt &ndash; simple text formatters
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="fortune.html">fortune(1)</a><td>fortune &ndash; sample lines from a file
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="freq.html">freq(1)</a><td>freq &ndash; print histogram of character frequencies
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="fsize.html">fsize(1)</a><td>fsize, mtime &ndash; print file information
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="grap.html">grap(1)</a><td>grap &ndash; pic preprocessor for drawing graphs
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="graph.html">graph(1)</a><td>graph &ndash; draw a graph
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="grep.html">grep(1)</a><td>grep, g &ndash; search a file for a pattern
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="gview.html">gview(1)</a><td>gview &ndash; interactive graph viewer
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="gzip.html">gzip(1)</a><td>gzip, gunzip, bzip2, bunzip2, zip, unzip, &ndash; compress and expand data
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="hoc.html">hoc(1)</a><td>hoc &ndash; interactive floating point language
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="idiff.html">idiff(1)</a><td>idiff &ndash; interactive diff
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="join.html">join(1)</a><td>join &ndash; relational database operator
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="jpg.html">jpg(1)</a><td>jpg, gif, png, ppm, bmp, yuv, ico, togif, toppm, topng, toico &ndash; view and convert pictures
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="kill.html">kill(1)</a><td>kill, slay, start, stop &ndash; print commands to manipulate processes
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="label.html">label(1)</a><td>label, awd &ndash; set window label
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="lex.html">lex(1)</a><td>lex &ndash; generator of lexical analysis programs
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="look.html">look(1)</a><td>look &ndash; find lines in a sorted list
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="ls.html">ls(1)</a><td>ls, lc &ndash; list contents of directory
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="man.html">man(1)</a><td>man, lookman, sig &ndash; print or find pages of this manual
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="map.html">map(1)</a><td>map, mapdemo, mapd &ndash; draw maps on various projections
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="mc.html">mc(1)</a><td>mc &ndash; multicolumn print
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="mk.html">mk(1)</a><td>mk &ndash; maintain (make) related files
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="mkdir.html">mkdir(1)</a><td>mkdir &ndash; make a directory
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="namespace.html">namespace(1)</a><td>namespace &ndash; print name space directory
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="news.html">news(1)</a><td>news &ndash; print news items
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="p.html">p(1)</a><td>p &ndash; paginate
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="page.html">page(1)</a><td>img, psv &ndash; view
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="pic.html">pic(1)</a><td>pic, tpic &ndash; troff and tex preprocessors for drawing pictures
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="plot.html">plot(1)</a><td>plot &ndash; graphics filter
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="plumb.html">plumb(1)</a><td>plumb &ndash; send message to plumber
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="pr.html">pr(1)</a><td>pr &ndash; print file
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="proof.html">proof(1)</a><td>proof &ndash; troff output interpreter
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="ps.html">ps(1)</a><td>ps, psu &ndash; process status
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="psfonts.html">psfonts(1)</a><td>psfonts, psdownload &ndash; add necessary fonts to PostScript document for printing
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="pwd.html">pwd(1)</a><td>pwd, pbd &ndash; working directory
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="rc.html">rc(1)</a><td>rc, cd, eval, exec, exit, flag, rfork, shift, wait, whatis, ., ~ &ndash; command language
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="rio.html">rio(1)</a><td>rio &ndash; rio-like Window Manager for X
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="rm.html">rm(1)</a><td>rm &ndash; remove files
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="sam.html">sam(1)</a><td>sam, B, E, sam.save, samterm, samsave &ndash; screen editor with structural regular expressions
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="scat.html">scat(1)</a><td>scat &ndash; sky catalogue and Digitized Sky Survey
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="secstore.html">secstore(1)</a><td>aescbc, secstore, ipso &ndash; secstore commands
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="sed.html">sed(1)</a><td>sed &ndash; stream editor
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="seq.html">seq(1)</a><td>seq &ndash; print sequences of numbers
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="sleep.html">sleep(1)</a><td>sleep &ndash; suspend execution for an interval
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="sort.html">sort(1)</a><td>sort &ndash; sort and/or merge files
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="spell.html">spell(1)</a><td>spell, sprog &ndash; find spelling errors
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="split.html">split(1)</a><td>split &ndash; split a file into pieces
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="src.html">src(1)</a><td>src &ndash; find source code for executable
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="stats.html">stats(1)</a><td>stats, auxstats &ndash; display graphs of system activity
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="strings.html">strings(1)</a><td>strings &ndash; extract printable strings
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="sum.html">sum(1)</a><td>sum, md5sum, sha1sum &ndash; sum and count blocks in a file
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tail.html">tail(1)</a><td>tail &ndash; deliver the last part of a file
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tbl.html">tbl(1)</a><td>tbl &ndash; format tables for nroff or troff
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tcs.html">tcs(1)</a><td>tcs &ndash; translate character sets
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tee.html">tee(1)</a><td>tee &ndash; pipe fitting
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="test.html">test(1)</a><td>test &ndash; set status according to condition
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="time.html">time(1)</a><td>time &ndash; time a command
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="touch.html">touch(1)</a><td>touch &ndash; set modification date of a file
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tr.html">tr(1)</a><td>tr &ndash; translate characters
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tr2post.html">tr2post(1)</a><td>tr2post &ndash; convert troff intermediate to PostScript
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="troff.html">troff(1)</a><td>troff, nroff &ndash; text formatting and typesetting
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="troff2html.html">troff2html(1)</a><td>troff2html &ndash; convert troff output into HTML
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="tweak.html">tweak(1)</a><td>tweak &ndash; edit image files, subfont files, face files, etc.
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="uniq.html">uniq(1)</a><td>uniq &ndash; report repeated lines in a file
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="units.html">units(1)</a><td>units &ndash; conversion program
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="vac.html">vac(1)</a><td>vac &ndash; create a vac archive on Venti
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="wc.html">wc(1)</a><td>wc &ndash; word count
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="web.html">web(1)</a><td>web, wmail &ndash; handle web page, mail message for plumber
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="wintext.html">wintext(1)</a><td>wintext, ", "" &ndash; access text in current window
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="xd.html">xd(1)</a><td>xd &ndash; hex, octal, decimal, or ASCII dump
+<tr height=1><td>
+<tr height=1><td colspan=2 bgcolor=#cccccc>
+<tr height=1><td>
+<tr><td valign=top><a href="yacc.html">yacc(1)</a><td>yacc &ndash; yet another compiler-compiler
+</table>
+</center>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<td width=20>
+</table>
+</body>
+</html>
diff --git a/man/man1/intro.html b/man/man1/intro.html
new file mode 100644
index 00000000..fc628e5a
--- /dev/null
+++ b/man/man1/intro.html
@@ -0,0 +1,221 @@
+<head>
+<title>intro(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>INTRO(1)</b><td align=right><b>INTRO(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ intro &ndash; introduction to Plan 9 from User Space<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Plan 9 is a distributed computing environment built at Bell Labs
+ starting in the late 1980s. The system can be obtained from Bell
+ Labs at <tt><font size=+1>http://plan9.bell&#8722;labs.com/plan9</font></tt> and runs on PCs and a
+ variety of other platforms. Plan 9 became a convenient platform
+ for experimenting with new ideas,
+ applications, and services.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Plan 9 from User Space provides many of the ideas, applications,
+ and services from Plan 9 on Unix-like systems. It runs on FreeBSD
+ (x86), Linux (x86 and PowerPC), Mac OS X (PowerPC), OpenBSD (x86),
+ and SunOS (Sparc).<br>
+ <p><font size=+1><b>Commands </b></font><br>
+ Plan 9 from User Space expects its own directory tree, conventionally
+ <tt><font size=+1>/usr/local/plan9</font></tt>. When programs need to access files in the tree,
+ they expect the <tt><font size=+1>$PLAN9</font></tt> environment variable to contain the name
+ of the root of the tree. See <a href="../man1/install.html"><i>install</i>(1)</a> for details about installation.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Many of the familiar Unix commands, for example <a href="../man1/cat.html"><i>cat</i>(1)</a>, <a href="../man1/ls.html"><i>ls</i>(1)</a>,
+ and <a href="../man1/wc.html"><i>wc</i>(1)</a>, are present, but in their Plan 9 forms: <i>cat</i> takes no
+ arguments, <i>ls</i> does not columnate its output when printing to a
+ terminal, and <i>wc</i> counts UTF characters. In some cases, the differences
+ are quite noticeable: <a href="../man1/grep.html"><i>grep</i>(1)</a> and <a href="../man1/sed.html"><i>sed</i>(1)</a> expect Plan 9
+ regular expressions (see <a href="../man7/regexp.html"><i>regexp</i>(7)</a>), which are closest to what
+ Unix calls extended regular expressions. Because of these differences,
+ it is not recommended to put <tt><font size=+1>$PLAN9/bin</font></tt> before the usual system
+ <tt><font size=+1>bin</font></tt> directories in your search path. Instead, put it at the end
+ of your path and use the <a href="../man1/9.html"><i>9</i>(1)</a> script when you want to
+ invoke the Plan 9 version of a traditional Unix command.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Occasionally the Plan 9 programs have been changed to adapt to
+ Unix. <a href="../man1/Mk.html"><i>Mk</i>(1)</a> now allows mkfiles to choose their own shell, and
+ <a href="../man1/rc.html"><i>rc</i>(1)</a> has a <i>ulimit</i> builtin and manages <tt><font size=+1>$PATH</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Many of the graphical programs from Plan 9 are present, including
+ <a href="../man1/sam.html"><i>sam</i>(1)</a> and <a href="../man1/acme.html"><i>acme</i>(1)</a>. An X11 window manager <a href="../man1/rio.html"><i>rio</i>(1)</a> mimics Plan 9&#8217;s
+ window system, with command windows implemented by the external
+ program <a href="../man1/9term.html"><i>9term</i>(1)</a>. Following the style of X Windows, these programs
+ run in new windows rather than the one in
+ which they are invoked. They all take a <tt><font size=+1>&#8722;W</font></tt> option to specify the
+ size and placement of the new window. The argument is one of <i>width</i><tt><font size=+1>x</font></tt><i>height</i>,
+ <i>width</i><tt><font size=+1>x</font></tt><i>height</i><tt><font size=+1>@</font></tt><i>xmin</i><tt><font size=+1>,</font></tt><i>xmax</i>, or <i>xmin</i><tt><font size=+1>,</font></tt><i>ymin</i><tt><font size=+1>,</font></tt><i>xmax</i><tt><font size=+1>,</font></tt><i>ymax</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <a href="../man4/plumber.html"><i>plumber</i>(4)</a> helps to connect the various Plan 9 programs together,
+ and fittings like <a href="../man1/web.html"><i>web</i>(1)</a> connect it to external programs such
+ as web browsers; one can click on a URL in <i>acme</i> and see the page
+ load in <i>Firefox</i>.<br>
+ <p><font size=+1><b>User-level file servers </b></font><br>
+ In Plan 9, user-level file servers present file trees via the
+ Plan 9 file protocol, 9P. Processes can mount arbitrary file servers
+ and customize their own name spaces. These facilities are used
+ to connect programs. Clients interact with file servers by reading
+ and writing files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ This cannot be done directly on Unix. Instead the servers listen
+ for 9P connections on Unix domain sockets; clients connect to
+ these sockets and speak 9P directly using the <a href="../man3/9pclient.html"><i>9pclient</i>(3)</a> library.
+ <a href="../man4/Intro.html"><i>Intro</i>(4)</a> tells more of the story. The effect is not as clean as
+ on Plan 9, but it gets the job done and still provides a uniform
+ and
+ easy-to-understand mechanism. The <a href="../man1/9p.html"><i>9p</i>(1)</a> client can be used in
+ shell scripts or by hand to carry out simple interactions with
+ servers.<br>
+ <p><font size=+1><b>External databases </b></font><br>
+ Some programs rely on large databases that would be cumbersome
+ to include in every release. Scripts are provided that download
+ these databases separately. These databases can be downloaded
+ separately. See <tt><font size=+1>$PLAN9/dict/README</font></tt> and <tt><font size=+1>$PLAN9/sky/README</font></tt>.<br>
+ <p><font size=+1><b>Programming </b></font><br>
+ The shell scripts <i>9c</i> and <i>9l</i> (see <a href="../man1/9c.html"><i>9c</i>(1)</a>) provide a simple interface
+ to the underlying system compiler and linker, similar to the <i>2c</i>
+ and <i>2l</i> families on Plan 9. <i>9c</i> compiles source files, and <i>9l</i> links
+ object files into executables. When using Plan 9 libraries, <i>9l</i>
+ infers the correct set of libraries from the object files, so
+ that no <tt><font size=+1>&#8722;l
+ </font></tt>options are needed.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The only way to write multithreaded programs is to use the <a href="../man3/thread.html"><i>thread</i>(3)</a>
+ library. <a href="../man3/Rfork.html"><i>Rfork</i>(3)</a> exists but is not as capable as on Plan 9. There
+ are many unfortunate by necessary preprocessor diversions to make
+ Plan 9 and Unix libraries coexist. See <a href="../man3/intro.html"><i>intro</i>(3)</a> for details.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The debuggers <a href="../man1/acid.html"><i>acid</i>(1)</a> and <a href="../man1/db.html"><i>db</i>(1)</a> and the debugging library <a href="../man3/mach.html"><i>mach</i>(3)</a>
+ are works in progress. They are platform-independent, so that
+ x86 Linux core dumps can be inspected on PowerPC Mac OS X machines,
+ but they are also fairly incomplete. The x86 target is the most
+ mature; initial PowerPC support exists; and other
+ targets are unimplemented. The debuggers can only inspect, not
+ manipulate, target processes. Support for operating system threads
+ and for 64-bit architectures needs to be rethought. On x86 Linux
+ systems, <i>acid</i> and <i>db</i> can be relied upon to produce reasonable
+ stack traces (often in cases when GNU <i>gdb</i> cannot) and
+ dump data structures, but that it is the extent to which they
+ have been developed and exercised.<br>
+ <p><font size=+1><b>Porting programs </b></font><br>
+ The vast majority of the familiar Plan 9 programs have been ported,
+ including the Unicode-aware <a href="../man1/troff.html"><i>troff</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Of the more recent additions to Plan 9, the <a href="../man1/secstore.html"><i>secstore</i>(1)</a> client
+ has been ported, though <i>secstored</i> has not. <a href="../man1/Vac.html"><i>Vac</i>(1)</a> has been ported,
+ though <i>vacfs</i> has not. <i>Factotum</i> and <i>venti</i> are in progress.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A backup system providing a dump file system built atop Venti
+ is also in progress.<br>
+ <p><font size=+1><b>Porting to new systems </b></font><br>
+ Porting the tree to new operating systems or architectures should
+ be straightforward, as system-specific code has been kept to a
+ minimum. The largest pieces of system-specific code are <tt><font size=+1>&lt;u.h&gt;</font></tt>, which
+ must include the right system files and set up the right integer
+ type definitions, and <i>libthread</i>, which must implement
+ spin locks, operating system thread creation, and context switching
+ routines. Portable implementations of these using <tt><font size=+1>&lt;pthread.h&gt;</font></tt> and
+ <tt><font size=+1>&lt;ucontext.h&gt;</font></tt> already exist. If your system supports them, you may
+ not need to write any system specific code at all.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There are other smaller system dependencies, such as the terminal
+ handling code in <a href="../man1/9term.html"><i>9term</i>(1)</a> and the implementation of <a href="../man3/getcallerpc.html"><i>getcallerpc</i>(3)</a>,
+ but these are usually simple and are not on the critical path
+ for getting the system up and running.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The rest of this manual describes Plan 9 from User Space. Many
+ of the man pages have been brought from Plan 9, but they have
+ been updated, and others have been written from scratch.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The manual pages are in a Unix style tree, with names like <tt><font size=+1>$PLAN9/man/man1/cat.1</font></tt>
+ instead of Plan 9&#8217;s simpler <tt><font size=+1>$PLAN9/man/1/cat</font></tt>, so that the Unix
+ <a href="../man1/man.html"><i>man</i>(1)</a> utility can handle it. Some systems, for example Debian
+ Linux, deduce the man page locations from the search path, so
+ that adding <tt><font size=+1>$PLAN9/bin</font></tt> to
+ your path is sufficient to cause <tt><font size=+1>$PLAN9/man</font></tt> to be consulted for
+ manual pages using the system <i>man</i>. On other systems, or to look
+ at manual pages with the same name as a system page, invoke the
+ Plan 9 <i>man</i> directly, as in <tt><font size=+1>9 man cat</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The manual sections follow the Unix numbering conventions, not
+ the Plan 9 ones.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <a href="../man1">Section (1)</a> describes general publicly accessible commands.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <a href="../man3">Section (3)</a> describes C library functions.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <a href="../man4">Section (4)</a> describes user-level file servers.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <a href="../man7">Section (7)</a> describes file formats and protocols. (On Unix, section
+ (5) is technically for file formats but seems now to be used for
+ describing specific files.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <a href="../man9">Section (9p)</a> describes the Plan 9 file protocol 9P.<br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ In Plan 9, a program&#8217;s exit status is an arbitrary text string,
+ while on Unix it is an integer. Section (1) of this manual describes
+ commands as though they exit with string statuses. In fact, exiting
+ with an empty status corresponds to exiting with status 0, and
+ exiting with any non-empty string corresponds to exiting with
+ status 1. See <a href="../man3/exits.html"><i>exits</i>(3)</a>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/join.html b/man/man1/join.html
new file mode 100644
index 00000000..704837e4
--- /dev/null
+++ b/man/man1/join.html
@@ -0,0 +1,144 @@
+<head>
+<title>join(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>JOIN(1)</b><td align=right><b>JOIN(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ join &ndash; relational database operator<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>join</font></tt> [ <i>options</i> ] <i>file1 file2<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Join</i> forms, on the standard output, a join of the two relations
+ specified by the lines of <i>file1</i> and <i>file2</i>. If one of the file
+ names is <tt><font size=+1>&#8722;</font></tt>, the standard input is used.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>File1</i> and <i>file2</i> must be sorted in increasing ASCII collating sequence
+ on the fields on which they are to be joined, normally the first
+ in each line.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There is one line in the output for each pair of lines in <i>file1</i>
+ and <i>file2</i> that have identical join fields. The output line normally
+ consists of the common field, then the rest of the line from <i>file1</i>,
+ then the rest of the line from <i>file2</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Input fields are normally separated spaces or tabs; output fields
+ by space. In this case, multiple separators count as one, and
+ leading separators are discarded.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The following options are recognized, with POSIX syntax.<br>
+ <tt><font size=+1>&#8722;a</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;In addition to the normal output, produce a line for each
+ unpairable line in file <i>n</i>, where <i>n</i> is 1 or 2.<br>
+ <tt><font size=+1>&#8722;v</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>&#8722;a</font></tt>, omitting output for paired lines.<br>
+ <tt><font size=+1>&#8722;e</font></tt> <i>s</i>&nbsp;&nbsp;&nbsp;Replace empty output fields by string <i>s</i>.<br>
+ <tt><font size=+1>&#8722;1</font></tt> <i>m<br>
+ </i><tt><font size=+1>&#8722;2</font></tt> <i>m</i>&nbsp;&nbsp;&nbsp;Join on the <i>m</i>th field of <i>file1</i> or <i>file2</i>.<br>
+ <tt><font size=+1>&#8722;j</font></tt><i>n m<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Archaic equivalent for <tt><font size=+1>&#8722;</font></tt><i>n</i> <tt><font size=+1>m</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;o</font></tt><i>fields<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Each output line comprises the designated fields. The comma-separated
+ field designators are either <tt><font size=+1>0</font></tt>, meaning the join field, or have
+ the form <i>n</i>.<i>m</i>, where <i>n</i> is a file number and <i>m</i> is a field number.
+ Archaic usage allows separate arguments for field designators.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <tt><font size=+1>&#8722;t</font></tt><i>c</i>&nbsp;&nbsp;&nbsp;Use character <i>c</i> as the only separator (tab character) on input
+ and output. Every appearance of <i>c</i> in a line is significant.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sort /etc/passwd | join &#8722;t: &#8722;1 1 &#8722;a 1 &#8722;e &quot;&quot; &#8722; bdays<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Add birthdays to the <tt><font size=+1>/etc/passwd</font></tt> file, leaving unknown birthdays
+ empty. The layout of <tt><font size=+1>/adm/users</font></tt> is given in <a href="../man5/passwd.html"><i>passwd</i>(5)</a>; <tt><font size=+1>bdays</font></tt> contains
+ sorted lines like <tt><font size=+1>ken:Feb 4, 1953</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>tr : ' ' &lt;/etc/passwd | sort &#8722;k 3 3 &gt;temp<br>
+ join &#8722;1 3 &#8722;2 3 &#8722;o 1.1,2.1 temp temp | awk '$1 &lt; $2'<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print all pairs of users with identical userids.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/join.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sort.html"><i>sort</i>(1)</a>, <a href="../man1/comm.html"><i>comm</i>(1)</a>, <a href="../man1/awk.html"><i>awk</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ With default field separation, the collating sequence is that
+ of <tt><font size=+1>sort &#8722;b &#8722;k</font></tt><i>y</i><tt><font size=+1>,</font></tt><i>y</i>; with <tt><font size=+1>&#8722;t</font></tt>, the sequence is that of <tt><font size=+1>sort &#8722;t</font></tt><i>x</i> <tt><font size=+1>&#8722;k</font></tt><i>y</i><tt><font size=+1>,</font></tt><i>y</i>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ One of the files must be randomly accessible.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/jpg.html b/man/man1/jpg.html
new file mode 100644
index 00000000..30629c7c
--- /dev/null
+++ b/man/man1/jpg.html
@@ -0,0 +1,175 @@
+<head>
+<title>jpg(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>JPG(1)</b><td align=right><b>JPG(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ jpg, gif, png, ppm, bmp, yuv, ico, togif, toppm, topng, toico
+ &ndash; view and convert pictures<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>jpg</font></tt> [ <tt><font size=+1>&#8722;39cdefFkJrtv</font></tt> ] [ <i>file ...</i> ]<br>
+ <tt><font size=+1>gif</font></tt> [ <tt><font size=+1>&#8722;39cdektv</font></tt> ] [ <i>file ...</i> ]<br>
+ <tt><font size=+1>png</font></tt> [ <tt><font size=+1>&#8722;39cdektv</font></tt> ] [ <i>file ...</i> ]<br>
+ <tt><font size=+1>ppm</font></tt> [ <tt><font size=+1>&#8722;39cdektv</font></tt> ] [ <i>file ...</i> ]<br>
+ <tt><font size=+1>bmp</font></tt> [ <i>file</i> ]<br>
+ <tt><font size=+1>yuv</font></tt> [ <i>file</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>togif</font></tt> [ <tt><font size=+1>&#8722;c</font></tt> <i>comment</i> ] [ <tt><font size=+1>&#8722;l</font></tt> <i>loopcount</i> ] [ <tt><font size=+1>&#8722;d</font></tt> <i>msec</i> ] [ <tt><font size=+1>&#8722;t</font></tt> <i>transindex</i>
+ ] [ <i>file ...</i> [ <tt><font size=+1>&#8722;d</font></tt> <i>msec</i> ] <i>file ...</i> ]<br>
+ <tt><font size=+1>toppm</font></tt> [ <tt><font size=+1>&#8722;c</font></tt> <i>comment</i> ] [ <i>file</i> ]<br>
+ <tt><font size=+1>topng</font></tt> [ <tt><font size=+1>&#8722;c</font></tt> <i>comment</i> ] [ [ <tt><font size=+1>&#8722;g</font></tt> <i>gamma</i> ] [ <i>file</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>ico</font></tt> [ <i>file</i> ]<br>
+ <tt><font size=+1>toico</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ These programs read, display, and write image files in public
+ formats. <i>Jpg</i>, <i>gif</i>, <i>png</i>, <i>ppm</i>, <i>bmp</i>, and <i>yuv</i>. read files in the corresponding
+ formats and, by default, display them in the current window; options
+ cause them instead to convert the images to Plan 9 image format
+ and write them to standard output. <i>Togif</i>,
+ <i>Toppm</i>, and <i>topng</i> read Plan 9 images files, convert them to GIF,
+ PPM, or PNG, and write them to standard output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The default behavior of <i>jpg</i>, <i>gif</i>, and <i>ppm</i> is to display the <i>file</i>,
+ or standard input if no file is named. Once a file is displayed,
+ typing a character causes the program to display the next image.
+ Typing a <tt><font size=+1>q</font></tt>, DEL, or control-D exits the program. For a more user-friendly
+ interface, use <a href="../man1/page.html"><i>page</i>(1)</a>, which invokes these
+ programs to convert the images to standard format, displays them,
+ and offers scrolling, panning, and menu-driven navigation among
+ the files.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ These programs share many options:<br>
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Disable Floyd-Steinberg error diffusion, which is used to improve
+ the appearance of images on color-mapped displays, typically with
+ 8 bits per pixel. Primarily useful for debugging; if the display
+ has true RGB color, the image will be displayed in full glory.<br>
+ <tt><font size=+1>&#8722;k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Convert and display the image as a black and white (really grey-scale)
+ image.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Convert the image to an RGBV color-mapped image, even if the
+ display has true RGB color.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Suppress display of the image; this is set automatically by
+ any of the following options:<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Convert the image to a Plan 9 representation, as defined by
+ <a href="../man7/image.html"><i>image</i>(7)</a>, and write it to standard output.<br>
+ <tt><font size=+1>&#8722;9</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>&#8722;c</font></tt>, but produce an uncompressed image. This saves processing
+ time, particularly when the output is being piped to another program
+ such as <a href="../man1/page.html"><i>page</i>(1)</a>, since it avoids compression and decompression.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Convert the image, if it is in color, to a true color RGB image.<br>
+ <tt><font size=+1>&#8722;3</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>&#8722;t</font></tt>, but force the image to RGB even if it is originally
+ grey-scale.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Jpg</i> has two extra options used to process the output of the LML
+ video card:<br>
+ <tt><font size=+1>&#8722;f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Merge two adjacent images, which represent the two fields of
+ a video picture, into a single image.<br>
+ <tt><font size=+1>&#8722;F</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;The input is a motion JPEG file, with multiple images representing
+ frames of the movie. Sets <tt><font size=+1>&#8722;f</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <i>togif</i> and <i>toppm</i> programs go the other way: they convert from
+ Plan 9 images to GIF and PPM, and have no display capability.
+ Both accept an option <tt><font size=+1>&#8722;c</font></tt> to set the comment field of the resulting
+ file. If there is only one input picture, <i>togif</i> converts the image
+ to GIF format. If there are many <i>files</i>, though, it will
+ assemble them into an animated GIF file. The options control this
+ process:<br>
+ <tt><font size=+1>&#8722;l</font></tt><i>loopcount<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ By default, the animation will loop forever; <i>loopcount</i> specifies
+ how many times to loop. A value of zero means loop forever and
+ a negative value means to stop after playing the sequence once.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;d</font></tt><i>msec<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ By default, the images are displayed as fast as they can be rendered.
+ This option specifies the time, in milliseconds, to pause while
+ displaying the next named <i>file</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <i>Gif</i> translates files that contain a &#8216;transparency&#8217; index by attaching
+ an alpha channel to the converted image.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Ico</i> displays a Windows icon (.ico) file. If no file is specified,
+ <i>ico</i> reads from standard input. Icon files contain sets of icons
+ represeted by an image and a mask. Clicking the right button pops
+ up a menu that lets you write any icon&#8217;s image as a Plan 9 image
+ (<i>width</i>x<i>height</i>.image), write any icon&#8217;s mask as a Plan 9
+ image (<i>width</i>x<i>height</i>.mask), or exit. Selecting one of the write
+ menu items yields a sight cursor. Move the sight over the icon
+ and right click again to write.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Toico</i> takes a list of Plan 9 image files (or standard input) and
+ creates a single icon file. The masks in the icon file will be
+ the white space in the image. The icon file is written to standard
+ output.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/jpg<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/page.html"><i>page</i>(1)</a>, <a href="../man7/image.html"><i>image</i>(7)</a>.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Writing an animated GIF using <i>togif</i> is a clumsy undertaking.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/kill.html b/man/man1/kill.html
new file mode 100644
index 00000000..107e438d
--- /dev/null
+++ b/man/man1/kill.html
@@ -0,0 +1,96 @@
+<head>
+<title>kill(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>KILL(1)</b><td align=right><b>KILL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ kill, slay, start, stop &ndash; print commands to manipulate processes<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>kill</font></tt> <i>name ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>slay</font></tt> <i>name ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>start</font></tt> <i>name ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>stop</font></tt> <i>name ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Kill</i> prints commands that will cause all processes with <i>name</i> and
+ owned by the current user to be terminated. Each command is commented
+ with an output line from <a href="../man1/ps.html"><i>ps</i>(1)</a> describing the process that would
+ be killed. Use the <tt><font size=+1>send</font></tt> command of <a href="../man1/9term.html"><i>9term</i>(1)</a>, or pipe the output
+ of <i>kill</i> into <a href="../man1/rc.html"><i>rc</i>(1)</a> or <a href="../man1/sh.html"><i>sh</i>(1)</a> to execute the
+ commands.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Kill</i> suggests sending a Unix <tt><font size=+1>TERM</font></tt> signal to the process; sending
+ a <tt><font size=+1>KILL</font></tt> signal is a surer, if heavy handed, kill, but is necessary
+ if the offending process is ignoring signals. The <i>slay</i> command
+ prints commands to do this.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Stop</i> prints commands to pause execution of processes by sending
+ them the <tt><font size=+1>STOP</font></tt> signal.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Start</i> prints commands to restart stopped processes by sending
+ them the <tt><font size=+1>CONT</font></tt> signal.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/ps.html"><i>ps</i>(1)</a>, <a href="../man3/notify.html"><i>notify</i>(3)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Stop</i> and <i>start</i> should limit themselves to currently running or
+ stopped processes.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/label.html b/man/man1/label.html
new file mode 100644
index 00000000..8c7999d4
--- /dev/null
+++ b/man/man1/label.html
@@ -0,0 +1,117 @@
+<head>
+<title>label(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>LABEL(1)</b><td align=right><b>LABEL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ label, awd &ndash; set window label<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>label</font></tt> <i>string<br>
+ </i><tt><font size=+1>awd<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Label</i> sets the label of the current <i>win</i> (see <a href="../man1/acme.html"><i>acme</i>(1)</a>) or X terminal
+ window (<i>e.g., <a href="../man1/9term.html">9term</a></i><a href="../man1/9term.html">(1)</a> or <a href="../man1/xterm.html"><i>xterm</i>(1)</a>) by echoing a special control
+ sequence to standard output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Acme</i> and <i>9term</i> windows assume the label is a directory name. When
+ unrooted file names are plumbed in the window, they are evaluated
+ relative to the directory named in the label.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ One can use the following <a href="../man1/sh.html"><i>sh</i>(1)</a> function to keep the label up-to-date
+ in response to <i>cd</i> commands:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>_cd () {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ \cd &quot;$@&quot; &amp;&amp;<br>
+ case $&#8722; in<br>
+ *i*)<br>
+ awd<br>
+ esac<br>
+
+ </table>
+ }<br>
+ alias cd=_cd<br>
+ cd .<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ <a href="../man1/Rc.html"><i>Rc</i>(1)</a> installs a similar <tt><font size=+1>fn cd</font></tt> at startup if there is not already
+ a function named <tt><font size=+1>cd</font></tt>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>fn cd {<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ builtin cd $1 &amp;&amp; flag i &amp;&amp; awd<br>
+
+ </table>
+ }<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/label<br>
+ /usr/local/plan9/bin/awd<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Awd</i> is also documented in <a href="../man1/acme.html"><i>acme</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Awd</i> does not append the <tt><font size=+1>&#8722;</font></tt><i>label</i> suffix that it does on Plan 9.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/lex.html b/man/man1/lex.html
new file mode 100644
index 00000000..e0f84d1e
--- /dev/null
+++ b/man/man1/lex.html
@@ -0,0 +1,110 @@
+<head>
+<title>lex(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>LEX(1)</b><td align=right><b>LEX(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ lex &ndash; generator of lexical analysis programs<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>lex</font></tt> [ <tt><font size=+1>&#8722;tvn9</font></tt> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Lex</i> generates programs to be used in simple lexical analysis of
+ text. The input <i>files</i> (standard input default) contain regular
+ expressions to be searched for and actions written in C to be
+ executed when expressions are found.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A C source program, <tt><font size=+1>lex.yy.c</font></tt> is generated. This program, when
+ run, copies unrecognized portions of the input to the output,
+ and executes the associated C action for each regular expression
+ that is recognized.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options have the following meanings.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Place the result on the standard output instead of in file <tt><font size=+1>lex.yy.c</font></tt>.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print a one-line summary of statistics of the generated analyzer.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Opposite of <tt><font size=+1>&#8722;v</font></tt>; <tt><font size=+1>&#8722;n</font></tt> is default.<br>
+ <tt><font size=+1>&#8722;9</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Adds code to be able to compile through the native C compilers.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ This program converts upper case to lower, removes blanks at the
+ end of lines, and replaces multiple blanks by single blanks.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>%%<br>
+ [A&#8722;Z] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;putchar(yytext[0]+'a'&#8722;'A');<br>
+ [ ]+$<br>
+ [ ]+ putchar(' ');<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>lex.yy.c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output<br>
+ <tt><font size=+1>/sys/lib/lex/ncform</font></tt>&nbsp;&nbsp;&nbsp;template<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/yacc.html"><i>yacc</i>(1)</a>, <a href="../man1/sed.html"><i>sed</i>(1)</a><br>
+ M. E. Lesk and E. Schmidt, &#8216;LEX--Lexical Analyzer Generator&#8217;, <i>Unix
+ Research System Programmer&#8217;s Manual,</i> Tenth Edition, Volume 2.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/lex<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Cannot handle UTF.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The asteroid to kill this dinosaur is still in orbit.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/look.html b/man/man1/look.html
new file mode 100644
index 00000000..cc8686d0
--- /dev/null
+++ b/man/man1/look.html
@@ -0,0 +1,96 @@
+<head>
+<title>look(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>LOOK(1)</b><td align=right><b>LOOK(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ look &ndash; find lines in a sorted list<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>look</font></tt> [ <tt><font size=+1>&#8722;dfnixt</font></tt><i>c</i> ] [ <i>string</i> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Look</i> consults a sorted <i>file</i> and prints all lines that begin with
+ <i>string</i>. It uses binary search.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The following options are recognized. Options <tt><font size=+1>dfnt</font></tt> affect comparisons
+ as in <a href="../man1/sort.html"><i>sort</i>(1)</a>.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Interactive. There is no <i>string</i> argument; instead <i>look</i> takes
+ lines from the standard input as strings to be looked up.<br>
+ <tt><font size=+1>&#8722;x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Exact. Print only lines of the file whose key matches <i>string</i>
+ exactly.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&#8216;Directory&#8217; order: only letters, digits, tabs and blanks participate
+ in comparisons.<br>
+ <tt><font size=+1>&#8722;f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Fold. Upper case letters compare equal to lower case.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Numeric comparison with initial string of digits, optional minus
+ sign, and optional decimal point.<br>
+ <tt><font size=+1>&#8722;t</font></tt>[<i>c</i>]Character <i>c</i> terminates the sort key in the <i>file</i>. By default,
+ tab terminates the key. If <i>c</i> is missing the entire line comprises
+ the key.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If no <i>file</i> is specified, <tt><font size=+1>/lib/words</font></tt> is assumed, with collating
+ sequence <tt><font size=+1>df</font></tt>.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/lib/words<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/look.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sort.html"><i>sort</i>(1)</a>, <a href="../man1/grep.html"><i>grep</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The exit status is &#8220;<tt><font size=+1>not found</font></tt>&#8221; if no match is found, and &#8220;<tt><font size=+1>no dictionary</font></tt>&#8221;
+ if <i>file</i> or the default dictionary cannot be opened.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/ls.html b/man/man1/ls.html
new file mode 100644
index 00000000..e5ed5566
--- /dev/null
+++ b/man/man1/ls.html
@@ -0,0 +1,121 @@
+<head>
+<title>ls(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>LS(1)</b><td align=right><b>LS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ ls, lc &ndash; list contents of directory<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>ls</font></tt> [ <tt><font size=+1>&#8722;dlmnpqrstuFQ</font></tt> ] <i>name ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>lc</font></tt> [ <tt><font size=+1>&#8722;dlmnpqrstuFQ</font></tt> ] <i>name ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ For each directory argument, <i>ls</i> lists the contents of the directory;
+ for each file argument, <i>ls</i> repeats its name and any other information
+ requested. When no argument is given, the current directory is
+ listed. By default, the output is sorted alphabetically by name.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Lc</i> is the same as <i>ls</i>, but sets the <tt><font size=+1>&#8722;p</font></tt> option and pipes the output
+ through <a href="../man1/mc.html"><i>mc</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There are a number of options:<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;If argument is a directory, list it, not its contents.<br>
+ <tt><font size=+1>&#8722;l</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;List in long format, giving mode (see below), file system type
+ (e.g., for devices, the <tt><font size=+1>#</font></tt> code letter that names it; see <a href="../man3/intro.html"><i>intro</i>(3)</a>),
+ the instance or subdevice number, owner, group, size in bytes,
+ and time of last modification for each file.<br>
+ <tt><font size=+1>&#8722;m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;List the name of the user who most recently modified the file.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Don&#8217;t sort the listing.<br>
+ <tt><font size=+1>&#8722;p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print only the final path element of each file name.<br>
+ <tt><font size=+1>&#8722;q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;List the <i>qid</i> (see <a href="../man3/stat.html"><i>stat</i>(3)</a>) of each file; the printed fields
+ are in the order path, version, and type.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Reverse the order of sort.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Give size in Kbytes for each entry.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Sort by time modified (latest first) instead of by name.<br>
+ <tt><font size=+1>&#8722;u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Under <tt><font size=+1>&#8722;t</font></tt> sort by time of last access; under <tt><font size=+1>&#8722;l</font></tt> print time of
+ last access.<br>
+ <tt><font size=+1>&#8722;F</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Add the character <tt><font size=+1>/</font></tt> after all directory names and the character
+ <tt><font size=+1>*</font></tt> after all executable files.<br>
+ <tt><font size=+1>&#8722;L</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print the character <tt><font size=+1>t</font></tt> before each file if it has the temporary
+ flag set, and <tt><font size=+1>&#8722;</font></tt> otherwise.<br>
+ <tt><font size=+1>&#8722;Q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;By default, printed file names are quoted if they contain characters
+ special to <a href="../man1/rc.html"><i>rc</i>(1)</a>. The <tt><font size=+1>&#8722;Q</font></tt> flag disables this behavior.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The mode printed under the <tt><font size=+1>&#8722;l</font></tt> option contains 11 characters, interpreted
+ as follows: the first character is<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if the entry is a directory;<br>
+ <tt><font size=+1>a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if the entry is an append-only file;<br>
+ <tt><font size=+1>&#8722;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if the entry is a plain file.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The next letter is <tt><font size=+1>l</font></tt> if the file is exclusive access (one writer
+ or reader at a time).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The last 9 characters are interpreted as three sets of three bits
+ each. The first set refers to owner permissions; the next to permissions
+ to others in the same user-group; and the last to all others.
+ Within each set the three characters indicate permission respectively
+ to read, to write, or to execute the file as a program.
+ For a directory, &#8216;execute&#8217; permission is interpreted to mean permission
+ to search the directory for a specified file. The permissions
+ are indicated as follows:<br>
+ <tt><font size=+1>r</font></tt>if the file is readable;<br>
+ <tt><font size=+1>w</font></tt>if the file is writable;<br>
+ <tt><font size=+1>x</font></tt>if the file is executable;<br>
+ <tt><font size=+1>&#8722;</font></tt>if none of the above permissions is granted.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/ls.c<br>
+ /usr/local/plan9/bin/lc<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/stat.html"><i>stat</i>(3)</a>, <a href="../man1/mc.html"><i>mc</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/man.html b/man/man1/man.html
new file mode 100644
index 00000000..41f472ab
--- /dev/null
+++ b/man/man1/man.html
@@ -0,0 +1,139 @@
+<head>
+<title>man(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>MAN(1)</b><td align=right><b>MAN(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ man, lookman, sig &ndash; print or find pages of this manual<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>man</font></tt> [ <i>option ...</i> ] [ <i>section ...</i> ] <i>title ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>lookman</font></tt> <i>key ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>sig</font></tt> <i>function ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Man</i> locates and prints pages of this manual named <i>title</i> in the
+ specified <i>sections</i>. <i>Title</i> is given in lower case. Each <i>section</i>
+ is a number; pages marked (2S), for example, belong to chapter
+ 2. If no <i>section</i> is specified, pages in all sections are printed.
+ Any name from the NAME section at the top of the page will serve
+ as a
+ <i>title</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options are:<br>
+ <tt><font size=+1>&#8722;p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Run <a href="../man1/proof.html"><i>proof</i>(1)</a> on the specified man pages.<br>
+ <tt><font size=+1>&#8722;P</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Run <a href="../man1/page.html"><i>page</i>(1)</a> on the specified man pages.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Run <i>troff</i> and send its output to standard output.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;(Default) Print the pages on the standard output using <i>nroff</i>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Lookman</font></tt> prints the names of all manual sections that contain all
+ of the <i>key</i> words given on the command line.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Sig</font></tt> prints the signature (i.e. C definition) of the <i>function</i>&#8217;s
+ given on the command line.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/man?/*<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>troff</i> source for manual; this page is <tt><font size=+1>/usr/local/plan9/man/man1/man.1<br>
+ </font></tt>
+ </table>
+ <tt><font size=+1>/usr/local/plan9/man/man?/INDEX<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ indices searched to find pages corresponding to titles<br>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/man/secindex<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ command to make an index for a given section<br>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/man/lookman/index<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ index for <i>lookman<br>
+ </i>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/man<br>
+ /usr/local/plan9/bin/lookman<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/page.html"><i>page</i>(1)</a>, <a href="../man1/proof.html"><i>proof</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The manual was intended to be typeset; some detail is sacrificed
+ on text terminals.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There is no automatic mechanism to keep the indices up to date.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Except for special cases, <i>man</i> doesn&#8217;t recognize things that should
+ be run through <i>tbl</i> and/or <i>eqn</i>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/map.html b/man/man1/map.html
new file mode 100644
index 00000000..6ed18ccb
--- /dev/null
+++ b/man/man1/map.html
@@ -0,0 +1,483 @@
+<head>
+<title>map(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>MAP(1)</b><td align=right><b>MAP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ map, mapdemo, mapd &ndash; draw maps on various projections<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>map</font></tt> <i>projection</i> [ <i>option ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>mapdemo
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Map</i> prepares on the standard output a map suitable for display
+ by any plotting filter described in <a href="../man1/plot.html"><i>plot</i>(1)</a>. A menu of projections
+ is produced in response to an unknown <i>projection</i>. <i>Mapdemo</i> is a
+ short course in mapping.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The default data for <i>map</i> are world shorelines. Option <tt><font size=+1>&#8722;f</font></tt> accesses
+ more detailed data classified by feature.<br>
+ <tt><font size=+1>&#8722;f</font></tt> [ <i>feature</i> ... ]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Features are ranked 1 (default) to 4 from major to minor. Higher-numbered
+ ranks include all lower-numbered ones. Features are<br>
+ <tt><font size=+1>shore</font></tt>[<tt><font size=+1>1</font></tt>-<tt><font size=+1>4</font></tt>]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;seacoasts, lakes, and islands; option <tt><font size=+1>&#8722;f</font></tt> always shows
+ <tt><font size=+1>shore1<br>
+ ilake</font></tt>[<tt><font size=+1>1</font></tt>-<tt><font size=+1>2</font></tt>]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;intermittent lakes<br>
+ <tt><font size=+1>river</font></tt>[<tt><font size=+1>1</font></tt>-<tt><font size=+1>4</font></tt>]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rivers<br>
+ <tt><font size=+1>iriver</font></tt>[<tt><font size=+1>1</font></tt>-<tt><font size=+1>3</font></tt>]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;intermittent rivers<br>
+ <tt><font size=+1>canal</font></tt>[<tt><font size=+1>1</font></tt>-<tt><font size=+1>3</font></tt>]<tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3</font></tt>=irrigation canals<br>
+ <tt><font size=+1>glacier<br>
+ iceshelf</font></tt>[<tt><font size=+1>12</font></tt>]<br>
+ <tt><font size=+1>reef<br>
+ saltpan</font></tt>[<tt><font size=+1>12</font></tt>]<br>
+ <tt><font size=+1>country</font></tt>[<tt><font size=+1>1</font></tt>-<tt><font size=+1>3</font></tt>]<tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;2</font></tt>=disputed boundaries, <tt><font size=+1>3</font></tt>=indefinite boundaries<br>
+ <tt><font size=+1>state</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;states and provinces (US and Canada only)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ In other options coordinates are in degrees, with north latitude
+ and west longitude counted as positive.<br>
+ <tt><font size=+1>&#8722;l</font></tt> <i>S N E W<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the southern and northern latitude and the eastern and western
+ longitude limits. Missing arguments are filled out from the list
+ &ndash;90, 90, &ndash;180, 180, or lesser limits suitable to the projection
+ at hand.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;k</font></tt> <i>S N E W<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the scale as if for a map with limits <tt><font size=+1>&#8722;l</font></tt> <i>S N E W</i> . Do not
+ consider any <tt><font size=+1>&#8722;l</font></tt> or <tt><font size=+1>&#8722;w</font></tt> option in setting scale.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;o</font></tt> <i>lat lon rot<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Orient the map in a nonstandard position. Imagine a transparent
+ gridded sphere around the globe. Turn the overlay about the North
+ Pole so that the Prime Meridian (longitude 0) of the overlay coincides
+ with meridian <i>lon</i> on the globe. Then tilt the North Pole of the
+ overlay along its Prime Meridian to latitude <i>lat
+ </i>on the globe. Finally again turn the overlay about its &#8216;North
+ Pole&#8217; so that its Prime Meridian coincides with the previous position
+ of meridian <i>rot</i>. Project the map in the standard form appropriate
+ to the overlay, but presenting information from the underlying
+ globe. Missing arguments are filled out from the list
+ 90, 0, 0. In the absence of <tt><font size=+1>&#8722;</font></tt>o<tt><font size=+1>,</font></tt> the orientation is 90, 0, <i>m</i>, where
+ <i>m</i> is the middle of the longitude range.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;w</font></tt> <i>S N E W<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Window the map by the specified latitudes and longitudes in the
+ tilted, rotated coordinate system. Missing arguments are filled
+ out from the list &ndash;90, 90, &ndash;180, 180. (It is wise to give an encompassing
+ <tt><font size=+1>&#8722;l</font></tt> option with <tt><font size=+1>&#8722;w</font></tt>. Otherwise for small windows computing time
+ varies inversely with area!)
+
+ </table>
+ <tt><font size=+1>&#8722;d</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;For speed, plot only every <i>n</i>th point.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Reverse left and right (good for star charts and inside-out
+ views).<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Verso. Switch to a normally suppressed sheet of the map, such
+ as the back side of the earth in orthographic projection.<br>
+ <tt><font size=+1>&#8722;s1<br>
+ &#8722;s2</font></tt>&nbsp;&nbsp;&nbsp;Superpose; outputs for a <tt><font size=+1>&#8722;s1</font></tt> map (no closing) and a <tt><font size=+1>&#8722;s2</font></tt> map
+ (no opening) may be concatenated.<br>
+ <tt><font size=+1>&#8722;g</font></tt> <i>dlat dlon res<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Grid spacings are <i>dlat</i>, <i>dlon</i>. Zero spacing means no grid. Missing
+ <i>dlat</i> is taken to be zero. Missing <i>dlon</i> is taken the same as <i>dlat</i>.
+ Grid lines are drawn to a resolution of <i>res</i> (2&deg; or less by default).
+ In the absence of <tt><font size=+1>&#8722;</font></tt>g<tt><font size=+1>,</font></tt> grid spacing is 10&deg;.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;p</font></tt> <i>lat lon extent<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Position the point <i>lat, lon</i> at the center of the plotting area.
+ Scale the map so that the height (and width) of the nominal plotting
+ area is <i>extent</i> times the size of one degree of latitude at the
+ center. By default maps are scaled and positioned to fit within
+ the plotting area. An <i>extent</i> overrides option <tt><font size=+1>&#8722;k</font></tt>.
+
+ </table>
+ <tt><font size=+1>&#8722;c</font></tt> <i>x y rot<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ After all other positioning and scaling operations have been performed,
+ rotate the image <i>rot</i> degrees counterclockwise about the center
+ and move the center to position <i>x</i>, <i>y</i>, where the nominal plotting
+ area is &ndash;1&le;<i>x</i>&le;1, &ndash;1&le;<i>y</i>&le;1. Missing arguments are taken to be 0. <tt><font size=+1>&#8722;x</font></tt> Allow
+ the map to extend outside the
+ nominal plotting area.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;m</font></tt> [ <i>file</i> ... ]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Use map data from named files. If no files are named, omit map
+ data. Names that do not exist as pathnames are looked up in a
+ standard directory, which contains, in addition to the data for
+ <tt><font size=+1>&#8722;f</font></tt>,<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>world</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;World Data Bank I (default)<br>
+ <tt><font size=+1>states</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;US map from Census Bureau<br>
+ <tt><font size=+1>counties</font></tt>&nbsp;&nbsp;&nbsp;US map from Census Bureau<br>
+ The environment variables <tt><font size=+1>MAP</font></tt> and <tt><font size=+1>MAPDIR</font></tt> change the default map
+ and default directory.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;b</font></tt> [<i>lat0 lon0 lat1 lon1</i>... ]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Suppress the drawing of the normal boundary (defined by options
+ <tt><font size=+1>&#8722;l</font></tt> and <tt><font size=+1>&#8722;w</font></tt>). Coordinates, if present, define the vertices of a
+ polygon to which the map is clipped. If only two vertices are
+ given, they are taken to be the diagonal of a rectangle. To draw
+ the polygon, give its vertices as a <tt><font size=+1>&#8722;u</font></tt> track.
+
+ </table>
+ <tt><font size=+1>&#8722;t</font></tt> <i>file ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>files</i> contain lists of points, given as latitude-longitude
+ pairs in degrees. If the first file is named <tt><font size=+1>&#8722;</font></tt>, the standard input
+ is taken instead. The points of each list are plotted as connected
+ &#8216;tracks&#8217;.<br>
+ Points in a track file may be followed by label strings. A label
+ breaks the track. A label may be prefixed by <tt><font size=+1>&quot;</font></tt>, <tt><font size=+1>:</font></tt>, or <tt><font size=+1>!</font></tt> and is
+ terminated by a newline. An unprefixed string or a string prefixed
+ with <tt><font size=+1>&quot;</font></tt> is displayed at the designated point. The first word of
+ a <tt><font size=+1>:</font></tt> or <tt><font size=+1>!</font></tt> string names a special symbol (see option <tt><font size=+1>&#8722;y</font></tt>).
+ An optional numerical second word is a scale factor for the size
+ of the symbol, 1 by default. A <tt><font size=+1>:</font></tt> symbol is aligned with its top
+ to the north; a <tt><font size=+1>!</font></tt> symbol is aligned vertically on the page.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;u</font></tt> <i>file ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Same as <tt><font size=+1>&#8722;t</font></tt>, except the tracks are unbroken lines. (<tt><font size=+1>&#8722;t</font></tt> tracks appear
+ as dot-dashed lines if the plotting filter supports them.)<br>
+
+ </table>
+ <tt><font size=+1>&#8722;y</font></tt> <i>file<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>file</i> contains <a href="../man7/plot.html"><i>plot</i>(7)</a>-style data for <tt><font size=+1>:</font></tt> or <tt><font size=+1>!</font></tt> labels in <tt><font size=+1>&#8722;t</font></tt> or
+ <tt><font size=+1>&#8722;u</font></tt> files. Each symbol is defined by a comment <tt><font size=+1>:</font></tt><i>name</i> then a sequence
+ of <tt><font size=+1>m</font></tt> and <tt><font size=+1>v</font></tt> commands. Coordinates (0,0) fall on the plotting point.
+ Default scaling is as if the nominal plotting range were <tt><font size=+1>ra &#8722;1
+ &#8722;1 1 1</font></tt>; <tt><font size=+1>ra</font></tt> commands in <i>file</i> change the
+ scaling.<br>
+
+ </table>
+ <p><font size=+1><b>Projections </b></font><br>
+ Equatorial projections centered on the Prime Meridian (longitude
+ 0). Parallels are straight horizontal lines.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>mercator</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equally spaced straight meridians, conformal, straight
+ compass courses<br>
+ <tt><font size=+1>sinusoidal</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equally spaced parallels, equal-area, same as <tt><font size=+1>bonne
+ 0</font></tt>.<br>
+ <tt><font size=+1>cylequalarea</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;equally spaced straight meridians, equal-area,
+ true scale on <i>lat0<br>
+ </i><tt><font size=+1>cylindrical</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;central projection on tangent cylinder<br>
+ <tt><font size=+1>rectangular</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;equally spaced parallels, equally spaced straight
+ meridians, true scale on <i>lat0<br>
+ </i><tt><font size=+1>gall</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parallels spaced stereographically on prime meridian,
+ equally spaced straight meridians, true scale on <i>lat0<br>
+ </i><tt><font size=+1>mollweide</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(homalographic) equal-area, hemisphere is a circle<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>gilbert()</font></tt> sphere conformally mapped on hemisphere and viewed orthographically<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>gilbert</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;globe mapped conformally on hemisphere, viewed orthographically
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Azimuthal projections centered on the North Pole. Parallels are
+ concentric circles. Meridians are equally spaced radial lines.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>azequidistant</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equally spaced parallels, true distances from pole<br>
+ <tt><font size=+1>azequalarea</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equal-area<br>
+ <tt><font size=+1>gnomonic</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;central projection on tangent plane, straight great circles<br>
+ <tt><font size=+1>perspective</font></tt> <i>dist</i>&nbsp;&nbsp;&nbsp;viewed along earth&#8217;s axis <i>dist</i> earth radii from
+ center of earth<br>
+ <tt><font size=+1>orthographic</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;viewed from infinity<br>
+ <tt><font size=+1>stereographic</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conformal, projected from opposite pole<br>
+ <tt><font size=+1>laue</font></tt><i>radius</i> = tan(2&#215;<i>colatitude</i>), used in X-ray crystallography<br>
+ <tt><font size=+1>fisheye</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stereographic seen from just inside medium with refractive
+ index <i>n<br>
+ </i><tt><font size=+1>newyorker</font></tt> <i>rradius</i> = log(<i>colatitude</i>/<i>r</i>): <i>New Yorker</i> map from viewing
+ pedestal of radius <i>r</i> degrees
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Polar conic projections symmetric about the Prime Meridian. Parallels
+ are segments of concentric circles. Except in the Bonne projection,
+ meridians are equally spaced radial lines orthogonal to the parallels.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>conic</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;central projection on cone tangent at <i>lat0<br>
+ </i><tt><font size=+1>simpleconic</font></tt> <i>lat0 lat1<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ equally spaced parallels, true scale on <i>lat0</i> and <i>lat1<br>
+ </i>
+ </table>
+
+ </table>
+ <tt><font size=+1>lambert</font></tt> <i>lat0 lat1</i>&nbsp;&nbsp;&nbsp;&nbsp;conformal, true scale on <i>lat0</i> and <i>lat1<br>
+ </i><tt><font size=+1>albers</font></tt> <i>lat0 lat1</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equal-area, true scale on <i>lat0</i> and <i>lat1<br>
+ </i><tt><font size=+1>bonne</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equally spaced parallels, equal-area, parallel <i>lat0</i>
+ developed from tangent cone
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Projections with bilateral symmetry about the Prime Meridian and
+ the equator.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>polyconic</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parallels developed from tangent cones, equally spaced
+ along Prime Meridian<br>
+ <tt><font size=+1>aitoff</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equal-area projection of globe onto 2-to-1 ellipse, based
+ on <i>azequalarea<br>
+ </i><tt><font size=+1>lagrange</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conformal, maps whole sphere into a circle<br>
+ <tt><font size=+1>bicentric</font></tt> <i>lon0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;points plotted at true azimuth from two centers
+ on the equator at longitudes <i>&plusmn;lon0</i>, great circles are straight
+ lines (a stretched <i>gnomonic</i> )<br>
+ <tt><font size=+1>elliptic</font></tt> <i>lon0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;points plotted at true distance from two centers
+ on the equator at longitudes <i>&plusmn;lon0<br>
+ </i><tt><font size=+1>globular</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hemisphere is circle, circular arc meridians equally spaced
+ on equator, circular arc parallels equally spaced on 0- and 90-degree
+ meridians<br>
+ <tt><font size=+1>vandergrinten</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sphere is circle, meridians as in <i>globular</i>, circular
+ arc parallels resemble <i>mercator
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ Doubly periodic conformal projections.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>guyou</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;W and E hemispheres are square<br>
+ <tt><font size=+1>square</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;world is square with Poles at diagonally opposite corners<br>
+ <tt><font size=+1>tetra</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map on tetrahedron with edge tangent to Prime Meridian at
+ S Pole, unfolded into equilateral triangle<br>
+ <tt><font size=+1>hex</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;world is hexagon centered on N Pole, N and S hemispheres are
+ equilateral triangles
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Miscellaneous projections.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>harrison</font></tt> <i>dist angle</i>oblique perspective from above the North Pole,
+ <i>dist</i> earth radii from center of earth, looking along the Date
+ Line <i>angle</i> degrees off vertical<br>
+ <tt><font size=+1>trapezoidal</font></tt> <i>lat0 lat1<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ equally spaced parallels, straight meridians equally spaced along
+ parallels, true scale at <i>lat0</i> and <i>lat1</i> on Prime Meridian<br>
+ <tt><font size=+1>lune(lat,angle)</font></tt> conformal, polar cap above latitude <i>lat</i> maps to
+ convex lune with given <i>angle</i> at 90&#176;E and 90&#176;W
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+
+ </table>
+ Retroazimuthal projections. At every point the angle between vertical
+ and a straight line to &#8216;Mecca&#8217;, latitude <i>lat0</i> on the prime meridian,
+ is the true bearing of Mecca.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>mecca</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equally spaced vertical meridians<br>
+ <tt><font size=+1>homing</font></tt> <i>lat0</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;distances to Mecca are true
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Maps based on the spheroid. Of geodetic quality, these projections
+ do not make sense for tilted orientations. For descriptions, see
+ corresponding maps above.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>sp_mercator<br>
+ sp_albers</font></tt> <i>lat0 lat1<br>
+ </i>
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>map perspective 1.025 &#8722;o 40.75 74<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A view looking down on New York from 100 miles (0.025 of the 4000-mile
+ earth radius) up. The job can be done faster by limiting the map
+ so as not to &#8216;plot&#8217; the invisible part of the world: <tt><font size=+1>map perspective
+ 1.025 &#8722;o 40.75 74 &#8722;l 20 60 30 100</font></tt>. A circular border can be forced
+ by adding option
+ <tt><font size=+1>&#8722;w 77.33</font></tt>. (Latitude 77.33&deg; falls just inside a polar cap of opening
+ angle arccos(1/1.025) = 12.6804&deg;.)<br>
+
+ </table>
+ <tt><font size=+1>map mercator &#8722;o 49.25 &#8722;106 180<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ An &#8216;equatorial&#8217; map of the earth centered on New York. The pole
+ of the map is placed 90&#176; away (40.75+49.25=90) on the other side
+ of the earth. A 180&deg; twist around the pole of the map arranges
+ that the &#8216;Prime Meridian&#8217; of the map runs from the pole of the
+ map over the North Pole to New York instead of
+ down the back side of the earth. The same effect can be had from
+ <tt><font size=+1>&nbsp;&nbsp;&nbsp;map mercator &#8722;o 130.75 74<br>
+ </font></tt>
+ </table>
+ <tt><font size=+1>map albers 28 45 &#8722;l 20 50 60 130 &#8722;m states<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A customary curved-latitude map of the United States.<br>
+
+ </table>
+ <tt><font size=+1>map harrison 2 30 &#8722;l &#8722;90 90 120 240 &#8722;o 90 0 0<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A fan view covering 60&deg; on either side of the Date Line, as seen
+ from one earth radius above the North Pole gazing at the earth&#8217;s
+ limb, which is 30&deg; off vertical. The <tt><font size=+1>&#8722;o</font></tt> option overrides the default
+ <tt><font size=+1>&#8722;o 90 0 180</font></tt>, which would rotate the scene to behind the observer.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/lib/map/[1&#8722;4]??</font></tt>&nbsp;&nbsp;&nbsp;World Data Bank II, for <tt><font size=+1>&#8722;f<br>
+ /lib/map/*</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maps for <tt><font size=+1>&#8722;m<br>
+ /lib/map/*.x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map indexes<br>
+ <tt><font size=+1>mapd</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Map driver program<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/map<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man7/map.html"><i>map</i>(7)</a>, <a href="../man1/plot.html"><i>plot</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ &#8216;Map seems to be empty&#8217;--a coarse survey found zero extent within
+ the <tt><font size=+1>&#8722;l</font></tt> and <tt><font size=+1>&#8722;w</font></tt> bounds; for maps of limited extent the grid resolution,
+ <i>res</i>, or the limits may have to be refined.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Windows (option <tt><font size=+1>&#8722;w</font></tt>) cannot cross the Date Line. No borders appear
+ along edges arising from visibility limits. Segments that cross
+ a border are dropped, not clipped. Excessively large scale or
+ <tt><font size=+1>&#8722;d</font></tt> setting may cause long line segments to be dropped. <i>Map</i> tries
+ to draw grid lines dotted and <tt><font size=+1>&#8722;t</font></tt> tracks dot-dashed. As
+ very few plotting filters properly support curved textured lines,
+ these lines are likely to appear solid. The west-longitude-positive
+ convention betrays Yankee chauvinism. <i>Gilbert</i> should be a map
+ from sphere to sphere, independent of the mapping from sphere
+ to plane.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/mc.html b/man/man1/mc.html
new file mode 100644
index 00000000..1c133aec
--- /dev/null
+++ b/man/man1/mc.html
@@ -0,0 +1,64 @@
+<head>
+<title>mc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>MC(1)</b><td align=right><b>MC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ mc &ndash; multicolumn print<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>mc</font></tt> [ <tt><font size=+1>&#8722;</font></tt> ] [ <tt><font size=+1>&#8722;</font></tt><i>N</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Mc</i> splits the input into as many columns as will fit in <i>N</i> print
+ positions. If run in a <a href="../man1/9term.html"><i>9term</i>(1)</a>, <a href="../man1/xterm.html"><i>xterm</i>(1)</a>, or <a href="../man1/acme.html"><i>acme</i>(1)</a> window,
+ the default <i>N</i> is the number of blanks that will fit across the
+ window; otherwise the default <i>N</i> is 80. Under option <tt><font size=+1>&#8722;</font></tt> each input
+ line ending in a colon <tt><font size=+1>:</font></tt> is printed separately.
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/mc.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/9term.html"><i>9term</i>(1)</a>, <a href="../man1/acme.html"><i>acme</i>(1)</a>, <a href="../man4/acme.html"><i>acme</i>(4)</a>, <a href="../man1/xterm.html"><i>xterm</i>(1)</a>, <a href="../man1/pr.html"><i>pr</i>(1)</a>, <i>lc</i> in <a href="../man1/ls.html"><i>ls</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/mk.html b/man/man1/mk.html
new file mode 100644
index 00000000..3dde6143
--- /dev/null
+++ b/man/man1/mk.html
@@ -0,0 +1,621 @@
+<head>
+<title>mk(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>MK(1)</b><td align=right><b>MK(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ mk &ndash; maintain (make) related files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>mk</font></tt> [ <tt><font size=+1>&#8722;f</font></tt> <i>mkfile</i> ] ... [ <i>option ...</i> ] [ <i>target ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Mk</i> uses the dependency rules specified in <i>mkfile</i> to control the
+ update (usually by compilation) of <i>targets</i> (usually files) from
+ the source files upon which they depend. The <i>mkfile</i> (default <tt><font size=+1>mkfile</font></tt>)
+ contains a <i>rule</i> for each target that identifies the files and
+ other targets upon which it depends and an <a href="../man1/sh.html"><i>sh</i>(1)</a> script, a
+ <i>recipe</i>, to update the target. The script is run if the target
+ does not exist or if it is older than any of the files it depends
+ on. <i>Mkfile</i> may also contain <i>meta-rules</i> that define actions for
+ updating implicit targets. If no <i>target</i> is specified, the target
+ of the first rule (not meta-rule) in <i>mkfile</i> is updated.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The environment variable <tt><font size=+1>$NPROC</font></tt> determines how many targets may
+ be updated simultaneously; Some operating systems, e.g., Plan
+ 9, set <tt><font size=+1>$NPROC</font></tt> automatically to the number of CPUs on the current
+ machine.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Options are:<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Assume all targets to be out of date. Thus, everything is updated.<br>
+ <tt><font size=+1>&#8722;d</font></tt>[<tt><font size=+1>egp</font></tt>]&nbsp;&nbsp;&nbsp;Produce debugging output (<tt><font size=+1>p</font></tt> is for parsing, <tt><font size=+1>g</font></tt> for graph
+ building, <tt><font size=+1>e</font></tt> for execution).<br>
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Explain why each target is made.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Force any missing intermediate targets to be made.<br>
+ <tt><font size=+1>&#8722;k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do as much work as possible in the face of errors.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print, but do not execute, the commands needed to update the
+ targets.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Make the command line arguments sequentially rather than in
+ parallel.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Touch (update the modified date of) file targets, without executing
+ any recipes.<br>
+ <tt><font size=+1>&#8722;w</font></tt><i>target1</i><tt><font size=+1>,</font></tt><i>target2,...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Pretend the modify time for each <i>target</i> is the current time; useful
+ in conjunction with <tt><font size=+1>&#8722;n</font></tt> to learn what updates would be triggered
+ by modifying the <i>targets</i>.<br>
+
+ </table>
+
+ </table>
+ <p><font size=+1><b>The <tt><font size=+1>mkfile </font></tt></b></font><br>
+ A <i>mkfile</i> consists of <i>assignments</i> (described under &#8216;Environment&#8217;)
+ and <i>rules</i>. A rule contains <i>targets</i> and a <i>tail</i>. A target is a literal
+ string and is normally a file name. The tail contains zero or
+ more <i>prerequisites</i> and an optional <i>recipe</i>, which is an <tt><font size=+1>shell</font></tt> script.
+ Each line of the recipe must begin with white space. A rule
+ takes the form<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>target: prereq1 prereq2<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>recipe using</i> <tt><font size=+1>prereq1, prereq2</font></tt> <i>to build</i> <tt><font size=+1>target<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+
+ </table>
+ When the recipe is executed, the first character on every line
+ is elided.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ After the colon on the target line, a rule may specify <i>attributes</i>,
+ described below.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A <i>meta-rule</i> has a target of the form <i>A</i><tt><font size=+1>%</font></tt><i>B</i> where <i>A</i> and <i>B</i> are (possibly
+ empty) strings. A meta-rule acts as a rule for any potential target
+ whose name matches <i>A</i><tt><font size=+1>%</font></tt><i>B</i> with <tt><font size=+1>%</font></tt> replaced by an arbitrary string,
+ called the <i>stem</i>. In interpreting a meta-rule, the stem is substituted
+ for all occurrences of <tt><font size=+1>%</font></tt> in the prerequisite
+ names. In the recipe of a meta-rule, the environment variable
+ <tt><font size=+1>$stem</font></tt> contains the string matched by the <tt><font size=+1>%</font></tt>. For example, a meta-rule
+ to compile a C program using <a href="../man1/9c.html"><i>9c</i>(1)</a> might be:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>%: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%.c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ 9c &#8722;c $stem.c<br>
+ 9l &#8722;o $stem $stem.o<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ Meta-rules may contain an ampersand <tt><font size=+1>&amp;</font></tt> rather than a percent sign
+ <tt><font size=+1>%</font></tt>. A <tt><font size=+1>%</font></tt> matches a maximal length string of any characters; an <tt><font size=+1>&amp;</font></tt>
+ matches a maximal length string of any characters except period
+ or slash.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The text of the <i>mkfile</i> is processed as follows. Lines beginning
+ with <tt><font size=+1>&lt;</font></tt> followed by a file name are replaced by the contents of
+ the named file. Lines beginning with <tt><font size=+1>&lt;|</font></tt> followed by a file name
+ are replaced by the output of the execution of the named file.
+ Blank lines and comments, which run from unquoted <tt><font size=+1>#</font></tt> characters
+ to the following newline, are deleted. The character sequence
+ backslash-newline is deleted, so long lines in <i>mkfile</i> may be folded.
+ Non-recipe lines are processed by substituting for <tt><font size=+1>`{</font></tt><i>command</i><tt><font size=+1>}</font></tt>
+ the output of the <i>command</i> when run by <i>sh</i>. References to variables
+ are replaced by the variables&#8217; values. Special
+ characters may be quoted using single quotes <tt><font size=+1>''</font></tt> as in <a href="../man1/sh.html"><i>sh</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Assignments and rules are distinguished by the first unquoted
+ occurrence of <tt><font size=+1>:</font></tt> (rule) or <tt><font size=+1>=</font></tt> (assignment).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A later rule may modify or override an existing rule under the
+ following conditions:<br>
+ &ndash;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the targets of the rules exactly match and one rule contains
+ only a prerequisite clause and no recipe, the clause is added
+ to the prerequisites of the other rule. If either or both targets
+ are virtual, the recipe is always executed.<br>
+ &ndash;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the targets of the rules match exactly and the prerequisites
+ do not match and both rules contain recipes, <i>mk</i> reports an &#8220;ambiguous
+ recipe&#8221; error.<br>
+ &ndash;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the target and prerequisites of both rules match exactly, the
+ second rule overrides the first.<br>
+ <p><font size=+1><b>Environment </b></font><br>
+ Rules may make use of shell environment variables. A legal reference
+ of the form <tt><font size=+1>$OBJ</font></tt> or <tt><font size=+1>${name}</font></tt> is expanded as in <a href="../man1/sh.html"><i>sh</i>(1)</a>. A reference
+ of the form <tt><font size=+1>${name:</font></tt><i>A</i><tt><font size=+1>%</font></tt><i>B</i><tt><font size=+1>=</font></tt><i>C</i><tt><font size=+1>%</font></tt><i>D</i><tt><font size=+1>}</font></tt>, where <i>A, B, C, D</i> are (possibly empty)
+ strings, has the value formed by expanding <tt><font size=+1>$name</font></tt> and substituting
+ <i>C</i> for <i>A</i> and <i>D</i> for <i>B</i> in each word in
+ <tt><font size=+1>$name</font></tt> that matches pattern <i>A</i><tt><font size=+1>%</font></tt><i>B</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Variables can be set by assignments of the form<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>var</i><tt><font size=+1>=</font></tt>[<i>attr</i><tt><font size=+1>=</font></tt>]<i>value<br>
+ </i>
+ </table>
+ Blanks in the <i>value</i> break it into words. Such variables are exported
+ to the environment of recipes as they are executed, unless <tt><font size=+1>U</font></tt>,
+ the only legal attribute <i>attr</i>, is present. The initial value of
+ a variable is taken from (in increasing order of precedence) the
+ default values below, <i>mk&#8217;s</i> environment, the <i>mkfiles</i>, and any
+ command line assignment as an argument to <i>mk</i>. A variable assignment
+ argument overrides the first (but not any subsequent) assignment
+ to that variable.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The variable <tt><font size=+1>MKFLAGS</font></tt> contains all the option arguments (arguments
+ starting with <tt><font size=+1>&#8722;</font></tt> or containing <tt><font size=+1>=</font></tt>) and <tt><font size=+1>MKARGS</font></tt> contains all the targets
+ in the call to <i>mk</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The variable <tt><font size=+1>MKSHELL</font></tt> contains the shell command line <i>mk</i> uses to
+ run recipes. If the first word of the command ends in <tt><font size=+1>rc</font></tt> or <tt><font size=+1>rcsh</font></tt>,
+ <i>mk</i> uses <a href="../man1/rc.html"><i>rc</i>(1)</a>&#8217;s quoting rules; otherwise it uses <a href="../man1/sh.html"><i>sh</i>(1)</a>&#8217;s. The
+ <tt><font size=+1>MKSHELL</font></tt> variable is consulted when the mkfile is read, not when
+ it is executed, so that different shells can be used within
+ a single mkfile:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>MKSHELL=$PLAN9/bin/rc<br>
+ use&#8722;rc:V:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ for(i in a b c) echo $i<br>
+
+ </table>
+ MKSHELL=sh<br>
+ use&#8722;sh:V:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ for i in a b c; do echo $i; done<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ Mkfiles included via <tt><font size=+1>&lt;</font></tt> or <tt><font size=+1>&lt;|</font></tt> (<i>q.v.</i>) see their own private copy of
+ <tt><font size=+1>MKSHELL</font></tt>, which always starts set to <tt><font size=+1>sh .
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ Dynamic information may be included in the mkfile by using a line
+ of the form<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ &lt;|<i>command args
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ This runs the command <i>command</i> with the given arguments <i>args</i> and
+ pipes its standard output to <i>mk</i> to be included as part of the
+ mkfile. For instance, the Inferno kernels use this technique to
+ run a shell command with an awk script and a configuration file
+ as arguments in order for the <i>awk</i> script to process the file
+ and output a set of variables and their values.<br>
+ <p><font size=+1><b>Execution </b></font><br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ During execution, <i>mk</i> determines which targets must be updated,
+ and in what order, to build the <i>names</i> specified on the command
+ line. It then runs the associated recipes.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A target is considered up to date if it has no prerequisites or
+ if all its prerequisites are up to date and it is newer than all
+ its prerequisites. Once the recipe for a target has executed,
+ the target is considered up to date.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The date stamp used to determine if a target is up to date is
+ computed differently for different types of targets. If a target
+ is <i>virtual</i> (the target of a rule with the <tt><font size=+1>V</font></tt> attribute), its date
+ stamp is initially zero; when the target is updated the date stamp
+ is set to the most recent date stamp of its prerequisites. Otherwise,
+ if a
+ target does not exist as a file, its date stamp is set to the
+ most recent date stamp of its prerequisites, or zero if it has
+ no prerequisites. Otherwise, the target is the name of a file
+ and the target&#8217;s date stamp is always that file&#8217;s modification
+ date. The date stamp is computed when the target is needed in
+ the execution of
+ a rule; it is not a static value.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Nonexistent targets that have prerequisites and are themselves
+ prerequisites are treated specially. Such a target <i>t</i> is given
+ the date stamp of its most recent prerequisite and if this causes
+ all the targets which have <i>t</i> as a prerequisite to be up to date,
+ <i>t</i> is considered up to date. Otherwise, <i>t</i> is made in the normal
+ fashion.
+ The <tt><font size=+1>&#8722;i</font></tt> flag overrides this special treatment.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Files may be made in any order that respects the preceding restrictions.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A recipe is executed by supplying the recipe as standard input
+ to the command <tt><font size=+1>/bin/sh</font></tt>. (Note that unlike <i>make</i>, <i>mk</i> feeds the entire
+ recipe to the shell rather than running each line of the recipe
+ separately.) The environment is augmented by the following variables:<br>
+ <tt><font size=+1>$alltarget<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ all the targets of this rule.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>$newprereq<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ the prerequisites that caused this rule to execute.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>$newmember<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ the prerequisites that are members of an aggregate that caused
+ this rule to execute. When the prerequisites of a rule are members
+ of an aggregate, <tt><font size=+1>$newprereq</font></tt> contains the name of the aggregate
+ and out of date members, while <tt><font size=+1>$newmember</font></tt> contains only the name
+ of the members.
+
+ </table>
+
+ </table>
+ <tt><font size=+1>$nproc</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the process slot for this recipe. It satisfies 0&le;<tt><font size=+1>$nproc</font></tt>&lt;<tt><font size=+1>$NPROC</font></tt>.<br>
+ <tt><font size=+1>$pid</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the process id for the <i>mk</i> executing the recipe.<br>
+ <tt><font size=+1>$prereq</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;all the prerequisites for this rule.<br>
+ <tt><font size=+1>$stem</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if this is a meta-rule, <tt><font size=+1>$stem</font></tt> is the string that matched
+ <tt><font size=+1>%</font></tt> or <tt><font size=+1>&amp;</font></tt>. Otherwise, it is empty. For regular expression meta-rules
+ (see below), the variables <tt><font size=+1>stem0</font></tt>, ..., <tt><font size=+1>stem9</font></tt> are set to the corresponding
+ subexpressions.<br>
+ <tt><font size=+1>$target</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;the targets for this rule that need to be remade.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ These variables are available only during the execution of a recipe,
+ not while evaluating the <i>mkfile</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Unless the rule has the <tt><font size=+1>Q</font></tt> attribute, the recipe is printed prior
+ to execution with recognizable environment variables expanded.
+ Commands returning error status cause <i>mk</i> to terminate.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Recipes and backquoted <tt><font size=+1>rc</font></tt> commands in places such as assignments
+ execute in a copy of <i>mk&#8217;s</i> environment; changes they make to environment
+ variables are not visible from <i>mk</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Variable substitution in a rule is done when the rule is read;
+ variable substitution in the recipe is done when the recipe is
+ executed. For example:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>bar=a.c<br>
+ foo: $bar<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ $CC &#8722;o foo $bar<br>
+
+ </table>
+ bar=b.c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ will compile <tt><font size=+1>b.c</font></tt> into <tt><font size=+1>foo</font></tt>, if <tt><font size=+1>a.c</font></tt> is newer than <tt><font size=+1>foo</font></tt>.<br>
+ <p><font size=+1><b>Aggregates </b></font><br>
+ Names of the form <i>a</i>(<i>b</i>) refer to member <i>b</i> of the aggregate <i>a</i>. Currently,
+ the only aggregates supported are <i>9ar</i> (see <a href="../man1/9c.html"><i>9c</i>(1)</a>) archives.<br>
+ <p><font size=+1><b>Attributes </b></font><br>
+ The colon separating the target from the prerequisites may be
+ immediately followed by <i>attributes</i> and another colon. The attributes
+ are:<br>
+ <tt><font size=+1>D</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the recipe exits with a non-null status, the target is deleted.<br>
+ <tt><font size=+1>E</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Continue execution if the recipe draws errors.<br>
+ <tt><font size=+1>N</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If there is no recipe, the target has its time updated.<br>
+ <tt><font size=+1>n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The rule is a meta-rule that cannot be a target of a virtual
+ rule. Only files match the pattern in the target.<br>
+ <tt><font size=+1>P</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The characters after the <tt><font size=+1>P</font></tt> until the terminating <tt><font size=+1>:</font></tt> are taken
+ as a program name. It will be invoked as <tt><font size=+1>sh &#8722;c prog 'arg1' 'arg2'</font></tt>
+ and should return a zero exit status if and only if arg1 is up
+ to date with respect to arg2. Date stamps are still propagated
+ in the normal way.<br>
+ <tt><font size=+1>Q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The recipe is not printed prior to execution.<br>
+ <tt><font size=+1>R</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The rule is a meta-rule using regular expressions. In the rule,
+ <tt><font size=+1>%</font></tt> has no special meaning. The target is interpreted as a regular
+ expression as defined in <a href="../man7/regexp.html"><i>regexp</i>(7)</a>. The prerequisites may contain
+ references to subexpressions in form <tt><font size=+1>\</font></tt><i>n</i>, as in the substitute
+ command of <a href="../man1/sed.html"><i>sed</i>(1)</a>.<br>
+ <tt><font size=+1>U</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The targets are considered to have been updated even if the recipe
+ did not do so.<br>
+ <tt><font size=+1>V</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The targets of this rule are marked as virtual. They are distinct
+ from files of the same name.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A simple mkfile to compile a program:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>&lt;/$objtype/mkfile<br>
+ prog: a.$O b.$O c.$O<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ $LD $LDFLAGS &#8722;o $target $prereq<br>
+
+ </table>
+ %.$O: %.c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ $CC $CFLAGS $stem.c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ Override flag settings in the mkfile:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% mk target 'CFLAGS=&#8722;S &#8722;w'<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Maintain a library:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>libc.a(%.$O):N: &nbsp;&nbsp;&nbsp;%.$O<br>
+ libc.a: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;libc.a(abs.$O) libc.a(access.$O) libc.a(alarm.$O) ...<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ ar r libc.a $newmember<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ String expression variables to derive names from a master list:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>NAMES=alloc arc bquote builtins expand main match mk var word<br>
+ OBJ=${NAMES:%=%.$O}<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Regular expression meta-rules:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>([^/]*)/(.*)\.$O:R: &nbsp;&nbsp;&nbsp;\1/\2.c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cd $stem1; $CC $CFLAGS $stem2.c<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ A correct way to deal with <a href="../man1/yacc.html"><i>yacc</i>(1)</a> grammars. The file <tt><font size=+1>lex.c</font></tt> includes
+ the file <tt><font size=+1>x.tab.h</font></tt> rather than <tt><font size=+1>y.tab.h</font></tt> in order to reflect changes
+ in content, not just modification time.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>lex.$O: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x.tab.h<br>
+ x.tab.h: &nbsp;&nbsp;&nbsp;&nbsp;y.tab.h<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cmp &#8722;s x.tab.h y.tab.h || cp y.tab.h x.tab.h<br>
+
+ </table>
+ y.tab.c y.tab.h: gram.y<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ $YACC &#8722;d gram.y<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ The above example could also use the <tt><font size=+1>P</font></tt> attribute for the <tt><font size=+1>x.tab.h</font></tt>
+ rule:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>x.tab.h:Pcmp &#8722;s: y.tab.h<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ cp y.tab.h x.tab.h<br>
+
+ </table>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/mk<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sh.html"><i>sh</i>(1)</a>, <a href="../man7/regexp.html"><i>regexp</i>(7)</a>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A. Hume, &#8220;Mk: a Successor to Make&#8221; (Tenth Edition Research Unix
+ Manuals).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Andrew G. Hume and Bob Flandrena, &#8220;Maintaining Files on Plan 9
+ with Mk&#8221;. DOCPREFIX/doc/mk.pdf<br>
+
+</table>
+<p><font size=+1><b>HISTORY </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Andrew Hume wrote <i>mk</i> for Tenth Edition Research Unix. It was later
+ ported to Plan 9. This software is a port of the Plan 9 version
+ back to Unix.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Identical recipes for regular expression meta-rules only have
+ one target.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Seemingly appropriate input like <tt><font size=+1>CFLAGS=&#8722;DHZ=60</font></tt> is parsed as an
+ erroneous attribute; correct it by inserting a space after the
+ first <tt><font size=+1>=</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The recipes printed by <i>mk</i> before being passed to the shell for
+ execution are sometimes erroneously expanded for printing. Don&#8217;t
+ trust what&#8217;s printed; rely on what the shell does.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/mk9660.1 b/man/man1/mk9660.1
new file mode 100644
index 00000000..0d655cf0
--- /dev/null
+++ b/man/man1/mk9660.1
@@ -0,0 +1,232 @@
+.TH MK9660 1
+.SH NAME
+dump9660, mk9660 \- create an ISO-9660 CD image
+.SH SYNOPSIS
+.B mk9660
+[
+.B -:D
+]
+[
+.B -9cjr
+]
+[
+.B -b
+.I bootfile
+]
+[
+.B -p
+.I proto
+]
+[
+.B -s
+src
+]
+[
+.B -v
+volume
+]
+.I image
+.PP
+.B dump9660
+[
+.B -:D
+]
+[
+.B -9cjr
+]
+[
+.B -p
+.I proto
+]
+[
+.B -s
+src
+]
+[
+.B -v
+volume
+]
+[
+.B -m
+.I maxsize
+]
+[
+.B -n
+.I now
+]
+.I image
+.SH DESCRIPTION
+.I Mk9660
+writes to the random access file
+.I image
+an ISO-9660 CD image containing the
+files named in
+.I proto
+(by default,
+.BR \*9/proto/allproto )
+from the file tree
+.I src
+(by default,
+the current directory).
+The
+.I proto
+file is formatted as described in
+.IR proto (3).
+.PP
+The created CD image will be in ISO-9660
+format, but by default the file names will
+be stored in UTF-8 with no imposed length
+or character restrictions.
+The
+.B -c
+flag causes
+.I mk9660
+to use only file names in ``8.3'' form
+that use digits, letters, and underscore.
+File names that do not conform are changed
+to
+.BI D nnnnnn
+(for directories)
+or
+.BI F nnnnnn
+(for files);
+a key file
+.B _CONFORM.MAP
+is created in the root
+directory to ease the reverse process.
+.PP
+If the
+.B -9
+flag is given, the system use fields at the end of
+each directory entry will be populated with
+Plan directory information (owner, group, mode,
+full name); this is interpreted by
+.IR 9660srv .
+.PP
+If the
+.B -j
+flag is given, the usual directory tree is written,
+but an additional tree in Microsoft Joliet format is
+also added.
+This second tree can contain long Unicode file names,
+and can be read by
+.I 9660srv
+as well as most versions of Windows
+and many Unix clones.
+The characters
+.BR * ,
+.BR : ,
+.BR ; ,
+.BR ? ,
+and
+.B \e
+are allowed in Plan 9 file names but not in Joliet file names;
+non-conforming file names are translated
+and a
+.B _CONFORM.MAP
+file written
+as in the case of the
+.B -c
+option.
+.PP
+If the
+.B -r
+flag is given, Rock Ridge extensions are written in the
+format of the system use sharing protocol;
+this format provides Posix-style file metadata and is
+common on Unix platforms.
+.PP
+The options
+.BR -c ,
+.BR -9 ,
+.BR -j ,
+and
+.B -r
+may be mixed freely with the exception that
+.B -9
+and
+.B -r
+are mutually exclusive.
+.PP
+The
+.B -v
+flag sets the volume title;
+if unspecified, the base name of
+.I proto
+is used.
+.PP
+The
+.B -:
+flag causes
+.B mk9660
+to replace colons in scanned file names with spaces;
+this is the inverse of the map applied by Plan 9's
+\fIdossrv\fR(4)
+and is useful for writing Joliet CDs containing data
+from FAT file systems.
+.PP
+The
+.B -b
+option creates a bootable CD.
+Bootable CDs contain pointers to floppy images which are
+loaded and booted by the BIOS.
+.I Bootfile
+should be the name of the floppy image to use;
+it is a path relative to the root of the created CD.
+That is, the boot floppy image must be listed in the
+.I proto
+file already:
+the
+.B -b
+flag just creates a pointer to it.
+.PP
+The
+.B -D
+flag creates immense amounts of debugging output
+on standard error.
+.PP
+.I Dump9660
+is similar in specification to
+.I mk9660
+but creates and updates backup CD images in the style of
+the
+.I dump
+file system
+(see Plan 9's \fIfs\fR(4)).
+The dump is file-based rather than block-based:
+if a file's contents have not changed since the last
+backup, only its directory entry will be rewritten.
+.PP
+The
+.B -n
+option specifies a time (in seconds since January 1, 1970)
+to be used for naming the dump directory.
+.PP
+The
+.B -m
+option specifies a maximum size for the image;
+if a backup would cause the image to grow larger than
+.IR maxsize ,
+it will not be written, and
+.I dump9660
+will exit with a non-empty status.
+.SH EXAMPLE
+.PP
+Create an image of the Plan 9 source tree,
+including a conformant ISO-9660 directory tree,
+Plan 9 extensions in the system use fields, and
+a Joliet directory tree.
+.IP
+.EX
+mk9660 -9cj -s /n/bootes -p srcproto cdimage
+.EE
+.SH SOURCE
+\*9/src/cmd/9660
+.SH "SEE ALSO
+.IR proto (3)
+.\" .SH "SEE ALSO"
+.\" .I 9660srv
+.\" (in
+.\" .IR dossrv (4)),
+.\" .IR cdfs (4),
+.\" .IR proto (3)
diff --git a/man/man1/mkdir.html b/man/man1/mkdir.html
new file mode 100644
index 00000000..489d8b91
--- /dev/null
+++ b/man/man1/mkdir.html
@@ -0,0 +1,79 @@
+<head>
+<title>mkdir(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>MKDIR(1)</b><td align=right><b>MKDIR(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ mkdir &ndash; make a directory<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>mkdir</font></tt> [ <tt><font size=+1>&#8722;p</font></tt> ] [ <tt><font size=+1>&#8722;m</font></tt> <i>mode</i> ] <i>dirname ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Mkdir</i> creates the specified directories. It requires write permission
+ in the parent directory.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the <tt><font size=+1>&#8722;p</font></tt> flag is given, <i>mkdir</i> creates any necessary parent directories
+ and does not complain if the target directory already exists.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;m</font></tt> flag sets the permissions to be used when creating the
+ directory. The default is 0777.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/rm.html"><i>rm</i>(1)</a><br>
+ <i>cd</i> in <a href="../man1/rc.html"><i>rc</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/mkdir.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Mkdir</i> returns null exit status if all directories were successfully
+ made. Otherwise it prints a diagnostic and returns <tt><font size=+1>&quot;error&quot;</font></tt> status.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/namespace.html b/man/man1/namespace.html
new file mode 100644
index 00000000..45ae83bc
--- /dev/null
+++ b/man/man1/namespace.html
@@ -0,0 +1,61 @@
+<head>
+<title>namespace(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>NAMESPACE(1)</b><td align=right><b>NAMESPACE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ namespace &ndash; print name space directory<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>namespace<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Namespace</i> prints the directory representing the current name space.
+ See <a href="../man4/intro.html"><i>intro</i>(4)</a>.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/namespace.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/getns.html"><i>getns</i>(3)</a>, <a href="../man4/intro.html"><i>intro</i>(4)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/news.html b/man/man1/news.html
new file mode 100644
index 00000000..29cede42
--- /dev/null
+++ b/man/man1/news.html
@@ -0,0 +1,91 @@
+<head>
+<title>news(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>NEWS(1)</b><td align=right><b>NEWS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ news &ndash; print news items<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>news</font></tt> [ <tt><font size=+1>&#8722;a</font></tt> ] [ <tt><font size=+1>&#8722;n</font></tt> ] [ <i>item ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ When invoked without options, this simple local news service prints
+ files that have appeared in <tt><font size=+1>/lib/news</font></tt> since last reading, most
+ recent first, with each preceded by an appropriate header. The
+ time of reading is recorded. The options are<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print all items, regardless of currency. The recorded time is
+ not changed.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Report the names of the current items without printing their
+ contents, and without changing the recorded time.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Other arguments select particular news items.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ To post a news item, create a file in <tt><font size=+1>/usr/local/plan9/news</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Empty news items, and news items named <tt><font size=+1>core</font></tt> or <tt><font size=+1>dead.letter</font></tt> are
+ ignored.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/news/*<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ articles<br>
+
+ </table>
+ <tt><font size=+1>$HOME/lib/newstime<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ modify time is time news was last read who gets news mailed to
+ them<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/news.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/p.html b/man/man1/p.html
new file mode 100644
index 00000000..a2339d2f
--- /dev/null
+++ b/man/man1/p.html
@@ -0,0 +1,63 @@
+<head>
+<title>p(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>P(1)</b><td align=right><b>P(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ p &ndash; paginate<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>p</font></tt> [ <tt><font size=+1>&#8722;</font></tt><i>number</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>P</i> copies its standard input, or the named files if given, to its
+ standard output, stopping at the end of every 22nd line, and between
+ files, to wait for a newline from the user. The option sets the
+ <i>number</i> of lines on a page.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ While waiting for a newline, <i>p</i> interprets the commands:<br>
+ <tt><font size=+1>!</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pass the rest of the line to the shell as a command.<br>
+ <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quit.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/p.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/page.html b/man/man1/page.html
new file mode 100644
index 00000000..91b48993
--- /dev/null
+++ b/man/man1/page.html
@@ -0,0 +1,97 @@
+<head>
+<title>page(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PAGE(1)</b><td align=right><b>PAGE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ img, psv &ndash; view FAX, image, graphic, PostScript, PDF, and typesetter
+ output files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>page</font></tt> [ <i>file</i>... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>img</font></tt> <i>file.bit
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>psv</font></tt> <i>file.ps
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>psv</font></tt> <i>file.pdf<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Plan 9&#8217;s <a href="../man1/page.html"><i>page</i>(1)</a> is not ported. Instead, <i>page</i> is a script that
+ invokes <a href="../man1/qiv.html"><i>qiv</i>(1)</a> to view graphic files or <i>psv</i> to view PostScript
+ and PDF. On Mac OS X, <i>page</i> invokes Preview to handle all files.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Img</i> is a simple image viewer for Plan 9 images (see <a href="../man7/image.html"><i>image</i>(7)</a>).
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Psv</i> is a PostScript and PDF viewer. It is a streamlined interface
+ to <a href="../man1/gv.html"><i>gv</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ To view troff output, use <a href="../man1/proof.html"><i>proof</i>(1)</a>.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/gs.html"><i>gs</i>(1)</a>, <a href="../man1/gv.html"><i>gv</i>(1)</a>, <a href="../man1/jpg.html"><i>jpg</i>(1)</a>, <a href="../man1/proof.html"><i>proof</i>(1)</a>, <a href="../man1/tex.html"><i>tex</i>(1)</a>, <a href="../man1/troff.html"><i>troff</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/img.c<br>
+ /usr/local/plan9/bin/psv<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ When using Preview on Mac OS X, <i>page</i> leaves temporary files in
+ <tt><font size=+1>/var/tmp</font></tt>, since it has no way to know when the viewer has exited.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Page</i> does not handle Plan 9 <a href="../man7/image.html"><i>image</i>(7)</a> files; use <i>img</i> explicitly.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/pic.html b/man/man1/pic.html
new file mode 100644
index 00000000..acba241b
--- /dev/null
+++ b/man/man1/pic.html
@@ -0,0 +1,435 @@
+<head>
+<title>pic(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PIC(1)</b><td align=right><b>PIC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ pic, tpic &ndash; troff and tex preprocessors for drawing pictures<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>pic</font></tt> [ <i>files</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>tpic</font></tt> [ <i>files</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Pic</i> is a <a href="../man1/troff.html"><i>troff</i>(1)</a> preprocessor for drawing figures on a typesetter.
+ <i>Pic</i> code is contained between <tt><font size=+1>.PS</font></tt> and <tt><font size=+1>.PE</font></tt> lines:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>.PS</font></tt> <i>optional-width optional-height<br>
+ element-list<br>
+ </i><tt><font size=+1>.PE<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ or in a file mentioned in a <tt><font size=+1>.PS</font></tt> line:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>.PS &lt;</font></tt><i>file
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ If <i>optional-width</i> is present, the picture is made that many inches
+ wide, regardless of any dimensions used internally. The height
+ is scaled in the same proportion unless <i>optional-height</i> is present.
+ If <tt><font size=+1>.PF</font></tt> is used instead of <tt><font size=+1>.PE</font></tt>, the typesetting position after
+ printing is restored to what it was upon entry.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An <i>element-list</i> is a list of elements:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>primitive attribute-list<br>
+ placename</i> <tt><font size=+1>:</font></tt> <i>element<br>
+ placename</i> <tt><font size=+1>:</font></tt> <i>position<br>
+ var</i> <tt><font size=+1>=</font></tt> <i>expr<br>
+ direction<br>
+ </i><tt><font size=+1>{</font></tt> <i>element-list</i> <tt><font size=+1>}<br>
+ [</font></tt> <i>element-list</i> <tt><font size=+1>]<br>
+ for</font></tt> <i>var</i> <tt><font size=+1>=</font></tt> <i>expr</i> <tt><font size=+1>to</font></tt> <i>expr</i> <tt><font size=+1>by</font></tt> <i>expr</i> <tt><font size=+1>do {</font></tt> <i>anything</i> <tt><font size=+1>}<br>
+ if</font></tt> <i>expr</i> <tt><font size=+1>then {</font></tt> <i>anything</i> <tt><font size=+1>} else {</font></tt> <i>anything</i> <tt><font size=+1>}<br>
+ copy</font></tt> <i>file, </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;copy thru</font></tt> <i>macro, </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;copy</font></tt> <i>file</i> <tt><font size=+1>thru</font></tt> <i>macro<br>
+ </i><tt><font size=+1>sh {</font></tt> <i>commandline</i> <tt><font size=+1>}<br>
+ print</font></tt> <i>expr<br>
+ </i><tt><font size=+1>reset</font></tt> <i>optional var-list<br>
+ troff-command<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ Elements are separated by newlines or semicolons; a long element
+ may be continued by ending the line with a backslash. Comments
+ are introduced by a <tt><font size=+1>#</font></tt> and terminated by a newline. Variable names
+ begin with a lower case letter; place names begin with upper case.
+ Place and variable names retain their values from
+ one picture to the next.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ After each primitive the current position moves in the current
+ direction (<tt><font size=+1>up</font></tt>,<tt><font size=+1>down</font></tt>, <tt><font size=+1>left</font></tt>,<tt><font size=+1>right</font></tt> (default)) by the size of the primitive.
+ The current position and direction are saved upon entry to a <tt><font size=+1>{</font></tt>...<tt><font size=+1>}</font></tt>
+ block and restored upon exit. Elements within a block enclosed
+ in <tt><font size=+1>[</font></tt>...<tt><font size=+1>]</font></tt> are treated as a unit; the dimensions are
+ determined by the extreme points of the contained objects. Names,
+ variables, and direction of motion within a block are local to
+ that block.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Troff-command</i> is any line that begins with a period. Such a line
+ is assumed to make sense in the context where it appears; generally,
+ this means only size and font changes.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <i>primitive</i> objects are:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>box &nbsp;&nbsp;&nbsp;circle &nbsp;&nbsp;&nbsp;ellipse &nbsp;&nbsp;&nbsp;arc &nbsp;&nbsp;&nbsp;line &nbsp;&nbsp;&nbsp;arrow &nbsp;&nbsp;&nbsp;spline &nbsp;&nbsp;&nbsp;move </font></tt><i>&nbsp;&nbsp;&nbsp;text-list<br>
+ </i>
+ </table>
+ <tt><font size=+1>arrow</font></tt> is a synonym for <tt><font size=+1>line &#8722;&gt;</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An <i>attribute-list</i> is a sequence of zero or more attributes; each
+ attribute consists of a keyword, perhaps followed by a value.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>h(eigh)t</font></tt> <i>expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wid(th)</font></tt> <i>expr<br>
+ </i><tt><font size=+1>rad(ius)</font></tt> <i>expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;diam(eter)</font></tt> <i>expr<br>
+ </i><tt><font size=+1>up</font></tt> <i>opt-expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;down</font></tt> <i>opt-expr<br>
+ </i><tt><font size=+1>right</font></tt> <i>opt-expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;left</font></tt> <i>opt-expr<br>
+ </i><tt><font size=+1>from</font></tt> <i>position </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to</font></tt> <i>position<br>
+ </i><tt><font size=+1>at</font></tt> <i>position </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;with</font></tt> <i>corner<br>
+ </i><tt><font size=+1>by</font></tt> <i>expr, expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;then<br>
+ dotted</font></tt> <i>opt-expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dashed</font></tt> <i>opt-expr<br>
+ </i><tt><font size=+1>chop</font></tt> <i>opt-expr </i><tt><font size=+1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8722;&gt; &nbsp;&nbsp;&nbsp;&lt;&#8722; &nbsp;&nbsp;&nbsp;&lt;&#8722;&gt;<br>
+ invis &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;same<br>
+ fill</font></tt> <i>opt-expr<br>
+ text-list &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;expr<br>
+ </i>
+ </table>
+
+ </table>
+ Missing attributes and values are filled in from defaults. Not
+ all attributes make sense for all primitives; irrelevant ones
+ are silently ignored. The attribute <tt><font size=+1>at</font></tt> causes the geometrical
+ center to be put at the specified place; <tt><font size=+1>with</font></tt> causes the position
+ on the object to be put at the specified place. For lines, splines
+ and
+ arcs, <tt><font size=+1>height</font></tt> and <tt><font size=+1>width</font></tt> refer to arrowhead size. A bare <i>expr</i> implies
+ motion in the current direction.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Text is normally an attribute of some primitive; by default it
+ is placed at the geometrical center of the object. Stand-alone
+ text is also permitted. A text list is a list of text items:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>text-item</i><tt><font size=+1>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ &quot;...&quot;
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>positioning ...<br>
+ </i><tt><font size=+1>sprintf(&quot;</font></tt><i>format</i><tt><font size=+1>&quot;,</font></tt> <i>expr</i><tt><font size=+1>,</font></tt> <i>...</i><tt><font size=+1>)</font></tt> <i>positioning ...<br>
+ </i>
+ </table>
+ <i> positioning</i><tt><font size=+1>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ center &nbsp;&nbsp;&nbsp;ljust &nbsp;&nbsp;&nbsp;rjust &nbsp;&nbsp;&nbsp;above &nbsp;&nbsp;&nbsp;below<br>
+
+ </table>
+ </font></tt>
+ </table>
+ If there are multiple text items for some primitive, they are
+ arranged vertically and centered except as qualified. Positioning
+ requests apply to each item independently. Text items may contain
+ <i>troff</i> commands for size and font changes, local motions, etc.,
+ but make sure that these are balanced so that the entering state
+ is restored before exiting.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A position is ultimately an <i>x,y</i> coordinate pair, but it may be
+ specified in other ways.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>position</i><tt><font size=+1>:<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>expr, expr<br>
+ place </i><tt><font size=+1>&plusmn;</font></tt> <i>expr, expr<br>
+ place </i><tt><font size=+1>&plusmn; (</font></tt> <i>expr, expr</i> <tt><font size=+1>)<br>
+ (</font></tt> <i>position</i><tt><font size=+1>,</font></tt> <i>position</i> <tt><font size=+1>) </font></tt><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x</i> from one, <i>y</i> the other<br>
+ <i>expr</i> [<tt><font size=+1>of the way</font></tt>] between <i>position</i> and <i>position<br>
+ expr </i>&lt; <i>position</i> , <i>position </i>&gt;<br>
+ ( <i>position</i> )<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <i>place</i><tt><font size=+1>:<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>placename optional-corner<br>
+ corner</i> <tt><font size=+1>of</font></tt> <i>placename<br>
+ nth primitive optional-corner<br>
+ corner</i> <tt><font size=+1>of</font></tt> <i>nth primitive<br>
+ </i><tt><font size=+1>Here<br>
+ </font></tt>
+ </table>
+
+ </table>
+ An <i>optional-corner</i> is one of the eight compass points or the center
+ or the start or end of a primitive.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>optional-corner</i><tt><font size=+1>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ .n &nbsp;&nbsp;&nbsp;.e &nbsp;&nbsp;&nbsp;.w &nbsp;&nbsp;&nbsp;.s &nbsp;&nbsp;&nbsp;.ne &nbsp;&nbsp;&nbsp;.se &nbsp;&nbsp;&nbsp;.nw &nbsp;&nbsp;&nbsp;.sw &nbsp;&nbsp;&nbsp;.c &nbsp;&nbsp;&nbsp;.start &nbsp;&nbsp;&nbsp;.end<br>
+
+ </table>
+ </font></tt> <i>corner</i><tt><font size=+1>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ top &nbsp;&nbsp;&nbsp;bot &nbsp;&nbsp;&nbsp;left &nbsp;&nbsp;&nbsp;right &nbsp;&nbsp;&nbsp;start &nbsp;&nbsp;&nbsp;end<br>
+
+ </table>
+ </font></tt>
+ </table>
+ Each object in a picture has an ordinal number; <i>nth</i> refers to
+ this.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>nth</i><tt><font size=+1>:<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>n</i><tt><font size=+1>th</font></tt><i>, &nbsp;&nbsp;&nbsp;n</i><tt><font size=+1>th last<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+
+ </table>
+ The built-in variables and their default values are:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>boxwid 0.75 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxht 0.5<br>
+ circlerad 0.25 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arcrad 0.25<br>
+ ellipsewid 0.75 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ellipseht 0.5<br>
+ linewid 0.5 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lineht 0.5<br>
+ movewid 0.5 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;moveht 0.5<br>
+ textwid 0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;textht 0<br>
+ arrowwid 0.05 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arrowht 0.1<br>
+ dashwid 0.1 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arrowhead 2<br>
+ scale 1<br>
+ </font></tt>
+ </table>
+
+ </table>
+ These may be changed at any time, and the new values remain in
+ force from picture to picture until changed again or reset by
+ a <tt><font size=+1>reset</font></tt> statement. Variables changed within <tt><font size=+1>[</font></tt> and <tt><font size=+1>]</font></tt> revert to
+ their previous value upon exit from the block. Dimensions are
+ divided by <tt><font size=+1>scale</font></tt> during output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Expressions in <i>pic</i> are evaluated in floating point. All numbers
+ representing dimensions are taken to be in inches.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>expr</i><tt><font size=+1>:<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>expr op expr<br>
+ </i><tt><font size=+1>&#8722;</font></tt> <i>expr<br>
+ </i><tt><font size=+1>!</font></tt> <i>expr<br>
+ </i><tt><font size=+1>(</font></tt> <i>expr</i> <tt><font size=+1>)<br>
+ variable<br>
+ number<br>
+ </font></tt><i>place</i> <tt><font size=+1>.x </font></tt><i>&nbsp;&nbsp;&nbsp;place</i> <tt><font size=+1>.y </font></tt><i>&nbsp;&nbsp;&nbsp;place</i> <tt><font size=+1>.ht </font></tt><i>&nbsp;&nbsp;&nbsp;place</i> <tt><font size=+1>.wid </font></tt><i>&nbsp;&nbsp;&nbsp;place</i> <tt><font size=+1>.rad<br>
+ sin(</font></tt><i>expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;cos(</font></tt><i>expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;atan2(</font></tt><i>expr,expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;log(</font></tt><i>expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;exp(</font></tt><i>expr</i><tt><font size=+1>)<br>
+ sqrt(</font></tt><i>expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;max(</font></tt><i>expr,expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;min(</font></tt><i>expr,expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;int(</font></tt><i>expr</i><tt><font size=+1>) &nbsp;&nbsp;&nbsp;rand()<br>
+ </font></tt>
+ </table>
+ <i>op</i><tt><font size=+1>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ + &nbsp;&nbsp;&nbsp;&#8722; &nbsp;&nbsp;&nbsp;* &nbsp;&nbsp;&nbsp;/ &nbsp;&nbsp;&nbsp;% &nbsp;&nbsp;&nbsp;&lt; &nbsp;&nbsp;&nbsp;&lt;= &nbsp;&nbsp;&nbsp;&gt; &nbsp;&nbsp;&nbsp;&gt;= &nbsp;&nbsp;&nbsp;== &nbsp;&nbsp;&nbsp;!= &nbsp;&nbsp;&nbsp;&amp;&amp; &nbsp;&nbsp;&nbsp;||<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ The <tt><font size=+1>define</font></tt> and <tt><font size=+1>undef</font></tt> statements are not part of the grammar.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>define</font></tt> <i>name</i> <tt><font size=+1>{</font></tt> <i>replacement text</i> <tt><font size=+1>}<br>
+ undef</font></tt> <i>name<br>
+ </i>
+ </table>
+
+ </table>
+ Occurrences of <tt><font size=+1>$1</font></tt>, <tt><font size=+1>$2</font></tt>, etc., in the replacement text will be replaced
+ by the corresponding arguments if <i>name</i> is invoked as<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>name</i><tt><font size=+1>(</font></tt><i>arg1</i><tt><font size=+1>,</font></tt> <i>arg2</i><tt><font size=+1>, ...)<br>
+ </font></tt>
+ </table>
+
+ </table>
+ Non-existent arguments are replaced by null strings. Replacement
+ text may contain newlines. The <tt><font size=+1>undef</font></tt> statement removes the definition
+ of a macro.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Tpic</i> is a <a href="../man1/tex.html"><i>tex</i>(1)</a> preprocessor that accepts <i>pic</i> language. It produces
+ Tex commands that define a box called <tt><font size=+1>\graph</font></tt>, which contains the
+ picture. The box may be output this way:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>\centerline{\box\graph}<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>arrow &quot;input&quot; above; box &quot;process&quot;; arrow &quot;output&quot; above<br>
+ move<br>
+ A: ellipse <br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ circle rad .1 with .w at A.e<br>
+ circle rad .05 at 0.5 &lt;A.c, A.ne&gt;<br>
+ circle rad .065 at 0.5 &lt;A.c, A.ne&gt;<br>
+ spline from last circle.nw left .25 then left .05 down .05<br>
+ arc from A.c to A.se rad 0.5<br>
+ for i = 1 to 10 do { line from A.s+.025*i,.01*i down i/50 } <br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+ arrow &quot;input&quot; above; box &quot;process&quot;; arrow &quot;output&quot; above move A: ellipse<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ circle rad .1 with .w at A.e<br>
+ circle rad .05 at 0.5 &lt;A.c, A.ne&gt;<br>
+ circle rad .065 at 0.5 &lt;A.c, A.ne&gt;<br>
+ spline from last circle.nw left .25 then left .05 down .05<br>
+ arc from A.c to A.se rad 0.5<br>
+ for i = 1 to 10 do { line from A.s+.025*i,.01*i down i/50 }<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/pic<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/grap.html"><i>grap</i>(1)</a>, <a href="../man1/doctype.html"><i>doctype</i>(1)</a>, <a href="../man1/troff.html"><i>troff</i>(1)</a><br>
+ B. W. Kernighan, &#8220;PIC--a Graphics Language for Typesetting&#8221;, <i>Unix
+ Research System Programmer&#8217;s Manual,</i> Tenth Edition, Volume 2<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/plot.html b/man/man1/plot.html
new file mode 100644
index 00000000..b93d6d34
--- /dev/null
+++ b/man/man1/plot.html
@@ -0,0 +1,88 @@
+<head>
+<title>plot(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PLOT(1)</b><td align=right><b>PLOT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ plot &ndash; graphics filter<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>plot</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Plot</i> interprets plotting instructions (see <a href="../man7/plot.html"><i>plot</i>(7)</a>) from the <i>files</i>
+ or standard input, drawing the results in a newly created <a href="../man1/rio.html"><i>rio</i>(1)</a>
+ window. Plot persists until a newline is typed in the window.
+ Various options may be interspersed with the <i>file</i> arguments; they
+ take effect at the given point in processing. Options are:
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Double buffer: accumulate the plot off-screen and write to the
+ screen all at once when an erase command is encountered or at
+ end of file.<br>
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Erase the screen.<br>
+ <tt><font size=+1>&#8722;c</font></tt> <i>col</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the foreground color (see <a href="../man7/plot.html"><i>plot</i>(7)</a> for color names).<br>
+ <tt><font size=+1>&#8722;f</font></tt> <i>fill</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the background color.<br>
+ <tt><font size=+1>&#8722;g</font></tt> <i>grade</i>&nbsp;&nbsp;&nbsp;Set the quality factor for arcs. Higher grades give better
+ quality.<br>
+ <tt><font size=+1>&#8722;p</font></tt> <i>col</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the pen color.<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pause until a newline is typed on standard input.<br>
+ <tt><font size=+1>&#8722;C</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Close the current plot.<br>
+ <tt><font size=+1>&#8722;W &nbsp;&nbsp;&nbsp;x0,y0,x1,y1<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Specify the bounding rectangle of plot&#8217;s window. By default it
+ uses a 512x512 window in the middle of the screen.<br>
+
+ </table>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/plot<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/rio.html"><i>rio</i>(1)</a>, <a href="../man7/plot.html"><i>plot</i>(7)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/plumb.html b/man/man1/plumb.html
new file mode 100644
index 00000000..2a868f7a
--- /dev/null
+++ b/man/man1/plumb.html
@@ -0,0 +1,80 @@
+<head>
+<title>plumb(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PLUMB(1)</b><td align=right><b>PLUMB(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ plumb &ndash; send message to plumber<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>plumb</font></tt> [ <tt><font size=+1>&#8722;p</font></tt> <i>plumbfile</i> ] [ <tt><font size=+1>&#8722;a</font></tt> <i>attributes</i> ] [ <tt><font size=+1>&#8722;s</font></tt> <i>source</i> ] [ <tt><font size=+1>&#8722;d</font></tt> <i>destination</i>
+ ] [ <tt><font size=+1>&#8722;t</font></tt> <i>type</i> ] [ <tt><font size=+1>&#8722;w</font></tt> <i>directory</i> ] <tt><font size=+1>&#8722;i</font></tt> | <i>data...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>plumb</i> command formats and sends a plumbing message whose data
+ is, by default, the concatenation of the argument strings separated
+ by blanks. The options are:<br>
+ <tt><font size=+1>&#8722;p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;write the message to <i>plumbfile</i> (default <tt><font size=+1>/mnt/plumb/send</font></tt>).<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;set the <tt><font size=+1>attr</font></tt> field of the message (default is empty).<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;set the <tt><font size=+1>src</font></tt> field of the message (default is <tt><font size=+1>plumb</font></tt>).<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;set the <tt><font size=+1>dst</font></tt> field of the message (default is empty).<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;set the <tt><font size=+1>type</font></tt> field of the message (default is <tt><font size=+1>text</font></tt>).<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;set the <tt><font size=+1>wdir</font></tt> field of the message (default is the current working
+ directory of <i>plumb</i>).<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;take the data from standard input rather than the argument strings.
+ If an <tt><font size=+1>action=</font></tt> attribute is not otherwise specified, <i>plumb</i> will
+ add an <tt><font size=+1>action=showdata</font></tt> attribute to the message.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>$HOME/lib/plumbing</font></tt>&nbsp;&nbsp;&nbsp;default rules file<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/plumb<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/plumb.html"><i>plumb</i>(3)</a>, <a href="../man4/plumber.html"><i>plumber</i>(4)</a>, <a href="../man7/plumb.html"><i>plumb</i>(7)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/pr.html b/man/man1/pr.html
new file mode 100644
index 00000000..ca8772b2
--- /dev/null
+++ b/man/man1/pr.html
@@ -0,0 +1,90 @@
+<head>
+<title>pr(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PR(1)</b><td align=right><b>PR(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ pr &ndash; print file<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>pr</font></tt> [ <i>option ...</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Pr</i> produces a printed listing of one or more <i>files</i> on its standard
+ output. The output is separated into pages headed by a date, the
+ name of the file or a specified header, and the page number. With
+ no file arguments, <i>pr</i> prints its standard input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Options apply to all following files but may be reset between
+ files:<br>
+ <tt><font size=+1>&#8722;</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;Produce <i>n</i>-column output.<br>
+ <tt><font size=+1>+</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;Begin printing with page <i>n</i>.<br>
+ <tt><font size=+1>&#8722;b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Balance columns on last page, in case of multi-column output.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Double space.<br>
+ <tt><font size=+1>&#8722;e</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;Set the tab stops for input text every <i>n</i> spaces.<br>
+ <tt><font size=+1>&#8722;h</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Take the next argument as a page header (<i>file</i> by default).<br>
+ <tt><font size=+1>&#8722;i</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;Replace sequences of blanks in the output by tabs, using tab
+ stops set every <i>n</i> spaces.<br>
+ <tt><font size=+1>&#8722;f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Use form feeds to separate pages.<br>
+ <tt><font size=+1>&#8722;l</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;Take the length of the page to be <i>n</i> lines instead of the default
+ 66.<br>
+ <tt><font size=+1>&#8722;m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print all <i>files</i> simultaneously, each in one column.<br>
+ <tt><font size=+1>&#8722;n</font></tt><i>m</i>&nbsp;&nbsp;&nbsp;Number the lines of each <i>file</i>. The numeric argument <i>m</i>, default
+ 5, sets the width of the line-number field.<br>
+ <tt><font size=+1>&#8722;o</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;Offset the left margin <i>n</i> character positions.<br>
+ <tt><font size=+1>&#8722;p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Pad each file printed to an odd number of pages. For two-sided
+ printers, this will ensure each file will start a new page.<br>
+ <tt><font size=+1>&#8722;s</font></tt><i>c</i>&nbsp;&nbsp;&nbsp;Separate columns by the single character <i>c</i> instead of aligning
+ them with white space. A missing <i>c</i> is taken to be a tab.<br>
+ <tt><font size=+1>&#8722;t</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Do not print the 5-line header or the 5-line trailer normally
+ supplied for each page.<br>
+ <tt><font size=+1>&#8722;w</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;For multi-column output, take the width of the page to be <i>n</i>
+ characters instead of the default 72.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/pr.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/cat.html"><i>cat</i>(1)</a>, <a href="../man1/lp.html"><i>lp</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/proof.html b/man/man1/proof.html
new file mode 100644
index 00000000..a442fd71
--- /dev/null
+++ b/man/man1/proof.html
@@ -0,0 +1,119 @@
+<head>
+<title>proof(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PROOF(1)</b><td align=right><b>PROOF(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ proof &ndash; troff output interpreter<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>proof</font></tt> [ <tt><font size=+1>&#8722;m</font></tt><i>mag</i> ] [ <tt><font size=+1>&#8722;/</font></tt><i>nview</i> ] [ <tt><font size=+1>&#8722;F</font></tt> <i>dir</i> ] [ <tt><font size=+1>&#8722;d</font></tt> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Proof</i> reads <a href="../man1/troff.html"><i>troff</i>(1)</a> intermediate language from <i>file</i> or standard
+ input and simulates the resulting pages on the screen.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ After a page of text is displayed, <i>proof</i> pauses for a command
+ from the keyboard. The typed commands are:<br>
+ newlineGo on to next page of text.<br>
+ <tt><font size=+1>&#8722;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Go back to the previous page.<br>
+ <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quit.<br>
+ <tt><font size=+1>p</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print page <i>n</i>. An out-of-bounds page number means the end nearer
+ to that number; a missing number means the current page; a signed
+ number means an offset to the current page.<br>
+ <i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Same as <tt><font size=+1>p</font></tt><i>n</i>.<br>
+ <tt><font size=+1>c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clear the screen, then wait for another command.<br>
+ <tt><font size=+1>m</font></tt><i>mag</i>&nbsp;&nbsp;&nbsp;Change the magnification at which the output is printed. Normally
+ it is printed with magnification .9; <i>mag</i>=.5 shrinks it to half
+ size; <i>mag</i>=2 doubles the size.<br>
+ <tt><font size=+1>x</font></tt><i>val</i>&nbsp;&nbsp;&nbsp;&nbsp;Move everything <i>val</i> screen pixels to the right (left, if <i>val</i>
+ is negative).<br>
+ <tt><font size=+1>y</font></tt><i>val</i>&nbsp;&nbsp;&nbsp;&nbsp;Move everything <i>val</i> screen pixels down (up, if <i>val</i> is negative).<br>
+ <tt><font size=+1>/</font></tt><i>nview</i>&nbsp;&nbsp;&nbsp;Split the window into <i>nview</i> pieces. The current page goes
+ into the rightmost, bottommost piece, and previous pages are shown
+ in the other pieces.<br>
+ <tt><font size=+1>&#8722;F</font></tt> <i>dir</i>Use <i>dir</i> for fonts instead of <tt><font size=+1>/lib/font/bit</font></tt>.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Toggle the debug flag.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ These commands are also available, under slightly different form,
+ from a menu on button 3. The <tt><font size=+1>pan</font></tt> menu item allows arbitrary positioning
+ of the page: after selecting <tt><font size=+1>pan</font></tt>, press the mouse button again
+ and hold it down while moving the page to the desired location.
+ The page will be redisplayed in its entirety when
+ the button is released. Mouse button 1 also pans, without the
+ need for selecting from a menu.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>m</font></tt>, <tt><font size=+1>x</font></tt>, <tt><font size=+1>y</font></tt>, <tt><font size=+1>F</font></tt>, <tt><font size=+1>/</font></tt>, and <tt><font size=+1>d</font></tt> commands are also available as command
+ line options.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/font/*<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ fonts<br>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/font/MAP<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ how to convert troff output fonts and character names into screen
+ fonts and character numbers<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/proof<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/lp.html"><i>lp</i>(1)</a>, <a href="../man1/gs.html"><i>gs</i>(1)</a>, <a href="../man1/page.html"><i>page</i>(1)</a><br>
+ J. F. Ossanna and B. W. Kernighan, &#8220;Troff User&#8217;s Manual&#8221;<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/ps.html b/man/man1/ps.html
new file mode 100644
index 00000000..bf19c676
--- /dev/null
+++ b/man/man1/ps.html
@@ -0,0 +1,95 @@
+<head>
+<title>ps(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PS(1)</b><td align=right><b>PS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ ps, psu &ndash; process status<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>ps</font></tt> [ <tt><font size=+1>&#8722;pa</font></tt> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>psu</font></tt> [ <tt><font size=+1>&#8722;pa</font></tt> ] [ <i>user</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Ps</i> prints information about processes. <i>Psu</i> prints only information
+ about processes started by <i>user</i> (default <tt><font size=+1>$USER</font></tt>).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ For each process reported, the user, process id, user time, system
+ time, size, state, and command name are printed. State is one
+ of the following:<br>
+ <tt><font size=+1>Moribund</font></tt>&nbsp;&nbsp;&nbsp;Process has exited and is about to have its resources
+ reclaimed.<br>
+ <tt><font size=+1>Ready</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;on the queue of processes ready to be run.<br>
+ <tt><font size=+1>Scheding</font></tt>&nbsp;&nbsp;&nbsp;about to be run.<br>
+ <tt><font size=+1>Running</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;running.<br>
+ <tt><font size=+1>Queueing</font></tt>&nbsp;&nbsp;&nbsp;waiting on a queue for a resource.<br>
+ <tt><font size=+1>Wakeme</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;waiting for I/O or some other kernel event to wake it up.<br>
+ <tt><font size=+1>Broken</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dead of unnatural causes; lingering so that it can be examined.<br>
+ <tt><font size=+1>Stopped</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;stopped.<br>
+ <tt><font size=+1>Stopwait</font></tt>&nbsp;&nbsp;&nbsp;waiting for another process to stop.<br>
+ <tt><font size=+1>Fault</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;servicing a page fault.<br>
+ <tt><font size=+1>Idle</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;waiting for something to do (kernel processes only).<br>
+ <tt><font size=+1>New</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;being created.<br>
+ <tt><font size=+1>Pageout</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;paging out some other process.<br>
+ <i>Syscall</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;performing the named system call.<br>
+ <tt><font size=+1>no</font></tt> <i>resource</i>&nbsp;&nbsp;&nbsp;waiting for more of a critical <i>resource</i>.<br>
+ <i>wchan</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;waiting on the named wait channel (on a Unix kernel).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ With the <tt><font size=+1>&#8722;p</font></tt> flag, <i>ps</i> also prints, after the system time, the baseline
+ and current priorities of each process.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;a</font></tt> flag causes <i>ps</i> to print the arguments for the process.
+ Newlines in arguments will be translated to spaces for display.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/ps<br>
+ /usr/local/plan9/bin/psu<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/acid.html"><i>acid</i>(1)</a>, <a href="../man1/db.html"><i>db</i>(1)</a>, <a href="../man1/kill.html"><i>kill</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/psfonts.html b/man/man1/psfonts.html
new file mode 100644
index 00000000..b0510a81
--- /dev/null
+++ b/man/man1/psfonts.html
@@ -0,0 +1,148 @@
+<head>
+<title>psfonts(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PSFONTS(1)</b><td align=right><b>PSFONTS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ psfonts, psdownload &ndash; add necessary fonts to PostScript document
+ for printing<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>psfonts</font></tt> [ <i>files ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>psdownload</font></tt> [ <tt><font size=+1>options</font></tt> ] [ <i>files ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Plan 9&#8217;s <a href="../man1/troff.html"><i>troff</i>(1)</a> and <a href="../man1/tr2post.html"><i>tr2post</i>(1)</a> use non-standard PostScript fonts
+ (found in <tt><font size=+1>/usr/local/plan9/postscript/font</font></tt>). Before sending PostScript
+ output from <i>tr2post</i> to a standard printer, code implementing the
+ non-standard fonts must be added to the PostScript.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Psfonts</i> copies <i>files</i> (or standard input) to standard output, adding
+ necessary PostScript fonts.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Psdownload</i> is the more general program used to implement <i>psfonts</i>.
+ The options are:<br>
+ <tt><font size=+1>&#8722;c</font></tt> <i>comment<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Expect the fonts used in the document to be listed in a comment
+ beginning with this string (default <tt><font size=+1>%%DocumentFonts:</font></tt>).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;f</font></tt> <i>atend<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Expect extra fonts comments at the end of the document, so read
+ the entire input before starting output (by default this only
+ happens if a <tt><font size=+1>%%DocumentFonts: (atend)</font></tt> comment is encountered).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;m</font></tt> <i>mapfile<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Use <i>mapfile</i> to translate from PostScript font names to files.
+ Each line in the map has two white space-separated fields: a font
+ name and the corresponding file. If <i>mapfile</i> is not a rooted path,
+ it is evaluated relative to the <i>fontdir</i> (see <tt><font size=+1>&#8722;H</font></tt> below).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;p</font></tt> <i>printer<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the name of the printer. This option is deprecated. Its only
+ effect is to override the <tt><font size=+1>&#8722;r</font></tt> option, causing <i>fontdir</i><tt><font size=+1>/printers/</font></tt><i>printer</i>
+ to be used as the resident fonts list.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;r</font></tt> <i>residentfonts<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Read a list of fonts assumed to be on the printer (not necessary
+ to re-download) from the file <i>residentfonts</i>. If <i>residentfonts</i>
+ is not a rooted path, it is evaluated relative to the <i>fontdir</i>
+ (see <tt><font size=+1>&#8722;H</font></tt> below).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;H</font></tt> <i>fontdir<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the directory that is assumed to contain the PostScript fonts
+ and information about printers (see <tt><font size=+1>&#8722;m</font></tt>, <tt><font size=+1>&#8722;p</font></tt>, and <tt><font size=+1>&#8722;r</font></tt> above; default
+ <tt><font size=+1>/usr/local/plan9/postscript/font</font></tt>).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;T</font></tt> <i>tmpdir<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Use <i>tmpdir</i> for storing temporary files (default <tt><font size=+1>/var/tmp</font></tt>).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;D</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Produce copious amounts of debugging information on standard
+ error.<br>
+ <tt><font size=+1>&#8722;I</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Continue running even after fatal errors occur.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ See <a href="../man1/tr2post.html"><i>tr2post</i>(1)</a> for an example.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/psfonts<br>
+ /usr/local/plan9/src/cmd/postscript/download<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/troff.html"><i>troff</i>(1)</a>, <a href="../man1/tr2post.html"><i>tr2post</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/pwd.html b/man/man1/pwd.html
new file mode 100644
index 00000000..ab8b8c3d
--- /dev/null
+++ b/man/man1/pwd.html
@@ -0,0 +1,73 @@
+<head>
+<title>pwd(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PWD(1)</b><td align=right><b>PWD(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ pwd, pbd &ndash; working directory<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>pwd<br>
+ pbd<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Pwd</i> prints the path name of the working (current) directory.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Pbd</i> prints the base name of the working (current) directory. It
+ prints no final newline and is intended for applications such
+ as constructing shell prompts.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/pbd.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>cd</i> in <a href="../man1/rc.html"><i>rc</i>(1)</a>, <a href="../man3/getwd.html"><i>getwd</i>(3)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Pwd</i> is not provided. Unix already provides one.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/rc.html b/man/man1/rc.html
new file mode 100644
index 00000000..a599adfd
--- /dev/null
+++ b/man/man1/rc.html
@@ -0,0 +1,655 @@
+<head>
+<title>rc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>RC(1)</b><td align=right><b>RC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ rc, cd, eval, exec, exit, flag, rfork, shift, wait, whatis, .,
+ ~ &ndash; command language<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>rc</font></tt> [ <tt><font size=+1>&#8722;srdiIlxepvV</font></tt> ] [ <tt><font size=+1>&#8722;c command</font></tt> ] [ <i>file</i> [ <i>arg ...</i> ]]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Rc</i> is the Plan 9 shell. It executes command lines read from a
+ terminal or a file or, with the <tt><font size=+1>&#8722;c</font></tt> flag, from <i>rc&#8217;s</i> argument list.<br>
+ <p><font size=+1><b>Command Lines </b></font><br>
+ A command line is a sequence of commands, separated by ampersands
+ or semicolons (<tt><font size=+1>&amp;</font></tt> or <tt><font size=+1>;</font></tt>), terminated by a newline. The commands are
+ executed in sequence from left to right. <i>Rc</i> does not wait for
+ a command followed by <tt><font size=+1>&amp;</font></tt> to finish executing before starting the
+ following command. Whenever a command
+ followed by <tt><font size=+1>&amp;</font></tt> is executed, its process id is assigned to the <i>rc</i>
+ variable <tt><font size=+1>$apid</font></tt>. Whenever a command <i>not</i> followed by <tt><font size=+1>&amp;</font></tt> exits or is
+ terminated, the <i>rc</i> variable <tt><font size=+1>$status</font></tt> gets the process&#8217;s wait message
+ (see <a href="../man3/wait.html"><i>wait</i>(3)</a>); it will be the null string if the command was successful.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A long command line may be continued on subsequent lines by typing
+ a backslash (<tt><font size=+1>\</font></tt>) followed by a newline. This sequence is treated
+ as though it were a blank. Backslash is not otherwise a special
+ character.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A number-sign (<tt><font size=+1>#</font></tt>) and any following characters up to (but not
+ including) the next newline are ignored, except in quotation marks.<br>
+ <p><font size=+1><b>Simple Commands </b></font><br>
+ A simple command is a sequence of arguments interspersed with
+ I/O redirections. If the first argument is the name of an <i>rc</i> function
+ or of one of <i>rc&#8217;s</i> built-in commands, it is executed by <i>rc</i>. Otherwise
+ if the name starts with a slash (<tt><font size=+1>/</font></tt>), it must be the path name
+ of the program to be executed. Names containing no
+ initial slash are searched for in a list of directory names stored
+ in <tt><font size=+1>$path</font></tt>. The first executable file of the given name found in
+ a directory in <tt><font size=+1>$path</font></tt> is the program to be executed. To be executable,
+ the user must have execute permission (see <a href="../man3/stat.html"><i>stat</i>(3)</a>) and the file
+ must be either an executable binary for the current
+ machine&#8217;s CPU type, or a shell script. Shell scripts begin with
+ a line containing the full path name of a shell (usually <tt><font size=+1>/bin/rc</font></tt>),
+ prefixed by <tt><font size=+1>#!</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The first word of a simple command cannot be a keyword unless
+ it is quoted or otherwise disguised. The keywords are<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>for in while if not switch fn ~ ! @<br>
+ </font></tt>
+ </table>
+ <p><font size=+1><b>Arguments and Variables </b></font><br>
+ A number of constructions may be used where <i>rc&#8217;s</i> syntax requires
+ an argument to appear. In many cases a construction&#8217;s value will
+ be a list of arguments rather than a single string.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The simplest kind of argument is the unquoted word: a sequence
+ of one or more characters none of which is a blank, tab, newline,
+ or any of the following:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1># ; &amp; | ^ $ = ` ' { } ( ) &lt; &gt;<br>
+ </font></tt>
+ </table>
+ An unquoted word that contains any of the characters <tt><font size=+1>* ? [</font></tt> is
+ a pattern for matching against file names. The character <tt><font size=+1>*</font></tt> matches
+ any sequence of characters, <tt><font size=+1>?</font></tt> matches any single character, and
+ <tt><font size=+1>[</font></tt><i>class</i><tt><font size=+1>]</font></tt> matches any character in the <i>class</i>. If the first character
+ of <i>class</i> is <tt><font size=+1>~</font></tt>, the class is complemented. The <i>class</i> may
+ also contain pairs of characters separated by <tt><font size=+1>&#8722;</font></tt>, standing for
+ all characters lexically between the two. The character <tt><font size=+1>/</font></tt> must
+ appear explicitly in a pattern, as must the first character of
+ the path name components <tt><font size=+1>.</font></tt> and <tt><font size=+1>..</font></tt>. A pattern is replaced by a
+ list of arguments, one for each path name matched, except that
+ a
+ pattern matching no names is not replaced by the empty list, but
+ rather stands for itself. Pattern matching is done after all other
+ operations. Thus,<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>x=/tmp echo $x^/*.c<br>
+ </font></tt>
+ </table>
+ matches <tt><font size=+1>/tmp/*.c</font></tt>, rather than matching <tt><font size=+1>/*.c</font></tt> and then prefixing
+ <tt><font size=+1>/tmp</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A quoted word is a sequence of characters surrounded by single
+ quotes (<tt><font size=+1>'</font></tt>). A single quote is represented in a quoted word by
+ a pair of quotes (<tt><font size=+1>''</font></tt>).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each of the following is an argument.<br>
+ <tt><font size=+1>(</font></tt><i>arguments</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value of a sequence of arguments enclosed in parentheses is
+ a list comprising the members of each element of the sequence.
+ Argument lists have no recursive structure, although their syntax
+ may suggest it. The following are entirely equivalent:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>echo hi there everybody<br>
+ ((echo) (hi there) everybody)<br>
+ </font></tt>
+ </table>
+
+ </table>
+ <tt><font size=+1>$</font></tt><i>argument<br>
+ </i><tt><font size=+1>$</font></tt><i>argument</i><tt><font size=+1>(</font></tt><i>subscript</i><tt><font size=+1>)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>argument</i> after the <tt><font size=+1>$</font></tt> is the name of a variable whose value
+ is substituted. Multiple levels of indirection are possible, but
+ of questionable utility. Variable values are lists of strings.
+ If <i>argument</i> is a number <i>n</i>, the value is the <i>n</i>th element of <tt><font size=+1>$*</font></tt>,
+ unless <tt><font size=+1>$*</font></tt> doesn&#8217;t have <i>n</i> elements, in which case the value is
+ empty. If <i>argument</i> is followed by a parenthesized list of subscripts,
+ the value substituted is a list composed of the requested elements
+ (origin 1). The parenthesis must follow the variable name with
+ no spaces. Assignments to variables are described below.<br>
+
+ </table>
+ <tt><font size=+1>$#</font></tt><i>argument<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value is the number of elements in the named variable. A variable
+ never assigned a value has zero elements.<br>
+
+ </table>
+ $&quot;<i>argument<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value is a single string containing the components of the
+ named variable separated by spaces. A variable with zero elements
+ yields the empty string.<br>
+
+ </table>
+ <tt><font size=+1>`{</font></tt><i>command</i><tt><font size=+1>}<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>rc</i> executes the <i>command</i> and reads its standard output, splitting
+ it into a list of arguments, using characters in <tt><font size=+1>$ifs</font></tt> as separators.
+ If <tt><font size=+1>$ifs</font></tt> is not otherwise set, its value is <tt><font size=+1>' \t\n'</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>&lt;{</font></tt><i>command</i><tt><font size=+1>}<br>
+ &gt;{</font></tt><i>command</i><tt><font size=+1>}<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>command</i> is executed asynchronously with its standard output
+ or standard input connected to a pipe. The value of the argument
+ is the name of a file referring to the other end of the pipe.
+ This allows the construction of non-linear pipelines. For example,
+ the following runs two commands <tt><font size=+1>old</font></tt> and <tt><font size=+1>new
+ </font></tt>and uses <tt><font size=+1>cmp</font></tt> to compare their outputs<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cmp &lt;{old} &lt;{new}<br>
+ </font></tt>
+ </table>
+
+ </table>
+ <i>argument</i><tt><font size=+1>^</font></tt><i>argument<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <tt><font size=+1>^</font></tt> operator concatenates its two operands. If the two operands
+ have the same number of components, they are concatenated pairwise.
+ If not, then one operand must have one component, and the other
+ must be non-empty, and concatenation is distributive.<br>
+
+ </table>
+ <p><font size=+1><b>Free Carets </b></font><br>
+ In most circumstances, <i>rc</i> will insert the <tt><font size=+1>^</font></tt> operator automatically
+ between words that are not separated by white space. Whenever
+ one of <tt><font size=+1>$ ' `</font></tt> follows a quoted or unquoted word or an unquoted
+ word follows a quoted word with no intervening blanks or tabs,
+ a <tt><font size=+1>^</font></tt> is inserted between the two. If an unquoted word
+ immediately follows a <tt><font size=+1>$</font></tt> and contains a character other than an
+ alphanumeric, underscore, or <tt><font size=+1>*</font></tt>, a <tt><font size=+1>^</font></tt> is inserted before the first
+ such character. Thus<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cc &#8722;$flags $stem.c
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ is equivalent to<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>cc &#8722;^$flags $stem^.c<br>
+ </font></tt>
+ </table>
+ <p><font size=+1><b>I/O Redirections </b></font><br>
+ The sequence <tt><font size=+1>&gt;</font></tt><i>file</i> redirects the standard output file (file descriptor
+ 1, normally the terminal) to the named <i>file</i>; <tt><font size=+1>&gt;&gt;</font></tt><i>file</i> appends standard
+ output to the file. The standard input file (file descriptor 0,
+ also normally the terminal) may be redirected from a file by the
+ sequence <tt><font size=+1>&lt;</font></tt><i>file</i>, or from an inline &#8216;here document&#8217; by the
+ sequence <tt><font size=+1>&lt;&lt;</font></tt><i>eof-marker</i>. The contents of a here document are lines
+ of text taken from the command input stream up to a line containing
+ nothing but the <i>eof-marker</i>, which may be either a quoted or unquoted
+ word. If <i>eof-marker</i> is unquoted, variable names of the form <tt><font size=+1>$</font></tt><i>word</i>
+ have their values substituted from <i>rc&#8217;s
+ </i>environment. If <tt><font size=+1>$</font></tt><i>word</i> is followed by a caret (<tt><font size=+1>^</font></tt>), the caret is
+ deleted. If <i>eof-marker</i> is quoted, no substitution occurs.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Redirections may be applied to a file-descriptor other than standard
+ input or output by qualifying the redirection operator with a
+ number in square brackets. For example, the diagnostic output
+ (file descriptor 2) may be redirected by writing <tt><font size=+1>cc junk.c &gt;[2]junk</font></tt>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A file descriptor may be redirected to an already open descriptor
+ by writing <tt><font size=+1>&gt;[</font></tt><i>fd0</i><tt><font size=+1>=</font></tt><i>fd1</i><tt><font size=+1>]</font></tt> or <tt><font size=+1>&lt;[</font></tt><i>fd0</i><tt><font size=+1>=</font></tt><i>fd1</i><tt><font size=+1>]</font></tt>. <i>Fd1</i> is a previously opened
+ file descriptor and <i>fd0</i> becomes a new copy (in the sense of <a href="../man3/dup.html"><i>dup</i>(3)</a>)
+ of it. A file descriptor may be closed by writing <tt><font size=+1>&gt;[</font></tt><i>fd0</i><tt><font size=+1>=]</font></tt> or <tt><font size=+1>&lt;[</font></tt><i>fd0</i><tt><font size=+1>=]</font></tt>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Redirections are executed from left to right. Therefore, <tt><font size=+1>cc junk.c
+ &gt;/dev/null &gt;[2=1]</font></tt> and <tt><font size=+1>cc junk.c &gt;[2=1] &gt;/dev/null</font></tt> have different effects:
+ the first puts standard output in <tt><font size=+1>/dev/null</font></tt> and then puts diagnostic
+ output in the same place, where the second directs diagnostic
+ output to the
+ terminal and sends standard output to <tt><font size=+1>/dev/null</font></tt>.<br>
+ <p><font size=+1><b>Compound Commands </b></font><br>
+ A pair of commands separated by a pipe operator (<tt><font size=+1>|</font></tt>) is a command.
+ The standard output of the left command is sent through a pipe
+ to the standard input of the right command. The pipe operator
+ may be decorated to use different file descriptors. <tt><font size=+1>|[</font></tt><i>fd</i><tt><font size=+1>]</font></tt> connects
+ the output end of the pipe to file descriptor <i>fd</i> rather
+ than 1. <tt><font size=+1>|[</font></tt><i>fd0</i><tt><font size=+1>=</font></tt><i>fd1</i><tt><font size=+1>]</font></tt> connects output to <i>fd1</i> of the left command
+ and input to <i>fd0</i> of the right command.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A pair of commands separated by <tt><font size=+1>&amp;&amp;</font></tt> or <tt><font size=+1>||</font></tt> is a command. In either
+ case, the left command is executed and its exit status examined.
+ If the operator is <tt><font size=+1>&amp;&amp;</font></tt> the right command is executed if the left
+ command&#8217;s status is null. <tt><font size=+1>||</font></tt> causes the right command to be executed
+ if the left command&#8217;s status is non-null.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The exit status of a command may be inverted (non-null is changed
+ to null, null is changed to non-null) by preceding it with a <tt><font size=+1>!</font></tt>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>|</font></tt> operator has highest precedence, and is left-associative
+ (i.e. binds tighter to the left than the right). <tt><font size=+1>!</font></tt> has intermediate
+ precedence, and <tt><font size=+1>&amp;&amp;</font></tt> and <tt><font size=+1>||</font></tt> have the lowest precedence.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The unary <tt><font size=+1>@</font></tt> operator, with precedence equal to <tt><font size=+1>!</font></tt>, causes its operand
+ to be executed in a subshell.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each of the following is a command.<br>
+ <tt><font size=+1>if (</font></tt> <i>list</i> <tt><font size=+1>)</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A <i>list</i> is a sequence of commands, separated by <tt><font size=+1>&amp;</font></tt>, <tt><font size=+1>;</font></tt>, or newline.
+ It is executed and if its exit status is null, the <i>command</i> is
+ executed.<br>
+
+ </table>
+ <tt><font size=+1>if not</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The immediately preceding command must have been <tt><font size=+1>if(</font></tt><i>list</i><tt><font size=+1>)</font></tt> <i>command</i>.
+ If its condition was non-zero, the <i>command</i> is executed.<br>
+
+ </table>
+ <tt><font size=+1>for(</font></tt><i>name</i> <tt><font size=+1>in</font></tt> <i>arguments</i><tt><font size=+1>)</font></tt> <i>command<br>
+ </i><tt><font size=+1>for(</font></tt><i>name</i><tt><font size=+1>)</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>command</i> is executed once for each <i>argument</i> with that argument
+ assigned to <i>name</i>. If the argument list is omitted, <tt><font size=+1>$*</font></tt> is used.<br>
+
+ </table>
+ <tt><font size=+1>while(</font></tt><i>list</i><tt><font size=+1>)</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>list</i> is executed repeatedly until its exit status is non-null.
+ Each time it returns null status, the <i>command</i> is executed. An
+ empty <i>list</i> is taken to give null status.<br>
+
+ </table>
+ <tt><font size=+1>switch(</font></tt><i>argument</i><tt><font size=+1>){</font></tt><i>list</i><tt><font size=+1>}<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>list</i> is searched for simple commands beginning with the word
+ <tt><font size=+1>case</font></tt>. (The search is only at the &#8216;top level&#8217; of the <i>list</i>. That
+ is, <tt><font size=+1>cases</font></tt> in nested constructs are not found.) <i>Argument</i> is matched
+ against each word following <tt><font size=+1>case</font></tt> using the pattern-matching algorithm
+ described above, except that <tt><font size=+1>/</font></tt> and the
+ first characters of <tt><font size=+1>.</font></tt> and <tt><font size=+1>..</font></tt> need not be matched explicitly. When
+ a match is found, commands in the list are executed up to the
+ next following <tt><font size=+1>case</font></tt> command (at the top level) or the closing
+ brace.<br>
+
+ </table>
+ <tt><font size=+1>{</font></tt><i>list</i><tt><font size=+1>}<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Braces serve to alter the grouping of commands implied by operator
+ priorities. The <i>body</i> is a sequence of commands separated by <tt><font size=+1>&amp;</font></tt>,
+ <tt><font size=+1>;</font></tt>, or newline.<br>
+
+ </table>
+ <tt><font size=+1>fn</font></tt> <i>name</i><tt><font size=+1>{</font></tt><i>list</i><tt><font size=+1>}<br>
+ fn</font></tt> <i>name<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The first form defines a function with the given <i>name</i>. Subsequently,
+ whenever a command whose first argument is <i>name</i> is encountered,
+ the current value of the remainder of the command&#8217;s argument list
+ will be assigned to <tt><font size=+1>$*</font></tt>, after saving its current value, and <i>rc</i>
+ will execute the <i>list</i>. The second form removes
+ <i>name</i>&#8217;s function definition.<br>
+
+ </table>
+ <tt><font size=+1>fn</font></tt> <i>note</i><tt><font size=+1>{</font></tt><i>list</i><tt><font size=+1>}<br>
+ fn</font></tt> <i>note<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A function with a special name will be called when <i>rc</i> receives
+ a corresponding note; see <a href="../man3/notify.html"><i>notify</i>(3)</a>. The valid note names (and
+ corresponding notes) are <tt><font size=+1>sighup</font></tt> (<tt><font size=+1>hangup</font></tt>), <tt><font size=+1>sigint</font></tt> (<tt><font size=+1>interrupt</font></tt>),
+ <tt><font size=+1>sigalrm</font></tt> (<tt><font size=+1>alarm</font></tt>), and <tt><font size=+1>sigfpe</font></tt> (floating point trap). By default
+ <i>rc</i> exits on receiving any signal, except when
+ run interactively, in which case interrupts and quits normally
+ cause <i>rc</i> to stop whatever it&#8217;s doing and start reading a new command.
+ The second form causes <i>rc</i> to handle a signal in the default manner.
+ <i>Rc</i> recognizes an artificial note, <tt><font size=+1>sigexit</font></tt>, which occurs when <i>rc</i>
+ is about to finish executing.
+
+ </table>
+ <i>name</i><tt><font size=+1>=</font></tt><i>argument command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Any command may be preceded by a sequence of assignments interspersed
+ with redirections. The assignments remain in effect until the
+ end of the command, unless the command is empty (i.e. the assignments
+ stand alone), in which case they are effective until rescinded
+ by later assignments.
+
+ </table>
+ <p><font size=+1><b>Built-in Commands </b></font><br>
+ These commands are executed internally by <i>rc</i>, usually because
+ their execution changes or depends on <i>rc</i>&#8217;s internal state.<br>
+ <tt><font size=+1>.</font></tt> <i>file ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Execute commands from <i>file</i>. <tt><font size=+1>$*</font></tt> is set for the duration to the
+ remainder of the argument list following <i>file</i>. <i>File</i> is searched
+ for using <tt><font size=+1>$path</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>builtin</font></tt> <i>command ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Execute <i>command</i> as usual except that any function named <i>command</i>
+ is ignored in favor of the built-in meaning.<br>
+
+ </table>
+ <tt><font size=+1>cd [</font></tt><i>dir</i><tt><font size=+1>]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Change the current directory to <i>dir</i>. The default argument is <tt><font size=+1>$home</font></tt>.
+ <i>dir</i> is searched for in each of the directories mentioned in <tt><font size=+1>$cdpath</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>eval [</font></tt><i>arg ...</i><tt><font size=+1>]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The arguments are concatenated separated by spaces into a single
+ string, read as input to <i>rc</i>, and executed.<br>
+
+ </table>
+ <tt><font size=+1>exec [</font></tt><i>command ...</i><tt><font size=+1>]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ This instance of <i>rc</i> replaces itself with the given (non-built-in)
+ <i>command</i>.<br>
+
+ </table>
+ <tt><font size=+1>flag</font></tt> <i>f</i> <tt><font size=+1>[+&#8722;]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Either set (<tt><font size=+1>+</font></tt>), clear (<tt><font size=+1>&#8722;</font></tt>), or test (neither <tt><font size=+1>+</font></tt> nor <tt><font size=+1>&#8722;</font></tt>) the flag
+ <i>f</i>, where <i>f</i> is a single character, one of the command line flags
+ (see Invocation, below).<br>
+
+ </table>
+ <tt><font size=+1>exit [</font></tt><i>status</i><tt><font size=+1>]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Exit with the given exit status. If none is given, the current
+ value of <tt><font size=+1>$status</font></tt> is used.<br>
+
+ </table>
+ <tt><font size=+1>rfork</font></tt> [<tt><font size=+1>nNeEsfFm</font></tt>]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Become a new process group using <tt><font size=+1>rfork(</font></tt><i>flags</i><tt><font size=+1>)</font></tt> where <i>flags</i> is composed
+ of the bitwise OR of the <tt><font size=+1>rfork</font></tt> flags specified by the option letters
+ (see <a href="../man2/fork.html"><i>fork</i>(2)</a>). If no <i>flags</i> are given, they default to <tt><font size=+1>ens</font></tt>. The
+ <i>flags</i> and their meanings are: <tt><font size=+1>n</font></tt> is <tt><font size=+1>RFNAMEG</font></tt>; <tt><font size=+1>N</font></tt> is <tt><font size=+1>RFCNAMEG</font></tt>; <tt><font size=+1>e</font></tt> is
+ <tt><font size=+1>RFENVG</font></tt>; <tt><font size=+1>E</font></tt> is <tt><font size=+1>RFCENVG</font></tt>; <tt><font size=+1>s</font></tt> is
+ <tt><font size=+1>RFNOTEG</font></tt>; <tt><font size=+1>f</font></tt> is <tt><font size=+1>RFFDG</font></tt>; <tt><font size=+1>F</font></tt> is <tt><font size=+1>RFCFDG</font></tt>; and <tt><font size=+1>m</font></tt> is <tt><font size=+1>RFNOMNT</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>shift [</font></tt><i>n</i><tt><font size=+1>]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete the first <i>n</i> (default 1) elements of <tt><font size=+1>$*</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>wait [</font></tt><i>pid</i><tt><font size=+1>]<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Wait for the process with the given <i>pid</i> to exit. If no <i>pid</i> is
+ given, all outstanding processes are waited for.<br>
+
+ </table>
+ <tt><font size=+1>whatis</font></tt> <i>name ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the value of each <i>name</i> in a form suitable for input to <i>rc</i>.
+ The output is an assignment to any variable, the definition of
+ any function, a call to <tt><font size=+1>builtin</font></tt> for any built-in command, or the
+ completed pathname of any executable file.<br>
+
+ </table>
+ <tt><font size=+1>~</font></tt> <i>subject pattern ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>subject</i> is matched against each <i>pattern</i> in sequence. If it
+ matches any pattern, <tt><font size=+1>$status</font></tt> is set to zero. Otherwise, <tt><font size=+1>$status</font></tt>
+ is set to one. Patterns are the same as for file name matching,
+ except that <tt><font size=+1>/</font></tt> and the first character of <tt><font size=+1>.</font></tt> and <tt><font size=+1>..</font></tt> need not be
+ matched explicitly. The <i>patterns</i> are not subjected to
+ file name matching before the <tt><font size=+1>~</font></tt> command is executed, so they need
+ not be enclosed in quotation marks.<br>
+
+ </table>
+ <p><font size=+1><b>Environment </b></font><br>
+ The <i>environment</i> is a list of strings made available to executing
+ binaries by the kernel. <i>Rc</i> creates an environment entry for each
+ variable whose value is non-empty, and for each function. The
+ string for a variable entry has the variable&#8217;s name followed by
+ <tt><font size=+1>=</font></tt> and its value. If the value has more than one component,
+ these are separated by SOH (001) characters. The string for a
+ function is just the <i>rc</i> input that defines the function. The name
+ of a function in the environment is the function name preceded
+ by <tt><font size=+1>fn#</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When <i>rc</i> starts executing it reads variable and function definitions
+ from its environment.<br>
+ <p><font size=+1><b>Special Variables </b></font><br>
+ The following variables are set or used by <i>rc</i>.<br>
+ <tt><font size=+1>$*</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set to <i>rc</i>&#8217;s argument list during initialization. Whenever a
+ <tt><font size=+1>.</font></tt> command or a function is executed, the current value is saved
+ and <tt><font size=+1>$*</font></tt> receives the new argument list. The saved value is restored
+ on completion of the <tt><font size=+1>.</font></tt> or function.<br>
+ <tt><font size=+1>$apid</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whenever a process is started asynchronously with <tt><font size=+1>&amp;</font></tt>, <tt><font size=+1>$apid</font></tt>
+ is set to its process id.<br>
+ <tt><font size=+1>$home</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default directory for <tt><font size=+1>cd</font></tt>.<br>
+ <tt><font size=+1>$ifs</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The input field separators used in backquote substitutions.
+ If <tt><font size=+1>$ifs</font></tt> is not set in <i>rc</i>&#8217;s environment, it is initialized to blank,
+ tab and newline.<br>
+ <tt><font size=+1>$path</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The search path used to find commands and input files for
+ the <tt><font size=+1>.</font></tt> command. If not set in the environment, it is initialized
+ by parsing the <tt><font size=+1>$PATH</font></tt> variable (as in <a href="../man1/sh.html"><i>sh</i>(1)</a>) or by <tt><font size=+1>path=(. /bin)</font></tt>.
+ The variables <tt><font size=+1>$path</font></tt> and <tt><font size=+1>$PATH</font></tt> are maintained together: changes
+ to one will be reflected in the other.
+ <tt><font size=+1>$pid</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set during initialization to <i>rc</i>&#8217;s process id.<br>
+ <tt><font size=+1>$prompt</font></tt>&nbsp;&nbsp;&nbsp;When <i>rc</i> is run interactively, the first component of <tt><font size=+1>$prompt</font></tt>
+ is printed before reading each command. The second component is
+ printed whenever a newline is typed and more lines are required
+ to complete the command. If not set in the environment, it is
+ initialized by <tt><font size=+1>prompt=('% ' ' ')</font></tt>.
+ <tt><font size=+1>$status</font></tt>&nbsp;&nbsp;&nbsp;Set to the wait message of the last-executed program. (unless
+ started with <tt><font size=+1>&amp;). !</font></tt> and <tt><font size=+1>~</font></tt> also change <tt><font size=+1>$status</font></tt>. Its value is used
+ to control execution in <tt><font size=+1>&amp;&amp;</font></tt>, <tt><font size=+1>||</font></tt>, <tt><font size=+1>if</font></tt> and <tt><font size=+1>while</font></tt> commands. When <i>rc</i> exits
+ at end-of-file of its input or on executing an <tt><font size=+1>exit</font></tt> command with
+ no argument, <tt><font size=+1>$status</font></tt> is its
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ exit status.<br>
+
+ </table>
+
+ </table>
+ <p><font size=+1><b>Invocation </b></font><br>
+ If <i>rc</i> is started with no arguments it reads commands from standard
+ input. Otherwise its first non-flag argument is the name of a
+ file from which to read commands (but see <tt><font size=+1>&#8722;c</font></tt> below). Subsequent
+ arguments become the initial value of <tt><font size=+1>$*</font></tt>. <i>Rc</i> accepts the following
+ command-line flags.<br>
+ <tt><font size=+1>&#8722;c</font></tt> <i>string</i>&nbsp;&nbsp;&nbsp;Commands are read from <i>string</i>.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print out exit status after any command where the status is
+ non-null.<br>
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exit if <tt><font size=+1>$status</font></tt> is non-null after executing a simple command.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If <tt><font size=+1>&#8722;i</font></tt> is present, or <i>rc</i> is given no arguments and its standard
+ input is a terminal, it runs interactively. Commands are prompted
+ for using <tt><font size=+1>$prompt</font></tt>.<br>
+ <tt><font size=+1>&#8722;I</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Makes sure <i>rc</i> is not run interactively.<br>
+ <tt><font size=+1>&#8722;l</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If <tt><font size=+1>&#8722;l</font></tt> is given or the first character of argument zero is <tt><font size=+1>&#8722;</font></tt>,
+ <i>rc</i> reads commands from <tt><font size=+1>$home/lib/profile</font></tt>, if it exists, before
+ reading its normal input.<br>
+ <tt><font size=+1>&#8722;p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A no-op.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A no-op.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Echo input on file descriptor 2 as it is read.<br>
+ <tt><font size=+1>&#8722;x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print each simple command before executing it.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print debugging information (internal form of commands as they
+ are executed).<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/rc<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Tom Duff, &#8220;Rc &ndash; The Plan 9 Shell&#8221;.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ There should be a way to match patterns against whole lists rather
+ than just single strings.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Using <tt><font size=+1>~</font></tt> to check the value of <tt><font size=+1>$status</font></tt> changes <tt><font size=+1>$status</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Functions that use here documents don&#8217;t work.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Free carets don&#8217;t get inserted next to keywords.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&lt;{</font></tt><i>command</i><tt><font size=+1>}</font></tt> syntax depends on the underlying operating system
+ providing a file descriptor device tree at <tt><font size=+1>/dev/fd</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ By default, FreeBSD 5 does not provide file descriptors greater
+ than 2 in <tt><font size=+1>/dev/fd</font></tt>. To fix this, add<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/fdescfs &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/dev/fd &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fdescfs &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rw &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ to <tt><font size=+1>/etc/fstab</font></tt>, and then <tt><font size=+1>mount /dev/fd</font></tt>. (Adding the line to <tt><font size=+1>fstab</font></tt>
+ ensures causes FreeBSD to mount the file system automatically
+ at boot time.)<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/rio.html b/man/man1/rio.html
new file mode 100644
index 00000000..ad3f9adc
--- /dev/null
+++ b/man/man1/rio.html
@@ -0,0 +1,172 @@
+<head>
+<title>rio(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>RIO(1)</b><td align=right><b>RIO(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ rio &ndash; rio-like Window Manager for X<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>rio</font></tt> [ <tt><font size=+1>&ndash;font</font></tt> <i>fontname</i> ] [ <tt><font size=+1>&ndash;grey</font></tt> ] [ <tt><font size=+1>&ndash;s</font></tt> ] [ <tt><font size=+1>&ndash;term</font></tt> <i>termprog</i> ] [ <tt><font size=+1>&ndash;version</font></tt>
+ ] [ <tt><font size=+1>&ndash;virtuals</font></tt> <i>num</i> ] [ <tt><font size=+1>exit</font></tt> | <tt><font size=+1>restart</font></tt> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Rio</i> is a window manager for X which attempts to emulate the window
+ management policies of Plan 9&#8217;s <i>rio</i> window manager. Rio is derived
+ from David Hogan&#8217;s 8&#189;.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&ndash;grey</font></tt> option makes the background stippled grey, the default
+ X11 background, instead of solid grey, the Plan 9 background.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&ndash;font</font></tt> option sets the font in <i>rio</i>&#8217;s menu to <i>fname</i>, overriding
+ the default. Unlike the other programs in the Plan 9 ports, rio
+ expects this font to be an X11 font rather than a Plan 9 font.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&ndash;term</font></tt> option specifies an alternative program to run when the
+ <i>New</i> menu item is selected. The default is to try <a href="../man1/9term.html"><i>9term</i>(1)</a> and
+ then to fall back to <a href="../man1/xterm.html"><i>xterm</i>(1)</a>. The <tt><font size=+1>&ndash;s</font></tt> option causes <i>rio</i> to add
+ <tt><font size=+1>&#8722;s</font></tt> to <i>9term</i>&#8217;s command-line, starting the window in scrolling mode.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&ndash;version</font></tt> option prints the current version on standard error,
+ then exits.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&ndash;virtuals</font></tt> option sets the number of virtual screens (the default
+ is 1, and the maximum is 12).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the argument <tt><font size=+1>exit</font></tt> or <tt><font size=+1>restart</font></tt> is given, it is sent to an already-running
+ <i>rio</i>, causing the extant <i>rio</i> to exit or restart.<br>
+ <p><font size=+1><b>Using rio </b></font><br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ One window is <i>current</i>, and is indicated with a dark border and
+ text; characters typed on the keyboard are available in the <tt><font size=+1>/dev/cons</font></tt>
+ file of the process in the current window. Characters written
+ on <tt><font size=+1>/dev/cons</font></tt> appear asynchronously in the associated window whether
+ or not the window is current.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Windows are created, deleted and rearranged using the mouse. Clicking
+ (pressing and releasing) mouse button 1 in a non-current window
+ makes that window current and brings it in front of any windows
+ that happen to be overlapping it. When the mouse cursor points
+ to the background area or is in a window that has
+ not claimed the mouse for its own use, pressing mouse button 3
+ activates a menu of window operations provided by <i>rio</i>. Releasing
+ button 3 then selects an operation. At this point, a gunsight
+ or cross cursor indicates that an operation is pending. The button
+ 3 menu operations are:<br>
+ <tt><font size=+1>New</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a window. Press button 3 where one corner of the new
+ rectangle should appear (cross cursor), and move the mouse, while
+ holding down button 3, to the diagonally opposite corner. Releasing
+ button 3 creates the window, and makes it current. Very small
+ windows may not be created. The new
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ window is created running <i>termprog</i>, by default <a href="../man1/9term.html"><i>9term</i>(1)</a> or, if
+ <i>9term</i> is not available, <a href="../man1/xterm.html"><i>xterm</i>(1)</a>.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>Resize</font></tt>&nbsp;&nbsp;&nbsp;Change the size and location of a window. First click button
+ 3 in the window to be changed (gunsight cursor). Then sweep out
+ a window as for the <tt><font size=+1>New</font></tt> operation. The window is made current.<br>
+ <tt><font size=+1>Move</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Move a window to another location. After pressing and holding
+ button 3 over the window to be moved (gunsight cursor), indicate
+ the new position by dragging the rectangle to the new location.
+ The window is made current. Windows may be moved partially off-screen.<br>
+ <tt><font size=+1>Delete</font></tt>&nbsp;&nbsp;&nbsp;Delete a window. Click in the window to be deleted (gunsight
+ cursor). Deleting a window causes a <tt><font size=+1>hangup</font></tt> note to be sent to
+ all processes in the window&#8217;s process group (see <a href="../man3/notify.html"><i>notify</i>(3)</a>).<br>
+ <tt><font size=+1>Hide</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hide a window. Click in the window to be hidden (gunsight
+ cursor); it will be moved off-screen. Each hidden window is given
+ a menu entry in the button 3 menu according to its current window
+ system label.<br>
+ <i>label</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Restore a hidden window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Windows may also be arranged by dragging their borders. Pressing
+ button 1 or 2 over a window&#8217;s border allows one to move the corresponding
+ edge or corner, while button 3 moves the whole window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When the mouse cursor points to the background area and <i>rio</i> has
+ been started with multiple virtual screens using the <tt><font size=+1>&ndash;virtuals</font></tt>
+ option, clicking button 2 brings up a menu to select a virtual
+ screen to view. Scrolling the mouse wheel while the cursor points
+ at the background will cycle through the virtual screens.
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ In Plan 9&#8217;s <i>rio</i>, clicking button 2 or button 3 to select a window
+ also sends that event to the window itself. This <i>rio</i> does not.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The command-line syntax is non-standard.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In Plan 9&#8217;s <i>rio</i>, newly started applications take over the current
+ window. This <i>rio</i> starts a new window for each program. (In X11,
+ it appears to be impossible to know which window starts a particular
+ program.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There is a currently a compiled-in limit of 128 hidden windows.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/9term.html"><i>9term</i>(1)</a>, <a href="../man1/xterm.html"><i>xterm</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/rm.html b/man/man1/rm.html
new file mode 100644
index 00000000..a19b3d3c
--- /dev/null
+++ b/man/man1/rm.html
@@ -0,0 +1,66 @@
+<head>
+<title>rm(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>RM(1)</b><td align=right><b>RM(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ rm &ndash; remove files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>rm</font></tt> [ <tt><font size=+1>&#8722;fr</font></tt> ] <i>file ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Rm</i> removes files or directories. A directory is removed only if
+ it is empty. Removal of a file requires write permission in its
+ directory, but neither read nor write permission on the file itself.
+ The options are<br>
+ <tt><font size=+1>&#8722;f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Don&#8217;t report files that can&#8217;t be removed.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Recursively delete the entire contents of a directory and the
+ directory itself.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/rm.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/remove.html"><i>remove</i>(3)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/sam.html b/man/man1/sam.html
new file mode 100644
index 00000000..c27afa63
--- /dev/null
+++ b/man/man1/sam.html
@@ -0,0 +1,577 @@
+<head>
+<title>sam(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SAM(1)</b><td align=right><b>SAM(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ sam, B, E, sam.save, samterm, samsave &ndash; screen editor with structural
+ regular expressions<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sam</font></tt> [ <i>option ...</i> ] [ <i>files</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>sam &#8722;r</font></tt> <i>machine
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>sam.save
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>B</font></tt> <i>file</i>[<tt><font size=+1>:</font></tt><i>line</i>] ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>E</font></tt> <i>file<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Sam</i> is a multi-file editor. It modifies a local copy of an external
+ file. The copy is here called a <i>file</i>. The files are listed in
+ a menu available through mouse button 3 or the <tt><font size=+1>n</font></tt> command. Each
+ file has an associated name, usually the name of the external
+ file from which it was read, and a &#8216;modified&#8217; bit that indicates
+ whether the editor&#8217;s file agrees with the external file. The external
+ file is not read into the editor&#8217;s file until it first becomes
+ the current file--that to which editing commands apply--whereupon
+ its menu entry is printed. The options are<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do not &#8216;download&#8217; the terminal part of <i>sam</i>. Editing will be
+ done with the command language only, as in <a href="../man1/ed.html"><i>ed</i>(1)</a>.<br>
+ <tt><font size=+1>&#8722;r</font></tt> <i>machine</i>&nbsp;&nbsp;&nbsp;&nbsp;Run the host part remotely on the specified machine,
+ the terminal part locally.<br>
+ <tt><font size=+1>&#8722;s</font></tt> <i>path</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Start the host part from the specified file on the remote
+ host. Only meaningful with the <tt><font size=+1>&#8722;r</font></tt> option.<br>
+ <tt><font size=+1>&#8722;t</font></tt> <i>path</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Start the terminal part from the specified file. Useful
+ for debugging.<br>
+ <p><font size=+1><b>Regular expressions </b></font><br>
+ Regular expressions are as in <a href="../man7/regexp.html"><i>regexp</i>(7)</a> with the addition of <tt><font size=+1>\n</font></tt>
+ to represent newlines. A regular expression may never contain
+ a literal newline character. The empty regular expression stands
+ for the last complete expression encountered. A regular expression
+ in <i>sam</i> matches the longest leftmost substring formally
+ matched by the expression. Searching in the reverse direction
+ is equivalent to searching backwards with the catenation operations
+ reversed in the expression.<br>
+ <p><font size=+1><b>Addresses </b></font><br>
+ An address identifies a substring in a file. In the following,
+ &#8216;character <i>n</i>&#8217; means the null string after the <i>n</i>-th character in
+ the file, with 1 the first character in the file. &#8216;Line <i>n</i>&#8217; means
+ the <i>n</i>-th match, starting at the beginning of the file, of the
+ regular expression <tt><font size=+1>.*\n?</font></tt>. All files always have a current substring,
+ called
+ dot, that is the default address.<br>
+ <p><font size=+1><b>Simple Addresses </b></font><br>
+ <tt><font size=+1>#</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;The empty string after character <i>n</i>; <tt><font size=+1>#0</font></tt> is the beginning of the
+ file.<br>
+ <i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Line <i>n</i>; <tt><font size=+1>0</font></tt> is the beginning of the file.<br>
+ <tt><font size=+1>/</font></tt><i>regexp</i><tt><font size=+1>/<br>
+ ?</font></tt><i>regexp</i><tt><font size=+1>?<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The substring that matches the regular expression, found by looking
+ toward the end (<tt><font size=+1>/</font></tt>) or beginning (<tt><font size=+1>?</font></tt>) of the file, and if necessary
+ continuing the search from the other end to the starting point
+ of the search. The matched substring may straddle the starting
+ point. When entering a pattern containing a literal
+ question mark for a backward search, the question mark should
+ be specified as a member of a class.<br>
+
+ </table>
+ <tt><font size=+1>0</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The string before the first full line. This is not necessarily
+ the null string; see <tt><font size=+1>+</font></tt> and <tt><font size=+1>&#8722;</font></tt> below.<br>
+ <tt><font size=+1>$</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The null string at the end of the file.<br>
+ <tt><font size=+1>.</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dot.<br>
+ <tt><font size=+1>'</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The mark in the file (see the <tt><font size=+1>k</font></tt> command below).<br>
+ &quot;<i>regexp</i>&quot;<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Preceding a simple address (default <tt><font size=+1>.</font></tt>), refers to the address
+ evaluated in the unique file whose menu line matches the regular
+ expression.<br>
+
+ </table>
+ <p><font size=+1><b>Compound Addresses </b></font><br>
+ In the following, <i>a1</i> and <i>a2</i> are addresses.<br>
+ <i>a1</i><tt><font size=+1>+</font></tt><i>a2</i>&nbsp;&nbsp;&nbsp;The address <i>a2</i> evaluated starting at the end of <i>a1</i>.<br>
+ <i>a1</i><tt><font size=+1>&#8722;</font></tt><i>a2</i>&nbsp;&nbsp;&nbsp;The address <i>a2</i> evaluated looking in the reverse direction
+ starting at the beginning of <i>a1</i>.<br>
+ <i>a1</i><tt><font size=+1>,</font></tt><i>a2</i>&nbsp;&nbsp;&nbsp;The substring from the beginning of <i>a1</i> to the end of <i>a2</i>.
+ If <i>a1</i> is missing, <tt><font size=+1>0</font></tt> is substituted. If <i>a2</i> is missing, <tt><font size=+1>$</font></tt> is substituted.<br>
+ <i>a1</i><tt><font size=+1>;</font></tt><i>a2</i>&nbsp;&nbsp;&nbsp;Like <i>a1</i><tt><font size=+1>,</font></tt><i>a2</i>, but with <i>a2</i> evaluated at the end of, and dot
+ set to, <i>a1</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The operators <tt><font size=+1>+</font></tt> and <tt><font size=+1>&#8722;</font></tt> are high precedence, while <tt><font size=+1>,</font></tt> and <tt><font size=+1>;</font></tt> are low
+ precedence.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In both <tt><font size=+1>+</font></tt> and <tt><font size=+1>&#8722;</font></tt> forms, if <i>a2</i> is a line or character address with
+ a missing number, the number defaults to 1. If <i>a1</i> is missing,
+ <tt><font size=+1>.</font></tt> is substituted. If both <i>a1</i> and <i>a2</i> are present and distinguishable,
+ <tt><font size=+1>+</font></tt> may be elided. <i>a2</i> may be a regular expression; if it is delimited
+ by <tt><font size=+1>?</font></tt>&#8217;s, the effect of the <tt><font size=+1>+</font></tt> or <tt><font size=+1>&#8722;</font></tt> is reversed.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ It is an error for a compound address to represent a malformed
+ substring. Some useful idioms: <i>a1</i><tt><font size=+1>+&#8722;</font></tt> (<i>a1</i>-+) selects the line containing
+ the end (beginning) of a1. <tt><font size=+1>0/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> locates the first match of
+ the expression in the file. (The form <tt><font size=+1>0;//</font></tt> sets dot unnecessarily.)
+ <tt><font size=+1>./</font></tt><i>regexp</i><tt><font size=+1>///</font></tt> finds the second following
+ occurrence of the expression, and <tt><font size=+1>.,/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> extends dot.<br>
+ <p><font size=+1><b>Commands </b></font><br>
+ In the following, text demarcated by slashes represents text delimited
+ by any printable character except alphanumerics. Any number of
+ trailing delimiters may be elided, with multiple elisions then
+ representing null strings, but the first delimiter must always
+ be present. In any delimited text, newline may not appear
+ literally; <tt><font size=+1>\n</font></tt> may be typed for newline; and <tt><font size=+1>\/</font></tt> quotes the delimiter,
+ here <tt><font size=+1>/</font></tt>. Backslash is otherwise interpreted literally, except in
+ <tt><font size=+1>s</font></tt> commands.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Most commands may be prefixed by an address to indicate their
+ range of operation. Those that may not are marked with a <tt><font size=+1>*</font></tt> below.
+ If a command takes an address and none is supplied, dot is used.
+ The sole exception is the <tt><font size=+1>w</font></tt> command, which defaults to <tt><font size=+1>0,$</font></tt>. In
+ the description, &#8216;range&#8217; is used to represent whatever
+ address is supplied. Many commands set the value of dot as a side
+ effect. If so, it is always set to the &#8216;result&#8217; of the change:
+ the empty string for a deletion, the new text for an insertion,
+ etc. (but see the <tt><font size=+1>s</font></tt> and <tt><font size=+1>e</font></tt> commands).<br>
+ <p><font size=+1><b>Text commands </b></font><br>
+ <tt><font size=+1>a/</font></tt><i>text</i><tt><font size=+1>/<br>
+ </font></tt>or<br>
+ <tt><font size=+1>a<br>
+ </font></tt><i>lines of text<br>
+ </i><tt><font size=+1>.</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert the text into the file after the range. Set dot.<br>
+ <tt><font size=+1>c<br>
+ i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Same as <tt><font size=+1>a</font></tt>, but <tt><font size=+1>c</font></tt> replaces the text, while <tt><font size=+1>i</font></tt> inserts <i>before</i> the
+ range.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete the text in the range. Set dot.<br>
+ <tt><font size=+1>s/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt><i>text</i><tt><font size=+1>/<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Substitute <i>text</i> for the first match to the regular expression
+ in the range. Set dot to the modified range. In <i>text</i> the character
+ <tt><font size=+1>&amp;</font></tt> stands for the string that matched the expression. Backslash
+ behaves as usual unless followed by a digit: <tt><font size=+1>\</font></tt><i>d</i> stands for the
+ string that matched the subexpression begun by the <i>d</i>-th left
+ parenthesis. If <i>s</i> is followed immediately by a number <i>n</i>, as in
+ <tt><font size=+1>s2/x/y/</font></tt>, the <i>n</i>-th match in the range is substituted. If the command
+ is followed by a <tt><font size=+1>g</font></tt>, as in <tt><font size=+1>s/x/y/g</font></tt>, all matches in the range are
+ substituted.<br>
+
+ </table>
+ <tt><font size=+1>m</font></tt> <i>a1<br>
+ </i><tt><font size=+1>t</font></tt> <i>a1</i>&nbsp;&nbsp;&nbsp;Move (<tt><font size=+1>m</font></tt>) or copy (<tt><font size=+1>t</font></tt>) the range to after <i>a1</i>. Set dot.<br>
+ <p><font size=+1><b>Display commands </b></font><br>
+ <tt><font size=+1>p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the text in the range. Set dot.<br>
+ <tt><font size=+1>=</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the line address and character address of the range.<br>
+ <tt><font size=+1>=#</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print just the character address of the range.<br>
+ <p><font size=+1><b>File commands </b></font><br>
+ * <tt><font size=+1>b</font></tt> <i>file-list<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the current file to the first file named in the list that
+ <i>sam</i> also has in its menu. The list may be expressed <tt><font size=+1>&lt;</font></tt><i>Plan 9 command</i>
+ in which case the file names are taken as words (in the shell
+ sense) generated by the Plan 9 command.<br>
+
+ </table>
+ * <tt><font size=+1>B</font></tt> <i>file-list<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Same as <tt><font size=+1>b</font></tt>, except that file names not in the menu are entered
+ there, and all file names in the list are examined.<br>
+
+ </table>
+ * <tt><font size=+1>n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print a menu of files. The format is:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>'</font></tt> or blankindicating the file is modified or clean,<br>
+ <tt><font size=+1>&#8722;</font></tt> or <tt><font size=+1>+</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;indicating the file is unread or has been read (in the terminal,
+ <tt><font size=+1>*</font></tt> means more than one window is open),<br>
+ <tt><font size=+1>.</font></tt> or blankindicating the current file,<br>
+ a blank,<br>
+ and the file name.<br>
+
+ </table>
+ * <tt><font size=+1>D</font></tt> <i>file-list<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete the named files from the menu. If no files are named, the
+ current file is deleted. It is an error to <tt><font size=+1>D</font></tt> a modified file,
+ but a subsequent <tt><font size=+1>D</font></tt> will delete such a file.<br>
+
+ </table>
+ <p><font size=+1><b>I/O Commands </b></font><br>
+ * <tt><font size=+1>e</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Replace the file by the contents of the named external file. Set
+ dot to the beginning of the file.<br>
+
+ </table>
+ <tt><font size=+1>r</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Replace the text in the range by the contents of the named external
+ file. Set dot.<br>
+
+ </table>
+ <tt><font size=+1>w</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Write the range (default <tt><font size=+1>0,$</font></tt>) to the named external file.<br>
+
+ </table>
+ * <tt><font size=+1>f</font></tt> <i>filename<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the file name and print the resulting menu entry.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ If the file name is absent from any of these, the current file
+ name is used. <tt><font size=+1>e</font></tt> always sets the file name; <tt><font size=+1>r</font></tt> and <tt><font size=+1>w</font></tt> do so if the
+ file has no name.<br>
+ <tt><font size=+1>&lt;</font></tt> <i>Plan 9-command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Replace the range by the standard output of the Plan 9 command.<br>
+
+ </table>
+ <tt><font size=+1>&gt;</font></tt> <i>Plan 9-command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Send the range to the standard input of the Plan 9 command.<br>
+
+ </table>
+ <tt><font size=+1>|</font></tt> <i>Plan 9-command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Send the range to the standard input, and replace it by the standard
+ output, of the Plan 9 command.<br>
+
+ </table>
+ * <tt><font size=+1>!</font></tt> <i>Plan 9-command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Run the Plan 9 command.<br>
+
+ </table>
+ * <tt><font size=+1>cd</font></tt> <i>directory<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Change working directory. If no directory is specified, <tt><font size=+1>$home</font></tt>
+ is used.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ In any of <tt><font size=+1>&lt;</font></tt>, <tt><font size=+1>&gt;</font></tt>, <tt><font size=+1>|</font></tt> or <tt><font size=+1>!</font></tt>, if the <i>Plan 9 command</i> is omitted the last
+ <i>Plan 9 command</i> (of any type) is substituted. If <i>sam</i> is <i>downloaded</i>
+ (using the mouse and raster display, i.e. not using option <tt><font size=+1>&#8722;d</font></tt>),
+ <tt><font size=+1>!</font></tt> sets standard input to <tt><font size=+1>/dev/null</font></tt>, and otherwise unassigned output
+ (<tt><font size=+1>stdout</font></tt> for <tt><font size=+1>!</font></tt> and <tt><font size=+1>&gt;</font></tt>, <tt><font size=+1>stderr</font></tt> for all) is placed in
+ <tt><font size=+1>/tmp/sam.err</font></tt> and the first few lines are printed.<br>
+ <p><font size=+1><b>Loops and Conditionals </b></font><br>
+ <tt><font size=+1>x/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ For each match of the regular expression in the range, run the
+ command with dot set to the match. Set dot to the last match.
+ If the regular expression and its slashes are omitted, <tt><font size=+1>/.*\n/</font></tt>
+ is assumed. Null string matches potentially occur before every
+ character of the range and at the end of the range.
+
+ </table>
+ <tt><font size=+1>y/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Like <tt><font size=+1>x</font></tt>, but run the command for each substring that lies before,
+ between, or after the matches that would be generated by <tt><font size=+1>x</font></tt>. There
+ is no default regular expression. Null substrings potentially
+ occur before every character in the range.<br>
+
+ </table>
+ * <tt><font size=+1>X/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ For each file whose menu entry matches the regular expression,
+ make that the current file and run the command. If the expression
+ is omitted, the command is run in every file.<br>
+
+ </table>
+ * <tt><font size=+1>Y/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Same as <tt><font size=+1>X</font></tt>, but for files that do not match the regular expression,
+ and the expression is required.<br>
+
+ </table>
+ <tt><font size=+1>g/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> <i>command<br>
+ </i><tt><font size=+1>v/</font></tt><i>regexp</i><tt><font size=+1>/</font></tt> <i>command<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ If the range contains (<tt><font size=+1>g</font></tt>) or does not contain (<tt><font size=+1>v</font></tt>) a match for
+ the expression, set dot to the range and run the command.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ These may be nested arbitrarily deeply, but only one instance
+ of either <tt><font size=+1>X</font></tt> or <tt><font size=+1>Y</font></tt> may appear in a single command. An empty command
+ in an <tt><font size=+1>x</font></tt> or <tt><font size=+1>y</font></tt> defaults to <tt><font size=+1>p</font></tt>; an empty command in <tt><font size=+1>X</font></tt> or <tt><font size=+1>Y</font></tt> defaults
+ to <tt><font size=+1>f</font></tt>. <tt><font size=+1>g</font></tt> and <tt><font size=+1>v</font></tt> do not have defaults.<br>
+ <p><font size=+1><b>Miscellany </b></font><br>
+ <tt><font size=+1>k</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the current file&#8217;s mark to the range. Does not set dot.<br>
+ * <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quit. It is an error to quit with modified files, but a second
+ <tt><font size=+1>q</font></tt> will succeed.<br>
+ * <tt><font size=+1>u</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Undo the last <i>n</i> (default 1) top-level commands that changed
+ the contents or name of the current file, and any other file whose
+ most recent change was simultaneous with the current file&#8217;s change.
+ Successive <tt><font size=+1>u</font></tt>&#8217;s move further back in time. The only commands for
+ which u is ineffective are <tt><font size=+1>cd</font></tt>, <tt><font size=+1>u</font></tt>, <tt><font size=+1>q</font></tt>, <tt><font size=+1>w</font></tt> and
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>D</font></tt>. If <i>n</i> is negative, <tt><font size=+1>u</font></tt> &#8216;redoes,&#8217; undoing the undo, going forwards
+ in time again.<br>
+
+ </table>
+
+ </table>
+ (empty)&nbsp;&nbsp;&nbsp;&nbsp;If the range is explicit, set dot to the range. If <i>sam</i>
+ is downloaded, the resulting dot is selected on the screen; otherwise
+ it is printed. If no address is specified (the command is a newline)
+ dot is extended in either direction to line boundaries and printed.
+ If dot is thereby unchanged, it is set to <tt><font size=+1>.+1</font></tt> and
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ printed.<br>
+
+ </table>
+
+ </table>
+ <p><font size=+1><b>Grouping and multiple changes </b></font><br>
+ Commands may be grouped by enclosing them in braces <tt><font size=+1>{}</font></tt>. Commands
+ within the braces must appear on separate lines (no backslashes
+ are required between commands). Semantically, an opening brace
+ is like a command: it takes an (optional) address and sets dot
+ for each sub-command. Commands within the
+ braces are executed sequentially, but changes made by one command
+ are not visible to other commands (see the next paragraph). Braces
+ may be nested arbitrarily.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When a command makes a number of changes to a file, as in <tt><font size=+1>x/re/c/text/</font></tt>,
+ the addresses of all changes to the file are computed in the original
+ file. If the changes are in sequence, they are applied to the
+ file. Successive insertions at the same address are catenated
+ into a single insertion composed of the several
+ insertions in the order applied.<br>
+ <p><font size=+1><b>The terminal </b></font><br>
+ What follows refers to behavior of <i>sam</i> when downloaded, that is,
+ when operating as a display editor on a raster display. This is
+ the default behavior; invoking <i>sam</i> with the <tt><font size=+1>&#8722;d</font></tt> (no download) option
+ provides access to the command language only.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each file may have zero or more windows open. Each window is equivalent
+ and is updated simultaneously with changes in other windows on
+ the same file. Each window has an independent value of dot, indicated
+ by a highlighted substring on the display. Dot may be in a region
+ not within the window. There is usually
+ a &#8216;current window&#8217;, marked with a dark border, to which typed
+ text and editing commands apply. Text may be typed and edited
+ as in <a href="../man1/rio.html"><i>rio</i>(1)</a>; also the escape key (ESC) selects (sets dot to)
+ text typed since the last mouse button hit.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The button 3 menu controls window operations. The top of the menu
+ provides the following operators, each of which uses one or more
+ <i>rio</i>-like cursors to prompt for selection of a window or sweeping
+ of a rectangle. &#8216;Sweeping&#8217; a null rectangle gets a large window,
+ disjoint from the command window or the whole
+ screen, depending on where the null rectangle is.<br>
+ <tt><font size=+1>new</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a new, empty file.<br>
+ <tt><font size=+1>zerox</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Create a copy of an existing window.<br>
+ <tt><font size=+1>resize</font></tt>&nbsp;&nbsp;&nbsp;As in <i>rio</i>.<br>
+ <tt><font size=+1>close</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Delete the window. In the last window of a file, <tt><font size=+1>close</font></tt> is
+ equivalent to a <tt><font size=+1>D</font></tt> for the file.<br>
+ <tt><font size=+1>write</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Equivalent to a <tt><font size=+1>w</font></tt> for the file.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Below these operators is a list of available files, starting with
+ <tt><font size=+1>~~sam~~</font></tt>, the command window. Selecting a file from the list makes
+ the most recently used window on that file current, unless it
+ is already current, in which case selections cycle through the
+ open windows. If no windows are open on the file, the user is
+ prompted to open one. Files other than <tt><font size=+1>~~sam~~</font></tt> are marked with
+ one of the characters <tt><font size=+1>&#8722;+*</font></tt> according as zero, one, or more windows
+ are open on the file. A further mark <tt><font size=+1>.</font></tt> appears on the file in
+ the current window and a single quote, <tt><font size=+1>'</font></tt>, on a file modified since
+ last write.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The command window, created automatically when <tt><font size=+1>sam</font></tt> starts, is
+ an ordinary window except that text typed to it is interpreted
+ as commands for the editor rather than passive text, and text
+ printed by editor commands appears in it. The behavior is like
+ <i>rio</i>, with an &#8216;output point&#8217; that separates commands being typed
+ from previous output. Commands typed in the command window apply
+ to the current open file--the file in the most recently current
+ window.<br>
+ <p><font size=+1><b>Manipulating text </b></font><br>
+ Button 1 changes selection, much like <i>rio</i>. Pointing to a non-current
+ window with button 1 makes it current; within the current window,
+ button 1 selects text, thus setting dot. Double-clicking selects
+ text to the boundaries of words, lines, quoted strings or bracketed
+ strings, depending on the text at the click.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Button 2 provides a menu of editing commands:<br>
+ <tt><font size=+1>cut</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete dot and save the deleted text in the snarf buffer.<br>
+ <tt><font size=+1>paste</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the text in dot by the contents of the snarf buffer.<br>
+ <tt><font size=+1>snarf</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save the text in dot in the snarf buffer.<br>
+ <tt><font size=+1>plumb</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Send the text in the selection as a plumb message. If the
+ selection is empty, the white-space-delimited block of text is
+ sent as a plumb message with a <tt><font size=+1>click</font></tt> attribute defining where
+ the selection lies (see <a href="../man7/plumb.html"><i>plumb</i>(7)</a>).<br>
+ <tt><font size=+1>look</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Search forward for the next occurrence of the literal text
+ in dot. If dot is the null string, the text in the snarf buffer
+ is used. The snarf buffer is unaffected.<br>
+ <tt><font size=+1>&lt;rio&gt;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exchange snarf buffers with <i>rio</i>.<br>
+ <tt><font size=+1>/</font></tt><i>regexp</i>&nbsp;&nbsp;&nbsp;&nbsp;Search forward for the next match of the last regular expression
+ typed in a command. (Not in command window.)<br>
+ <tt><font size=+1>send</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Send the text in dot, or the snarf buffer if dot is the null
+ string, as if it were typed to the command window. Saves the sent
+ text in the snarf buffer. (Command window only.)<br>
+ <p><font size=+1><b>External communication </b></font><br>
+ <i>Sam</i> listens to the <tt><font size=+1>edit</font></tt> plumb port. If plumbing is not active,
+ on invocation <i>sam</i> creates a named pipe <tt><font size=+1>/srv/sam.</font></tt><i>user</i> which acts
+ as an additional source of commands. Characters written to the
+ named pipe are treated as if they had been typed in the command
+ window.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>B</i> is a shell-level command that causes an instance of <i>sam</i> running
+ on the same terminal to load the named <i>files</i>. <i>B</i> uses either plumbing
+ or the named pipe, whichever service is available. If plumbing
+ is not enabled, the option allows a line number to be specified
+ for the initial position to display in the last named file
+ (plumbing provides a more general mechanism for this ability).
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>E</i> is a shell-level command that can be used as <tt><font size=+1>$EDITOR</font></tt> in a Unix
+ environment. It runs <i>B</i> on <i>file</i> and then does not exit until <i>file</i>
+ is changed, which is taken as a signal that <i>file</i> is done being
+ edited.<br>
+ <p><font size=+1><b>Abnormal termination </b></font><br>
+ If <i>sam</i> terminates other than by a <tt><font size=+1>q</font></tt> command (by hangup, deleting
+ its window, etc.), modified files are saved in an executable file,
+ <tt><font size=+1>$HOME/sam.save</font></tt>. This program, when executed, asks whether to write
+ each file back to a external file. The answer <tt><font size=+1>y</font></tt> causes writing;
+ anything else skips the file.
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>$HOME/sam.save<br>
+ $HOME/sam.err<br>
+ /usr/local/plan9/bin/samsave<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ the program called to unpack <tt><font size=+1>$HOME/sam.save</font></tt>.<br>
+
+ </table>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/sam</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;source for <i>sam</i> itself<br>
+ <tt><font size=+1>/usr/local/plan9/src/cmd/samterm</font></tt>&nbsp;&nbsp;&nbsp;source for the separate terminal
+ part<br>
+ <tt><font size=+1>/usr/local/plan9/bin/B<br>
+ /usr/local/plan9/bin/E<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/ed.html"><i>ed</i>(1)</a>, <a href="../man1/sed.html"><i>sed</i>(1)</a>, <a href="../man1/grep.html"><i>grep</i>(1)</a>, <a href="../man1/rio.html"><i>rio</i>(1)</a>, <a href="../man7/regexp.html"><i>regexp</i>(7)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Rob Pike, &#8220;The text editor sam&#8221;.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/scat.html b/man/man1/scat.html
new file mode 100644
index 00000000..d5cf2007
--- /dev/null
+++ b/man/man1/scat.html
@@ -0,0 +1,385 @@
+<head>
+<title>scat(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SCAT(1)</b><td align=right><b>SCAT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ scat &ndash; sky catalogue and Digitized Sky Survey<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>scat<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Scat</i> looks up items in catalogues of objects outside the solar
+ system and implements database-like manipulations on sets of such
+ objects. It also provides an interface to <a href="../man1/astro.html"><i>astro</i>(1)</a> to plot the
+ locations of solar system objects. Finally, it displays images
+ from the Space Telescope Science Institute&#8217;s Digitized Sky Survey,
+ keyed to the catalogues.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Items are read, one per line, from the standard input and looked
+ up in the catalogs. Input is case-insensitive. The result of the
+ lookup becomes the set of objects available to the database commands.
+ After each lookup or command, if more than two objects are in
+ the set, <i>scat</i> prints how many objects are in the set;
+ otherwise it prints the objects&#8217; descriptions or cross-index listings
+ (suitable for input to <i>scat</i>). An item is in one of the following
+ formats:<br>
+ <tt><font size=+1>ngc1234<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Number 1234 in the New General Catalogue of Nonstellar Objects,
+ NGC2000.0. The output identifies the type (<tt><font size=+1>Gx</font></tt>=galaxy, <tt><font size=+1>Pl</font></tt>=planetary
+ nebula, <tt><font size=+1>OC</font></tt>=open cluster, <tt><font size=+1>Gb</font></tt>=globular cluster, <tt><font size=+1>Nb</font></tt>=bright nebula,
+ <tt><font size=+1>C+N</font></tt>=cluster associated with nebulosity, <tt><font size=+1>Ast</font></tt>=asterism, <tt><font size=+1>Kt</font></tt>=knot
+ or nebulous region in a galaxy,
+ <tt><font size=+1>***</font></tt>=triple star, <tt><font size=+1>D*</font></tt>=double star, <tt><font size=+1>?</font></tt>=uncertain, <tt><font size=+1>&#8722;</font></tt>=nonexistent, <tt><font size=+1>PD</font></tt>=plate
+ defect, and (blank)=unverified or unknown), its position in 2000.0
+ coordinates, its size in minutes of arc, a brief description,
+ and popular names.<br>
+
+ </table>
+ <tt><font size=+1>ic1234<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Like NGC references, but from the Index Catalog.<br>
+
+ </table>
+ <tt><font size=+1>sao12345<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Number 12345 in the Smithsonian Astrophysical Star Catalogue.
+ Output identifies the visual and photographic magnitudes, 2000.0
+ coordinates, proper motion, spectral type, multiplicity and variability
+ class, and HD number.<br>
+
+ </table>
+ <tt><font size=+1>m4</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Catalog number 4 in Messier&#8217;s catalog. The output is the NGC
+ number.<br>
+ <tt><font size=+1>abell1701<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Catalog number 1701 in the Abell and Zwicky catalog of clusters
+ of galaxies. Output identifies the magnitude of the tenth brightest
+ member of the cluster, radius of the cluster in degrees, its distance
+ in megaparsecs, 2000.0 coordinates, galactic latitude and longitude,
+ magnitude range of the cluster (the
+ &#8216;distance group&#8217;), number of members (the &#8216;richness group&#8217;), population
+ per square degree, and popular names.<br>
+
+ </table>
+ <tt><font size=+1>planetarynebula<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The set of NGC objects of the specified type. The type may be
+ a compact NGC code or a full name, as above, with no blank.<br>
+
+ </table>
+ <tt><font size=+1>&quot;&#945; umi&quot;<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Names are provided in double quotes. Known names are the Greek
+ letter designations, proper names such as Betelgeuse, bright variable
+ stars, and some proper names of stars, NGC objects, and Abell
+ clusters. Greek letters may be spelled out, e.g. <tt><font size=+1>alpha</font></tt>. Constellation
+ names must be the three-letter
+ abbreviations. The output is the SAO number. For non-Greek names,
+ catalog numbers and names are listed for all objects with names
+ for which the given name is a prefix.<br>
+
+ </table>
+ <tt><font size=+1>12h34m &#8722;16<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Coordinates in the sky are translated to the nearest &#8216;patch&#8217;,
+ approximately one square degree of sky. The output is the coordinates
+ identifying the patch, the constellations touching the patch,
+ and the Abell, NGC, and SAO objects in the patch. The program
+ prints sky positions in several formats corresponding to
+ different precisions; any output format is understood as input.<br>
+
+ </table>
+ <tt><font size=+1>umi</font></tt>&nbsp;&nbsp;&nbsp;All the patches in the named constellation.<br>
+ <tt><font size=+1>mars</font></tt>The planets are identified by their names. The names <tt><font size=+1>shadow</font></tt>
+ and <tt><font size=+1>comet</font></tt> refer to the earth&#8217;s penumbra at lunar distance and
+ the comet installed in the current <a href="../man1/astro.html"><i>astro</i>(1)</a>. The output is the
+ planet&#8217;s name, right ascension and declination, azimuth and altitude,
+ and phase for the moon and sun, as shown by
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>astro</font></tt>. The positions are current at the start of <i>scat</i>&#8217;s execution;
+ see the <tt><font size=+1>astro</font></tt> command in the next section for more information.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ The commands are:<br>
+ <tt><font size=+1>add</font></tt> <i>item</i>Add the named item to the set.<br>
+ <tt><font size=+1>keep</font></tt> <i>class ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Flatten the set and cull it, keeping only the specified classes.
+ The classes may be specific NGC types, all stars (<tt><font size=+1>sao</font></tt>), all NGC
+ objects (<tt><font size=+1>ngc</font></tt>), all M objects (<tt><font size=+1>m</font></tt>), all Abell clusters (<tt><font size=+1>abell</font></tt>),
+ or a specified brightness range. Brightness ranges are specified
+ by a leading <tt><font size=+1>&gt;</font></tt> or <tt><font size=+1>&lt;</font></tt> followed by a magnitude. Remember
+ that brighter objects have lesser magnitudes.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>drop</font></tt> <i>class ...<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Complement to <tt><font size=+1>keep</font></tt>.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>flat</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Some items such as patches represents sets of items. <i>Flat</i>
+ flattens the set so <i>scat</i> holds all the information available for
+ the objects in the set.<br>
+ <tt><font size=+1>print</font></tt>&nbsp;&nbsp;&nbsp;Print the contents of the set. If the information seems meager,
+ try flattening the set.<br>
+ <tt><font size=+1>expand</font></tt> <i>n<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Flatten the set, expand the area of the sky covered by the set
+ to be <i>n</i> degrees wider, and collect all the objects in that area.
+ If <i>n</i> is zero, <i>expand</i> collects all objects in the patches that
+ cover the current set.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>astro</font></tt> <i>option<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Run <a href="../man1/astro.html"><i>astro</i>(1)</a> with the specified <i>options</i> (to which will be appended
+ <tt><font size=+1>&#8722;p</font></tt>), to discover the positions of the planets. <tt><font size=+1>Astro</font></tt>&#8217;s <tt><font size=+1>&#8722;d</font></tt> and
+ <tt><font size=+1>&#8722;l</font></tt> options can be used to set the time and place; by default,
+ it&#8217;s right now at the coordinates in <tt><font size=+1>/lib/sky/here</font></tt>. Running <tt><font size=+1>astro</font></tt>
+ does not change the positions of planets
+ already in the display set, so <tt><font size=+1>astro</font></tt> may be run multiple times,
+ executing e.g. <tt><font size=+1>add mars</font></tt> each time, to plot a series of planetary
+ positions.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>plot</font></tt> <i>option<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Expand and plot the set in a new window on the screen. Symbols
+ for NGC objects are as in Sky Atlas 2000.0, except that open clusters
+ are shown as stippled disks rather than circles. Abell clusters
+ are plotted as a triangle of ellipses. The planets are drawn as
+ disks of representative color with the first letter
+ of the name in the disk (lower case for inferior planets; upper
+ case for superior); the sun, moon, and earth&#8217;s shadow are unlabeled
+ disks. Objects larger than a few pixels are plotted to scale;
+ however, <i>scat</i> does not have the information necessary to show
+ the correct orientation for galaxies.
+ The option <tt><font size=+1>nogrid</font></tt> suppresses the lines of declination and right
+ ascension. By default, <i>scat</i> labels NGC objects, Abell clusters,
+ and bright stars; option <tt><font size=+1>nolabel</font></tt> suppresses these while <tt><font size=+1>alllabel</font></tt>
+ labels stars with their SAO number as well. The default size is
+ 512x512; options <tt><font size=+1>dx</font></tt> <i>n</i> and <tt><font size=+1>dy</font></tt> <i>n</i> set the <i>x</i> and
+ <i>y</i> extent. The option <tt><font size=+1>zenithup</font></tt> orients the map so it appears as
+ it would in the sky at the time and location used by the <tt><font size=+1>astro</font></tt>
+ command (<i>q.v.</i>).<br>
+ The output is designed to look best on an LCD display. CRTs have
+ trouble with the thin, grey lines and dim stars. The option <tt><font size=+1>nogrey</font></tt>
+ uses white instead of grey for these details, improving visibility
+ at the cost of legibility when plotting on CRTs.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>plate</font></tt> [[<i>ra dec</i>] <i>rasize</i> [<i>decsize</i>]]<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Display the section of the Digitized Sky Survey (plate scale approximately
+ 1.7 arcseconds per pixel) centered on the given right ascension
+ and declination or, if no position is specified, the current set
+ of objects. The maximum area that will be displayed is one degree
+ on a side. The horizontal and vertical sizes
+ may be specified in the usual notation for angles. If the second
+ size is omitted, a square region is displayed. If no size is specified,
+ the size is sufficient to display the centers of all the objects
+ in the current set. If a single object is in the set, the 500x500
+ pixel block from the survey containing the center of
+ the object is displayed. The survey is stored in the CD-ROM juke
+ box; run <tt><font size=+1>9fs juke</font></tt> before running <i>scat</i>.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>gamma</font></tt> <i>value<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the gamma for converting plates to images. Default is &ndash;1.0.
+ Negative values display white stars, positive black. The images
+ look best on displays with depth 8 or greater. <i>Scat</i> does not change
+ the hardware color map, which should be set externally to a grey
+ scale; try the command <tt><font size=+1>getmap gamma</font></tt> (see
+ <i>getmap</i>(9.1)) on an 8-bit color-mapped display.<br>
+
+ </table>
+
+ </table>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Plot the Messier objects and naked-eye stars in Orion.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>ori<br>
+ keep m &lt;6<br>
+ plot nogrid<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Draw a finder chart for Uranus:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>uranus<br>
+ expand 5<br>
+ plot<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Show a partial lunar eclipse:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>astro &#8722;d<br>
+ 2000 07 16 12 45<br>
+ moon<br>
+ add shadow<br>
+ expand 2<br>
+ plot<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Draw a map of the Pleiades.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>&quot;alcyone&quot;<br>
+ expand 1<br>
+ plot<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/sky/*.scat<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/scat<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/astro.html"><i>astro</i>(1)</a><br>
+ <tt><font size=+1>/usr/local/plan9/sky/constelnames </font></tt> the three-letter abbreviations
+ of the constellation names.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The data was provided by the Astronomical Data Center at the NASA
+ Goddard Space Flight Center, except for NGC2000.0, which is Copyright
+ &copy; 1988, Sky Publishing Corporation, used (but not distributed)
+ by permission. The Digitized Sky Survey, 102 CD-ROMs, is not distributed
+ with the system.
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/secstore.html b/man/man1/secstore.html
new file mode 100644
index 00000000..1b9a3a89
--- /dev/null
+++ b/man/man1/secstore.html
@@ -0,0 +1,145 @@
+<head>
+<title>secstore(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SECSTORE(1)</b><td align=right><b>SECSTORE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ aescbc, secstore, ipso &ndash; secstore commands<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>secstore</font></tt> [ <tt><font size=+1>&#8722;s</font></tt> <i>server</i> ] [ <tt><font size=+1>&#8722;(g|G)</font></tt> <i>getfile</i> ] [ <tt><font size=+1>&#8722;p</font></tt> <i>putfile</i> ] [ <tt><font size=+1>&#8722;r</font></tt>
+ <i>rmfile</i> ] [ <tt><font size=+1>&#8722;c</font></tt> ] [ <tt><font size=+1>&#8722;u</font></tt> <i>user</i> ] [ <tt><font size=+1>&#8722;v</font></tt> ] [ <tt><font size=+1>&#8722;i</font></tt> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>aescbc</font></tt> -e <i>&lt;cleartext &gt;ciphertext<br>
+ </i><tt><font size=+1>aescbc</font></tt> -d <i>&lt;ciphertext &gt;cleartext
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+ <tt><font size=+1>ipso</font></tt> [ <tt><font size=+1>&#8722;a &#8722;e &#8722;l &#8722;f &#8722;s</font></tt> ] [ <i>file</i> ... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Secstore</i> authenticates to the server using a password and optionally
+ a hardware token, then saves or retrieves a file. This is intended
+ to be a credentials store (public/private keypairs, passwords,
+ and other secrets) for a factotum.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;p</font></tt> stores a file on the secstore.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;g</font></tt> retrieves a file to the local directory; option <tt><font size=+1>&#8722;G</font></tt> writes
+ it to standard output instead. Specifying <i>getfile</i> of . will send
+ to standard output a list of remote files with dates, lengths
+ and SHA1 hashes.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;r</font></tt> removes a file from the secstore.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;c</font></tt> prompts for a password change.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;v</font></tt> produces more verbose output, in particular providing
+ a few bits of feedback to help the user detect mistyping.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;i</font></tt> says that the password should be read from standard
+ input instead of from <tt><font size=+1>/dev/cons</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Option <tt><font size=+1>&#8722;n</font></tt> says that the password should be read from NVRAM instead
+ of from <tt><font size=+1>/dev/cons</font></tt>. This option is unsupported.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The server is <tt><font size=+1>tcp!$auth!5356</font></tt>, or the server specified by option
+ <tt><font size=+1>&#8722;s</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ For example, to add a secret to the file read by <a href="../man4/factotum.html"><i>factotum</i>(4)</a> at
+ startup, open a new window, type<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% ramfs &#8722;p; cd /tmp<br>
+ % auth/secstore &#8722;g factotum<br>
+ secstore password:<br>
+ % echo 'key proto=apop dom=x.com user=ehg !password=hi' &gt;&gt; factotum<br>
+ % auth/secstore &#8722;p factotum<br>
+ secstore password:<br>
+ % read &#8722;m factotum &gt; /mnt/factotum/ctl<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ and delete the window. The first line creates an ephemeral memory-resident
+ workspace, invisible to others and automatically removed when
+ the window is deleted. The next three commands fetch the persistent
+ copy of the secrets, append a new secret, and save the updated
+ file back to secstore. The final command
+ loads the new secret into the running factotum.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Aescbc</i> encrypts and decrypts using AES (Rijndael) in cipher block
+ chaining (CBC) mode.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/secstore<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man4/factotum.html"><i>factotum</i>(4)</a>, Plan 9&#8217;s <i>secstore</i>(8)<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ There is deliberately no backup of files on the secstore, so <tt><font size=+1>&#8722;r</font></tt>
+ (or a disk crash) is irrevocable. You are advised to store important
+ secrets in a second location.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/sed.html b/man/man1/sed.html
new file mode 100644
index 00000000..c40874ad
--- /dev/null
+++ b/man/man1/sed.html
@@ -0,0 +1,300 @@
+<head>
+<title>sed(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SED(1)</b><td align=right><b>SED(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ sed &ndash; stream editor<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sed</font></tt> [ <tt><font size=+1>&#8722;n</font></tt> ] [ <tt><font size=+1>&#8722;g</font></tt> ] [ <tt><font size=+1>&#8722;e</font></tt> <i>script</i> ] [ <tt><font size=+1>&#8722;f</font></tt> <i>sfile</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Sed</i> copies the named <i>files</i> (standard input default) to the standard
+ output, edited according to a script of commands. The <tt><font size=+1>&#8722;f</font></tt> option
+ causes the script to be taken from file <i>sfile</i>; these options accumulate.
+ If there is just one <tt><font size=+1>&#8722;e</font></tt> option and no <tt><font size=+1>&#8722;f</font></tt>&#8217;s, the flag <tt><font size=+1>&#8722;e</font></tt> may be
+ omitted. The <tt><font size=+1>&#8722;n</font></tt> option suppresses the default
+ output; <tt><font size=+1>&#8722;g</font></tt> causes all substitutions to be global, as if suffixed
+ <tt><font size=+1>g</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A script consists of editing commands, one per line, of the following
+ form:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ [<i>address</i> [<tt><font size=+1>,</font></tt> <i>address</i>] ] <i>function</i> [<i>argument</i> ...]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ In normal operation <i>sed</i> cyclically copies a line of input into
+ a <i>pattern space</i> (unless there is something left after a <tt><font size=+1>D</font></tt> command),
+ applies in sequence all commands whose <i>addresses</i> select that pattern
+ space, and at the end of the script copies the pattern space to
+ the standard output (except under <tt><font size=+1>&#8722;n</font></tt>) and deletes the
+ pattern space.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An <i>address</i> is either a decimal number that counts input lines
+ cumulatively across files, a <tt><font size=+1>$</font></tt> that addresses the last line of
+ input, or a context address, <tt><font size=+1>/</font></tt><i>regular-expression</i><tt><font size=+1>/</font></tt>, in the style
+ of <a href="../man7/regexp.html"><i>regexp</i>(7)</a>, with the added convention that <tt><font size=+1>\n</font></tt> matches a newline
+ embedded in the pattern space.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A command line with no addresses selects every pattern space.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A command line with one address selects each pattern space that
+ matches the address.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ A command line with two addresses selects the inclusive range
+ from the first pattern space that matches the first address through
+ the next pattern space that matches the second. (If the second
+ address is a number less than or equal to the line number first
+ selected, only one line is selected.) Thereafter the process is
+ repeated, looking again for the first address.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Editing commands can be applied to non-selected pattern spaces
+ by use of the negation function <tt><font size=+1>!</font></tt> (below).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An argument denoted <i>text</i> consists of one or more lines, all but
+ the last of which end with <tt><font size=+1>\</font></tt> to hide the newline. Backslashes
+ in text are treated like backslashes in the replacement string
+ of an <tt><font size=+1>s</font></tt> command, and may be used to protect initial blanks and
+ tabs against the stripping that is done on every script line.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ An argument denoted <i>rfile</i> or <i>wfile</i> must terminate the command
+ line and must be preceded by exactly one blank. Each <i>wfile</i> is
+ created before processing begins. There can be at most 120 distinct
+ <i>wfile</i> arguments.<br>
+ <tt><font size=+1>a\<br>
+ </font></tt><i>text</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Append. Place <i>text</i> on the output before reading the next input
+ line.<br>
+ <tt><font size=+1>b</font></tt> <i>label</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Branch to the <tt><font size=+1>:</font></tt> command bearing the <i>label</i>. If <i>label</i> is
+ empty, branch to the end of the script.<br>
+ <tt><font size=+1>c\<br>
+ </font></tt><i>text</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Change. Delete the pattern space. With 0 or 1 address or at
+ the end of a 2-address range, place <i>text</i> on the output. Start
+ the next cycle.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete the pattern space. Start the next cycle.<br>
+ <tt><font size=+1>D</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete the initial segment of the pattern space through the first
+ newline. Start the next cycle.<br>
+ <tt><font size=+1>g</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the contents of the pattern space by the contents of
+ the hold space.<br>
+ <tt><font size=+1>G</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Append the contents of the hold space to the pattern space.<br>
+ <tt><font size=+1>h</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the contents of the hold space by the contents of the
+ pattern space.<br>
+ <tt><font size=+1>H</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Append the contents of the pattern space to the hold space.<br>
+ <tt><font size=+1>i\<br>
+ </font></tt><i>text</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert. Place <i>text</i> on the standard output.<br>
+ <tt><font size=+1>n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copy the pattern space to the standard output. Replace the pattern
+ space with the next line of input.<br>
+ <tt><font size=+1>N</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Append the next line of input to the pattern space with an embedded
+ newline. (The current line number changes.)<br>
+ <tt><font size=+1>p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print. Copy the pattern space to the standard output.<br>
+ <tt><font size=+1>P</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copy the initial segment of the pattern space through the first
+ newline to the standard output.<br>
+ <tt><font size=+1>q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quit. Branch to the end of the script. Do not start a new cycle.<br>
+ <tt><font size=+1>r</font></tt> <i>rfile</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read the contents of <i>rfile</i>. Place them on the output before
+ reading the next input line.<br>
+ <tt><font size=+1>s/</font></tt><i>regular-expression</i><tt><font size=+1>/</font></tt><i>replacement</i><tt><font size=+1>/</font></tt><i>flags<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Substitute the <i>replacement</i> string for instances of the <i>regular-expression</i>
+ in the pattern space. Any character may be used instead of <tt><font size=+1>/</font></tt>.
+ For a fuller description see <a href="../man7/regexp.html"><i>regexp</i>(7)</a>. <i>Flags</i> is zero or more
+ of<br>
+ <tt><font size=+1>g</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Global. Substitute for all non-overlapping instances of the <i>regular
+ expression</i> rather than just the first one.<br>
+ <tt><font size=+1>p</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print the pattern space if a replacement was made.<br>
+ <tt><font size=+1>w</font></tt> <i>wfile<br>
+ </i>Write. Append the pattern space to <i>wfile</i> if a replacement was
+ made.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>t</font></tt> <i>label</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test. Branch to the <tt><font size=+1>:</font></tt> command bearing the <i>label</i> if any
+ substitutions have been made since the most recent reading of
+ an input line or execution of a <tt><font size=+1>t</font></tt>. If <i>label</i> is empty, branch to
+ the end of the script.<br>
+ <tt><font size=+1>w</font></tt><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wfile<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Write. Append the pattern space to <i>wfile</i>.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exchange the contents of the pattern and hold spaces.<br>
+ <tt><font size=+1>y/</font></tt><i>string1</i><tt><font size=+1>/</font></tt><i>string2</i><tt><font size=+1>/<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Transform. Replace all occurrences of characters in <i>string1</i> with
+ the corresponding character in <i>string2</i>. The lengths of <i>string1</i>
+ and <i>string2</i> must be equal.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>!</font></tt><i>function</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Don&#8217;t. Apply the <i>function</i> (or group, if <i>function</i> is <tt><font size=+1>{</font></tt>)
+ only to lines <i>not</i> selected by the address(es).<br>
+ <tt><font size=+1>:</font></tt> <i>label</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This command does nothing; it bears a <i>label</i> for <tt><font size=+1>b</font></tt> and <tt><font size=+1>t</font></tt>
+ commands to branch to.<br>
+ <tt><font size=+1>=</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Place the current line number on the standard output as a line.<br>
+ <tt><font size=+1>{</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Execute the following commands through a matching <tt><font size=+1>}</font></tt> only when
+ the pattern space is selected.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ An empty command is ignored.<br>
+
+ </table>
+
+ </table>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sed 10q file<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the first 10 lines of the file.<br>
+
+ </table>
+ <tt><font size=+1>sed '/^$/d'<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete empty lines from standard input.<br>
+
+ </table>
+ <tt><font size=+1>sed 's/UNIX/&amp; system/g'<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Replace every instance of <tt><font size=+1>UNIX</font></tt> by <tt><font size=+1>UNIX system</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <tt><font size=+1>sed 's/ *$// </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;drop trailing blanks<br>
+ <tt><font size=+1>/^$/d </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;drop empty lines<br>
+ <tt><font size=+1>s/ &nbsp;&nbsp;&nbsp;*/\ </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;replace blanks by newlines<br>
+ <tt><font size=+1>/g<br>
+ /^$/d' chapter*<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the files <tt><font size=+1>chapter1</font></tt>, <tt><font size=+1>chapter2</font></tt>, etc. one word to a line.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ <tt><font size=+1>nroff &#8722;ms manuscript | sed '<br>
+ ${<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ /^$/p
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if last line of file is empty, print it<br>
+
+ </table>
+ <tt><font size=+1>}<br>
+ //N </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if current line is empty, append next line<br>
+ <tt><font size=+1>/^\n$/D' </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if two lines are empty, delete the first<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Delete all but one of each group of empty lines from a formatted
+ manuscript.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/sed.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/ed.html"><i>ed</i>(1)</a>, <a href="../man1/grep.html"><i>grep</i>(1)</a>, <a href="../man1/awk.html"><i>awk</i>(1)</a>, <a href="../man1/lex.html"><i>lex</i>(1)</a>, <a href="../man1/sam.html"><i>sam</i>(1)</a>, <a href="../man7/regexp.html"><i>regexp</i>(7)</a><br>
+ L. E. McMahon, &#8216;SED -- A Non-interactive Text Editor&#8217;, Unix Research
+ System Programmer&#8217;s Manual, Volume 2.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ If input is from a pipe, buffering may consume characters beyond
+ a line on which a <tt><font size=+1>q</font></tt> command is executed.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/seq.html b/man/man1/seq.html
new file mode 100644
index 00000000..c04a08e5
--- /dev/null
+++ b/man/man1/seq.html
@@ -0,0 +1,99 @@
+<head>
+<title>seq(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SEQ(1)</b><td align=right><b>SEQ(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ seq &ndash; print sequences of numbers<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>seq</font></tt> [ <tt><font size=+1>&#8722;w</font></tt> ] [ <tt><font size=+1>&#8722;f</font></tt><i>format</i> ] [ <i>first</i> [ <i>incr</i> ] ] <i>last<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Seq</i> prints a sequence of numbers, one per line, from <i>first</i> (default
+ 1) to as near <i>last</i> as possible, in increments of <i>incr</i> (default
+ 1). The loop is:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>for(val = min; val &lt;= max; val += incr) print val;<br>
+ </font></tt>
+ </table>
+ The numbers are interpreted as floating point.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Normally integer values are printed as decimal integers. The options
+ are<br>
+ <tt><font size=+1>&#8722;f</font></tt><i>format</i>&nbsp;&nbsp;&nbsp;&nbsp;Use the <a href="../man3/print.html"><i>print</i>(3)</a>-style <i>format print</i> for printing each
+ (floating point) number. The default is <tt><font size=+1>%g</font></tt>.<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Equalize the widths of all numbers by padding with leading zeros
+ as necessary. Not effective with option <tt><font size=+1>&#8722;f</font></tt>, nor with numbers in
+ exponential notation.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>seq 0 .05 .1<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print <tt><font size=+1>0 0.05 0.1</font></tt> (on separate lines).<br>
+
+ </table>
+ <tt><font size=+1>seq &#8722;w 0 .05 .1<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print <tt><font size=+1>0.00 0.05 0.10</font></tt>.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/seq.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Option <tt><font size=+1>&#8722;w</font></tt> always surveys every value in advance. Thus <tt><font size=+1>seq &#8722;w 1000000000</font></tt>
+ is a painful way to get an &#8216;infinite&#8217; sequence.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/sleep.html b/man/man1/sleep.html
new file mode 100644
index 00000000..622bca9a
--- /dev/null
+++ b/man/man1/sleep.html
@@ -0,0 +1,91 @@
+<head>
+<title>sleep(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SLEEP(1)</b><td align=right><b>SLEEP(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ sleep &ndash; suspend execution for an interval<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sleep</font></tt> <i>time<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Sleep</i> suspends execution for <i>time</i> seconds.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Execute a command 100 seconds hence.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>{sleep 100; command}&amp;<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Repeat a command every 30 seconds.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>while (){<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ command<br>
+ sleep 30<br>
+
+ </table>
+ }<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/sleep.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/sleep.html"><i>sleep</i>(3)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/sort.html b/man/man1/sort.html
new file mode 100644
index 00000000..2f6de1b7
--- /dev/null
+++ b/man/man1/sort.html
@@ -0,0 +1,200 @@
+<head>
+<title>sort(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SORT(1)</b><td align=right><b>SORT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ sort &ndash; sort and/or merge files<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sort</font></tt> [ <tt><font size=+1>&#8722;cmuMbdfinrwt</font></tt><i>x</i> ] [ <tt><font size=+1>+</font></tt><i>pos1</i> [ <tt><font size=+1>&#8722;</font></tt><i>pos2</i> ] ... ] ... [ <tt><font size=+1>&#8722;k</font></tt> <i>pos1</i>
+ [ <i>,pos2</i> ] ] ...<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ &#8217; [ <tt><font size=+1>&#8722;o</font></tt> <i>output</i> ] [ <tt><font size=+1>&#8722;T</font></tt> <i>dir</i> ... ] [ <i>option</i> ... ] [ <i>file</i> ... ]<br>
+
+ </table>
+
+ </table>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Sort</i> sorts lines of all the <i>files</i> together and writes the result
+ on the standard output. If no input files are named, the standard
+ input is sorted.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The default sort key is an entire line. Default ordering is lexicographic
+ by runes. The ordering is affected globally by the following options,
+ one or more of which may appear.<br>
+ <tt><font size=+1>&#8722;M</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Compare as months. The first three non-white space characters
+ of the field are folded to upper case and compared so that <tt><font size=+1>JAN</font></tt>
+ precedes <tt><font size=+1>FEB</font></tt>, etc. Invalid fields compare low to <tt><font size=+1>JAN</font></tt>.<br>
+ <tt><font size=+1>&#8722;b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Ignore leading white space (spaces and tabs) in field comparisons.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&#8216;Phone directory&#8217; order: only letters, accented letters, digits
+ and white space are significant in comparisons.<br>
+ <tt><font size=+1>&#8722;f</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Fold lower case letters onto upper case. Accented characters
+ are folded to their non-accented upper case form.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Ignore characters outside the ASCII range 040-0176 in non-numeric
+ comparisons.<br>
+ <tt><font size=+1>&#8722;w</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Like <tt><font size=+1>&#8722;i</font></tt>, but ignore only tabs and spaces.<br>
+ <tt><font size=+1>&#8722;n</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;An initial numeric string, consisting of optional white space,
+ optional plus or minus sign, and zero or more digits with optional
+ decimal point, is sorted by arithmetic value.<br>
+ <tt><font size=+1>&#8722;g</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Numbers, like <tt><font size=+1>&#8722;n</font></tt> but with optional <tt><font size=+1>e</font></tt>-style exponents, are sorted
+ by value.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Reverse the sense of comparisons.<br>
+ <tt><font size=+1>&#8722;t</font></tt><i>x</i>&nbsp;&nbsp;&nbsp;&#8216;Tab character&#8217; separating fields is <i>x</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The notation <tt><font size=+1>+</font></tt><i>pos1</i> <tt><font size=+1>&#8722;</font></tt><i>pos2</i> restricts a sort key to a field beginning
+ at <i>pos1</i> and ending just before <i>pos2</i>. <i>Pos1</i> and <i>pos2</i> each have the
+ form <i>m</i><tt><font size=+1>.</font></tt><i>n</i>, optionally followed by one or more of the flags <tt><font size=+1>Mbdfginr</font></tt>,
+ where <i>m</i> tells a number of fields to skip from the beginning of
+ the line and <i>n</i> tells a number of characters to skip
+ further. If any flags are present they override all the global
+ ordering options for this key. A missing <tt><font size=+1>.</font></tt><i>n</i> means <tt><font size=+1>.0</font></tt>; a missing
+ <tt><font size=+1>&#8722;</font></tt><i>pos2</i> means the end of the line. Under the <tt><font size=+1>&#8722;t</font></tt><i>x</i> option, fields
+ are strings separated by <i>x</i>; otherwise fields are non-empty strings
+ separated by white space. White space before a field is part of
+ the field, except under option <tt><font size=+1>&#8722;b</font></tt>. A <tt><font size=+1>b</font></tt> flag may be attached independently
+ to <i>pos1</i> and <i>pos2.</i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The notation <tt><font size=+1>&#8722;k</font></tt> <i>pos1</i>[,<i>pos2</i>] is how POSIX <i>sort</i> defines fields:
+ <i>pos1</i> and <i>pos2</i> have the same format but different meanings. The
+ value of <i>m</i> is origin 1 instead of origin 0 and a missing <tt><font size=+1>.</font></tt><i>n</i> in
+ <i>pos2</i> is the end of the field.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When there are multiple sort keys, later keys are compared only
+ after all earlier keys compare equal. Lines that otherwise compare
+ equal are ordered with all bytes significant.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ These option arguments are also understood:<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Check that the single input file is sorted according to the
+ ordering rules; give no output unless the file is out of sort.<br>
+ <tt><font size=+1>&#8722;m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Merge; assume the input files are already sorted.<br>
+ <tt><font size=+1>&#8722;u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Suppress all but one in each set of equal lines. Ignored bytes
+ and bytes outside keys do not participate in this comparison.<br>
+ <tt><font size=+1>&#8722;o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The next argument is the name of an output file to use instead
+ of the standard output. This file may be the same as one of the
+ inputs.<br>
+ <tt><font size=+1>&#8722;T</font></tt><i>dir</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Put temporary files in <i>dir</i> rather than in <tt><font size=+1>/var/tmp</font></tt>.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sort &#8722;u +0f +0 list<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print in alphabetical order all the unique spellings in a list
+ of words where capitalized words differ from uncapitalized.<br>
+
+ </table>
+ <tt><font size=+1>sort &#8722;t: +1 /adm/users<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the users file sorted by user name (the second colon-separated
+ field).<br>
+
+ </table>
+ <tt><font size=+1>sort &#8722;umM dates<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the first instance of each month in an already sorted file.
+ Options <tt><font size=+1>&#8722;um</font></tt> with just one input file make the choice of a unique
+ representative from a set of equal lines predictable.<br>
+
+ </table>
+ <tt><font size=+1>grep &#8722;n '^' input | sort &#8722;t: +1f +0n | sed 's/[0&#8722;9]*://'<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ A stable sort: input lines that compare equal will come out in
+ their original order.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/var/tmp/sort.</font></tt><i>&lt;pid&gt;.&lt;ordinal&gt;<br>
+ </i>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/sort.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/uniq.html"><i>uniq</i>(1)</a>, <a href="../man1/look.html"><i>look</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>DIAGNOSTICS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Sort</i> comments and exits with non-null status for various trouble
+ conditions and for disorder discovered under option <tt><font size=+1>&#8722;c</font></tt>.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ An external null character can be confused with an internally
+ generated end-of-field character. The result can make a sub-field
+ not sort less than a longer field.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Some of the options, e.g. <tt><font size=+1>&#8722;i</font></tt> and <tt><font size=+1>&#8722;M</font></tt>, are hopelessly provincial.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/spell.html b/man/man1/spell.html
new file mode 100644
index 00000000..9f412d2c
--- /dev/null
+++ b/man/man1/spell.html
@@ -0,0 +1,125 @@
+<head>
+<title>spell(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SPELL(1)</b><td align=right><b>SPELL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ spell, sprog &ndash; find spelling errors<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>spell</font></tt> [ <i>options</i> ] ... [ <i>file</i> ] ...
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>sprog</font></tt> [ <i>options</i> ] [ <tt><font size=+1>&#8722;f</font></tt> <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Spell</i> looks up words from the named <i>files</i> (standard input default)
+ in a spelling list and places possible misspellings--words not sanctioned
+ there--on the standard output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Spell</i> ignores constructs of <a href="../man1/troff.html"><i>troff</i>(1)</a> and its standard preprocessors.
+ It understands these options:<br>
+ <tt><font size=+1>&#8722;b</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Check British spelling.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print all words not literally in the spelling list, with derivations.<br>
+ <tt><font size=+1>&#8722;x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print, marked with <tt><font size=+1>=</font></tt>, every stem as it is looked up in the spelling
+ list, along with its affix classes.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ As a matter of policy, <i>spell</i> does not admit multiple spellings
+ of the same word. Variants that follow general rules are preferred
+ over those that don&#8217;t, even when the unruly spelling is more common.
+ Thus, in American usage, &#8216;modelled&#8217;, &#8216;sizeable&#8217;, and &#8216;judgment&#8217;
+ are rejected in favor of &#8216;modeled&#8217;, &#8216;sizable&#8217;, and
+ &#8216;judgement&#8217;. Agglutinated variants are shunned: &#8216;crewmember&#8217; and
+ &#8216;backyard&#8217; cede to &#8216;crew member&#8217; and &#8216;back yard&#8217; (noun) or &#8216;back-yard&#8217;
+ (adjective).<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/lib/amspell<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ American spelling list<br>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/lib/brspell<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ British spelling list<br>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/bin/sprog<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The actual spelling checker. It expects one word per line on standard
+ input, and takes the same arguments as <i>spell</i>.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/spell</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the script<br>
+ <tt><font size=+1>/usr/local/plan9/src/cmd/spell</font></tt>&nbsp;&nbsp;&nbsp;source for <i>sprog<br>
+ </i>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/deroff.html"><i>deroff</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The heuristics of <a href="../man1/deroff.html"><i>deroff</i>(1)</a> used to excise formatting information
+ are imperfect.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The spelling list&#8217;s coverage is uneven; in particular biology,
+ medicine, and chemistry, and perforce proper names, not to mention
+ languages other than English, are covered very lightly.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/split.html b/man/man1/split.html
new file mode 100644
index 00000000..ff3a3d38
--- /dev/null
+++ b/man/man1/split.html
@@ -0,0 +1,91 @@
+<head>
+<title>split(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SPLIT(1)</b><td align=right><b>SPLIT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ split &ndash; split a file into pieces<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>split</font></tt> [ <i>option ...</i> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Split</i> reads <i>file</i> (standard input by default) and writes it in
+ pieces of 1000 lines per output file. The names of the output
+ files are <tt><font size=+1>xaa</font></tt>, <tt><font size=+1>xab</font></tt>, and so on to <tt><font size=+1>xzz</font></tt>. The options are<br>
+ <tt><font size=+1>&#8722;n</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;Split into <i>n</i>-line pieces.<br>
+ <tt><font size=+1>&#8722;l</font></tt> <i>n</i>&nbsp;&nbsp;&nbsp;Synonym for <tt><font size=+1>&#8722;n</font></tt> <i>n</i>, a nod to Unix&#8217;s syntax.<br>
+ <tt><font size=+1>&#8722;e</font></tt> <i>expression<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ File divisions occur at each line that matches a regular <i>expression</i>;
+ see <a href="../man7/regexp.html"><i>regexp</i>(7)</a>. Multiple <tt><font size=+1>&#8722;e</font></tt> options may appear. If a subexpression
+ of <i>expression</i> is contained in parentheses <tt><font size=+1>(</font></tt>...<tt><font size=+1>)</font></tt>, the output file
+ name is the portion of the line which matches the subexpression.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;f</font></tt> <i>stem<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Use <i>stem</i> instead of <tt><font size=+1>x</font></tt> in output file names.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;s</font></tt> <i>suffix<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Append <i>suffix</i> to names identified under <tt><font size=+1>&#8722;e</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Exclude the matched input line from the output file.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Ignore case in option <tt><font size=+1>&#8722;e</font></tt>; force output file names (excluding
+ the suffix) to lower case.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/split.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sed.html"><i>sed</i>(1)</a>, <a href="../man1/awk.html"><i>awk</i>(1)</a>, <a href="../man1/grep.html"><i>grep</i>(1)</a>, <a href="../man7/regexp.html"><i>regexp</i>(7)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/src.html b/man/man1/src.html
new file mode 100644
index 00000000..cd8334ec
--- /dev/null
+++ b/man/man1/src.html
@@ -0,0 +1,99 @@
+<head>
+<title>src(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SRC(1)</b><td align=right><b>SRC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ src &ndash; find source code for executable<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>src</font></tt> [ <tt><font size=+1>&#8722;n</font></tt> ] [ <tt><font size=+1>&#8722;s</font></tt> <i>symbol</i> ] <i>file</i> <tt><font size=+1>...<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Src</i> examines the named <i>files</i> to find the corresponding source
+ code, which is then sent to the editor using <tt><font size=+1>B</font></tt> (see <a href="../man1/sam.html"><i>sam</i>(1)</a>). If
+ <i>file</i> is an <a href="../man1/rc.html"><i>rc</i>(1)</a> script, the source is the file itself. If <i>file</i>
+ is an executable, the source is defined to be the single file
+ containing the definition of <tt><font size=+1>main</font></tt> and <i>src</i> will point the editor
+ at the line that
+ begins the definition. <i>Src</i> uses <a href="../man1/db.html"><i>db</i>(1)</a> to extract the symbol table
+ information that identifies the source.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Src</i> looks for each <i>file</i> in the current directory, in <tt><font size=+1>/bin</font></tt>, and
+ in the subdirectories of <tt><font size=+1>/bin</font></tt>, in that order.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;n</font></tt> flag causes <tt><font size=+1>src</font></tt> to print the file name but not send it
+ to the editor. The <tt><font size=+1>&#8722;s</font></tt> flag identifies a <i>symbol</i> other than <tt><font size=+1>main</font></tt>
+ to locate.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Find the source to the <tt><font size=+1>main</font></tt> routine in <tt><font size=+1>/bin/ed</font></tt>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>src ed<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Find the source for <tt><font size=+1>strcmp</font></tt>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>src &#8722;s strcmp rc<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin/src<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/db.html"><i>db</i>(1)</a>, <a href="../man1/plumb.html"><i>plumb</i>(1)</a>, <a href="../man1/sam.html"><i>sam</i>(1)</a>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/stats.html b/man/man1/stats.html
new file mode 100644
index 00000000..77b598d5
--- /dev/null
+++ b/man/man1/stats.html
@@ -0,0 +1,214 @@
+<head>
+<title>stats(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>STATS(1)</b><td align=right><b>STATS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ stats, auxstats &ndash; display graphs of system activity<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>stats</font></tt> [ <tt><font size=+1>&#8722;</font></tt><i>option</i> ] [ <i>machine</i>[<tt><font size=+1>:</font></tt><i>path</i>] ... ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>auxstats</font></tt> [ <i>machine</i> [ <i>path</i> ] ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Stats</i> displays a rolling graph of various statistics collected
+ by the operating system and updated once per second. The statistics
+ may be from a remote <i>machine</i> or multiple <i>machines</i>, whose graphs
+ will appear in adjacent columns. The columns are labeled by the
+ machine names and the number of processors on the
+ machine if it is a multiprocessor.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Auxstats</i> collects the machine statistics for display by <i>stats</i>.
+ With no arguments, it collects statistics from the local machine.
+ If <i>machine</i> is named, it executes <tt><font size=+1>ssh</font></tt> <i>machine path</i>; when <i>ssh</i> finishes,
+ <i>auxstats</i> sleeps for one minute and runs it again. The default
+ <i>path</i> is simply <tt><font size=+1>auxstats</font></tt>, but since some shells do not
+ execute any sort of user profile when run as a non-login shell,
+ it is often necessary to specify an exact path.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The right mouse button presents a menu to enable and disable the
+ display of various statistics; by default, <i>stats</i> begins by showing
+ the load average on the executing machine.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The lower-case <i>options</i> choose the initial set to display:<br>
+ <tt><font size=+1>b battery</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;percentage battery life remaining.<br>
+ <tt><font size=+1>c context</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;number of process context switches per second.<br>
+ <tt><font size=+1>e ether</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;total number of packets sent and received per second.<br>
+ <tt><font size=+1>E etherin,out<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ number of packets sent and received per second, displayed as separate
+ graphs.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>f fault</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;number of page faults per second.<br>
+ <tt><font size=+1>i intr</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;number of interrupts per second.<br>
+ <tt><font size=+1>l load</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(default) system load average. The load is computed as a
+ running average of the number of processes ready to run, multiplied
+ by 1000. On most systems, it changes only every five seconds and
+ has limited accuracy.<br>
+ <tt><font size=+1>m mem</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;total pages of active memory. The graph displays the fraction
+ of the machine&#8217;s total memory in use.<br>
+ <tt><font size=+1>n etherin,out,err<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ number of packets sent and received per second, and total number
+ of errors, displayed as separate graphs.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>s syscall</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;number of system calls per second.<br>
+ <tt><font size=+1>w swap</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;number of valid pages on the swap device. The swap is displayed
+ as a fraction of the number of swap pages configured by the machine.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The graphs are plotted with time on the horizontal axis. The vertical
+ axes range from 0 to 1000*sleepsecs, multiplied by the number
+ of processors on the machine when appropriate. The only exceptions
+ are memory, and swap space, which display fractions of the total
+ available, system load, which displays a number
+ between 0 and 1000, idle and intr, which display percentages and
+ the Ethernet error count, which goes from 0 to 10.. If the value
+ of the parameter is too large for the visible range, its value
+ is shown in decimal in the upper left corner of the graph.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Upper-case options control details of the display. All graphs
+ are affected; there is no mechanism to affect only one graph.<br>
+ <tt><font size=+1>&#8722;T</font></tt> <i>sleepsecs<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set the number of seconds between samples to <i>sleepsecs</i> (default
+ one second).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;S</font></tt> <i>scale<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Sets a scale factor for the displays. A value of 2, for example,
+ means that the highest value plotted will be twice as large as
+ the default.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;L</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Plot all graphs with logarithmic <i>y</i> axes. The graph is plotted
+ so the maximum value that would be displayed on a linear graph
+ is 2/3 of the way up the <i>y</i> axis and the total range of the graph
+ is a factor of 1000; thus the <i>y</i> origin is 1/100 of the default
+ maximum value and the top of the graph is 10 times the
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ default maximum.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;Y</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;If the display is large enough to show them, place value markers
+ along the <i>y</i> axes of the graphs. Since one set of markers serves
+ for all machines across the display, the values in the markers
+ disregard scaling factors due to multiple processors on the machines.
+ On a graph for a multiprocessor, the displayed
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ values will be larger than the markers indicate. The markers appear
+ along the right, and the markers show values appropriate to the
+ rightmost machine; this only matters for graphs such as memory
+ that have machine-specific maxima.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Typing &#8216;q&#8217; or DEL causes <i>stats</i> to exit.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Show the load, memory, interrupts, system calls, context switches,
+ and ethernet packets for the local machine, a remote BSD machine
+ <i>daemon</i>, and a remote Linux machine <i>tux</i>. <i>Auxstats</i> is not in <i>tux</i>&#8217;s
+ path, so the full path must be given.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>stats &#8722;lmisce `hostname` daemon \<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tux:/usr/local/plan9/bin/auxstats<br>
+
+ </table>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/stats.c
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>/usr/local/plan9/src/cmd/auxstats<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>auxstats</i> binary needs read access to <tt><font size=+1>/dev/kmem</font></tt> in order to
+ collect network statistics on non-Linux systems. Typically this
+ can be arranged by setting the <i>auxstat</i> binary&#8217;s group to <tt><font size=+1>kmem</font></tt>
+ and then turning on its set-gid bit.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/strings.html b/man/man1/strings.html
new file mode 100644
index 00000000..3b1f4eff
--- /dev/null
+++ b/man/man1/strings.html
@@ -0,0 +1,69 @@
+<head>
+<title>strings(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>STRINGS(1)</b><td align=right><b>STRINGS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ strings &ndash; extract printable strings<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>strings</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Strings</i> finds and prints strings containing 6 or more consecutive
+ printable UTF-encoded characters in a (typically) binary file,
+ default standard input. Printable characters are taken to be ASCII
+ characters from blank through tilde (hexadecimal 20 through 7E),
+ inclusive, and all other characters from value 00A0 to FFFF.
+ Strings reports the decimal offset within the file at which the
+ string starts and the text of the string. If the string is longer
+ than 70 runes the line is terminated by three dots and the printing
+ is resumed on the next line with the offset of the continuation
+ line.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/strings.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/nm.html"><i>nm</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/sum.html b/man/man1/sum.html
new file mode 100644
index 00000000..2b86af65
--- /dev/null
+++ b/man/man1/sum.html
@@ -0,0 +1,92 @@
+<head>
+<title>sum(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>SUM(1)</b><td align=right><b>SUM(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ sum, md5sum, sha1sum &ndash; sum and count blocks in a file<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>sum</font></tt> [ <tt><font size=+1>&#8722;5r</font></tt> ] [ <i>file ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>md5sum</font></tt> [ <i>file ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>sha1sum</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ By default, <i>sum</i> calculates and prints a 32-bit hexadecimal checksum,
+ a byte count, and the name of each <i>file</i>. The checksum is also
+ a function of the input length. If no files are given, the standard
+ input is summed. Other summing algorithms are available. The options
+ are<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Sum with the algorithm of System V&#8217;s <tt><font size=+1>sum &#8722;r</font></tt> and print the length
+ (in 1K blocks) of the input.<br>
+ <tt><font size=+1>&#8722;5</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Sum with System V&#8217;s default algorithm and print the length (in
+ 512-byte blocks) of the input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Sum</i> is typically used to look for bad spots, to validate a file
+ communicated over some transmission line or as a quick way to
+ determine if two files on different machines might be the same.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Md5sum</font></tt> computes the 32 hex digit RSA Data Security, Inc. MD5 Message-Digest
+ Algorithm described in RFC1321. If no <i>files</i> are given, the standard
+ input is summed.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Sha1sum</font></tt> computes the 40 hex digit National Institute of Standards
+ and Technology SHA1 secure hash algorithm described in FIPS PUB
+ 180-1. If no <i>files</i> are given, the standard input is summed.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/sum.c<br>
+ /usr/local/plan9/src/cmd/md5sum.c<br>
+ /usr/local/plan9/src/cmd/sha1sum.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/cmp.html"><i>cmp</i>(1)</a>, <a href="../man1/wc.html"><i>wc</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tail.html b/man/man1/tail.html
new file mode 100644
index 00000000..781f3333
--- /dev/null
+++ b/man/man1/tail.html
@@ -0,0 +1,116 @@
+<head>
+<title>tail(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TAIL(1)</b><td align=right><b>TAIL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tail &ndash; deliver the last part of a file<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tail</font></tt> [ <tt><font size=+1>+&#8722;</font></tt><i>number</i>[<tt><font size=+1>lbc</font></tt>][<tt><font size=+1>rf</font></tt>] ] [ <i>file</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>tail</font></tt> [ <tt><font size=+1>&#8722;fr</font></tt> ] [ <tt><font size=+1>&#8722;n</font></tt> <i>nlines</i> ] [ <tt><font size=+1>&#8722;c</font></tt> <i>nbytes</i> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tail</i> copies the named file to the standard output beginning at
+ a designated place. If no file is named, the standard input is
+ copied.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Copying begins at position <tt><font size=+1>+</font></tt><i>number</i> measured from the beginning,
+ or <tt><font size=+1>&#8722;</font></tt><i>number</i> from the end of the input. <i>Number</i> is counted in lines,
+ 1K blocks or bytes, according to the appended flag <tt><font size=+1>l</font></tt>, <tt><font size=+1>b</font></tt>, or <tt><font size=+1>c</font></tt>.
+ Default is <tt><font size=+1>&#8722;10l</font></tt> (ten ell).
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The further flag <tt><font size=+1>r</font></tt> causes tail to print lines from the end of
+ the file in reverse order; <tt><font size=+1>f</font></tt> (follow) causes <i>tail</i>, after printing
+ to the end, to keep watch and print further data as it appears.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The second syntax is that promulgated by POSIX, where the <i>numbers</i>
+ rather than the options are signed.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tail file<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the last 10 lines of a file.<br>
+
+ </table>
+ <tt><font size=+1>tail +0f file<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print a file, and continue to watch data accumulate as it grows.<br>
+
+ </table>
+ <tt><font size=+1>sed 10q file<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the first 10 lines of a file.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/tail.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Tails relative to the end of the file are treasured up in a buffer,
+ and thus are limited in length.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ According to custom, option <tt><font size=+1>+</font></tt><i>number</i> counts lines from 1, and counts
+ blocks and bytes from 0.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Tail</i> is ignorant of UTF.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tbl.html b/man/man1/tbl.html
new file mode 100644
index 00000000..a50e8939
--- /dev/null
+++ b/man/man1/tbl.html
@@ -0,0 +1,187 @@
+<head>
+<title>tbl(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TBL(1)</b><td align=right><b>TBL(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tbl &ndash; format tables for nroff or troff<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tbl</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tbl</i> is a preprocessor for formatting tables for <i>nroff</i> or <a href="../man1/troff.html"><i>troff</i>(1)</a>.
+ The input <i>files</i> are copied to the standard output, except for
+ segments of the form<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>.TS <br>
+ </font></tt><i>options</i> <tt><font size=+1>;<br>
+ </font></tt><i>format</i> <tt><font size=+1>.<br>
+ </font></tt><i>data <br>
+ </i><tt><font size=+1>.T&amp; <br>
+ </font></tt><i>format</i> <tt><font size=+1>.<br>
+ </font></tt><i>data <br>
+ </i>. . .<br>
+ <tt><font size=+1>.TE <br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ which describe tables and are replaced by <i>troff</i> requests to lay
+ out the tables. If no arguments are given, <i>tbl</i> reads the standard
+ input.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The (optional) <i>options</i> line is terminated by a semicolon and contains
+ one or more of<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>center</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;center the table; default is left-adjust<br>
+ <tt><font size=+1>expand</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;make table as wide as current line length<br>
+ <tt><font size=+1>box<br>
+ doublebox</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enclose the table in a box or double box<br>
+ <tt><font size=+1>allbox</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enclose every item in a box<br>
+ <tt><font size=+1>tab(</font></tt><i>x</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;use <i>x</i> to separate input items; default is tab<br>
+ <tt><font size=+1>linesize(</font></tt><i>n</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;set rules in <i>n</i>-point type<br>
+ <tt><font size=+1>delim(</font></tt><i>xy</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;recognize <i>x</i> and <i>y</i> as <a href="../man1/eqn.html"><i>eqn</i>(1)</a> delimiters<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Each line, except the last, of the obligatory <i>format</i> describes
+ one row of the table. The last line describes all rows until the
+ next <tt><font size=+1>.T&amp;</font></tt>, where the format changes, or the end of the table at
+ <tt><font size=+1>.TE</font></tt>. A format is specified by key letters, one per column, either
+ upper or lower case:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>L</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Left justify: the default for columns without format keys.<br>
+ <tt><font size=+1>R</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Right justify.<br>
+ <tt><font size=+1>C</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Center.<br>
+ <tt><font size=+1>N</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Numeric: align at decimal point (inferred for integers) or at
+ <tt><font size=+1>\&amp;</font></tt>.<br>
+ <tt><font size=+1>S</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Span: extend previous column across this one.<br>
+ <tt><font size=+1>A</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Alphabetic: left-aligned within column, widest item centered,
+ indented relative to <tt><font size=+1>L</font></tt> rows.<br>
+ <tt><font size=+1>^</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Vertical span: continue item from previous row into this row.<br>
+ <tt><font size=+1>&#8722;</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a horizontal rule in this column.<br>
+ <tt><font size=+1>=</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a double horizontal rule in this column.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Key letters may be followed by modifiers, also either case:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>|</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw vertical rule between columns.<br>
+ <tt><font size=+1>||</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a double vertical rule between columns.<br>
+ <i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gap between column is <i>n</i> ens wide. Default is 3.<br>
+ <tt><font size=+1>F</font></tt><i>font</i>&nbsp;&nbsp;&nbsp;Use specified <i>font</i>. <tt><font size=+1>B</font></tt> and <tt><font size=+1>I</font></tt> mean <tt><font size=+1>FB</font></tt> and <tt><font size=+1>FI</font></tt>.<br>
+ <tt><font size=+1>T</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Begin vertically-spanned item at top row of range; default is
+ vertical centering (with <tt><font size=+1>^</font></tt>).<br>
+ <tt><font size=+1>P</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use point size <i>n</i>.<br>
+ <tt><font size=+1>V</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use <i>n</i>-point vertical spacing in text block; signed <i>n</i> means relative
+ change.<br>
+ <tt><font size=+1>W(</font></tt><i>n</i><tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;Column width as a <i>troff</i> width specification. Parens are optional
+ if <i>n</i> is a simple integer.<br>
+ <tt><font size=+1>E</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Equalize the widths of all columns marked <tt><font size=+1>E</font></tt>.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Each line of <i>data</i> becomes one row of the table; tabs separate
+ items. Lines beginning with <tt><font size=+1>.</font></tt> are <i>troff</i> requests. Certain special
+ data items are recognized:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>_</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a horizontal rule in this column.<br>
+ <tt><font size=+1>=</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Draw a double horizontal rule in this column. A data line consisting
+ of a single <tt><font size=+1>_</font></tt> or <tt><font size=+1>=</font></tt> draws the rule across the whole table.<br>
+ <tt><font size=+1>\_</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Draw a rule only as wide as the contents of the column.<br>
+ <tt><font size=+1>\R</font></tt><i>x</i>&nbsp;&nbsp;&nbsp;Repeat character <i>x</i> across the column.<br>
+ <tt><font size=+1>\^</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Span the previous item in this column down into this row.<br>
+ <tt><font size=+1>T{</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;The item is a text block to be separately formatted by <i>troff</i>
+ and placed in the table. The block continues to the next line
+ beginning with <tt><font size=+1>T}</font></tt>. The remainder of the data line follows at that
+ point.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ When it is used in a pipeline with <i>eqn</i>, the <i>tbl</i> command should
+ be first, to minimize the volume of data passed through pipes.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Let &lt;tab&gt; represent a tab (which should be typed as a genuine tab).<br>
+ <tt><font size=+1>.TS<br>
+ c s s<br>
+ c c s<br>
+ c c c<br>
+ l n n.<br>
+ Household Population<br>
+ Town</font></tt>&lt;tab&gt;<tt><font size=+1>Households<br>
+ </font></tt>&lt;tab&gt;<tt><font size=+1>Number</font></tt>&lt;tab&gt;<tt><font size=+1>Size<br>
+ </font></tt>
+</table>
+Bedminster&lt;tab&gt;789&lt;tab&gt;3.26<br>
+Bernards Twp.&lt;tab&gt;3087&lt;tab&gt;3.74<br>
+Bernardsville&lt;tab&gt;2018&lt;tab&gt;3.30<br>
+.TE<br>
+ <br>
+ <br>
+<br>
+c s s<br>
+c c s<br>
+c c c<br>
+l n n.<br>
+Household Population<br>
+Town Households<br>
+Number &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Size<br>
+Bedminster &nbsp;&nbsp;&nbsp;789 &nbsp;&nbsp;&nbsp;3.26<br>
+Bernards Twp. 3087 &nbsp;&nbsp;&nbsp;3.74<br>
+Bernardsville 2018 &nbsp;&nbsp;&nbsp;3.30<br>
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tcs.html b/man/man1/tcs.html
new file mode 100644
index 00000000..50919607
--- /dev/null
+++ b/man/man1/tcs.html
@@ -0,0 +1,131 @@
+<head>
+<title>tcs(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TCS(1)</b><td align=right><b>TCS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tcs &ndash; translate character sets<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tcs</font></tt> [ <tt><font size=+1>&#8722;slcv</font></tt> ] [ <tt><font size=+1>&#8722;f</font></tt> <i>ics</i> ] [ <tt><font size=+1>&#8722;t</font></tt> <i>ocs</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tcs</i> interprets the named <i>file(s)</i> (standard input default) as a
+ stream of characters from the <i>ics</i> character set or format, converts
+ them to runes, and then converts them into a stream of characters
+ from the <i>ocs</i> character set or format on the standard output. The
+ default value for <i>ics</i> and <i>ocs</i> is <tt><font size=+1>utf</font></tt>, the UTF encoding
+ described in <a href="../man7/utf.html"><i>utf</i>(7)</a>. The <tt><font size=+1>&#8722;l</font></tt> option lists the character sets known
+ to <i>tcs</i>. Processing continues in the face of conversion errors
+ (the <tt><font size=+1>&#8722;s</font></tt> option prevents reporting of these errors). The <tt><font size=+1>&#8722;c</font></tt> option
+ forces the output to contain only correctly converted characters;
+ otherwise, <tt><font size=+1>0x80</font></tt> characters will be substituted for UTF
+ encoding errors and <tt><font size=+1>0xFFFD</font></tt> characters will substituted for unknown
+ characters.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The <tt><font size=+1>&#8722;v</font></tt> option generates various diagnostic and summary information
+ on standard error, or makes the <tt><font size=+1>&#8722;l</font></tt> output more verbose.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Tcs</i> recognizes an ever changing list of character sets. In particular,
+ it supports a variety of Russian and Japanese encodings. Some
+ of the supported encodings are<br>
+ <tt><font size=+1>utf</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The Plan 9 UTF encoding, known by ISO as UTF-8<br>
+ <tt><font size=+1>utf1</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The deprecated original UTF encoding from ISO 10646<br>
+ <tt><font size=+1>ascii</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7-bit ASCII<br>
+ <tt><font size=+1>8859&#8722;1</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Latin-1 (Central European)<br>
+ <tt><font size=+1>8859&#8722;2</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Latin-2 (Czech .. Slovak)<br>
+ <tt><font size=+1>8859&#8722;3</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Latin-3 (Dutch .. Turkish)<br>
+ <tt><font size=+1>8859&#8722;4</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Latin-4 (Scandinavian)<br>
+ <tt><font size=+1>8859&#8722;5</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Part 5 (Cyrillic)<br>
+ <tt><font size=+1>8859&#8722;6</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Part 6 (Arabic)<br>
+ <tt><font size=+1>8859&#8722;7</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Part 7 (Greek)<br>
+ <tt><font size=+1>8859&#8722;8</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Part 8 (Hebrew)<br>
+ <tt><font size=+1>8859&#8722;9</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Latin-5 (Finnish .. Portuguese)<br>
+ <tt><font size=+1>koi8</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;KOI-8 (GOST 19769-74)<br>
+ <tt><font size=+1>jis&#8722;kanji</font></tt>&nbsp;&nbsp;&nbsp;ISO 2022-JP<br>
+ <tt><font size=+1>ujis</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EUC-JX: JIS 0208<br>
+ <tt><font size=+1>ms&#8722;kanji</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Microsoft, or Shift-JIS<br>
+ <tt><font size=+1>jis</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(from only) guesses between ISO 2022-JP, EUC or Shift-Jis<br>
+ <tt><font size=+1>gb</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Chinese national standard (GB2312-80)<br>
+ <tt><font size=+1>big5</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Big 5 (HKU version)<br>
+ <tt><font size=+1>unicode</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Unicode Standard 1.0<br>
+ <tt><font size=+1>tis</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Thai character set plus ASCII (TIS 620-1986)<br>
+ <tt><font size=+1>msdos</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IBM PC: CP 437<br>
+ <tt><font size=+1>atari</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Atari-ST character set<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tcs &#8722;f 8859&#8722;1<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Convert 8859-1 (Latin-1) characters into UTF format.<br>
+
+ </table>
+ <tt><font size=+1>tcs &#8722;s &#8722;f jis<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Convert characters encoded in one of several shift JIS encodings
+ into UTF format. Unknown Kanji will be converted into <tt><font size=+1>0xFFFD</font></tt> characters.<br>
+
+ </table>
+ <tt><font size=+1>tcs &#8722;lv<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print an up to date list of the supported character sets.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/tcs<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/ascii.html"><i>ascii</i>(1)</a>, <a href="../man3/rune.html"><i>rune</i>(3)</a>, <a href="../man7/utf.html"><i>utf</i>(7)</a>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tee.html b/man/man1/tee.html
new file mode 100644
index 00000000..2ece532f
--- /dev/null
+++ b/man/man1/tee.html
@@ -0,0 +1,56 @@
+<head>
+<title>tee(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TEE(1)</b><td align=right><b>TEE(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tee &ndash; pipe fitting<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tee</font></tt> [ <tt><font size=+1>&#8722;i</font></tt> ] [ <tt><font size=+1>&#8722;a</font></tt> ] <i>files<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tee</i> transcribes the standard input to the standard output and
+ makes copies in the <i>files</i>. The options are<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Ignore interrupts.<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Append the output to the <i>files</i> rather than rewriting them.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/tee.c<br>
+ </font></tt>
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/test.html b/man/man1/test.html
new file mode 100644
index 00000000..0f3fa85d
--- /dev/null
+++ b/man/man1/test.html
@@ -0,0 +1,156 @@
+<head>
+<title>test(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TEST(1)</b><td align=right><b>TEST(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ test &ndash; set status according to condition<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>test</font></tt> <i>expr<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Test</i> evaluates the expression <i>expr</i>. If the value is true the exit
+ status is null; otherwise the exit status is non-null. If there
+ are no arguments the exit status is non-null.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The following primitives are used to construct <i>expr</i>.<br>
+ <tt><font size=+1>&#8722;r</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists (is accessible) and is readable.<br>
+ <tt><font size=+1>&#8722;w</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and is writable.<br>
+ <tt><font size=+1>&#8722;x</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and has execute permission.<br>
+ <tt><font size=+1>&#8722;e</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists.<br>
+ <tt><font size=+1>&#8722;f</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and is a plain file.<br>
+ <tt><font size=+1>&#8722;d</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and is a directory.<br>
+ <tt><font size=+1>&#8722;s</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and has a size greater than zero.<br>
+ <tt><font size=+1>&#8722;t</font></tt> <i>fildes</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the open file whose file descriptor number is
+ <i>fildes</i> (1 by default) is the same file as <tt><font size=+1>/dev/cons</font></tt>.<br>
+ <tt><font size=+1>&#8722;A</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and is append-only.<br>
+ <tt><font size=+1>&#8722;L</font></tt> <i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and is exclusive-use.<br>
+ <tt><font size=+1>&#8722;T</font></tt><i>file</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the file exists and is temporary.<br>
+ <i>s1</i> <tt><font size=+1>=</font></tt> <i>s2</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the strings <i>s1</i> and <i>s2</i> are identical.<br>
+ <i>s1</i> <tt><font size=+1>!=</font></tt> <i>s2</i>&nbsp;&nbsp;&nbsp;&nbsp;True if the strings <i>s1</i> and <i>s2</i> are not identical.<br>
+ s1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if <i>s1</i> is not the null string. (Deprecated.)<br>
+ <tt><font size=+1>&#8722;n</font></tt> <i>s1</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the length of string <i>s1</i> is non-zero.<br>
+ <tt><font size=+1>&#8722;z</font></tt> <i>s1</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the length of string <i>s1</i> is zero.<br>
+ <i>n1</i> <tt><font size=+1>&#8722;eq</font></tt> <i>n2</i>True if the integers <i>n1</i> and <i>n2</i> are arithmetically equal.
+ Any of the comparisons <tt><font size=+1>&#8722;ne</font></tt>, <tt><font size=+1>&#8722;gt</font></tt>, <tt><font size=+1>&#8722;ge</font></tt>, <tt><font size=+1>&#8722;lt</font></tt>, or <tt><font size=+1>&#8722;le</font></tt> may be used
+ in place of <tt><font size=+1>&#8722;eq</font></tt>. The (nonstandard) construct <tt><font size=+1>&#8722;l</font></tt> <i>string</i>, meaning
+ the length of <i>string</i>, may be used in place of an integer.<br>
+ <i>a</i> <tt><font size=+1>&#8722;nt</font></tt> <i>b</i>&nbsp;&nbsp;&nbsp;&nbsp;True if file <i>a</i> is newer than (modified after) file <i>b</i>.<br>
+ <i>a</i> <tt><font size=+1>&#8722;ot</font></tt> <i>b</i>&nbsp;&nbsp;&nbsp;&nbsp;True if file <i>a</i> is older than (modified before) file <i>b</i>.<br>
+ <i>f</i> <tt><font size=+1>&#8722;older</font></tt> <i>t</i>True if file <i>f</i> is older than (modified before) time
+ <i>t</i>. If <i>t</i> is a integer followed by the letters <tt><font size=+1>y</font></tt>(years), <tt><font size=+1>M</font></tt>(months),
+ <tt><font size=+1>d</font></tt>(days), <tt><font size=+1>h</font></tt>(hours), <tt><font size=+1>m</font></tt>(minutes), or <tt><font size=+1>s</font></tt>(seconds), it represents current
+ time minus the specified time. If there is no letter, it represents
+ seconds since epoch. You can also concatenate mixed units.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ For example, <tt><font size=+1>3d12h</font></tt> means three days and twelve hours ago.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+
+ </table>
+ These primaries may be combined with the following operators:<br>
+ <tt><font size=+1>!</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unary negation operator<br>
+ <tt><font size=+1>&#8722;o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;binary <i>or</i> operator<br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;binary <i>and</i> operator; higher precedence than <tt><font size=+1>&#8722;o<br>
+ (</font></tt> <i>expr</i> <tt><font size=+1>)</font></tt>&nbsp;&nbsp;&nbsp;parentheses for grouping.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The primitives <tt><font size=+1>&#8722;b</font></tt>, <tt><font size=+1>&#8722;u</font></tt>, <tt><font size=+1>&#8722;g</font></tt>, and <tt><font size=+1>&#8722;s</font></tt> return false; they are recognized
+ for compatibility with POSIX.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Notice that all the operators and flags are separate arguments
+ to <i>test</i>. Notice also that parentheses and equal signs are meaningful
+ to <i>rc</i> and must be enclosed in quotes.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Test</i> is a dubious way to check for specific character strings:
+ it uses a process to do what an <a href="../man1/rc.html"><i>rc</i>(1)</a> match or switch statement
+ can do. The first example is not only inefficient but wrong, because
+ <i>test</i> understands the purported string <tt><font size=+1>&quot;&#8722;c&quot;</font></tt> as an option.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>if (test $1 '=' &quot;&#8722;c&quot;) echo OK # wrong!<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ A better way is<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>if (~ $1 &#8722;c) echo OK<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Test whether <tt><font size=+1>abc</font></tt> is in the current directory.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>test &#8722;f abc &#8722;o &#8722;d abc<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/test.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/rc.html"><i>rc</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/time.html b/man/man1/time.html
new file mode 100644
index 00000000..4646754f
--- /dev/null
+++ b/man/man1/time.html
@@ -0,0 +1,63 @@
+<head>
+<title>time(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TIME(1)</b><td align=right><b>TIME(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ time &ndash; time a command<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>time</font></tt> <i>command</i> [ <i>arg ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The <i>command</i> is executed with the given arguments; after it is
+ complete, <i>time</i> reports on standard error the program&#8217;s elapsed
+ user time, system time, and real time, in seconds, followed by
+ the command line.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/time.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/prof.html"><i>prof</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/touch.html b/man/man1/touch.html
new file mode 100644
index 00000000..6e2f7f91
--- /dev/null
+++ b/man/man1/touch.html
@@ -0,0 +1,69 @@
+<head>
+<title>touch(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TOUCH(1)</b><td align=right><b>TOUCH(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ touch &ndash; set modification date of a file<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>touch</font></tt> [ <tt><font size=+1>&#8722;c</font></tt> ] [ <tt><font size=+1>&#8722;t</font></tt> <i>time</i> ] <i>file ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Touch</i> attempts to set the modification time of the <i>files</i> to <i>time</i>
+ (by default, the current time). If a <i>file</i> does not exist, it will
+ be created unless option <tt><font size=+1>&#8722;c</font></tt> is present.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/touch.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/ls.html"><i>ls</i>(1)</a>, <a href="../man3/stat.html"><i>stat</i>(3)</a>, <a href="../man1/chmod.html"><i>chmod</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Touch</i> will not touch directories.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tr.html b/man/man1/tr.html
new file mode 100644
index 00000000..dc827b3f
--- /dev/null
+++ b/man/man1/tr.html
@@ -0,0 +1,107 @@
+<head>
+<title>tr(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TR(1)</b><td align=right><b>TR(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tr &ndash; translate characters<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tr</font></tt> [ <tt><font size=+1>&#8722;cds</font></tt> ] [ <i>string1</i> [ <i>string2</i> ] ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tr</i> copies the standard input to the standard output with substitution
+ or deletion of selected characters (runes). Input characters found
+ in <i>string1</i> are mapped into the corresponding characters of <i>string2</i>.
+ When <i>string2</i> is short it is padded to the length of <i>string1</i> by
+ duplicating its last character. Any combination of the
+ options <tt><font size=+1>&#8722;cds</font></tt> may be used:<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Complement <i>string1</i>: replace it with a lexicographically ordered
+ list of all other characters.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Delete from input all characters in <i>string1</i>.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Squeeze repeated output characters that occur in <i>string2</i> to
+ single characters.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ In either string a noninitial sequence <tt><font size=+1>&#8722;</font></tt><i>x</i>, where <i>x</i> is any character
+ (possibly quoted), stands for a range of characters: a possibly
+ empty sequence of codes running from the successor of the previous
+ code up through the code for <i>x</i>. The character <tt><font size=+1>\</font></tt> followed by 1,
+ 2 or 3 octal digits stands for the character whose 16-bit
+ value is given by those digits. The character sequence <tt><font size=+1>\x</font></tt> followed
+ by 1, 2, 3, or 4 hexadecimal digits stands for the character whose
+ 16-bit value is given by those digits. A <tt><font size=+1>\</font></tt> followed by any other
+ character stands for that character.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Replace all upper-case ASCII letters by lower-case.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tr A&#8722;Z a&#8722;z &lt;mixed &gt;lower<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Create a list of all the words in <tt><font size=+1>file1</font></tt> one per line in <tt><font size=+1>file2</font></tt>,
+ where a word is taken to be a maximal string of alphabetics. <i>String2</i>
+ is given as a quoted newline.<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tr &#8722;cs A&#8722;Za&#8722;z '<br>
+ ' &lt;file1 &gt;file2<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/tr.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sed.html"><i>sed</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tr2post.html b/man/man1/tr2post.html
new file mode 100644
index 00000000..808c329b
--- /dev/null
+++ b/man/man1/tr2post.html
@@ -0,0 +1,152 @@
+<head>
+<title>tr2post(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TR2POST(1)</b><td align=right><b>TR2POST(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tr2post &ndash; convert troff intermediate to PostScript<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tr2post</font></tt> [ <tt><font size=+1>options</font></tt> ] [ <i>files ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tr2post</i> converts <i>files</i> (or standard input), which should be the
+ device-independent output of <a href="../man1/troff.html"><i>troff</i>(1)</a>, into the PostScript printer
+ language.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options are:<br>
+ <tt><font size=+1>&#8722;a</font></tt> <i>aspectratio<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set an aspect ratio (<i>y</i>/<i>x</i>) to stretch the PostScript output (default
+ 1.0).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;c</font></tt> <i>copies<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Set a comment in the PostScript output marking the number of copies
+ that should be printed. The comment is intended for ancient versions
+ of the Unix <i>lp</i>(1) and is not recognized by any current printer
+ or print spooler.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Emit volumes of debugging output on standard error.<br>
+ <tt><font size=+1>&#8722;m</font></tt> <i>magnification<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Magnify the PostScript output (default 1.0).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;n</font></tt> <i>formsperpage<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the PostScript with <i>formsperpage</i> logical pages per physical
+ page (default 1). Using this option emits PostScript with invalid
+ document structuring comments. It will print fine but will not
+ view correctly in <a href="../man1/gv.html"><i>gv</i>(1)</a> or <i>psv</i> (see <a href="../man1/page.html"><i>page</i>(1)</a>).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;o</font></tt> <i>pagelist<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print only the pages in the <i>pagelist</i>, which is a comma-separated
+ list of ranges. Each range is of the form <i>p</i> (just page <i>p</i>), <i>p</i><tt><font size=+1>&#8722;</font></tt><i>q</i>
+ (pages <i>p</i> through <i>q</i>), <tt><font size=+1>&#8722;</font></tt><i>p</i> (pages 1 through <i>p</i>), or <i>p</i><tt><font size=+1>&#8722;</font></tt> (pages <i>p</i> through
+ the end of the document).<br>
+
+ </table>
+ <tt><font size=+1>&#8722;p l</font></tt>&nbsp;&nbsp;&nbsp;Print the document in landscape mode. An argument that does
+ not begin with <tt><font size=+1>l</font></tt> will print the document in portrait mode.<br>
+ <tt><font size=+1>&#8722;x</font></tt> <i>xoffset<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Translate the page output by <i>xoffset</i> inches to the right. (Negative
+ offsets translate to the left.)<br>
+
+ </table>
+ <tt><font size=+1>&#8722;y</font></tt> <i>yoffset<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Translate the page output by <i>yoffset</i> inches down. (Negative offsets
+ translate up.)<br>
+
+ </table>
+ <tt><font size=+1>&#8722;P</font></tt> <i>pscode<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Emit the text <i>pscode</i> at the end of the usual PostScript header.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Preview this manual page:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>troff &#8722;man /usr/local/plan9/man/man1/tr2post.1 |<br>
+ tr2post |<br>
+ psfonts &gt;/tmp/a.ps<br>
+ psv /tmp/a.ps<br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/postscript/tr2post<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/troff.html"><i>troff</i>(1)</a>, <a href="../man1/psfonts.html"><i>psfonts</i>(1)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/troff.html b/man/man1/troff.html
new file mode 100644
index 00000000..a3d8477f
--- /dev/null
+++ b/man/man1/troff.html
@@ -0,0 +1,126 @@
+<head>
+<title>troff(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TROFF(1)</b><td align=right><b>TROFF(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ troff, nroff &ndash; text formatting and typesetting<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>troff</font></tt> [ <i>option ...</i> ] [ <i>file ...</i> ]
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>nroff</font></tt> [ <i>option ...</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Troff</i> formats text in the named <i>files</i> for printing on a typesetter.
+ <i>Nroff</i> does the same, but produces output suitable for typewriter-like
+ devices.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If no <i>file</i> argument is present, the standard input is read. An
+ argument consisting of a single minus (<tt><font size=+1>&#8722;</font></tt>) is taken to be a file
+ name corresponding to the standard input. The options are:<br>
+ <tt><font size=+1>&#8722;o</font></tt><i>list</i>&nbsp;&nbsp;&nbsp;Print pages in the comma-separated <i>list</i> of numbers and ranges.
+ A range <i>N</i><tt><font size=+1>&#8722;</font></tt><i>M</i> means <i>N</i> through <i>M</i>; initial <tt><font size=+1>&#8722;</font></tt><i>M</i> means up to <i>M</i>; final
+ <i>N</i><tt><font size=+1>&#8722;</font></tt> means from <i>N</i> to the end.<br>
+ <tt><font size=+1>&#8722;n</font></tt><i>N</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Number first generated page <i>N</i>.<br>
+ <tt><font size=+1>&#8722;m</font></tt><i>name</i>Process the macro file <tt><font size=+1>/sys/lib/tmac/tmac.</font></tt><i>name</i> before the
+ input <i>files</i>.<br>
+ <tt><font size=+1>&#8722;r</font></tt><i>aN</i>&nbsp;&nbsp;&nbsp;&nbsp;Set register <i>a</i> (one character name) to <i>N</i>.<br>
+ <tt><font size=+1>&#8722;i</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read standard input after the input files are exhausted.<br>
+ <tt><font size=+1>&#8722;q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoke the simultaneous input-output mode of the <tt><font size=+1>rd</font></tt> request.<br>
+ <tt><font size=+1>&#8722;N</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Produce output suitable for typewriter-like devices.<br>
+ <p><font size=+1><b>Typesetter devices (not <tt><font size=+1>&#8722;N</font></tt>) only </b></font><br>
+ <tt><font size=+1>&#8722;a</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Send a printable textual approximation of the results to the
+ standard output.<br>
+ <tt><font size=+1>&#8722;T</font></tt><i>dest</i>&nbsp;&nbsp;&nbsp;Prepare output for typesetter <i>dest</i>:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>&#8722;Tutf</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(The default.) PostScript printers with preprocessing to
+ handle Unicode characters encoded in UTF<br>
+ <tt><font size=+1>&#8722;Tpost</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Regular PostScript printers<br>
+ <tt><font size=+1>&#8722;T202</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mergenthaler Linotron 202<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>&#8722;F</font></tt><i>dir</i>&nbsp;&nbsp;&nbsp;Take font information from directory <i>dir</i>.<br>
+ <p><font size=+1><b>Typewriter (<tt><font size=+1>&#8722;N</font></tt>) output only </b></font><br>
+ <tt><font size=+1>&#8722;s</font></tt><i>N</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Halt prior to every <i>N</i> pages (default <i>N</i>=1) to allow paper loading
+ or changing.<br>
+ <tt><font size=+1>&#8722;T</font></tt><i>name</i>Prepare output for specified terminal. Known <i>names</i> include
+ <tt><font size=+1>utf</font></tt> for the normal Plan 9 UTF encoding of the Unicode Standard
+ character set (default), <tt><font size=+1>37</font></tt> for the Teletype model 37, <tt><font size=+1>lp</font></tt> (&#8216;line-printer&#8217;)
+ for any terminal without half-line capability, <tt><font size=+1>450</font></tt> for the DASI-450
+ (Diablo Hyterm), and <tt><font size=+1>think</font></tt> (HP ThinkJet).
+ <tt><font size=+1>&#8722;e</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Produce equally-spaced words in adjusted lines, using full terminal
+ resolution.<br>
+ <tt><font size=+1>&#8722;h</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use output tabs during horizontal spacing to speed output and
+ reduce output character count. Tab settings are assumed to be
+ every 8 nominal character widths.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/tmp/trtmp*</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;temporary file<br>
+ <tt><font size=+1>/usr/local/plan9/tmac/tmac.*</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;standard macro files<br>
+ <tt><font size=+1>/usr/local/plan9/troff/term/*</font></tt>&nbsp;&nbsp;&nbsp;terminal driving tables for <i>nroff<br>
+ </i><tt><font size=+1>/usr/local/plan9/troff/font/*</font></tt>&nbsp;&nbsp;&nbsp;font width tables for <i>troff<br>
+ </i>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/troff<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/lpr.html"><i>lpr</i>(1)</a>, <a href="../man1/proof.html"><i>proof</i>(1)</a>, <a href="../man1/tr2post.html"><i>tr2post</i>(1)</a>, <a href="../man1/eqn.html"><i>eqn</i>(1)</a>, <a href="../man1/tbl.html"><i>tbl</i>(1)</a>, <a href="../man1/pic.html"><i>pic</i>(1)</a>, <a href="../man1/grap.html"><i>grap</i>(1)</a>,
+ <a href="../man1/doctype.html"><i>doctype</i>(1)</a>, <a href="../man7/ms.html"><i>ms</i>(7)</a>, <a href="../man7/image.html"><i>image</i>(7)</a>, <a href="../man1/tex.html"><i>tex</i>(1)</a>, <a href="../man1/deroff.html"><i>deroff</i>(1)</a><br>
+ J. F. Ossanna and B. W. Kernighan, &#8220;Troff User&#8217;s Manual&#8221;<br>
+ B. W. Kernighan, &#8220;A TROFF Tutorial&#8221;, <i>Unix Research System Programmer&#8217;s
+ Manual,</i> Tenth Edition, Volume 2.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/troff2html.1 b/man/man1/troff2html.1
new file mode 100644
index 00000000..01bd0681
--- /dev/null
+++ b/man/man1/troff2html.1
@@ -0,0 +1,96 @@
+.TH TROFF2HTML 1
+.SH NAME
+troff2html \- convert troff output into HTML
+.SH SYNOPSIS
+.B troff2html
+[
+.B -t
+.I title
+] [
+.I file
+\ ...
+]
+.SH DESCRIPTION
+.I Troff2html
+reads the
+.IR troff (1)
+output in the named
+.IR files ,
+default standard input,
+and converts them into HTML.
+.PP
+.I Troff2html
+does a tolerable job with straight
+.B troff
+output, but it is helped by annotations, described below.
+Its main use is for
+.B man2html
+(see Plan 9's \fIhttpd\fR(8)),
+which converts
+.IR man (1)
+pages into HTML
+and depends on a specially annotated set of
+.IR man (6)
+macros, invoked by
+.B troff
+.BR -manhtml .
+.PP
+.B Troff
+output lines beginning
+.IP
+.EX
+x X html \f1...
+.EE
+.LP
+which are introduced by placing
+.B \eX'html\ \f1...\fP'
+in the
+.IR input ,
+cause the rest of the line to be interpolated into the HTML produced.
+Several such lines are recognized specially by
+.IR troff2html .
+The most important are the pair
+.IP
+.EX
+x X html manref start cp 1
+x X html manref end cp 1
+.EE
+.PP
+which are used to create HTML hyperlinks around text of the form
+.IR cp (1)
+pointing to
+.BR /magic/man2html/1/cp .
+.PP
+.I Troff2html
+is new and experimental; in time, it may improve and subsume
+.IR ms2html (1).
+On the one hand, because it uses the input,
+.B ms2html
+can handle
+.IR pic (1),
+.IR eqn (1),
+etc., which
+.I troff2html
+does not handle at all; on the other hand,
+.B ms2html
+understands only
+.IR ms (6)
+documents and is easily confused by complex
+.B troff
+constructions.
+.I Troff2html
+has the reverse properties: it does not handle the preprocessors but its output
+is reliable and (modulo helper annotations) is independent of macro package.
+.SH SEE ALSO
+.IR troff (1),
+.IR ms2html (1),
+.B man2html
+in
+.IR httpd (8).
+.SH BUGS
+.B Troff
+and HTML have different models, and they don't mesh well in all cases.
+.BR Troff 's
+indented paragraphs are not well served in HTML, and the output of
+.I troff2html
+shows this.
diff --git a/man/man1/troff2html.html b/man/man1/troff2html.html
new file mode 100644
index 00000000..77dff2d7
--- /dev/null
+++ b/man/man1/troff2html.html
@@ -0,0 +1,108 @@
+<head>
+<title>troff2html(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TROFF2HTML(1)</b><td align=right><b>TROFF2HTML(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ troff2html &ndash; convert troff output into HTML<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>troff2html</font></tt> [ <tt><font size=+1>&#8722;t</font></tt> <i>title</i> ] [ <i>file</i> ... ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Troff2html</i> reads the <a href="../man1/troff.html"><i>troff</i>(1)</a> output in the named <i>files</i>, default
+ standard input, and converts them into HTML.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Troff2html</i> does a tolerable job with straight <tt><font size=+1>troff</font></tt> output, but
+ it is helped by annotations, described below. Its main use is
+ for <tt><font size=+1>man2html</font></tt> (see Plan 9&#8217;s <i>httpd</i>(8)), which converts <a href="../man1/man.html"><i>man</i>(1)</a> pages
+ into HTML and depends on a specially annotated set of <a href="../man6/man.html"><i>man</i>(6)</a> macros,
+ invoked by <tt><font size=+1>troff &#8722;manhtml</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <tt><font size=+1>Troff</font></tt> output lines beginning<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>x X html</font></tt> ...<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ which are introduced by placing <tt><font size=+1>\X'html</font></tt> ...<tt><font size=+1>'</font></tt> in the <i>input</i>, cause
+ the rest of the line to be interpolated into the HTML produced.
+ Several such lines are recognized specially by <i>troff2html</i>. The
+ most important are the pair<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>x X html manref start cp 1<br>
+ x X html manref end cp 1<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ which are used to create HTML hyperlinks around text of the form
+ <a href="../man1/cp.html"><i>cp</i>(1)</a> pointing to <tt><font size=+1>/magic/man2html/1/cp</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Troff2html</i> is new and experimental; in time, it may improve and
+ subsume <a href="../man1/ms2html.html"><i>ms2html</i>(1)</a>. On the one hand, because it uses the input,
+ <tt><font size=+1>ms2html</font></tt> can handle <a href="../man1/pic.html"><i>pic</i>(1)</a>, <a href="../man1/eqn.html"><i>eqn</i>(1)</a>, etc., which <i>troff2html</i> does
+ not handle at all; on the other hand, <tt><font size=+1>ms2html</font></tt> understands only
+ <a href="../man6/ms.html"><i>ms</i>(6)</a> documents and is easily confused by complex
+ <tt><font size=+1>troff</font></tt> constructions. <i>Troff2html</i> has the reverse properties: it
+ does not handle the preprocessors but its output is reliable and
+ (modulo helper annotations) is independent of macro package.<br>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/troff.html"><i>troff</i>(1)</a>, <a href="../man1/ms2html.html"><i>ms2html</i>(1)</a>, <tt><font size=+1>man2html</font></tt> in <a href="../man8/httpd.html"><i>httpd</i>(8)</a>.<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>Troff</font></tt> and HTML have different models, and they don&#8217;t mesh well
+ in all cases. <tt><font size=+1>Troff</font></tt>&#8217;s indented paragraphs are not well served
+ in HTML, and the output of <i>troff2html</i> shows this.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/tweak.html b/man/man1/tweak.html
new file mode 100644
index 00000000..9d63dcd4
--- /dev/null
+++ b/man/man1/tweak.html
@@ -0,0 +1,194 @@
+<head>
+<title>tweak(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>TWEAK(1)</b><td align=right><b>TWEAK(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ tweak &ndash; edit image files, subfont files, face files, etc.<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>tweak</font></tt> [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Tweak</i> edits existing files holding various forms of images. To
+ create original images, start from an existing image, subfont,
+ etc.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Tweak</i> reads its argument <i>files</i> and displays the resulting images
+ in a vertical column. If the image is too wide to fit across the
+ display, it is folded much like a long line of text in an <i>rio</i>
+ window. Under each image is displayed one or two lines of text
+ presenting its parameters. The first line shows the image&#8217;s <tt><font size=+1>depth</font></tt>,
+ the number of bits per pixel; <tt><font size=+1>r</font></tt>, the rectangle covered by the
+ image; and the name of the <tt><font size=+1>file</font></tt> from which it was read. If the
+ file is a subfont, a second line presents a hexadecimal 16-bit
+ <tt><font size=+1>offset</font></tt> to be applied to character values from the subfont (typically
+ as stored in a font file; see <a href="../man7/font.html"><i>font</i>(7)</a>); and the subfont&#8217;s <tt><font size=+1>n</font></tt>,
+ <tt><font size=+1>height</font></tt>, and <tt><font size=+1>ascent</font></tt> as defined in <a href="../man3/cachechars.html"><i>cachechars</i>(3)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ By means described below, magnified views of portions of the images
+ may be displayed. The text associated with such a view includes
+ <tt><font size=+1>mag</font></tt>, the magnification. If the view is of a single character from
+ a subfont, the second line of text shows the character&#8217;s value
+ (including the subfont&#8217;s offset) in hexadecimal and as a
+ character in <i>tweak&#8217;s</i> default font; the character&#8217;s <tt><font size=+1>x</font></tt>, <tt><font size=+1>top</font></tt>, <tt><font size=+1>bottom</font></tt>,
+ <tt><font size=+1>left</font></tt>, and <tt><font size=+1>width</font></tt> as defined in <a href="../man3/cachechars.html"><i>cachechars</i>(3)</a>; and <tt><font size=+1>iwidth</font></tt>, the physical
+ width of the image in the subfont&#8217;s image.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ There are two methods to obtain a magnified view of a character
+ from a subfont. The first is to click mouse button 1 over the
+ image of the character in the subfont. The second is to select
+ the <tt><font size=+1>char</font></tt> entry on the button 3 menu, point the resulting gunsight
+ cursor at the desired subfont and click button 3, and then type
+ at the text prompt at the bottom of the screen the character value,
+ either as a multi-digit hexadecimal number or as a single rune
+ representing the character.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ To magnify a portion of other types of image files, click button
+ 1 over the unmagnified file. The cursor will switch to a cross.
+ Still with button 1, sweep a rectangle, as in <tt><font size=+1>rio</font></tt>, that encloses
+ the portion of the image to be magnified. (If the file is 16x16
+ or smaller, <i>tweak</i> will just magnify the entire file; no sweeping
+ is
+ necessary.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Pressing buttons 1 and 2 within magnified images changes pixel
+ values. By default, button 1 sets the pixel to all zeros and button
+ 2 sets the pixel to all ones.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Across the top of the screen is a textual display of global parameters.
+ These values, as well as many of the textual values associated
+ with the images, may be edited by clicking button 1 on the displayed
+ value and typing a new value. The values along the top of the
+ screen are:<br>
+ <tt><font size=+1>mag</font></tt>&nbsp;&nbsp;&nbsp;Default magnification.<br>
+ <tt><font size=+1>val(hex)<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The value used to modify pixels within magnified images. The value
+ must be in hexadecimal, optionally preceded by a tilde for bitwise
+ negation.<br>
+
+ </table>
+ <tt><font size=+1>but1<br>
+ but2</font></tt>The pixel value written when the corresponding button is pressed
+ over a pixel.<br>
+ <tt><font size=+1>invert&#8722;on&#8722;copy<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Whether the pixel values are inverted when a <tt><font size=+1>copy</font></tt> operation is
+ performed.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Under button 3 is a menu holding a variety of functions. Many
+ of these functions prompt for the image upon which to act by switching
+ to a gunsight cursor; click button 3 over the selection, or click
+ a different button to cancel the action.<br>
+ <tt><font size=+1>open</font></tt>Read and display a file. The name of the file is typed to
+ the prompt on the bottom line.<br>
+ <tt><font size=+1>read</font></tt>Reread a file.<br>
+ <tt><font size=+1>write<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Write a file.<br>
+
+ </table>
+ <tt><font size=+1>copy</font></tt>Use the copy function, default <tt><font size=+1>S</font></tt>, to transfer a rectangle
+ of pixels from one image to another. The program prompts with
+ a cross cursor; sweep out a rectangle in one image or just click
+ button 3 to select the whole image. The program will leave that
+ rectangle in place and attach another one to the cursor. Move
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ that rectangle to the desired place in any image and click button
+ 3, or another button to cancel the action.<br>
+
+ </table>
+ <tt><font size=+1>char</font></tt>As described above, open a magnified view of a character image
+ in a subfont.<br>
+ <tt><font size=+1>pixels<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Report the coordinate and value of individual pixels indicated
+ by pressing button 3. This is a mode of operation canceled by
+ pressing button 1 or 2.<br>
+
+ </table>
+ <tt><font size=+1>close<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Close the specified image. If the image is the unmagnified file,
+ also close any magnified views of that file.<br>
+
+ </table>
+ <tt><font size=+1>exit</font></tt>Quit <i>tweak</i>. The program will complain once about modified
+ but unwritten files.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/draw/tweak.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man3/cachechars.html"><i>cachechars</i>(3)</a>, <a href="../man7/image.html"><i>image</i>(7)</a>, <a href="../man7/font.html"><i>font</i>(7)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ For a program written to adjust width tables in fonts, <i>tweak</i> has
+ been pushed unreasonably far.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/uniq.html b/man/man1/uniq.html
new file mode 100644
index 00000000..7f0e4377
--- /dev/null
+++ b/man/man1/uniq.html
@@ -0,0 +1,79 @@
+<head>
+<title>uniq(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>UNIQ(1)</b><td align=right><b>UNIQ(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ uniq &ndash; report repeated lines in a file<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>uniq</font></tt> [ <tt><font size=+1>&#8722;udc</font></tt> [ <tt><font size=+1>+&#8722;</font></tt><i>num</i> ] ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Uniq</i> copies the input <i>file</i>, or the standard input, to the standard
+ output, comparing adjacent lines. In the normal case, the second
+ and succeeding copies of repeated lines are removed. Repeated
+ lines must be adjacent in order to be found.<br>
+ <tt><font size=+1>&#8722;u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print unique lines.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print (one copy of) duplicated lines.<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Prefix a repetition count and a tab to each output line. Implies
+ <tt><font size=+1>&#8722;u</font></tt> and <tt><font size=+1>&#8722;d</font></tt>.<br>
+ <tt><font size=+1>&#8722;</font></tt><i>num</i>The first <i>num</i> fields together with any blanks before each
+ are ignored. A field is defined as a string of non-space, non-tab
+ characters separated by tabs and spaces from its neighbors.<br>
+ <tt><font size=+1>+</font></tt><i>num</i>The first <i>num</i> characters are ignored. Fields are skipped before
+ characters.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/uniq.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/sort.html"><i>sort</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Field selection and comparison should be compatible with <a href="../man1/sort.html"><i>sort</i>(1)</a>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/units.html b/man/man1/units.html
new file mode 100644
index 00000000..fed0c287
--- /dev/null
+++ b/man/man1/units.html
@@ -0,0 +1,156 @@
+<head>
+<title>units(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>UNITS(1)</b><td align=right><b>UNITS(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ units &ndash; conversion program<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>units</font></tt> [ <tt><font size=+1>&#8722;v</font></tt> ] [ <i>file</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Units</i> converts quantities expressed in various standard scales
+ to their equivalents in other scales. It works interactively in
+ this fashion:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>you have: inch<br>
+ you want: cm<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ * 2.54<br>
+ / 0.393701<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ </table>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+
+ </table>
+
+ </table>
+ A quantity is specified as a multiplicative combination of units
+ and floating point numbers. Operators have the following precedence:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>+ &#8722; </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add and subtract<br>
+ <tt><font size=+1>* / x &#247; </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;multiply and divide<br>
+ catenation &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;multiply<br>
+ <tt><font size=+1>&sup2; &sup3; ^ </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exponentiation<br>
+ <tt><font size=+1>| </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;divide<br>
+ <tt><font size=+1>(</font></tt> ... <tt><font size=+1>) </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grouping<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ Most familiar units, abbreviations, and metric prefixes are recognized,
+ together with a generous leavening of exotica and a few constants
+ of nature including:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>pi,</font></tt>&#960; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ratio of circumference to diameter<br>
+ <tt><font size=+1>c </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;speed of light <br>
+ <tt><font size=+1>e </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;charge on an electron <br>
+ <tt><font size=+1>g </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;acceleration of gravity <br>
+ <tt><font size=+1>force </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;same as <tt><font size=+1>g <br>
+ mole </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Avogadro&#8217;s number <br>
+ <tt><font size=+1>water </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;pressure head per unit height of water <br>
+ <tt><font size=+1>au </font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;astronomical unit <br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+
+ </table>
+ The <tt><font size=+1>pound</font></tt> is a unit of mass. Compound names are run together,
+ e.g. <tt><font size=+1>lightyear</font></tt>. British units that differ from their US counterparts
+ are prefixed thus: <tt><font size=+1>brgallon</font></tt>. Currency is denoted <tt><font size=+1>belgiumfranc</font></tt>,
+ <tt><font size=+1>britainpound</font></tt>, etc.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The complete list of units can be found in <tt><font size=+1>/usr/local/plan9/lib/units</font></tt>.
+ A <i>file</i> argument to <i>units</i> specifies a file to be used instead of
+ <tt><font size=+1>/usr/local/plan9/lib/units.</font></tt> The <tt><font size=+1>&#8722;v</font></tt> flag causes <i>units</i> to print
+ its entire database.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>you have: 15 pounds force/in&sup2;<br>
+ you want: atm<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ * 1.02069<br>
+ / .97973<br>
+
+ </table>
+ </font></tt>
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/lib/units<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/units.y<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Since <i>units</i> does only multiplicative scale changes, it can convert
+ Kelvin to Rankine but not Centigrade to Fahrenheit.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Currency conversions are only as accurate as the last time someone
+ updated the database.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/vac.html b/man/man1/vac.html
new file mode 100644
index 00000000..71f121ff
--- /dev/null
+++ b/man/man1/vac.html
@@ -0,0 +1,160 @@
+<head>
+<title>vac(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>VAC(1)</b><td align=right><b>VAC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ vac &ndash; create a vac archive on Venti<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>vac</font></tt> [ <tt><font size=+1>&#8722;mqsv</font></tt> ] [ <tt><font size=+1>&#8722;b</font></tt> <i>blocksize</i> ] [ <tt><font size=+1>&#8722;d</font></tt> <i>oldvacfile</i> ] [ <tt><font size=+1>&#8722;e</font></tt> <i>exclude</i>
+ ] [ <tt><font size=+1>&#8722;f</font></tt> <i>vacfile</i> ] [ <tt><font size=+1>&#8722;i</font></tt> <i>name</i> ] [ <tt><font size=+1>&#8722;h</font></tt> <i>host</i> ] <i>file ...<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Vac</i> creates an archival copy of Plan 9 file trees on Venti. It
+ can be used to build a simple backup system. One of the unusual
+ properties of Venti is that duplicate blocks are detected and
+ coalesced. When <i>vac</i> is used on a file tree that shares data with
+ an existing archive, the consumption of storage will be approximately
+ equal to an incremental backup. This reduction in storage consumption
+ occurs transparently to the user.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ As an optimization, the <tt><font size=+1>&#8722;d</font></tt> and <tt><font size=+1>&#8722;q</font></tt> options, described below, can
+ be used to explicitly create an archive relative to an existing
+ archive. These options do not change the resulting archive generated
+ by <i>vac</i>, but simply reduce the number of write operations to Venti.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The output of <i>vac</i> is the hexadecimal representation of the Sha1
+ fingerprint of the root of the archive, in this format:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>vac:64daefaecc4df4b5cb48a368b361ef56012a4f46<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Option to <i>vac</i> are:<br>
+ <tt><font size=+1>&#8722;b</font></tt> <i>blocksize<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Specifies the block size that data will be broken into. The units
+ for the size can be specified by appending <tt><font size=+1>k</font></tt> to indicate kilobytes.
+ The default is 8k. The size must be in the range of 512 bytes
+ to 52k.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;d</font></tt> <i>oldvacfile<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Reduce the number of blocks written to Venti by comparing the
+ files to be stored with the contents of an existing <i>vac</i> file tree
+ given by <i>oldvacfile</i>.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;e</font></tt> <i>exclude<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Do not include the file or directory specified by <i>exclude</i>. This
+ option may be repeated multiple times.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;f</font></tt> <i>vacfile<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The results of <i>vac</i> are place in <i>vacfile</i>, or the standard output
+ if no file is given.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;i</font></tt> <i>name<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Include standard input as one of the input files, storing it in
+ the archive with the specified <i>name</i>.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;h</font></tt> <i>host<br>
+ </i>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The network address of the Venti server. The default is taken
+ from the environment variable <tt><font size=+1>venti</font></tt>.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;m</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Expand and merge any <i>vac</i> archives that are found while reading
+ the input files. This option is useful for building an archive
+ from a collection of existing archives. Each archive is inserted
+ into the new archive as if it had been unpacked in the directory
+ in which it was found. Multiple archives can be unpacked in
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ a single directory and the contents will be merged. To be detected,
+ the archives must end in <tt><font size=+1>.vac</font></tt>. Note, an archive is inserted by
+ simply copying the root fingerprint and does not require the archive
+ to be unpacked.<br>
+
+ </table>
+ <tt><font size=+1>&#8722;q</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Increase the performance of the <tt><font size=+1>&#8722;d</font></tt> option by detecting unchanged
+ files based on a match of the files name and other meta data,
+ rather than examining the contents of the files.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Print out various statistics on standard error.<br>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;Produce more verbose output on standard error, including the
+ name of the files added to the archive and the vac archives that
+ are expanded and merged.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/vac<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Plan 9&#8217;s <i>vacfs</i>(4) and <i>venti</i>(8)<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/wc.html b/man/man1/wc.html
new file mode 100644
index 00000000..677c2937
--- /dev/null
+++ b/man/man1/wc.html
@@ -0,0 +1,75 @@
+<head>
+<title>wc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>WC(1)</b><td align=right><b>WC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ wc &ndash; word count<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>wc</font></tt> [ <tt><font size=+1>&#8722;lwrbc</font></tt> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Wc</i> counts lines, words, runes, syntactically-invalid UTF codes
+ and bytes in the named <i>files</i>, or in the standard input if no file
+ is named. A word is a maximal string of characters delimited by
+ spaces, tabs or newlines. The count of runes includes invalid
+ codes.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ If the optional argument is present, just the specified counts
+ (lines, words, runes, broken UTF codes or bytes) are selected
+ by the letters <tt><font size=+1>l</font></tt>, <tt><font size=+1>w</font></tt>, <tt><font size=+1>r</font></tt>, <tt><font size=+1>b</font></tt>, or <tt><font size=+1>c</font></tt>. Otherwise, lines, words and bytes
+ (<tt><font size=+1>&#8722;lwc</font></tt>) are reported.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/wc.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The Unicode Standard has many blank characters scattered through
+ it, but <i>wc</i> looks for only ASCII space, tab and newline.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Wc</i> should have options to count suboptimal UTF codes and bytes
+ that cannot occur in any UTF code.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/web.html b/man/man1/web.html
new file mode 100644
index 00000000..cb0ad0b4
--- /dev/null
+++ b/man/man1/web.html
@@ -0,0 +1,115 @@
+<head>
+<title>web(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>WEB(1)</b><td align=right><b>WEB(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ web, wmail &ndash; handle web page, mail message for plumber<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>web</font></tt> <i>url</i> ...<br>
+ <tt><font size=+1>wmail</font></tt> <i>address<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Web</i> opens each of the named <i>urls</i> in a new web browser window.
+ Any of the <i>urls</i> may be relative paths to files in the file system;
+ they will be translated into <tt><font size=+1>file://</font></tt> URLs before being passed
+ to the web browser.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Web</i> uses the web browser&#8217;s <tt><font size=+1>&#8722;remote</font></tt> option command-line option,
+ which requires an instance of the web browser to be already running.
+ The choice of browser is determined by the <tt><font size=+1>$BROWSER</font></tt> environment
+ variable, which should be the name of the executable for your
+ choice of web browser. The default is
+ <tt><font size=+1>firefox</font></tt>. Since the various browsers all use different syntaxes
+ in their <tt><font size=+1>&#8722;remote</font></tt> options, the executable name is inspected to
+ determine the type of browser. The supported browsers are Opera,
+ Mozilla Firefox, Mozilla Firebird, and Mozilla. When possible,
+ <i>web</i> opens each URL in a new tab rather than a new window.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When run under Mac OS X, <tt><font size=+1>$BROWSER</font></tt> should be set to the string
+ <tt><font size=+1>safari</font></tt> or <tt><font size=+1>firefox</font></tt>. <i>Web</i> uses AppleScript to talk to the browser.
+ If <tt><font size=+1>$BROWSER</font></tt> is not set, <i>web</i> looks for Firefox in <tt><font size=+1>/Applications/Firefox.app</font></tt>
+ and uses it if found; otherwise it uses Safari.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Wmail</i> starts the composition of a new mail message to <i>address</i>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The choice of mailer is determined by the <tt><font size=+1>$MAILER</font></tt> environment
+ variable. The supported mailers are:<br>
+ <tt><font size=+1>browser<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ invoke the mailer via a <tt><font size=+1>mailto://</font></tt> URL passed to <i>web
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </i>
+
+ </table>
+ <i>Web</i> and <i>wmail</i> are invoked as start commands in the <a href="../man4/plumber.html"><i>plumber</i>(4)</a>&#8217;s
+ rules for opening web pages and writing mail messages.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/plumb/basic<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ plumbing rules using <i>web</i> and <i>wmail<br>
+ </i>
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man4/plumber.html"><i>plumber</i>(4)</a><br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/wintext.html b/man/man1/wintext.html
new file mode 100644
index 00000000..d4de3349
--- /dev/null
+++ b/man/man1/wintext.html
@@ -0,0 +1,124 @@
+<head>
+<title>wintext(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>WINTEXT(1)</b><td align=right><b>WINTEXT(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ wintext, &quot;, &quot;&quot; &ndash; access text in current window<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>wintext<br>
+ ?? </font></tt> [ <i>prefix</i> ]<br>
+ <tt><font size=+1>???? </font></tt> [ <i>prefix</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Wintext</i> prints the text of the current <i>win</i> (see <a href="../man1/acme.html"><i>acme</i>(1)</a>) or <a href="../man1/9term.html"><i>9term</i>(1)</a>
+ window to standard output.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>?? </i> searches the window text for commands typed with a particular
+ prefix and prints them, indented, to standard output. <i>Prefix</i> is
+ a regular expression that is matched against the beginning of
+ the command-line. If <i>prefix</i> is omitted, <i>?? </i> prints the last command
+ executed. <i>???? </i> prints the last command that <i>?? </i> would print and
+ then executes it by piping it into <a href="../man1/rc.html"><i>rc</i>(1)</a>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Both <i>?? </i> and <i>???? </i> identify commands in the window text by looking for
+ lines beginning with a shell prompt. Prompts are assumed to be
+ an unindented sequence of non-whitespace characters followed by
+ one of the characters <tt><font size=+1>%</font></tt>, <tt><font size=+1>;</font></tt>, <tt><font size=+1>$</font></tt>, or <tt><font size=+1>#</font></tt>.<br>
+
+</table>
+<p><font size=+1><b>EXAMPLES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Print the <a href="../man1/ls.html"><i>ls</i>(1)</a> and <i>lc</i> commands executed in this window:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% ?? 'l[sc]'<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ % ls &#8722;l /tmp/qq*<br>
+ # ls &#8722;lrt /etc<br>
+ % lc r*<br>
+
+ </table>
+ %<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+
+ </table>
+ Execute the most recent <i>lc</i> command again:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>% ???? lc<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ % lc r*<br>
+
+ </table>
+ ramfs &nbsp;&nbsp;&nbsp;&nbsp;rc &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;read &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rio &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rm<br>
+ % <br>
+ </font></tt>
+ </table>
+
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/9term.html"><i>9term</i>(1)</a>, <a href="../man1/acme.html"><i>acme</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/bin<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>?? </i> and <i>???? </i> are hard to type in shells other than <a href="../man1/rc.html"><i>rc</i>(1)</a>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/xd.html b/man/man1/xd.html
new file mode 100644
index 00000000..86e6152e
--- /dev/null
+++ b/man/man1/xd.html
@@ -0,0 +1,99 @@
+<head>
+<title>xd(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>XD(1)</b><td align=right><b>XD(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ xd &ndash; hex, octal, decimal, or ASCII dump<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>xd</font></tt> [ <i>option ...</i> ] [ <tt><font size=+1>&#8722;</font></tt><i>format ...</i> ] [ <i>file ...</i> ]<br>
+
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Xd</i> concatenates and dumps the <i>files</i> (standard input by default)
+ in one or more formats. Groups of 16 bytes are printed in each
+ of the named formats, one format per line. Each line of output
+ is prefixed by its address (byte offset) in the input file. The
+ first line of output for each group is zero-padded; subsequent
+ are
+ blank-padded.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Formats other than <tt><font size=+1>&#8722;c</font></tt> are specified by pairs of characters telling
+ size and style, <tt><font size=+1>4x</font></tt> by default. The sizes are<br>
+ <tt><font size=+1>1</font></tt> or <tt><font size=+1>b</font></tt>&nbsp;&nbsp;&nbsp;1-byte units.<br>
+ <tt><font size=+1>2</font></tt> or <tt><font size=+1>w</font></tt>&nbsp;&nbsp;&nbsp;2-byte big-endian units.<br>
+ <tt><font size=+1>4</font></tt> or <tt><font size=+1>l</font></tt>&nbsp;&nbsp;&nbsp;4-byte big-endian units.<br>
+ <tt><font size=+1>8</font></tt> or <tt><font size=+1>v</font></tt>&nbsp;&nbsp;&nbsp;8-byte big-endian units.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The styles are<br>
+ <tt><font size=+1>o</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Octal.<br>
+ <tt><font size=+1>x</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hexadecimal.<br>
+ <tt><font size=+1>d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Decimal.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Other options are<br>
+ <tt><font size=+1>&#8722;c</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Format as <tt><font size=+1>1x</font></tt> but print ASCII representations or C escape sequences
+ where possible.<br>
+ <tt><font size=+1>&#8722;a</font></tt><i>style</i>&nbsp;&nbsp;&nbsp;Print file addresses in the given style (and size 4).<br>
+ <tt><font size=+1>&#8722;u</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(Unbuffered) Flush the output buffer after each 16-byte sequence.<br>
+ <tt><font size=+1>&#8722;s</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Reverse (swab) the order of bytes in each group of 4 before
+ printing.<br>
+ <tt><font size=+1>&#8722;r</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print repeating groups of identical 16-byte sequences as the
+ first group followed by an asterisk.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/xd.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/db.html"><i>db</i>(1)</a><br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The various output formats don&#8217;t line up properly in the output
+ of <i>xd</i>.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>
diff --git a/man/man1/yacc.html b/man/man1/yacc.html
new file mode 100644
index 00000000..1a485ce6
--- /dev/null
+++ b/man/man1/yacc.html
@@ -0,0 +1,170 @@
+<head>
+<title>yacc(1) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>YACC(1)</b><td align=right><b>YACC(1)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ yacc &ndash; yet another compiler-compiler<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>yacc</font></tt> [ <i>option ...</i> ] <i>grammar<br>
+ </i>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Yacc</i> converts a context-free grammar and translation code into
+ a set of tables for an LR(1) parser and translator. The grammar
+ may be ambiguous; specified precedence rules are used to break
+ ambiguities.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The output file, <tt><font size=+1>y.tab.c</font></tt>, must be compiled by the C compiler to
+ produce a program <tt><font size=+1>yyparse</font></tt>. This program must be loaded with a
+ lexical analyzer function, <tt><font size=+1>yylex(void)</font></tt> (often generated by <a href="../man1/lex.html"><i>lex</i>(1)</a>),
+ with a <tt><font size=+1>main(int &nbsp;&nbsp;&nbsp;argc, &nbsp;&nbsp;&nbsp;char &nbsp;&nbsp;&nbsp;*argv[])</font></tt> program, and with an error
+ handling routine,
+ <tt><font size=+1>yyerror(char*)</font></tt>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The options are<br>
+ <tt><font size=+1>&#8722;o</font></tt> <i>output</i>&nbsp;&nbsp;&nbsp;Direct output to the specified file instead of <tt><font size=+1>y.tab.c</font></tt>.<br>
+ <tt><font size=+1>&#8722;D</font></tt><i>n</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create file <tt><font size=+1>y.debug</font></tt>, containing diagnostic messages. To incorporate
+ them in the parser, compile it with preprocessor symbol <tt><font size=+1>yydebug</font></tt>
+ defined. The amount of diagnostic output from the parser is regulated
+ by value <i>n</i>. The value 0 reports errors; 1 reports reductions;
+ higher values (up to 4) include
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ more information about state transitions.<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>&#8722;v</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create file <tt><font size=+1>y.output</font></tt>, containing a description of the parsing
+ tables and of conflicts arising from ambiguities in the grammar.<br>
+ <tt><font size=+1>&#8722;d</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create file <tt><font size=+1>y.tab.h</font></tt>, containing <tt><font size=+1>#define</font></tt> statements that associate
+ <i>yacc</i>-assigned &#8216;token codes&#8217; with user-declared &#8216;token names&#8217;.
+ Include it in source files other than <tt><font size=+1>y.tab.c</font></tt> to give access to
+ the token codes.<br>
+ <tt><font size=+1>&#8722;s</font></tt> <i>stem</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Change the prefix <tt><font size=+1>y</font></tt> of the file names <tt><font size=+1>y.tab.c</font></tt>, <tt><font size=+1>y.tab.h</font></tt>,
+ <tt><font size=+1>y.debug</font></tt>, and <tt><font size=+1>y.output</font></tt> to <i>stem</i>.<br>
+ <tt><font size=+1>&#8722;S</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Write a parser that uses Stdio instead of the <tt><font size=+1>print</font></tt> routines
+ in libc.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ The specification of <i>yacc</i> itself is essentially the same as the
+ UNIX version described in the references mentioned below. Besides
+ the <tt><font size=+1>&#8722;D</font></tt> option, the main relevant differences are:<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The interface to the C environment is by default through <tt><font size=+1>&lt;libc.h&gt;</font></tt>
+ rather than <tt><font size=+1>&lt;stdio.h&gt;</font></tt>; the <tt><font size=+1>&#8722;S</font></tt> option reverses this.<br>
+ The parser accepts UTF input text (see <a href="../man7/utf.html"><i>utf</i>(7)</a>), which has a couple
+ of effects. First, the return value of <tt><font size=+1>yylex()</font></tt> no longer fits
+ in a <tt><font size=+1>short</font></tt>; second, the starting value for non-terminals is now
+ 0xE000 rather than 257.<br>
+ The generated parser can be recursive: actions can call <i>yyparse</i>,
+ for example to implement a sort of <tt><font size=+1>#include</font></tt> statement in an interpreter.<br>
+ Finally, some undocumented inner workings of the parser have been
+ changed, which may affect programs that know too much about its
+ structure.<br>
+
+ </table>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>y.output<br>
+ y.tab.c<br>
+ y.tab.h<br>
+ y.debug<br>
+ y.tmp.*</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;temporary file<br>
+ <tt><font size=+1>y.acts.*</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;temporary file<br>
+ <tt><font size=+1>/usr/local/plan9/lib/yaccpar<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ parser prototype<br>
+
+ </table>
+
+ </table>
+ <tt><font size=+1>/usr/local/plan9/lib/yaccpars<br>
+ </font></tt>
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ parser prototype using stdio<br>
+
+ </table>
+
+ </table>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/cmd/yacc.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man1/lex.html"><i>lex</i>(1)</a><br>
+ S. C. Johnson and R. Sethi, &#8220;Yacc: A parser generator&#8221;, <i>Unix Research
+ System Programmer&#8217;s Manual,</i> Tenth Edition, Volume 2<br>
+ B. W. Kernighan and Rob Pike, <i>The UNIX Programming Environment,</i>
+ Prentice Hall, 1984<br>
+
+</table>
+<p><font size=+1><b>BUGS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ The parser may not have full information when it writes to <tt><font size=+1>y.debug</font></tt>
+ so that the names of the tokens returned by <tt><font size=+1>yylex</font></tt> may be missing.<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>