aboutsummaryrefslogtreecommitdiff
path: root/man/man1
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2005-01-13 04:49:19 +0000
committerrsc <devnull@localhost>2005-01-13 04:49:19 +0000
commitc8b6342d3c2a167dec16931815926e9e4387e7ef (patch)
tree80d3ec6ea074462b30639168113def880476dad6 /man/man1
parent741f510ce758f77ed5193256fb693a09a7daecce (diff)
downloadplan9port-c8b6342d3c2a167dec16931815926e9e4387e7ef.tar.gz
plan9port-c8b6342d3c2a167dec16931815926e9e4387e7ef.tar.bz2
plan9port-c8b6342d3c2a167dec16931815926e9e4387e7ef.zip
Many small edits.
Diffstat (limited to 'man/man1')
-rw-r--r--man/man1/0intro.1300
-rw-r--r--man/man1/9c.159
-rw-r--r--man/man1/9p.14
-rw-r--r--man/man1/9term.138
-rw-r--r--man/man1/INDEX9
-rw-r--r--man/man1/acid.110
-rw-r--r--man/man1/acme.125
-rw-r--r--man/man1/acmeevent.186
-rw-r--r--man/man1/ascii.111
-rw-r--r--man/man1/astro.17
-rw-r--r--man/man1/bc.16
-rw-r--r--man/man1/bundle.14
-rw-r--r--man/man1/cal.12
-rw-r--r--man/man1/calendar.16
-rw-r--r--man/man1/cat.12
-rw-r--r--man/man1/colors.155
-rw-r--r--man/man1/core.13
-rw-r--r--man/man1/date.12
-rw-r--r--man/man1/db.18
-rw-r--r--man/man1/dc.18
-rw-r--r--man/man1/deroff.12
-rw-r--r--man/man1/dict.110
-rw-r--r--man/man1/diff.12
-rw-r--r--man/man1/doctype.113
-rw-r--r--man/man1/ed.12
-rw-r--r--man/man1/fortune.16
-rw-r--r--man/man1/grap.16
-rw-r--r--man/man1/grep.11
-rw-r--r--man/man1/idiff.115
-rw-r--r--man/man1/join.12
-rw-r--r--man/man1/kill.110
-rw-r--r--man/man1/lex.12
-rw-r--r--man/man1/look.15
-rw-r--r--man/man1/ls.13
-rw-r--r--man/man1/man.19
-rw-r--r--man/man1/map.12
-rw-r--r--man/man1/mk.169
-rw-r--r--man/man1/namespace.13
-rw-r--r--man/man1/news.121
-rw-r--r--man/man1/page.110
-rw-r--r--man/man1/plumb.18
-rw-r--r--man/man1/proof.15
-rw-r--r--man/man1/ps.12
-rw-r--r--man/man1/rc.13
-rw-r--r--man/man1/sam.117
-rw-r--r--man/man1/scat.118
-rw-r--r--man/man1/secstore.1138
-rw-r--r--man/man1/sed.16
-rw-r--r--man/man1/sort.16
-rw-r--r--man/man1/spell.14
-rw-r--r--man/man1/stats.120
-rw-r--r--man/man1/tail.14
-rw-r--r--man/man1/troff.18
-rw-r--r--man/man1/units.111
-rw-r--r--man/man1/vac.11
-rw-r--r--man/man1/wc.12
-rw-r--r--man/man1/web.122
-rw-r--r--man/man1/wintext.132
-rw-r--r--man/man1/yacc.12
59 files changed, 802 insertions, 345 deletions
diff --git a/man/man1/0intro.1 b/man/man1/0intro.1
new file mode 100644
index 00000000..610e7911
--- /dev/null
+++ b/man/man1/0intro.1
@@ -0,0 +1,300 @@
+.TH INTRO 1
+.SH NAME
+intro \- introduction to Plan 9 from User Space
+.SH DESCRIPTION
+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
+.B http://plan9.bell-labs.com/plan9
+and runs on PCs and a variety of other platforms.
+Plan 9 became a convenient platform for experimenting
+with new ideas, applications, and services.
+.PP
+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).
+.SS Commands
+Plan 9 from User Space expects its own directory tree,
+conventionally
+.BR /usr/local/plan9 .
+When programs need to access files in the tree,
+they expect the
+.B $PLAN9
+environment variable
+to contain the name of the root of the tree.
+See
+.IR install (8)
+for details about installation.
+.PP
+Many of the familiar Unix commands,
+for example
+.IR cat (1),
+.IR ls (1),
+and
+.IR wc (1),
+are present, but in their Plan 9 forms:
+.I cat
+takes no arguments,
+.I ls
+does not columnate its output when printing to a terminal,
+and
+.I wc
+counts UTF characters.
+In some cases, the differences are quite noticeable:
+.IR grep (1)
+and
+.IR sed (1)
+expect Plan 9 regular expressions
+(see
+.IR regexp (7)),
+which are closest to what Unix calls extended regular expressions.
+Because of these differences, it is not recommended to put
+.B $PLAN9/bin
+before the usual system
+.B bin
+directories in your search path.
+Instead, put it at the end of your path and use the
+.IR 9 (1)
+script when you want to invoke the Plan 9 version of a
+traditional Unix command.
+.PP
+Occasionally the Plan 9 programs have been
+changed to adapt to Unix.
+.IR Mk (1)
+now allows mkfiles to choose their own shell,
+and
+.IR rc (1)
+has a
+.I ulimit
+builtin and manages
+.BR $PATH .
+.PP
+Many of the graphical programs from Plan 9 are present,
+including
+.IR sam (1)
+and
+.IR acme (1).
+An X11 window manager
+.IR rio (1)
+mimics Plan 9's window system, with command windows
+implemented by the external program
+.IR 9term (1).
+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
+.B -W
+option to specify the size and placement of the new window.
+The argument is one of
+\fIwidth\^\^\fLx\fI\^\^height\fR,
+\fIwidth\^\^\fLx\fI\^\^height\^\^\fL@\fI\^\^xmin\fL,\fIxmax\fR,
+\fL'\fIxmin ymin xmax ymax\fL'\fR,
+\fRor
+\fIxmin\fL,\fIymin\fL,\fIxmax\fL,\fIymax\fR.
+.PP
+The
+.IR plumber (4)
+helps to connect the various Plan 9 programs together,
+and fittings like
+.IR web (1)
+connect it to external programs such as web browsers;
+one can click on a URL in
+.I acme
+and see the page load in
+.IR Firefox .
+.SS User-level file servers
+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.
+.PP
+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
+.IR 9pclient (3)
+library.
+.IR Intro (4)
+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
+.IR 9p (1)
+client can be used in shell scripts or by hand to carry out
+simple interactions with servers.
+.SS Programming
+The shell scripts
+.I 9c
+and
+.I 9l
+(see
+.IR 9c (1))
+provide a simple interface to the underlying system compiler and linker,
+similar to the
+.I 2c
+and
+.I 2l
+families on Plan 9.
+.I 9c
+compiles source files, and
+.I 9l
+links object files into executables.
+When using Plan 9 libraries,
+.I 9l
+infers the correct set of libraries from the object files,
+so that no
+.B -l
+options are needed.
+.PP
+The only way to write multithreaded programs is to use the
+.IR thread (3)
+library.
+.IR Rfork (3)
+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
+.IR intro (3)
+for details.
+.PP
+The debuggers
+.IR acid (1)
+and
+.IR db (1)
+and the debugging library
+.IR mach (3)
+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
+and
+.I db
+can be relied upon to produce reasonable stack traces
+(often in cases when GNU
+.I gdb
+cannot)
+and dump data structures,
+but that it is the extent to which they have been developed and exercised.
+.SS External databases
+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
+.B $PLAN9/dict/README
+and
+.BR $PLAN9/sky/README .
+.SS Porting programs
+The vast majority of the familiar Plan 9 programs
+have been ported, including the Unicode-aware
+.IR troff (1).
+.PP
+Of the more recent additions to Plan 9,
+the
+.IR secstore (1)
+client has been ported, though
+.I secstored
+has not.
+.IR Vac (1)
+has been ported, though
+.I vacfs
+has not.
+.IR Factotum
+and
+.IR venti
+are in progress.
+.PP
+A backup system providing a dump file system built atop Venti
+is also in progress.
+.SS Porting to new systems
+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
+.BR <u.h> ,
+which must include the right system files and
+set up the right integer type definitions,
+and
+.IR libthread ,
+which must implement spin locks, operating system thread
+creation, and context switching routines.
+Portable implementations of these using
+.B <pthread.h>
+and
+.B <ucontext.h>
+already exist. If your system supports them, you may not
+need to write any system specific code at all.
+.PP
+There are other smaller system dependencies,
+such as the terminal handling code in
+.IR 9term (1)
+and the implementation of
+.IR getcallerpc (3),
+but these are usually simple and are not on the critical
+path for getting the system up and running.
+.SS SEE ALSO
+The system's documentation is these manual pages.
+Many of the man pages have been brought from Plan 9,
+but they have been updated, and others have been written from scratch.
+.PP
+The manual pages are in a Unix style tree, with names like
+.B $PLAN9/man/man1/cat.1
+instead of Plan 9's simpler
+.BR $PLAN9/man/1/cat ,
+so that the Unix
+.IR man (1)
+utility can handle it.
+Some systems, for example Debian Linux,
+deduce the man page locations from the search path, so that
+adding
+.B $PLAN9/bin
+to your path is sufficient to cause
+.B $PLAN9/man
+to be consulted for manual pages using the system
+.IR man .
+On other systems, or to look at manual pages with the
+same name as a system page,
+invoke the Plan 9
+.I man
+directly, as in
+.B 9
+.B man
+.BR cat .
+.PP
+The manual sections follow the Unix numbering conventions,
+not the Plan 9 ones.
+.PP
+Section (1) describes general publicly accessible commands.
+.PP
+Section (3) describes C library functions.
+.PP
+Section (4) describes user-level file servers.
+.PP
+Section (7) describes file formats and protocols.
+(On Unix, section (5) is technically for file formats but
+seems now to be used for describing specific files.)
+.PP
+Section (8) describes commands used for system administration.
+.PP
+Section (9p) describes the Plan 9 file protocol 9P.
+.SH DIAGNOSTICS
+In Plan 9, a program'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
+.IR exits (3).
diff --git a/man/man1/9c.1 b/man/man1/9c.1
index 4281b81f..fb04a296 100644
--- a/man/man1/9c.1
+++ b/man/man1/9c.1
@@ -3,6 +3,14 @@
9c, 9a, 9l, 9ar \- C compiler, assembler, linker, archiver
.SH SYNOPSIS
.B 9c
+[
+.B -I
+.I path
+]
+[
+.B -D
+.I name
+]
.I file
\&...
.PP
@@ -26,7 +34,7 @@
\&...
]
[
-.BI -l library
+.BI -l name
\&...
]
.PP
@@ -49,12 +57,24 @@ One can use them to write portable recipes for mkfiles.
compiles the named C
.I files
into object files for the current system.
-The system C compiler is invoked with warnings enabled,
-with the symbol
+The system C compiler is invoked with warnings enabled.
+The
+.B -I
+option adds
+.I path
+to the include path,
+and the
+.B -D
+option defines
+.I name
+in the C preprocessor.
+.I 9c
+always
+defines the symbol
.B PLAN9PORT
-is defined in the C preprocessor, and with
+defined in the C preprocessor and adds
.B $PLAN9/include
-on the include path.
+to the include path.
.PP
.I 9c
also defines
@@ -74,7 +94,7 @@ links the named object files and libraries to create the target executable.
Each
.B -l
option specifies that a library named
-.BI lib library .a
+.BI lib name .a
be found and linked.
The
.B -L
@@ -84,6 +104,30 @@ invokes the system linker with
.B $PLAN9/lib
already on the library search path.
.PP
+.I 9l
+searches the named objects and libraries for symbols of the form
+.BI __p9l_autolib_ name \fR,
+which it takes as indication that it should link
+.BI $PLAN9/lib/lib name .a
+as well.
+It also examines such libraries to find their own dependencies.
+A single
+.B -l
+option at the beginning of the command line disables this behavior.
+The symbol
+.BI __p9l_autolib_ name
+is added to an object file by the macro
+.B AUTOLIB( name )\fR,
+defined in
+.B <u.h>.
+Header files associated with libraries contain
+.B AUTOLIB
+annotations; ordinary programs need not use them.
+Due to shortcomings in the implementation, a source file may not
+contain the same
+.B AUTOLIB
+statement multiple times.
+.PP
.I 9ar
maintains object file archives called libraries.
The exact set of valid command keys varies from system to system,
@@ -154,7 +198,7 @@ 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.
-.SH EXAMPLE
+.SH EXAMPLES
.TP
.L
9c file1.c file2.c file3.c
@@ -167,6 +211,7 @@ Assemble one assembler source file.
.L
9ar rvc lib.a file[12].o
Archive the first two object files into a library.
+.TP
.L
9l -o prog file3.o file4.o lib.a
Link the final two object files and any necessary objects from the library
diff --git a/man/man1/9p.1 b/man/man1/9p.1
index a90ac4d2..017dc0ef 100644
--- a/man/man1/9p.1
+++ b/man/man1/9p.1
@@ -110,9 +110,7 @@ cat $HOME/lib/plumbing | 9p write plumb/rules
.PP
To display the contents of the current
.IR acme (4)
-window (specified by the environment variable
-.BR $winid )
-on standard output:
+window:
.IP
.EX
9p read acme/$winid/body
diff --git a/man/man1/9term.1 b/man/man1/9term.1
index 9a8d0f77..9441dc84 100644
--- a/man/man1/9term.1
+++ b/man/man1/9term.1
@@ -1,6 +1,6 @@
.TH 9TERM 1
.SH NAME
-9term, label \- terminal windows
+9term \- terminal windows
.SH SYNOPSIS
.B 9term
[
@@ -14,14 +14,11 @@
.I cmd
\&...
]
-.PP
-.B label
-.I name
.SH DESCRIPTION
.I 9term
is a terminal window program for the X Window System,
providing an interface similar to that used on Plan 9.
-.SS Commands
+.SS Command
The
.I 9term
command starts a new window.
@@ -59,15 +56,6 @@ if set; otherwise it uses the graphics system default.
runs the given command in the window, or
.B $SHELL
if no command is given.
-.PP
-The
-.I label
-command changes a window's identifying name by
-echoing a special control code that both
-.I 9term
-and
-.IR xterm (1)
-understand.
.SS Text windows
Characters typed on the keyboard
collect in the window to form
@@ -152,7 +140,7 @@ 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.
-Like newlines, unread EOTs may be successfully edited out of the text.
+.\" Like newlines, unread EOTs may be successfully edited out of the text.
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.
@@ -202,6 +190,10 @@ before (after) the current selection.
relies on the kernel's terminal processing to handle
EOT and DEL, so the terminal must be set up with EOT
as the ``eof'' character and DEL as the ``intr'' character.
+.I 9term
+runs
+.IR stty (1)
+to establish this when the terminal is created.
.PP
Normally, written output to a window blocks when
the text reaches the end of the screen and the terminal
@@ -214,7 +206,7 @@ the terminal settings of the running programs.
Most programs run with echo enabled.
In this mode,
.I 9term
-display and allows editing of the input.
+displays and allows editing of the input.
Some programs, typically those reading passwords,
run with echo disabled.
In this mode,
@@ -279,9 +271,23 @@ 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's diagnostic.
+.PP
+Each
+.I 9term
+listens for connections on a Unix socket.
+When a client connects, the
+.I 9term
+writes the window contents to the client and then hangs up.
+.I 9term
+installs the name of this socket in the environment as
+.B $text9term
+before running
+.IR cmd .
.SH SOURCE
.B \*9/src/cmd/9term
.SH BUGS
There should be a program to toggle the current window's hold mode.
.PP
Unix makes everything harder.
+.SH SEE ALSO
+.IR wintext (1)
diff --git a/man/man1/INDEX b/man/man1/INDEX
index 0f751659..fcd708c7 100644
--- a/man/man1/INDEX
+++ b/man/man1/INDEX
@@ -1,10 +1,12 @@
+0intro 0intro.1
+intro 0intro.1
+9 9.1
9a 9c.1
9ar 9c.1
9c 9c.1
9l 9c.1
9p 9p.1
9term 9term.1
-label 9term.1
acid acid.1
acidtypes acid.1
acme acme.1
@@ -27,13 +29,12 @@ cleanname cleanname.1
auxclog clog.1
clog clog.1
cmp cmp.1
+cmapcube colors.1
colors colors.1
-getmap colors.1
comm comm.1
core core.1
crop crop.1
iconv crop.1
-clock date.1
date date.1
db db.1
dc dc.1
@@ -93,6 +94,7 @@ lc ls.1
ls ls.1
lookman man.1
man man.1
+sig man.1
map map.1
mapd map.1
mapdemo map.1
@@ -142,7 +144,6 @@ scat scat.1
aescbc secstore.1
ipso secstore.1
secstore secstore.1
-9sed sed.1
sed sed.1
seq seq.1
sleep sleep.1
diff --git a/man/man1/acid.1 b/man/man1/acid.1
index b1f2cd0b..e76aeb25 100644
--- a/man/man1/acid.1
+++ b/man/man1/acid.1
@@ -4,7 +4,7 @@ acid, acidtypes \- debugger
.SH SYNOPSIS
.B acid
[
-.BI -l " libfile
+.BI -l " library
]
[
.B -wq
@@ -49,7 +49,7 @@ 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's text file
-.RB ( 8.out
+.RB ( a.out
by default).
At the prompt,
.I acid
@@ -514,13 +514,13 @@ for processes that are still active.
.SH BUGS
There is no way to redirect the standard input and standard output
of a new process.
-.br
+.PP
Source line selection near the beginning of a file may pick
an adjacent file.
-.br
+.PP
With the extant stepping commands, one cannot step through instructions
outside the text segment and it is hard to debug across process forks.
-.br
+.PP
Breakpoints do not work yet.
Therefore, commands such as
.BR step ,
diff --git a/man/man1/acme.1 b/man/man1/acme.1
index 56a6dfd6..df01fcad 100644
--- a/man/man1/acme.1
+++ b/man/man1/acme.1
@@ -71,7 +71,7 @@ The
.RB ( -F )
option sets the main font, usually variable-pitch (alternate, usually fixed-pitch);
the default is
-.B /lib/font/bit/lucidasans/euro.8.font
+.B /usr/local/plan9/font/lucidasans/euro.8.font
.RB ( \&.../lucm/unicode.9.font ).
Tab intervals are set to the width of 4 (or the value of
.BR $tabstop )
@@ -140,7 +140,7 @@ temporarily hiding other windows in the column.
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 `dirty':
-.I Acme
+.I acme
believes it is modified from its original
contents.
.PP
@@ -455,26 +455,31 @@ 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
-.B /adm/users
+.B /etc/passwd
executing
.B pwd
will produce the output
-.B /adm
+.B /etc
in a (possibly newly-created) window labeled
-.BR /adm/+Errors ;
+.BR /etc/+Errors ;
in a window containing
-.B \*9/src/cmd/sam/sam.c
+.B /home/rob/sam/sam.c
executing
.B mk
will run
.IR mk (1)
in
-.BR \*9/src/cmd/sam ,
+.BR /home/rob/sam ,
producing output in a window labeled
-.BR \*9/src/cmd/sam/+Errors .
+.BR /home/rob/sam/+Errors .
The environment of such commands contains the variable
.B $%
-with value set to the filename of the window in which the command is run.
+with value set to the filename of the window in which the command is run,
+and
+.B $winid
+set to the window's id number
+(see
+.IR acme (4)).
.SS "Mouse button 3
Pointing at text with button 3 instructs
.I acme
@@ -586,7 +591,7 @@ creates a new
window and runs a
.I command
(default
-.BR /bin/rc )
+.BR $SHELL )
in it, turning the window into something analogous to an
.IR rio (1)
window.
diff --git a/man/man1/acmeevent.1 b/man/man1/acmeevent.1
index 31103d6d..d5ff0830 100644
--- a/man/man1/acmeevent.1
+++ b/man/man1/acmeevent.1
@@ -132,32 +132,92 @@ and
a button 2 action in the tag
.RB ( x ).
.TP
-.I q0
-
+.I q0\fR, \fPq1
+The character addresses of the action.
.TP
+.I eq0\fR, \fPq1
+The expanded character addresses of the action.
+If the text indicated by
+.IR q0 ,
.I q1
-
-.TP
-.I eq0
-
-.TP
+is a null string that has a non-null expansion,
+.IR eq0 ,
.I eq1
-
+are the addresses of the expansion.
+Otherwise they are the same as
+.IR q0 ,
+.IR q1 .
.TP
.I flag
-
+.I Flag
+is a bitwise OR (reported decimally) of the following:
+1 if the text indicated is recognized as an
+.I acme
+built-in command;
+2 if the text indicated is a null string that has a non-null expansion
+(see
+.IR eq0 ,
+.I eq1
+above);
+8 if the command has an extra (chorded) argument
+(see
+.I chordarg
+below).
+.I Flag
+remains from the
+.IR acme (4)
+event format.
+Because
+.IR eq0 ,
+.IR eq1 ,
+and
+.I chordarg
+are explicit in each event
+(unlike in
+.IR acme (4)
+events),
+.I flag
+can usually be ignored.
.TP
.I textlen
-
+The length of the action text (or its expansion) for button 2 and button 3 events in characters.
.TP
.I text
-
+If
+.I textlen
+is less than 256 chracters,
+.I text
+is the action text itself.
+Otherwise it is an empty string and must be read from the
+.B data
+file.
.TP
.I chordarg
-
+The chorded argument for an action.
.TP
.I chordorigin
-
+If the chord argument is in the body of a named window,
+.I chordorigin
+specifies the full address of the argument,
+as in
+.BR /etc/group:#123,#234 .
+.PD
+.PP
+To experiment with
+.IR acmeevent ,
+create an empty window in
+.I acme
+(using
+.IR New ), type
+.IP
+.EX
+9p read acme/$winid/event | acmeevent
+.EE
+.LP
+inside it, and execute it.
+Actions performed on the window will be printed as events in the
+.B +Errors
+window.
.PP
.I Acme.rc
is a library of
diff --git a/man/man1/ascii.1 b/man/man1/ascii.1
index d145e048..0857805e 100644
--- a/man/man1/ascii.1
+++ b/man/man1/ascii.1
@@ -39,7 +39,7 @@ ascii, unicode \- interpret ASCII, Unicode characters
.PP
.B look
.I hex
-.B /lib/unicode
+.B \*9/lib/unicode
.SH DESCRIPTION
.I Ascii
prints the
@@ -122,7 +122,7 @@ and
may be unhelpful if the characters printed are not available in the current font.
.PP
The file
-.B /lib/unicode
+.B \*9/lib/unicode
contains a
table of characters and descriptions, sorted in hexadecimal order,
suitable for
@@ -143,19 +143,18 @@ Print the hex value of `p'.
.B "unicode 2200-22f1"
Print a table of miscellaneous mathematical symbols.
.TP
-.B "look 039 /lib/unicode"
+.B "look 039 \*9/lib/unicode"
See the start of the Greek alphabet's encoding in the Unicode Standard.
.SH FILES
-.TF /lib/unicode
.TP
-.B /lib/unicode
+.B \*9/lib/unicode
table of characters and descriptions.
.SH SOURCE
.B \*9/src/cmd/ascii.c
.br
.B \*9/src/cmd/unicode.c
.SH "SEE ALSO"
-.IR look (1)
+.IR look (1),
.IR tcs (1),
.IR utf (7),
.IR font (7)
diff --git a/man/man1/astro.1 b/man/man1/astro.1
index be6241d1..af5e7afa 100644
--- a/man/man1/astro.1
+++ b/man/man1/astro.1
@@ -35,7 +35,7 @@ A prompt gives the input format.
If
.B l
is missing, the initial position is read from the file
-.BR /lib/sky/here .
+.BR \*9/sky/here .
.TP
.B c
Report for
@@ -105,12 +105,11 @@ 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).
.SH FILES
-.TF /lib/sky/estartab
.TP
-.B /lib/sky/estartab
+.B \*9/sky/estartab
ecliptic star data
.TP
-.B /lib/sky/here
+.B \*9/sky/here
default latitude (N), longitude (W), and elevation (meters)
.SH SOURCE
.B \*9/src/cmd/astro
diff --git a/man/man1/bc.1 b/man/man1/bc.1
index bd180a56..57194340 100644
--- a/man/man1/bc.1
+++ b/man/man1/bc.1
@@ -267,7 +267,7 @@ define e(x) {
for(i=1; i<=10; i++) print e(i)
.EE
.SH FILES
-.B /sys/lib/bclib
+.B \*9/lib/bclib
mathematical library
.SH SOURCE
.B \*9/src/cmd/bc.y
@@ -281,12 +281,12 @@ No
or
.L !
operators.
-.br
+.PP
A
.L for
statement must have all three
.LR E s.
-.br
+.PP
A
.L quit
is interpreted when read, not when executed.
diff --git a/man/man1/bundle.1 b/man/man1/bundle.1
index 977ea4cc..36bcd8d0 100644
--- a/man/man1/bundle.1
+++ b/man/man1/bundle.1
@@ -41,7 +41,7 @@ say in
then do
.TP
.L
-cd gift; rc horse; mk
+cd gift; sh horse; mk
.SH SOURCE
.B \*9/bin/bundle
.SH SEE ALSO
@@ -53,5 +53,5 @@ cd gift; rc horse; mk
.SH BUGS
.I Bundle
will not create directories and is unsatisfactory for non-text files.
-.br
+.PP
Beware of gift horses.
diff --git a/man/man1/cal.1 b/man/man1/cal.1
index 0709a5dc..2ccb24f8 100644
--- a/man/man1/cal.1
+++ b/man/man1/cal.1
@@ -39,7 +39,7 @@ Try
.SH BUGS
The year is always considered to start in January even though this
is historically naive.
-.br
+.PP
Beware that
.L "cal 90"
refers to the early Christian era,
diff --git a/man/man1/calendar.1 b/man/man1/calendar.1
index 9a9e20eb..14c6f911 100644
--- a/man/man1/calendar.1
+++ b/man/man1/calendar.1
@@ -15,7 +15,7 @@ calendar \- print upcoming events
.SH DESCRIPTION
.I Calendar
reads the named files, default
-.BR /usr/$user/lib/calendar ,
+.BR $HOME/lib/calendar ,
and writes to standard output any lines
containing today's or tomorrow's date.
Examples of recognized date formats are
@@ -45,9 +45,9 @@ On Friday and Saturday, events through Monday are printed.
To have your calendar mailed to you every day, use
.IR cron (8).
.SH FILES
-.TF /usr/$user/lib/calendar
+.TF $HOME/lib/calendar
.TP
-.B /usr/$user/lib/calendar
+.B $HOME/lib/calendar
personal calendar
.SH SOURCE
.B \*9/src/cmd/calendar.c
diff --git a/man/man1/cat.1 b/man/man1/cat.1
index f758bebe..0738206a 100644
--- a/man/man1/cat.1
+++ b/man/man1/cat.1
@@ -17,7 +17,7 @@ cat, read, nobs \- catenate files
.I file ...
]
.br
-nobs
+.B nobs
[
.I file ...
]
diff --git a/man/man1/colors.1 b/man/man1/colors.1
index d72b5bff..9e850621 100644
--- a/man/man1/colors.1
+++ b/man/man1/colors.1
@@ -1,6 +1,6 @@
.TH COLORS 1
.SH NAME
-getmap, colors \- display color map
+colors, cmapcube \- display color map
.SH SYNOPSIS
.PP
.B colors
@@ -9,16 +9,13 @@ getmap, colors \- display color map
.B -x
]
.PP
-.B getmap
+.B cmapcube
[
-.I colormap
+.B -nbw
]
.SH DESCRIPTION
.I Colors
-presents a grid showing the colors in the current color map.
-If the display is true color,
-.I colors
-shows a grid of the RGBV color map
+presents a grid showing the colors in the RGBV color map
(see
.IR color (7)).
.PP
@@ -37,36 +34,22 @@ option instead shows, in the same form, a grey-scale ramp.
.PP
A menu on mouse button 3 contains a single entry, to exit the program.
.PP
-On 8-bit color-mapped displays,
-.I getmap
-loads the display's color map (default
-.BR rgbv ).
-The named
-.I colormap
-can be a file in the current directory or in the standard repository
-.BR /lib/cmap .
-It can also be a string of the form
-.B gamma
-or
-.BI gamma N\f1 ,
-where
-.I N
-is a floating point value for the gamma, defining the contrast for a monochrome map.
-Similarly,
-.B rgamma
+.I Cmapcube
+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.
+.PP
+The
+.B -n
+option disables drawing of the color squares.
+The
+.B -b
and
-.BI rgamma N
-define a reverse-video monochrome map.
-Finally, the names
-.B screen
-or
-.B display
-or
-.B vga
-are taken as synonyms for the current color map stored in the display hardware.
-.SH FILES
-.B /lib/cmap
-directory of color map files
+.B -w
+options set the background (default grey)
+to black or white.
.SH SOURCE
.B \*9/src/cmd/draw/colors.c
.SH SEE ALSO
diff --git a/man/man1/core.1 b/man/man1/core.1
index c051386b..df56c922 100644
--- a/man/man1/core.1
+++ b/man/man1/core.1
@@ -44,3 +44,6 @@ searches the current directory.
.IR acid (1),
.IR db (1),
.IR core (5)
+.SH BUGS
+.I Core
+has not been written.
diff --git a/man/man1/date.1 b/man/man1/date.1
index 1936e428..1ce96f38 100644
--- a/man/man1/date.1
+++ b/man/man1/date.1
@@ -1,6 +1,6 @@
.TH DATE 1
.SH NAME
-date, clock \- date and time
+date \- date and time
.SH SYNOPSIS
.B date
[
diff --git a/man/man1/db.1 b/man/man1/db.1
index fafa7198..38c8fc14 100644
--- a/man/man1/db.1
+++ b/man/man1/db.1
@@ -912,14 +912,6 @@ To set a breakpoint at the beginning of
.B write()
in extant process 27:
.IP
-.de EX
-.RS
-.ft B
-.nf
-..
-.de EE
-.RE
-..
.EX
% db 27
:h
diff --git a/man/man1/dc.1 b/man/man1/dc.1
index d6bc35c0..5394580a 100644
--- a/man/man1/dc.1
+++ b/man/man1/dc.1
@@ -223,15 +223,15 @@ results are truncated to the following scales.
\fLv\fR max(\fIs,sa\fR)
.fi
.SH EXAMPLES
+.LP
+Print the first ten values of
+.IR n !
+.IP
.EX
[la1+dsa*pla10>y]sy
0sa1
lyx
.EE
-.ns
-.IP
-Print the first ten values of
-.IR n !
.SH SOURCE
.B \*9/src/cmd/dc.c
.SH "SEE ALSO"
diff --git a/man/man1/deroff.1 b/man/man1/deroff.1
index 89116011..9d159f9e 100644
--- a/man/man1/deroff.1
+++ b/man/man1/deroff.1
@@ -112,6 +112,6 @@ when the popular
delimiters for
.I eqn
are in effect.
-.br
+.PP
Text inside macros is emitted at place of
definition, not place of call.
diff --git a/man/man1/dict.1 b/man/man1/dict.1
index de987d97..0c26f38d 100644
--- a/man/man1/dict.1
+++ b/man/man1/dict.1
@@ -182,12 +182,10 @@ it starts with the
.BI /adict/ dict /
window.
.SH FILES
-.B /lib/dict/oed2
-.br
-.B /lib/dict/oed2index
-.br
-Other files in
-.BR /lib .
+.TP
+.B \*9/dict
+dictionaries
+.PD
.SH "SEE ALSO"
.IR regexp (7)
.SH SOURCE
diff --git a/man/man1/diff.1 b/man/man1/diff.1
index 8d3289ec..237fc57b 100644
--- a/man/man1/diff.1
+++ b/man/man1/diff.1
@@ -148,7 +148,7 @@ Editing scripts produced under the
.BR -e " or"
.BR -f " option are naive about"
creating lines consisting of a single `\fB.\fR'.
-.br
+.PP
When running
.I diff
on directories, the notion of what is a text
diff --git a/man/man1/doctype.1 b/man/man1/doctype.1
index 02a36010..da33653a 100644
--- a/man/man1/doctype.1
+++ b/man/man1/doctype.1
@@ -4,8 +4,13 @@ doctype \- intuit command line for formatting a document
.SH SYNOPSIS
.B doctype
[
-.I option ...
-] [
+.B -n
+]
+[
+.B -T
+.I dev
+]
+[
.I file
]
\&...
@@ -32,7 +37,9 @@ invokes
.I nroff
instead of
.IR troff .
-Other options are passed to
+The
+.B -T
+option is passed to
.IR troff .
.SH EXAMPLES
.TP
diff --git a/man/man1/ed.1 b/man/man1/ed.1
index d218d651..00eb095a 100644
--- a/man/man1/ed.1
+++ b/man/man1/ed.1
@@ -49,7 +49,7 @@ commands.
If no
.I file
is given, make
-.B /fd/1
+.B /dev/stdout
the remembered file; see the
.L e
command below.
diff --git a/man/man1/fortune.1 b/man/man1/fortune.1
index 8c9c562c..96c64b1a 100644
--- a/man/man1/fortune.1
+++ b/man/man1/fortune.1
@@ -13,11 +13,11 @@ If a
.I file
is specified, the saying is taken from that file;
otherwise it is selected from
-.BR /sys/games/lib/fortunes .
+.BR \*9/lib/fortunes .
.SH FILES
-.B /sys/games/lib/fortunes
+.B \*9/lib/fortunes
.br
-.B /sys/games/lib/fortunes.index
+.B \*9/lib/fortunes.index
\ \ fast lookup table, maintained automatically
.SH SOURCE
.B \*9/src/cmd/fortune.c
diff --git a/man/man1/grap.1 b/man/man1/grap.1
index d9dae3f9..beda727d 100644
--- a/man/man1/grap.1
+++ b/man/man1/grap.1
@@ -254,7 +254,7 @@ symbols like
.BR star ,
.BR plus ,
etc., in
-.BR /sys/lib/grap.defines ,
+.BR \*9/lib/grap.defines ,
which is included if it exists.
.PP
.I var
@@ -399,9 +399,9 @@ copy thru / circle at $1,$2 /
.vs
.EE
.SH FILES
-.TF /sys/lib/grap.defines
+.TF \*9/lib/grap.defines
.TP
-.B /sys/lib/grap.defines
+.B \*9/lib/grap.defines
definitions of standard plotting characters, e.g., bullet
.SH SOURCE
.B \*9/src/cmd/grap
diff --git a/man/man1/grep.1 b/man/man1/grep.1
index 7ae84a91..52550b0e 100644
--- a/man/man1/grep.1
+++ b/man/man1/grep.1
@@ -10,6 +10,7 @@ grep, g \- search a file for a pattern
[
.I file ...
]
+.PP
.B g
[
.I option ...
diff --git a/man/man1/idiff.1 b/man/man1/idiff.1
index fda84584..e8d37615 100644
--- a/man/man1/idiff.1
+++ b/man/man1/idiff.1
@@ -14,7 +14,8 @@ interactively
merges
.I file1
and
-.IR file2 .
+.I file2
+onto standard output.
Wherever
.I file1
and
@@ -23,7 +24,8 @@ differ,
.I idiff
displays the differences in the style of
.RB `` diff
-.RB -n ''
+.BR -n ''
+on standard error
and prompts the user to select a chunk.
Valid responses are:
.TP
@@ -54,9 +56,10 @@ The
.B -b
and
.B -w
-flags
-are simply
-passed through to
+flags,
+if passed,
+are
+passed to
.IR diff .
.SH FILES
.B /tmp/idiff.*
@@ -68,5 +71,3 @@ passed through to
Kernighan and Pike,
.IR "The Unix Programming Environment" ,
Prentice-Hall, 1984.
-.SH BUGS
-This is a poorly-written manual page.
diff --git a/man/man1/join.1 b/man/man1/join.1
index 6b0eeee3..1c0ec9f9 100644
--- a/man/man1/join.1
+++ b/man/man1/join.1
@@ -143,5 +143,5 @@ with
the sequence is that of
.BI "sort -t" x
.BI -k y , y\f1.
-.br
+.PP
One of the files must be randomly accessible.
diff --git a/man/man1/kill.1 b/man/man1/kill.1
index 5719f16e..5b61d8a1 100644
--- a/man/man1/kill.1
+++ b/man/man1/kill.1
@@ -13,11 +13,6 @@ kill, slay, start, stop \- print commands to manipulate processes
.PP
.B stop
.I name ...
-.PP
-.B broke
-[
-.I user
-]
.SH DESCRIPTION
.I Kill
prints commands that will cause all processes with
@@ -67,3 +62,8 @@ signal.
.SH "SEE ALSO"
.IR ps (1),
.IR notify (3)
+.SH BUGS
+.I Stop
+and
+.I start
+should limit themselves to currently running or stopped processes.
diff --git a/man/man1/lex.1 b/man/man1/lex.1
index c0f43e3a..6955e791 100644
--- a/man/man1/lex.1
+++ b/man/man1/lex.1
@@ -77,5 +77,5 @@ Tenth Edition, Volume 2.
.SH BUGS
Cannot handle
.SM UTF.
-.br
+.PP
The asteroid to kill this dinosaur is still in orbit.
diff --git a/man/man1/look.1 b/man/man1/look.1
index ddd50af4..02d2cb4b 100644
--- a/man/man1/look.1
+++ b/man/man1/look.1
@@ -77,10 +77,9 @@ is assumed, with collating sequence
.IR grep (1)
.SH DIAGNOSTICS
The exit status is
-.B \&"not found"
+.RB `` "not found" ''
if no match is found, and
-.B \&"no dictionary"
+.RB `` "no dictionary" ''
if
.I file
or the default dictionary cannot be opened.
-
diff --git a/man/man1/ls.1 b/man/man1/ls.1
index 96877b84..e4c950c5 100644
--- a/man/man1/ls.1
+++ b/man/man1/ls.1
@@ -157,6 +157,5 @@ if none of the above permissions is granted.
.br
.B \*9/bin/lc
.SH SEE ALSO
-.IR stat (3)
+.IR stat (3),
.IR mc (1)
-
diff --git a/man/man1/man.1 b/man/man1/man.1
index 8b83e974..f2ecb7d3 100644
--- a/man/man1/man.1
+++ b/man/man1/man.1
@@ -1,6 +1,6 @@
.TH MAN 1
.SH NAME
-man, lookman \- print or find pages of this manual
+man, lookman, sig \- print or find pages of this manual
.SH SYNOPSIS
.B man
[
@@ -88,17 +88,20 @@ command to make an index for a given section
index for
.I lookman
.SH SOURCE
-.B \*9/bin/9man
+.B \*9/bin/man
.br
.B \*9/bin/lookman
.SH "SEE ALSO"
+.IR page (1),
.IR proof (1)
.SH BUGS
The manual was intended to be typeset; some detail is sacrificed on text terminals.
.PP
There is no automatic mechanism to keep the indices up to date.
.PP
-Except for special cases, it doesn't recognize things that should be run through
+Except for special cases,
+.I man
+doesn't recognize things that should be run through
.I tbl
and/or
.IR eqn .
diff --git a/man/man1/map.1 b/man/man1/map.1
index a2d09854..c0320021 100644
--- a/man/man1/map.1
+++ b/man/man1/map.1
@@ -634,7 +634,7 @@ maps for
.B /lib/map/*.x
map indexes
.TP
-.B /bin/aux/mapd
+.B mapd
Map driver program
.SH SOURCE
.B \*9/src/cmd/map
diff --git a/man/man1/mk.1 b/man/man1/mk.1
index 59b1d0ea..caa2d176 100644
--- a/man/man1/mk.1
+++ b/man/man1/mk.1
@@ -1,21 +1,4 @@
.TH MK 1
-.de EX
-.nf
-.ft B
-..
-.de EE
-.fi
-.ft R
-..
-.de LR
-.if t .BR \\$1 \\$2
-.if n .RB ` \\$1 '\\$2
-..
-.de L
-.nh
-.if t .B \\$1
-.if n .RB ` \\$1 '
-..
.SH NAME
mk, membername \- maintain (make) related files
.SH SYNOPSIS
@@ -313,6 +296,7 @@ and any command line assignment as an argument to
.IR mk .
A variable assignment argument overrides the first (but not any subsequent)
assignment to that variable.
+.PP
The variable
.B MKFLAGS
contains all the option arguments (arguments starting with
@@ -324,6 +308,45 @@ and
contains all the targets in the call to
.IR mk .
.PP
+The variable
+.B MKSHELL
+contains the shell command line
+.I mk
+uses to run recipes.
+If the first word of the command ends in
+.B rc
+or
+.BR rcsh ,
+.I mk
+uses
+.IR rc (1)'s
+quoting rules; otherwise it uses
+.IR sh (1)'s.
+The
+.B MKSHELL
+variable is consulted when the mkfile is read, not when it is executed,
+so that different shells can be used within a single mkfile:
+.IP
+.EX
+MKSHELL=$PLAN9/bin/rc
+use-rc:V:
+ for(i in a b c) echo $i
+
+MKSHELL=sh
+use-sh:V:
+ for i in a b c; do echo $i; done
+.EE
+.LP
+Mkfiles included via
+.B <
+or
+.B <|
+.RI ( q.v. )
+see their own private copy of
+.BR MKSHELL ,
+which always starts set to
+.B sh .
+.PP
Dynamic information may be included in the mkfile by using a line of the form
.IP
\fR<|\fIcommand\fR \fIargs\fR
@@ -510,6 +533,7 @@ archives.
.I Membername
echoes just the member names of a list of aggregate names.
It is useful in recipes like:
+.IP
.EX
OFILES=a.o b.o
libc.a(%):N: %
@@ -647,7 +671,7 @@ x.tab.h:Pcmp -s: y.tab.h
.EE
.SH SEE ALSO
.IR sh (1),
-.IR regexp9 (7)
+.IR regexp (7)
.PP
A. Hume,
``Mk: a Successor to Make''
@@ -664,19 +688,18 @@ It was later ported to Plan 9.
This software is a port of the Plan 9 version back to Unix.
.SH BUGS
Identical recipes for regular expression meta-rules only have one target.
-.br
+.PP
Seemingly appropriate input like
.B CFLAGS=-DHZ=60
is parsed as an erroneous attribute; correct it by inserting
a space after the first
.LR = .
-.br
+.PP
The recipes printed by
.I mk
before being passed to
-.I sh
+the shell
for execution are sometimes erroneously expanded
for printing. Don't trust what's printed; rely
-on what
-.I sh
+on what the shell
does.
diff --git a/man/man1/namespace.1 b/man/man1/namespace.1
index 763d9e16..e02a6509 100644
--- a/man/man1/namespace.1
+++ b/man/man1/namespace.1
@@ -11,4 +11,5 @@ See
.SH SOURCE
.B \*9/src/cmd/namespace.c
.SH SEE ALSO
-.IR getns (3)
+.IR getns (3),
+.IR intro (4)
diff --git a/man/man1/news.1 b/man/man1/news.1
index bd9faf25..f3c2aa4d 100644
--- a/man/man1/news.1
+++ b/man/man1/news.1
@@ -35,13 +35,13 @@ Other arguments
select particular news items.
.PP
To post a news item, create a file in
-.BR /lib/news .
-.PP
-You may arrange to receive news automatically by
-registering your mail address in
-.BR /sys/lib/subscribers .
-A daemon mails recent news
-to all addresses on the list.
+.BR \*9/news .
+.\" .PP
+.\" You may arrange to receive news automatically by
+.\" registering your mail address in
+.\" .BR /sys/lib/subscribers .
+.\" A daemon mails recent news
+.\" to all addresses on the list.
.PP
Empty news items, and news items named
.B core
@@ -49,15 +49,14 @@ or
.B dead.letter
are ignored.
.SH FILES
-.TF /sys/lib/subscribers
.TP
-.B /lib/news/*
+.B \*9/news/*
articles
.TP
.B $HOME/lib/newstime
modify time is time news was last read
-.TP
-.B /sys/lib/subscribers
+.\" .TP
+.\" .B /sys/lib/subscribers
who gets news mailed to them
.SH SOURCE
.B \*9/src/cmd/news.c
diff --git a/man/man1/page.1 b/man/man1/page.1
index 609cd07a..d3208027 100644
--- a/man/man1/page.1
+++ b/man/man1/page.1
@@ -49,7 +49,7 @@ To view troff output, use
.IR proof (1).
.SH "SEE ALSO
.IR gs (1),
-.IR gv (1)
+.IR gv (1),
.IR jpg (1),
.IR proof (1),
.IR tex (1),
@@ -64,3 +64,11 @@ When using Preview on Mac OS X,
leaves temporary files in
.BR /var/tmp ,
since it has no way to know when the viewer has exited.
+.PP
+.I Page
+does not handle
+Plan 9
+.IR image (7)
+files; use
+.I img
+explicitly.
diff --git a/man/man1/plumb.1 b/man/man1/plumb.1
index 4885b903..3fa16252 100644
--- a/man/man1/plumb.1
+++ b/man/man1/plumb.1
@@ -76,14 +76,10 @@ will add an
.B action=showdata
attribute to the message.
.SH FILES
-.TF /usr/$user/lib/plumbing
+.TF $HOME/lib/plumbing
.TP
-.B /usr/$user/lib/plumbing
+.B $HOME/lib/plumbing
default rules file
-.TP
-.B /mnt/plumb
-mount point for
-.IR plumber (4).
.SH SOURCE
.B \*9/src/cmd/plumb
.SH "SEE ALSO"
diff --git a/man/man1/proof.1 b/man/man1/proof.1
index 27662d03..2a1de084 100644
--- a/man/man1/proof.1
+++ b/man/man1/proof.1
@@ -115,12 +115,11 @@ and
.B d
commands are also available as command line options.
.SH FILES
-.TF /lib/font/bit/MAP
.TP
-.B /lib/font/bit/*
+.B \*9/font/*
fonts
.TP
-.B /lib/font/bit/MAP
+.B \*9/font/MAP
how to convert troff output fonts and character names
into screen fonts and character numbers
.SH SOURCE
diff --git a/man/man1/ps.1 b/man/man1/ps.1
index 7c23c183..bb655d18 100644
--- a/man/man1/ps.1
+++ b/man/man1/ps.1
@@ -81,7 +81,7 @@ performing the named system call.
waiting for more of a critical
.IR resource .
.TP
-.BI wchan
+.I wchan
waiting on the named wait channel
(on a Unix kernel).
.PD
diff --git a/man/man1/rc.1 b/man/man1/rc.1
index f89b8f37..e35d6258 100644
--- a/man/man1/rc.1
+++ b/man/man1/rc.1
@@ -765,8 +765,7 @@ The string for a variable entry has the variable's name followed by
.B =
and its value.
If the value has more than one component, these
-are separated by SOH
-.RB ( '\e001' )
+are separated by SOH (001)
characters.
The string for a function is just the
.I rc
diff --git a/man/man1/sam.1 b/man/man1/sam.1
index be66d042..b9d46d88 100644
--- a/man/man1/sam.1
+++ b/man/man1/sam.1
@@ -19,6 +19,9 @@ sam, B, E, sam.save, samterm, samsave \- screen editor with structural regular e
.B B
.IB file \fR[\fP: line \fR]
\&...
+.PP
+.B E
+.I file
.SH DESCRIPTION
.I Sam
is a multi-file editor.
@@ -845,7 +848,7 @@ It runs
.I B
on
.I file
-and then waits to exit until
+and then does not exit until
.I file
is changed, which is taken as a signal that
.I file
@@ -858,22 +861,22 @@ terminates other than by a
command (by hangup, deleting its window, etc.), modified
files are saved in an
executable file,
-.BR $home/sam.save .
+.BR $HOME/sam.save .
This program, when executed, asks whether to write
each file back to a external file.
The answer
.L y
causes writing; anything else skips the file.
.SH FILES
-.TF \*9/src/cmd/samterm
+.TF $HOME/sam.save
.TP
-.B $home/sam.save
+.B $HOME/sam.save
.TP
-.B $home/sam.err
+.B $HOME/sam.err
.TP
.B \*9/bin/samsave
the program called to unpack
-.BR $home/sam.save .
+.BR $HOME/sam.save .
.SH SOURCE
.TF \*9/src/cmd/samterm
.TP
@@ -886,6 +889,8 @@ itself
source for the separate terminal part
.TP
.B \*9/bin/B
+.TP
+.B \*9/bin/E
.SH SEE ALSO
.IR ed (1),
.IR sed (1),
diff --git a/man/man1/scat.1 b/man/man1/scat.1
index f5ee8972..57369ab5 100644
--- a/man/man1/scat.1
+++ b/man/man1/scat.1
@@ -124,7 +124,7 @@ The output is the planet's name, right ascension and declination, azimuth and al
for the moon and sun, as shown by
.BR astro .
The positions are current at the start of
-.I scat 's
+.IR scat 's
execution; see the
.B astro
command in the next section for more information.
@@ -313,20 +313,20 @@ Draw a map of the Pleiades.
expand 1
plot
.EE
-.PP
-Show a pretty galaxy.
-.EX
- ngc1300
- plate 10'
-.EE
+.\" .PP
+.\" Show a pretty galaxy.
+.\" .EX
+.\" ngc1300
+.\" plate 10'
+.\" .EE
.SH FILES
-.B /lib/sky/*.scat
+.B \*9/sky/*.scat
.SH SOURCE
.B \*9/src/cmd/scat
.SH SEE ALSO
.IR astro (1)
.br
-.B /lib/sky/constelnames\ \
+.B \*9/sky/constelnames\ \
the three-letter abbreviations of the constellation names.
.PP
The data was provided by the Astronomical Data Center at the NASA Goddard
diff --git a/man/man1/secstore.1 b/man/man1/secstore.1
index b50fc324..fb4bcd34 100644
--- a/man/man1/secstore.1
+++ b/man/man1/secstore.1
@@ -127,70 +127,70 @@ 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.
-.PP
-The
-.I ipso
-command packages this sequence into a convenient script to simplify editing of
-.I files
-stored on a secure store.
-It copies the named
-.I files
-into a local
-.IR ramfs (4)
-and invokes
-.IR acme (1)
-on them. When the editor exits,
-.I ipso
-prompts the user to confirm copying modifed or newly created files back to
-.I secstore.
-If no
-.I file
-is mentioned,
-.I ipso
-grabs all the user's files from
-.I secstore
-for editing.
-.PP
-By default, ipso will edit the
-.I secstore
-files and, if
-one of them is named
-.BR factotum ,
-flush your current keys from factotum and load
-the new ones from the file.
-If you supply any of the
-.BR -e ,
-.BR -f ,
-or
-.BR -l
-options,
-.I ipso
-will just perform the operations you requested, i.e.,
-edit, flush, and/or load.
-.PP
-The
-.B -s
-option of
-.I ipso
-invokes
-.IR sam (1)
-as the editor insted of
-.BR acme ;
-the
-.B -a
-option provides a similar service for files encrypted by
-.I aescbc
-.RI ( q.v. ).
-With the
-.B -a
-option, the full rooted pathname of the
-.I file
-must be specified and all
-.I files
-must be encrypted with the same key.
-Also with
-.BR -a ,
-newly created files are ignored.
+.\" .PP
+.\" The
+.\" .I ipso
+.\" command packages this sequence into a convenient script to simplify editing of
+.\" .I files
+.\" stored on a secure store.
+.\" It copies the named
+.\" .I files
+.\" into a local
+.\" .IR ramfs (4)
+.\" and invokes
+.\" .IR acme (1)
+.\" on them. When the editor exits,
+.\" .I ipso
+.\" prompts the user to confirm copying modifed or newly created files back to
+.\" .I secstore.
+.\" If no
+.\" .I file
+.\" is mentioned,
+.\" .I ipso
+.\" grabs all the user's files from
+.\" .I secstore
+.\" for editing.
+.\" .PP
+.\" By default, ipso will edit the
+.\" .I secstore
+.\" files and, if
+.\" one of them is named
+.\" .BR factotum ,
+.\" flush your current keys from factotum and load
+.\" the new ones from the file.
+.\" If you supply any of the
+.\" .BR -e ,
+.\" .BR -f ,
+.\" or
+.\" .BR -l
+.\" options,
+.\" .I ipso
+.\" will just perform the operations you requested, i.e.,
+.\" edit, flush, and/or load.
+.\" .PP
+.\" The
+.\" .B -s
+.\" option of
+.\" .I ipso
+.\" invokes
+.\" .IR sam (1)
+.\" as the editor insted of
+.\" .BR acme ;
+.\" the
+.\" .B -a
+.\" option provides a similar service for files encrypted by
+.\" .I aescbc
+.\" .RI ( q.v. ).
+.\" With the
+.\" .B -a
+.\" option, the full rooted pathname of the
+.\" .I file
+.\" must be specified and all
+.\" .I files
+.\" must be encrypted with the same key.
+.\" Also with
+.\" .BR -a ,
+.\" newly created files are ignored.
.PP
.I Aescbc
encrypts and decrypts using AES (Rijndael) in cipher
@@ -205,8 +205,8 @@ There is deliberately no backup of files on the secstore, so
.B -r
(or a disk crash) is irrevocable. You are advised to store
important secrets in a second location.
-.PP
-When using
-.IR ipso ,
-secrets will appear as plain text in the editor window,
-so use the command in private.
+.\" .PP
+.\" When using
+.\" .IR ipso ,
+.\" secrets will appear as plain text in the editor window,
+.\" so use the command in private.
diff --git a/man/man1/sed.1 b/man/man1/sed.1
index b176e434..a2e2b54b 100644
--- a/man/man1/sed.1
+++ b/man/man1/sed.1
@@ -1,8 +1,8 @@
.TH SED 1
.SH NAME
-9sed \- stream editor
+sed \- stream editor
.SH SYNOPSIS
-.B 9sed
+.B sed
[
.B -n
]
@@ -366,7 +366,7 @@ ${
Delete all but one of each group of empty lines from a
formatted manuscript.
.SH SOURCE
-.B \*9/src/cmd/9sed.c
+.B \*9/src/cmd/sed.c
.SH SEE ALSO
.IR ed (1),
.IR grep (1),
diff --git a/man/man1/sort.1 b/man/man1/sort.1
index eb0d7f46..e68a53fc 100644
--- a/man/man1/sort.1
+++ b/man/man1/sort.1
@@ -19,6 +19,8 @@ sort \- sort and/or merge files
.I ,pos2
]
] ...
+.br
+\h'0.5in'
[
.B -o
.I output
@@ -210,7 +212,7 @@ This file may be the same as one of the inputs.
Put temporary files in
.I dir
rather than in
-.BR /tmp .
+.BR /var/tmp .
.ne 4
.SH EXAMPLES
.TP
@@ -236,7 +238,7 @@ grep -n '^' input | sort -t: +1f +0n | sed 's/[0-9]*://'
A stable sort: input lines that compare equal will
come out in their original order.
.SH FILES
-.BI /tmp/sort. <pid>.<ordinal>
+.BI /var/tmp/sort. <pid>.<ordinal>
.SH SOURCE
.B \*9/src/cmd/sort.c
.SH SEE ALSO
diff --git a/man/man1/spell.1 b/man/man1/spell.1
index 44a1a0e0..5d27609b 100644
--- a/man/man1/spell.1
+++ b/man/man1/spell.1
@@ -67,7 +67,7 @@ American spelling list
.B \*9/lib/brspell
British spelling list
.TP
-.B /bin/aux/sprog
+.B \*9/bin/sprog
The actual spelling checker.
It expects one word per line on standard input,
and takes the same arguments as
@@ -87,7 +87,7 @@ source for
The heuristics of
.IR deroff (1)
used to excise formatting information are imperfect.
-.br
+.PP
The spelling list's coverage is uneven;
in particular biology, medicine, and chemistry, and
perforce proper names,
diff --git a/man/man1/stats.1 b/man/man1/stats.1
index 85256bd1..a6f5ba43 100644
--- a/man/man1/stats.1
+++ b/man/man1/stats.1
@@ -167,13 +167,21 @@ to exit.
.PD
.SH EXAMPLE
Show the load, memory, interrupts, system calls, context switches,
-and ethernet packets for the local machine, a remote Linux machine
-.BR tux ,
-and a remote BSD machine
-.BR daemon .
+and ethernet packets for the local machine,
+a remote BSD machine
+.IR daemon ,
+and
+a remote Linux machine
+.IR tux .
+.I Auxstats
+is not in
+.IR tux 's
+path, so the full path must be given.
.IP
-.B
-stats -lmisce `hostname` tux:\*9/bin/auxstats daemon
+.EX
+stats -lmisce `hostname` daemon \e
+ tux:\*9/bin/auxstats
+.EE
.SH SOURCE
.B \*9/src/cmd/draw/stats.c
.PP
diff --git a/man/man1/tail.1 b/man/man1/tail.1
index 3681dd3a..7b218cef 100644
--- a/man/man1/tail.1
+++ b/man/man1/tail.1
@@ -77,11 +77,11 @@ Print the first 10 lines of a file.
Tails relative to the end of the file
are treasured up in a buffer, and thus
are limited in length.
-.br
+.PP
According to custom, option
.BI + number
counts lines from 1, and counts
blocks and bytes from 0.
-.br
+.PP
.I Tail
is ignorant of UTF.
diff --git a/man/man1/troff.1 b/man/man1/troff.1
index 5923084e..7af3f3c1 100644
--- a/man/man1/troff.1
+++ b/man/man1/troff.1
@@ -158,19 +158,19 @@ to speed output and reduce output character count.
Tab settings are assumed to be every
8 nominal character widths.
.SH FILES
-.TF /sys/lib/troff/term/*
+.TF \*9/troff/term/*
.TP
.B /tmp/trtmp*
temporary file
.TP
-.B /sys/lib/tmac/tmac.*
+.B \*9/tmac/tmac.*
standard macro files
.TP
-.B /sys/lib/troff/term/*
+.B \*9/troff/term/*
terminal driving tables for
.I nroff
.TP
-.B /sys/lib/troff/font/*
+.B \*9/troff/font/*
font width tables for
.I troff
.SH SOURCE
diff --git a/man/man1/units.1 b/man/man1/units.1
index fff68a21..054a37fb 100644
--- a/man/man1/units.1
+++ b/man/man1/units.1
@@ -73,13 +73,13 @@ Currency is denoted
etc.
.PP
The complete list of units can be found in
-.BR /lib/units .
+.BR \*9/lib/units .
A
.I file
argument to
.I units
specifies a file to be used instead of
-.BR /lib/units.
+.BR \*9/lib/units.
The
.B -v
flag causes
@@ -93,7 +93,7 @@ you want: atm
/ .97973
.EE
.SH FILES
-.B /lib/units
+.B \*9/lib/units
.SH SOURCE
.B \*9/src/cmd/units.y
.SH BUGS
@@ -102,7 +102,6 @@ Since
does only multiplicative scale changes,
it can convert Kelvin to Rankine but not Centigrade to
Fahrenheit.
-.br
+.PP
Currency conversions are only as accurate as the last time someone
-updated
-.BR /lib/units .
+updated the database.
diff --git a/man/man1/vac.1 b/man/man1/vac.1
index d8c512ee..2997242a 100644
--- a/man/man1/vac.1
+++ b/man/man1/vac.1
@@ -127,4 +127,3 @@ and the vac archives that are expanded and merged.
.B \*9/src/cmd/vac
.SH "SEE ALSO"
Plan 9's \fIvacfs\fR(4) and \fIventi\fR(8)
-
diff --git a/man/man1/wc.1 b/man/man1/wc.1
index f0df4a45..45bc426b 100644
--- a/man/man1/wc.1
+++ b/man/man1/wc.1
@@ -43,7 +43,7 @@ but
looks for only
.SM ASCII
space, tab and newline.
-.br
+.PP
.I Wc
should have options to count suboptimal
.SM UTF
diff --git a/man/man1/web.1 b/man/man1/web.1
index cf0b691c..0910747e 100644
--- a/man/man1/web.1
+++ b/man/man1/web.1
@@ -31,6 +31,8 @@ The choice of browser is determined by the
.B $BROWSER
environment variable, which should be the name of
the executable for your choice of web browser.
+The default is
+.BR firefox .
Since the various browsers all use different syntaxes
in their
.B -remote
@@ -41,6 +43,23 @@ When possible,
.I web
opens each URL in a new tab rather than a new window.
.PP
+When run under Mac OS X,
+.B $BROWSER
+should be set to the string
+.B safari
+or
+.BR firefox .
+.I Web
+uses AppleScript to talk to the browser.
+If
+.B $BROWSER
+is not set,
+.I web
+looks for Firefox in
+.BR /Applications/Firefox.app
+and uses it if found;
+otherwise it uses Safari.
+.PP
.I Wmail
starts the composition of a new mail message to
.IR address .
@@ -49,7 +68,8 @@ The choice of mailer is determined by the
.B $MAILER
environment variable.
The supported mailers are:
-.TP browser
+.TP
+.B browser
invoke the mailer via a
.B mailto://
URL passed to
diff --git a/man/man1/wintext.1 b/man/man1/wintext.1
index 413b3d21..12859f25 100644
--- a/man/man1/wintext.1
+++ b/man/man1/wintext.1
@@ -1,15 +1,19 @@
.TH WINTEXT 1
.SH NAME
wintext, ", "" \- access text in current window
+.ds x \C'"'
+.ds xx \C'"'\^\^\^\^\C'"'
+.ds y \*x\
+.ds yy \*(xx\
.SH SYNOPSIS
.B wintext
.br
-.B \C'"'\
+.B \*x\
[
.I prefix
]
.br
-.B \C'"'\C'"'\
+.B \*(xx\
[
.I prefix
]
@@ -23,7 +27,7 @@ or
.IR 9term (1)
window to standard output.
.PP
-.I \C'"'
+.I \*y
searches the window text for commands typed with a particular prefix
and prints them, indented, to standard output.
.I Prefix
@@ -31,18 +35,18 @@ is a regular expression that is matched against the beginning of the command-lin
If
.I prefix
is omitted,
-.I \C'"'
+.I \*y
prints the last command executed.
-.I \C'"'\C'"'
+.I \*(yy
prints the last command that
-.I \C'"'
+.I \*y
would print and then executes it by piping it into
.IR rc (1).
.PP
Both
-.I \C'"'
+.I \*y
and
-.I \C'"'\C'"'
+.I \*(yy
identify commands in the window text by looking for lines
beginning with a shell prompt.
Prompts are assumed to be an unindented sequence of
@@ -62,7 +66,7 @@ commands executed in this window:
.IP
.EX
.ta +4n
-% \C'"' 'l[sc]'
+% \*x 'l[sc]'
% ls -l /tmp/qq*
# ls -lrt /etc
% lc r*
@@ -75,7 +79,7 @@ command again:
.IP
.EX
.ta +4n
-% \C'"'\C'"' lc
+% \*(xx lc
% lc r*
ramfs rc read rio rm
%
@@ -86,13 +90,9 @@ ramfs rc read rio rm
.SH SOURCE
.B \*9/bin
.SH BUGS
-.I \C'"'
+.I \*y
and
-.I \C'"'\C'"'
+.I \*(yy
are hard to type in shells other than
.IR rc (1).
.\" and in troff!
-.PP
-Don't run
-.I \C'"'\C'"'
-twice in a row.
diff --git a/man/man1/yacc.1 b/man/man1/yacc.1
index 362d506c..75d4d473 100644
--- a/man/man1/yacc.1
+++ b/man/man1/yacc.1
@@ -145,7 +145,7 @@ parser prototype
.B \*9/lib/yaccpars
parser prototype using stdio
.SH SOURCE
-.B \*9/src/cmd/9yacc.c
+.B \*9/src/cmd/yacc.c
.SH "SEE ALSO"
.IR lex (1)
.br