aboutsummaryrefslogtreecommitdiff
path: root/man/man3
diff options
context:
space:
mode:
Diffstat (limited to 'man/man3')
-rw-r--r--man/man3/0intro.354
-rw-r--r--man/man3/9p-cmdbuf.34
-rw-r--r--man/man3/9p-fid.38
-rw-r--r--man/man3/9p-file.34
-rw-r--r--man/man3/9p-intmap.34
-rw-r--r--man/man3/9p.318
-rw-r--r--man/man3/9pclient.322
-rw-r--r--man/man3/acme.328
-rw-r--r--man/man3/addpt.32
-rw-r--r--man/man3/aes.320
-rw-r--r--man/man3/allocimage.320
-rw-r--r--man/man3/arg.34
-rw-r--r--man/man3/arith3.32
-rw-r--r--man/man3/atof.34
-rw-r--r--man/man3/auth.320
-rw-r--r--man/man3/authsrv.38
-rw-r--r--man/man3/bin.34
-rw-r--r--man/man3/bio.320
-rw-r--r--man/man3/blowfish.320
-rw-r--r--man/man3/cachechars.320
-rw-r--r--man/man3/cleanname.32
-rw-r--r--man/man3/color.316
-rw-r--r--man/man3/complete.38
-rw-r--r--man/man3/ctime.38
-rw-r--r--man/man3/des.320
-rw-r--r--man/man3/dial.34
-rw-r--r--man/man3/dirread.316
-rw-r--r--man/man3/draw.316
-rw-r--r--man/man3/drawfcall.312
-rw-r--r--man/man3/dsa.322
-rw-r--r--man/man3/dup.32
-rw-r--r--man/man3/elgamal.320
-rw-r--r--man/man3/encode.34
-rw-r--r--man/man3/encrypt.32
-rw-r--r--man/man3/errstr.38
-rw-r--r--man/man3/event.322
-rw-r--r--man/man3/exec.318
-rw-r--r--man/man3/exits.38
-rw-r--r--man/man3/fcall.314
-rw-r--r--man/man3/flate.32
-rw-r--r--man/man3/fmtinstall.320
-rw-r--r--man/man3/frame.312
-rw-r--r--man/man3/genrandom.38
-rw-r--r--man/man3/get9root.36
-rw-r--r--man/man3/getenv.34
-rw-r--r--man/man3/getfields.38
-rw-r--r--man/man3/getns.34
-rw-r--r--man/man3/getsnarf.34
-rw-r--r--man/man3/getuser.34
-rw-r--r--man/man3/getwd.36
-rw-r--r--man/man3/graphics.380
-rw-r--r--man/man3/html.32
-rw-r--r--man/man3/ioproc.322
-rw-r--r--man/man3/ip.34
-rw-r--r--man/man3/isalpharune.32
-rw-r--r--man/man3/keyboard.314
-rw-r--r--man/man3/lock.32
-rw-r--r--man/man3/mach-cmd.314
-rw-r--r--man/man3/mach-file.36
-rw-r--r--man/man3/mach-map.316
-rw-r--r--man/man3/mach-stack.34
-rw-r--r--man/man3/mach-swap.32
-rw-r--r--man/man3/mach-symbol.314
-rw-r--r--man/man3/mach.324
-rw-r--r--man/man3/malloc.38
-rw-r--r--man/man3/matrix.32
-rw-r--r--man/man3/memdraw.3101
-rw-r--r--man/man3/memlayer.322
-rw-r--r--man/man3/memory.32
-rw-r--r--man/man3/mouse.330
-rw-r--r--man/man3/mousescrollsize.38
-rw-r--r--man/man3/mp.34
-rw-r--r--man/man3/mux.36
-rw-r--r--man/man3/ndb.310
-rw-r--r--man/man3/needstack.36
-rw-r--r--man/man3/notify.320
-rw-r--r--man/man3/open.312
-rw-r--r--man/man3/opentemp.34
-rw-r--r--man/man3/pipe.314
-rw-r--r--man/man3/plumb.324
-rw-r--r--man/man3/post9pservice.312
-rw-r--r--man/man3/postnote.34
-rw-r--r--man/man3/prime.310
-rw-r--r--man/man3/print.318
-rw-r--r--man/man3/proto.325
-rw-r--r--man/man3/pushtls.318
-rw-r--r--man/man3/qball.32
-rw-r--r--man/man3/quaternion.38
-rw-r--r--man/man3/quote.322
-rw-r--r--man/man3/rand.38
-rw-r--r--man/man3/rc4.320
-rw-r--r--man/man3/read.38
-rw-r--r--man/man3/readcolmap.310
-rw-r--r--man/man3/readcons.32
-rw-r--r--man/man3/regexp.36
-rw-r--r--man/man3/rfork.312
-rw-r--r--man/man3/rsa.322
-rw-r--r--man/man3/rune.34
-rw-r--r--man/man3/runestrcat.38
-rw-r--r--man/man3/searchpath.38
-rw-r--r--man/man3/sechash.314
-rw-r--r--man/man3/seek.36
-rw-r--r--man/man3/sendfd.312
-rw-r--r--man/man3/setjmp.39
-rw-r--r--man/man3/sleep.36
-rw-r--r--man/man3/stat.310
-rw-r--r--man/man3/strcat.310
-rw-r--r--man/man3/string.32
-rw-r--r--man/man3/stringsize.314
-rw-r--r--man/man3/subfont.328
-rw-r--r--man/man3/sysfatal.314
-rw-r--r--man/man3/thread.328
-rw-r--r--man/man3/time.32
-rw-r--r--man/man3/udpread.32
-rw-r--r--man/man3/venti-cache.316
-rw-r--r--man/man3/venti-client.314
-rw-r--r--man/man3/venti-conn.322
-rw-r--r--man/man3/venti-fcall.316
-rw-r--r--man/man3/venti-file.312
-rw-r--r--man/man3/venti-log.38
-rw-r--r--man/man3/venti-mem.34
-rw-r--r--man/man3/venti-packet.34
-rw-r--r--man/man3/venti-server.312
-rw-r--r--man/man3/venti-zero.34
-rw-r--r--man/man3/venti.350
-rw-r--r--man/man3/wait.316
-rw-r--r--man/man3/window.316
127 files changed, 823 insertions, 820 deletions
diff --git a/man/man3/0intro.3 b/man/man3/0intro.3
index e544cc8d..fe75e798 100644
--- a/man/man3/0intro.3
+++ b/man/man3/0intro.3
@@ -49,7 +49,7 @@ automatically, so it is rarely necessary to tell the loader
which
libraries a program needs;
see
-.IR 9c (1).
+.MR 9c (1) .
.PP
The library to which a function belongs is defined by the
header file that defines its interface.
@@ -121,7 +121,7 @@ and
plus macros that define the layout of
.IR jmp_buf
(see
-.IR setjmp (3));
+.MR setjmp (3) );
.\" definitions of the bits in the floating-point control register
.\" as used by
.\" .IR getfcr (2);
@@ -198,27 +198,27 @@ by
or
.I create
(see
-.IR open (3)).
+.MR open (3) ).
These calls return an integer called a
.IR "file descriptor"
which identifies the file
to subsequent I/O calls,
notably
-.IR read (3)
+.MR read (3)
and
.IR write .
The system allocates the numbers by selecting the lowest unused descriptor.
They are allocated dynamically; there is no visible limit to the number of file
descriptors a process may have open.
They may be reassigned using
-.IR dup (3).
+.MR dup (3) .
File descriptors are indices into a
kernel resident
.IR "file descriptor table" .
Each process has an associated file descriptor table.
In threaded programs
(see
-.IR thread (3)),
+.MR thread (3) ),
the file descriptor table is shared by all the procs.
.PP
By convention,
@@ -236,22 +236,22 @@ Files are normally read or written in sequential order.
The I/O position in the file is called the
.IR "file offset"
and may be set arbitrarily using the
-.IR seek (3)
+.MR seek (3)
system call.
.PP
Directories may be opened like regular files.
Instead of reading them with
-.IR read (3),
+.MR read (3) ,
use the
.B Dir
structure-based
routines described in
-.IR dirread (3).
+.MR dirread (3) .
The entry
corresponding to an arbitrary file can be retrieved by
.IR dirstat
(see
-.IR stat (3))
+.MR stat (3) )
or
.IR dirfstat ;
.I dirwstat
@@ -262,9 +262,9 @@ write back entries, thus changing the properties of a file.
New files are made with
.I create
(see
-.IR open (3))
+.MR open (3) )
and deleted with
-.IR remove (3).
+.MR remove (3) .
Directories may not directly be written;
.IR create ,
.IR remove ,
@@ -273,27 +273,27 @@ and
.I fwstat
alter them.
.PP
-.IR Pipe (3)
+.MR Pipe (3)
creates a connected pair of file descriptors,
useful for bidirectional local communication.
.SS "Process execution and control"
A new process is created
when an existing one calls
-.IR fork (2).
+.MR fork (2) .
The new (child) process starts out with
copies of the address space and most other attributes
of the old (parent) process.
In particular,
the child starts out running
the same program as the parent;
-.IR exec (3)
+.MR exec (3)
will bring in a different one.
.PP
Each process has a unique integer process id;
a set of open files, indexed by file descriptor;
and a current working directory
(changed by
-.IR chdir (2)).
+.MR chdir (2) ).
.PP
Each process has a set of attributes \(em memory, open files,
name space, etc. \(em that may be shared or unique.
@@ -302,9 +302,9 @@ Flags to
control the sharing of these attributes.
.PP
A process terminates by calling
-.IR exits (3).
+.MR exits (3) .
A parent process may call
-.IR wait (3)
+.MR wait (3)
to wait for some child to terminate.
A bit of status information
may be passed from
@@ -317,14 +317,14 @@ The Plan 9 interface persists here, although the functionality does not.
Instead, empty strings are converted to exit status 0 and non-empty strings to 1.
.PP
A process can go to sleep for a specified time by calling
-.IR sleep (3).
+.MR sleep (3) .
.PP
There is a
.I notification
mechanism for telling a process about events such as address faults,
floating point faults, and messages from other processes.
A process uses
-.IR notify (3)
+.MR notify (3)
to register the function to be called (the
.IR "notification handler" )
when such events occur.
@@ -334,12 +334,12 @@ the main C library works properly in multiprocess programs;
.IR malloc ,
.IR print ,
and the other routines use locks (see
-.IR lock (3))
+.MR lock (3) )
to synchronize access to their data structures.
The graphics library defined in
.B <draw.h>
is also multi-process capable; details are in
-.IR graphics (3).
+.MR graphics (3) .
In general, though, multiprocess programs should use some form of synchronization
to protect shared data.
.PP
@@ -365,12 +365,12 @@ Therefore, a program that shouldn't block unexpectedly will use a process
to serve the I/O request, passing the result to the main processes
over a channel when the request completes.
For examples of this design, see
-.IR ioproc (3)
+.MR ioproc (3)
or
-.IR mouse (3).
+.MR mouse (3) .
.SH SEE ALSO
.IR nm (1),
-.IR 9c (1)
+.MR 9c (1)
.SH DIAGNOSTICS
Math functions in
.I libc
@@ -378,14 +378,14 @@ return
special values when the function is undefined for the
given arguments or when the value is not representable
(see
-.IR nan (3)).
+.MR nan (3) ).
.PP
Some of the functions in
.I libc
are system calls and many others employ system calls in their implementation.
All system calls return integers,
with \-1 indicating that an error occurred;
-.IR errstr (3)
+.MR errstr (3)
recovers a string describing the error.
Some user-level library functions also use the
.I errstr
diff --git a/man/man3/9p-cmdbuf.3 b/man/man3/9p-cmdbuf.3
index 6aca825b..4ba3b6c8 100644
--- a/man/man3/9p-cmdbuf.3
+++ b/man/man3/9p-cmdbuf.3
@@ -44,7 +44,7 @@ bytes at
using
.I tokenize
(see
-.IR getfields (3)).
+.MR getfields (3) ).
It returns a
.B Cmdbuf
structure holding pointers to each field in the message.
@@ -116,4 +116,4 @@ is a good example.
.SH SOURCE
.B \*9/src/lib9p/parse.c
.SH SEE ALSO
-.IR 9p (3)
+.MR 9p (3)
diff --git a/man/man3/9p-fid.3 b/man/man3/9p-fid.3
index ddc3e093..239f58ce 100644
--- a/man/man3/9p-fid.3
+++ b/man/man3/9p-fid.3
@@ -73,7 +73,7 @@ and
.BR Reqpool s.
They are primarily used by the 9P server loop
described in
-.IR 9p (3).
+.MR 9p (3) .
.PP
.B Fid
structures are intended to represent
@@ -115,7 +115,7 @@ element points at a
.B File
structure
(see
-.IR 9p-file (3))
+.MR 9p-file (3) )
corresponding to the fid.
The
.B aux
@@ -200,5 +200,5 @@ structures.
.SH SOURCE
.B \*9/src/lib9p
.SH SEE ALSO
-.IR 9p (3),
-.IR 9p-file (3)
+.MR 9p (3) ,
+.MR 9p-file (3)
diff --git a/man/man3/9p-file.3 b/man/man3/9p-file.3
index 80866177..e849f713 100644
--- a/man/man3/9p-file.3
+++ b/man/man3/9p-file.3
@@ -144,7 +144,7 @@ When creating new file references by copying pointers,
call
.I incref
(see
-.IR lock (3))
+.MR lock (3) )
to update the reference count.
To note the removal of a reference to a file, call
.IR closefile .
@@ -218,6 +218,6 @@ return nf;
.SH SOURCE
.B \*9/src/lib9p/file.c
.SH SEE ALSO
-.IR 9p (3)
+.MR 9p (3)
.SH BUGS
The reference counting is cumbersome.
diff --git a/man/man3/9p-intmap.3 b/man/man3/9p-intmap.3
index 9d4dfef0..486e1826 100644
--- a/man/man3/9p-intmap.3
+++ b/man/man3/9p-intmap.3
@@ -122,5 +122,5 @@ and
.SH SOURCE
.B \*9/src/lib9p/intmap.c
.SH SEE ALSO
-.IR 9p (3),
-.IR 9p-fid (3)
+.MR 9p (3) ,
+.MR 9p-fid (3)
diff --git a/man/man3/9p.3 b/man/man3/9p.3
index 6dc4c9c1..adf10269 100644
--- a/man/man3/9p.3
+++ b/man/man3/9p.3
@@ -110,13 +110,13 @@ and
.B Fid
structures are allocated one-to-one with uncompleted
requests and active fids, and are described in
-.IR 9p-fid (3).
+.MR 9p-fid (3) .
.PP
The behavior of
.I srv
depends on whether there is a file tree
(see
-.IR 9p-file (3))
+.MR 9p-file (3) )
associated with the server, that is,
whether the
.B tree
@@ -178,11 +178,11 @@ as
.BI /srv/ name .
.IP
Fork a child process via
-.IR rfork (3)
+.MR rfork (3)
or
.I procrfork
(see
-.IR thread (3)),
+.MR thread (3) ),
using the
.BR RFFDG ,
.RR RFNOTEG ,
@@ -214,7 +214,7 @@ The parent returns to the caller.
.LP
If any error occurs during
this process, the entire process is terminated by calling
-.IR sysfatal (3).
+.MR sysfatal (3) .
.SS Service functions
The functions in a
.B Srv
@@ -332,7 +332,7 @@ where
is the program name variable as set by
.I ARGBEGIN
(see
-.IR arg (3)).
+.MR arg (3) ).
.TP
.I Attach
The
@@ -707,7 +707,7 @@ the service loop (which runs in a separate process
from its caller) terminates using
.I _exits
(see
-.IR exits (3)).
+.MR exits (3) ).
.PD
.PP
If the
@@ -752,6 +752,6 @@ or is maintained elsewhere.
.SH SOURCE
.B \*9/src/lib9p
.SH SEE ALSO
-.IR 9p-fid (3),
-.IR 9p-file (3),
+.MR 9p-fid (3) ,
+.MR 9p-file (3) ,
.IR intro (9p)
diff --git a/man/man3/9pclient.3 b/man/man3/9pclient.3
index 1bb868cc..74537ab4 100644
--- a/man/man3/9pclient.3
+++ b/man/man3/9pclient.3
@@ -149,7 +149,7 @@ connects to a service named
.I name
in the current name space directory
(see
-.IR intro (4)).
+.MR intro (4) ).
Both attach to the root of the file system
using the attach name
.IR aname .
@@ -228,7 +228,7 @@ the allocated structures will be freed and the
file descriptor corresponding to the connection
will be closed
(see
-.IR close (2)).
+.MR close (2) ).
Fids are not reference counted: when
.I fsclose
is called, the clunk transaction and freeing of storage
@@ -308,7 +308,7 @@ sets the offset; the
and
.I type
arguments are used as in
-.IR seek (3).
+.MR seek (3) .
Calling
.I fspread
or
@@ -340,7 +340,7 @@ for the given fid.
.PP
.I Fsaccess
behaves like Unix's
-.IR access (2).
+.MR access (2) .
.I Fsremove
removes the named path.
.I Fsfremove
@@ -358,7 +358,7 @@ are like
and
.I vfprint
(see
-.IR print (3))
+.MR print (3) )
but write to
.BR CFid* s.
.PP
@@ -376,7 +376,7 @@ is similar but reads the entire directory.
The returned pointer should be freed with
.I free
(see
-.IR malloc (3))
+.MR malloc (3) )
when no longer needed.
.PP
.I Fsdirfstat
@@ -396,7 +396,7 @@ structure returned by
should be freed with
.I free
(see
-.IR malloc (3))
+.MR malloc (3) )
when no longer needed.
.PP
.I Fsdirstat
@@ -418,7 +418,7 @@ opens a file on the 9P server
for reading or writing but returns a Unix file descriptor
instead of a fid structure.
The file descriptor is actually one end of a
-.IR pipe (2).
+.MR pipe (2) .
A proxy process on the other end is ferrying data
between the pipe and the 9P fid.
Because of the implementation as a pipe,
@@ -443,18 +443,18 @@ If the
flag is set, the library calls
.I threadexitsall
(see
-.IR thread (3))
+.MR thread (3) )
when it detects EOF on a 9P connection.
.SH SOURCE
.B \*9/src/lib9pclient
.SH SEE ALSO
-.IR intro (4),
+.MR intro (4) ,
.IR intro (9p),
.I fsaopen
and
.I nsaopen
in
-.IR auth (3)
+.MR auth (3)
.SH BUGS
The implementation
should use a special version string to distinguish between
diff --git a/man/man3/acme.3 b/man/man3/acme.3
index 1683061a..7c4ac67a 100644
--- a/man/man3/acme.3
+++ b/man/man3/acme.3
@@ -141,7 +141,7 @@ char* evsmprint(char *fmt, va_list arg)
.SH DESCRIPTION
.I Libacme
provides a simple C interface for interacting with
-.IR acme (1)
+.MR acme (1)
windows.
.PP
A
@@ -168,7 +168,7 @@ Most of the library routines access files in the window's
.I acme
directory.
See
-.IR acme (4)
+.MR acme (4)
for details.
Many library routines take a format string
.I fmt
@@ -179,11 +179,11 @@ denotes the result of formatting the string and arguments
using
.I smprint
(see
-.IR print (3)).
+.MR print (3) ).
.PP
.I Pipetowin
runs the
-.IR rc (1)
+.MR rc (1)
command line
.I fmt\fR, \fP...
with
@@ -199,7 +199,7 @@ Otherwise the command inherits the caller's standard error.
.PP
.I Pipewinto
runs the
-.IR rc (1)
+.MR rc (1)
command line
.I fmt\fR, \fP...
with the window's
@@ -300,7 +300,7 @@ to position
relative to
.I type
(see
-.IR seek (3)).
+.MR seek (3) ).
.PP
.I Winwrite
writes the
@@ -317,7 +317,7 @@ The fields correspond to the fields in
.IR acme 's
event messages.
See
-.IR acme (4)
+.MR acme (4)
for detailed explanations.
The fields are:
.TP
@@ -384,7 +384,7 @@ that it should be handled internally.
returns a pointer to a
.B Channel
(see
-.IR thread (3))
+.MR thread (3) )
on which event structures (not pointers) can be read.
The first call to
.I wineventchan
@@ -404,20 +404,20 @@ after calling
and
.I evsmprint
are like
-.IR malloc (3),
+.MR malloc (3) ,
.IR realloc ,
.IR strdup
(see
-.IR strcat (3)),
+.MR strcat (3) ),
and
.IR vsmprint
(see
-.IR print (3)),
+.MR print (3) ),
but they call
-.IR sysfatal (3)
+.MR sysfatal (3)
on error rather than returning nil.
.SH SOURCE
.B \*9/src/libacme
.SH SEE ALSO
-.IR acme (1),
-.IR acme (4)
+.MR acme (1) ,
+.MR acme (4)
diff --git a/man/man3/addpt.3 b/man/man3/addpt.3
index c00a1de1..74d19634 100644
--- a/man/man3/addpt.3
+++ b/man/man3/addpt.3
@@ -185,4 +185,4 @@ They are implemented as macros.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3)
+.MR graphics (3)
diff --git a/man/man3/aes.3 b/man/man3/aes.3
index 06f42de5..94ff54a7 100644
--- a/man/man3/aes.3
+++ b/man/man3/aes.3
@@ -39,13 +39,13 @@ cryptographically strongly unpredictable.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR blowfish (3),
-.IR des (3),
-.IR dsa (3),
-.IR elgamal (3),
-.IR rc4 (3),
-.IR rsa (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR dsa (3) ,
+.MR elgamal (3) ,
+.MR rc4 (3) ,
+.MR rsa (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
diff --git a/man/man3/allocimage.3 b/man/man3/allocimage.3
index 8bfd323d..518d6b32 100644
--- a/man/man3/allocimage.3
+++ b/man/man3/allocimage.3
@@ -135,7 +135,7 @@ The
field will have been set to the identifying number used by
.B /dev/draw
(see
-.IR draw (3)),
+.MR draw (3) ),
and the
.I cache
field will be zero.
@@ -148,7 +148,7 @@ The
field will be set to the number of bits per pixel specified
by the channel descriptor
(see
-.IR image (7)).
+.MR image (7) ).
.I Allocimage
returns 0 if the server has run out of image memory.
.PP
@@ -191,7 +191,7 @@ These routines permit unrelated applications sharing a display to share an image
for example they provide the mechanism behind
.B getwindow
(see
-.IR graphics (3)).
+.MR graphics (3) ).
.PP
The RGB values in a color are
.I premultiplied
@@ -214,7 +214,7 @@ values between image and user space or external files.
There is a fixed format for the exchange and storage of
image data
(see
-.IR image (7)).
+.MR image (7) ).
.PP
.I Unloadimage
reads a rectangle of pixels from image
@@ -271,7 +271,7 @@ but for
bytes of compressed image
.I data
(see
-.IR image (7)).
+.MR image (7) ).
On each call to
.IR cloadimage,
the
@@ -289,7 +289,7 @@ return the number of bytes copied.
.PP
.I Readimage
creates an image from data contained in an external file (see
-.IR image (7)
+.MR image (7)
for the file format);
.I fd
is a file descriptor obtained by opening such a file for reading.
@@ -333,10 +333,10 @@ To allocate a single-pixel replicated image that may be used to paint a region r
.SH SOURCE
.B \*9/src/libdraw
.SH "SEE ALSO"
-.IR graphics (3),
-.IR draw (3),
-.IR draw (3),
-.IR image (7)
+.MR graphics (3) ,
+.MR draw (3) ,
+.MR draw (3) ,
+.MR image (7)
.SH DIAGNOSTICS
These functions return pointer 0 or integer \-1 on failure, usually due to insufficient
memory.
diff --git a/man/man3/arg.3 b/man/man3/arg.3
index 3124930d..d9aa812f 100644
--- a/man/man3/arg.3
+++ b/man/man3/arg.3
@@ -20,7 +20,7 @@ These macros assume the names
and
.I argv
are in scope; see
-.IR exec (3).
+.MR exec (3) .
.I ARGBEGIN
and
.I ARGEND
@@ -58,7 +58,7 @@ but instead of returning zero
runs
.I code
and, if that returns, calls
-.IR abort (3).
+.MR abort (3) .
A typical value for
.I code
is
diff --git a/man/man3/arith3.3 b/man/man3/arith3.3
index 1e764c7b..039df33e 100644
--- a/man/man3/arith3.3
+++ b/man/man3/arith3.3
@@ -266,4 +266,4 @@ Subtract the coordinates of two points.
.SH SOURCE
.B \*9/src/libgeometry
.SH "SEE ALSO
-.IR matrix (3)
+.MR matrix (3)
diff --git a/man/man3/atof.3 b/man/man3/atof.3
index 0da22379..8b462aa9 100644
--- a/man/man3/atof.3
+++ b/man/man3/atof.3
@@ -129,7 +129,7 @@ after calling
.SH SOURCE
.B \*9/src/lib9
.SH SEE ALSO
-.IR fscanf (3)
+.MR fscanf (3)
.SH DIAGNOSTICS
Zero is returned if the beginning of the input string is not
interpretable as a number; even in this case,
@@ -175,4 +175,4 @@ are preprocessor macros defined as
and
.IR p9atoll ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/auth.3 b/man/man3/auth.3
index 24189822..9fda7de3 100644
--- a/man/man3/auth.3
+++ b/man/man3/auth.3
@@ -95,7 +95,7 @@ CFsys* nsamount(char *name, char *aname);
.SH DESCRIPTION
.PP
This library, in concert with
-.IR factotum (4),
+.MR factotum (4) ,
is used to authenticate users.
It provides the primary interface to
.IR factotum .
@@ -168,7 +168,7 @@ It provides the primary interface to
The following routines use the
.B AuthInfo
structure returned after a successful authentication by
-.IR factotum (4).
+.MR factotum (4) .
.PP
.ne 8
.EX
@@ -212,11 +212,11 @@ file, as opened by
An
.B sprint
(see
-.IR print (3))
+.MR print (3) )
of
.I fmt
and the variable arg list yields a key template (see
-.IR factotum (4))
+.MR factotum (4) )
specifying the key to use.
The template must specify at least the protocol (
.BI proto= xxx )
@@ -258,7 +258,7 @@ arranges a connection to
either by opening
.B /mnt/factotum/rpc
or by using
-.IR 9pclient (3)
+.MR 9pclient (3)
to connect to a
.B factotum
service posted in the current name space.
@@ -266,7 +266,7 @@ The returned connection
is freed using
.IR auth_freerpc .
Individual commands can be sent to
-.IR factotum (4)
+.MR factotum (4)
by invoking
.IR auth_rpc .
.PP
@@ -418,7 +418,7 @@ and
but execute the protocol on a
.B CFid*
(see
-.IR 9pclient (3))
+.MR 9pclient (3) )
instead of a file descriptor.
.PP
.I Fsamount
@@ -429,15 +429,15 @@ are like
and
.I nsmount
(see
-.IR 9pclient (3))
+.MR 9pclient (3) )
but use
.I factotum
to authenticate to the file servers.
.SH SOURCE
.B \*9/src/libauth
.SH SEE ALSO
-.IR factotum (4),
-.IR authsrv (3)
+.MR factotum (4) ,
+.MR authsrv (3)
.SH DIAGNOSTICS
These routines set
.IR errstr .
diff --git a/man/man3/authsrv.3 b/man/man3/authsrv.3
index a0b68578..e1ace0c4 100644
--- a/man/man3/authsrv.3
+++ b/man/man3/authsrv.3
@@ -68,7 +68,7 @@ If
is non-nil,
the network database
(see
-.IR ndb (1))
+.MR ndb (1) )
is queried for an entry which contains
.B authdom=\fIad\fP
or
@@ -212,10 +212,10 @@ to recieve an answer.
.SH SOURCE
.B \*9/src/libauthsrv
.SH SEE ALSO
-.IR passwd (1),
-.IR dial (3),
+.MR passwd (1) ,
+.MR dial (3) ,
Plan 9's
-\fIauthsrv\fR(6).
+.IR authsrv (6).
.SH DIAGNOSTICS
These routines set
.IR errstr .
diff --git a/man/man3/bin.3 b/man/man3/bin.3
index c888193f..e8685494 100644
--- a/man/man3/bin.3
+++ b/man/man3/bin.3
@@ -82,7 +82,7 @@ are ignored, and the result is the same as calling
and
.I bingrow
allocate large chunks of memory using
-.IR malloc (3)
+.MR malloc (3)
and return pieces of these chunks.
The chunks are
.IR free 'd
@@ -91,7 +91,7 @@ upon a call to
.SH SOURCE
.B \*9/src/libbin
.SH SEE ALSO
-.IR malloc (3)
+.MR malloc (3)
.SH DIAGNOSTICS
.I binalloc
and
diff --git a/man/man3/bio.3 b/man/man3/bio.3
index 0c48bea6..05721f8b 100644
--- a/man/man3/bio.3
+++ b/man/man3/bio.3
@@ -93,7 +93,7 @@ for mode
or creates for mode
.BR OWRITE .
It calls
-.IR malloc (3)
+.MR malloc (3)
to allocate a buffer.
.PP
.I Bfdopen
@@ -104,7 +104,7 @@ for mode
or
.BR OWRITE .
It calls
-.IR malloc (3)
+.MR malloc (3)
to allocate a buffer.
.PP
.I Binit
@@ -173,7 +173,7 @@ of the most recent string returned by
.PP
.I Brdstr
returns a
-.IR malloc (3)-allocated
+.MR malloc (3) -allocated
buffer containing the next line of input delimited by
.IR delim ,
terminated by a NUL (0) byte.
@@ -225,7 +225,7 @@ may back up a maximum of five bytes.
uses
.I charstod
(see
-.IR atof (3))
+.MR atof (3) )
and
.I Bgetc
to read the formatted
@@ -246,7 +246,7 @@ and a negative value is returned if a read error occurred.
.PP
.I Bseek
applies
-.IR seek (3)
+.MR seek (3)
to
.IR bp .
It returns the new file offset.
@@ -278,7 +278,7 @@ on the output stream.
.PP
.I Bprint
is a buffered interface to
-.IR print (3).
+.MR print (3) .
If this causes a
.IR write
to occur and there is an error,
@@ -325,10 +325,10 @@ written.
.SH SOURCE
.B \*9/src/libbio
.SH SEE ALSO
-.IR open (3),
-.IR print (3),
-.IR exits (3),
-.IR utf (7),
+.MR open (3) ,
+.MR print (3) ,
+.MR exits (3) ,
+.MR utf (7) ,
.SH DIAGNOSTICS
.I Bio
routines that return integers yield
diff --git a/man/man3/blowfish.3 b/man/man3/blowfish.3
index 20d43f66..95d77507 100644
--- a/man/man3/blowfish.3
+++ b/man/man3/blowfish.3
@@ -40,13 +40,13 @@ must be a multiple of eight bytes as padding is currently unsupported.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR aes (3),
-.IR des (3),
-.IR dsa (3),
-.IR elgamal (3),
-.IR rc4 (3),
-.IR rsa (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR aes (3) ,
+.MR des (3) ,
+.MR dsa (3) ,
+.MR elgamal (3) ,
+.MR rc4 (3) ,
+.MR rsa (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
diff --git a/man/man3/cachechars.3 b/man/man3/cachechars.3
index f2d82f19..1b2cc5b0 100644
--- a/man/man3/cachechars.3
+++ b/man/man3/cachechars.3
@@ -30,7 +30,7 @@ A
may contain too many characters to hold in memory
simultaneously.
The graphics library and draw device (see
-.IR draw (3))
+.MR draw (3) )
cooperate to solve this problem by maintaining a cache of recently used
character images.
The details of this cooperation need not be known by most programs:
@@ -127,7 +127,7 @@ A
.B Font
consists of an overall height and ascent
and a collection of subfonts together with the ranges of runes (see
-.IR utf (7))
+.MR utf (7) )
they represent.
Fonts are described by the following structures.
.IP
@@ -181,7 +181,7 @@ The
and
.LR ascent
fields of Font are described in
-.IR graphics (3).
+.MR graphics (3) .
.L Sub
contains
.L nsub
@@ -302,12 +302,12 @@ for replacement when the cache is full.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR allocimage (3),
-.IR draw (3),
-.IR subfont (3),
-.IR image (7),
-.IR font (7)
+.MR graphics (3) ,
+.MR allocimage (3) ,
+.MR draw (3) ,
+.MR subfont (3) ,
+.MR image (7) ,
+.MR font (7)
.SH DIAGNOSTICS
All of the functions use the graphics error function (see
-.IR graphics (3)).
+.MR graphics (3) ).
diff --git a/man/man3/cleanname.3 b/man/man3/cleanname.3
index efb7d823..75fdd805 100644
--- a/man/man3/cleanname.3
+++ b/man/man3/cleanname.3
@@ -31,4 +31,4 @@ must contain room for at least two bytes.
.SH SOURCE
.B \*9/src/lib9/cleanname.c
.SH SEE ALSO
-.IR cleanname (1)
+.MR cleanname (1)
diff --git a/man/man3/color.3 b/man/man3/color.3
index 5428337b..e08d9194 100644
--- a/man/man3/color.3
+++ b/man/man3/color.3
@@ -19,7 +19,7 @@ int cmap2rgba(int col)
.SH DESCRIPTION
These routines convert between `true color' red/green/blue triples and the Plan 9 color map.
See
-.IR color (7)
+.MR color (7)
for a description of RGBV, the standard color map.
.PP
.I Rgb2cmap
@@ -41,16 +41,16 @@ and the next 8 representing blue, then green, then red, as for
.I cmap2rgba
shifted up 8 bits.
This 32-bit representation is the format used by
-.IR draw (3)
+.MR draw (3)
and
-.IR memdraw (3)
+.MR memdraw (3)
library routines that
take colors as arguments.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR allocimage (3),
-.IR draw (3),
-.IR image (7),
-.IR color (7)
+.MR graphics (3) ,
+.MR allocimage (3) ,
+.MR draw (3) ,
+.MR image (7) ,
+.MR color (7)
diff --git a/man/man3/complete.3 b/man/man3/complete.3
index 52702acc..f1d0c280 100644
--- a/man/man3/complete.3
+++ b/man/man3/complete.3
@@ -86,15 +86,15 @@ function frees a
structure and its contents.
.PP
In
-.IR rio (1)
+.MR rio (1)
and
-.IR acme (1),
+.MR acme (1) ,
file name completion is triggered by a control-F character or an Insert character.
.SH SOURCE
.B \*9/src/libcomplete
.SH SEE ALSO
-.IR rio (1),
-.IR acme (1)
+.MR rio (1) ,
+.MR acme (1)
.SH DIAGNOSTICS
The
.I complete
diff --git a/man/man3/ctime.3 b/man/man3/ctime.3
index 5491d39f..5d80d411 100644
--- a/man/man3/ctime.3
+++ b/man/man3/ctime.3
@@ -26,7 +26,7 @@ long tm2sec(Tm *tm)
converts a time
.I clock
such as returned by
-.IR time (3)
+.MR time (3)
into
.SM ASCII
(sic)
@@ -85,8 +85,8 @@ is not
.br
.B \*9/src/lib9/tm2sec.c
.SH "SEE ALSO"
-.IR date (1),
-.IR time (3)
+.MR date (1) ,
+.MR time (3)
.SH BUGS
The return values point to static data
whose content is overwritten by each call.
@@ -112,4 +112,4 @@ are preprocessor macros defined as
and
.IR p9tm2sec ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/des.3 b/man/man3/des.3
index 3c3cd201..686fc4c9 100644
--- a/man/man3/des.3
+++ b/man/man3/des.3
@@ -132,13 +132,13 @@ using
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR aes (3),
-.IR blowfish (3),
-.IR dsa (3),
-.IR elgamal (3),
-.IR rc4 (3),
-.IR rsa (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR aes (3) ,
+.MR blowfish (3) ,
+.MR dsa (3) ,
+.MR elgamal (3) ,
+.MR rc4 (3) ,
+.MR rsa (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
diff --git a/man/man3/dial.3 b/man/man3/dial.3
index 39092ae0..24efc702 100644
--- a/man/man3/dial.3
+++ b/man/man3/dial.3
@@ -264,7 +264,7 @@ int callkremvax(void)
.EE
.PP
Connect to a Unix socket served by
-.IR acme (4):
+.MR acme (4) :
.IP
.EX
int dialacme(void)
@@ -346,4 +346,4 @@ are preprocessor macros defined as
.IR p9announce ,
and so on;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/dirread.3 b/man/man3/dirread.3
index 2522e9a6..cce8d978 100644
--- a/man/man3/dirread.3
+++ b/man/man3/dirread.3
@@ -19,11 +19,11 @@ long dirreadall(int fd, Dir **buf)
#define DIRMAX (sizeof(Dir)+STATMAX)
.SH DESCRIPTION
The data returned by a
-.IR read (3)
+.MR read (3)
on a directory is a set of complete directory entries
in a machine-independent format, exactly equivalent to
the result of a
-.IR stat (3)
+.MR stat (3)
on each file or subdirectory in the directory.
.I Dirread
decodes the directory entries into a machine-dependent form.
@@ -35,11 +35,11 @@ structures
whose address is returned in
.B *buf
(see
-.IR stat (3)
+.MR stat (3)
for the layout of a
.BR Dir ).
The array is allocated with
-.IR malloc (3)
+.MR malloc (3)
each time
.I dirread
is called.
@@ -50,7 +50,7 @@ is like
but reads in the entire directory; by contrast,
.I dirread
steps through a directory one
-.IR read (3)
+.MR read (3)
at a time.
.PP
Directory entries have variable length.
@@ -85,9 +85,9 @@ The file offset is advanced by the number of bytes actually read.
.SH SOURCE
.B \*9/src/lib9/dirread.c
.SH SEE ALSO
-.IR intro (3),
-.IR open (3),
-.IR read (3)
+.MR intro (3) ,
+.MR open (3) ,
+.MR read (3)
.SH DIAGNOSTICS
.I Dirread
and
diff --git a/man/man3/draw.3 b/man/man3/draw.3
index 1fa5dea1..4ad680b3 100644
--- a/man/man3/draw.3
+++ b/man/man3/draw.3
@@ -259,7 +259,7 @@ The clipping region may be modified dynamically using
.TP
.B chan
The pixel channel format descriptor, as described in
-.IR image (7).
+.MR image (7) .
The value should not be modified after the image is created.
.TP
.B depth
@@ -268,7 +268,7 @@ number of bits per pixel in the picture;
it is identically
.B chantodepth(chan)
(see
-.IR graphics (3))
+.MR graphics (3) )
and is provided as a convenience.
The value should not be modified after the image is created.
.TP
@@ -712,7 +712,7 @@ what
is to
.B atan
(see
-.IR sin (3)).
+.MR sin (3) ).
.TP
.BI border( dst\fP,\fP\ r\fP,\fP\ i\fP,\fP\ color\fP,\fP\ sp\fP)
.I Border
@@ -810,11 +810,11 @@ is non-zero.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR stringsize (3),
-.IR color (7),
-.IR utf (7),
-.IR addpt (3)
+.MR graphics (3) ,
+.MR stringsize (3) ,
+.MR color (7) ,
+.MR utf (7) ,
+.MR addpt (3)
.PP
T. Porter, T. Duff.
``Compositing Digital Images'',
diff --git a/man/man3/drawfcall.3 b/man/man3/drawfcall.3
index 1c8d376b..1ee37cd8 100644
--- a/man/man3/drawfcall.3
+++ b/man/man3/drawfcall.3
@@ -30,15 +30,15 @@ int readwsysmsg(int fd, uchar *buf, uint nbuf)
uint sizeW2M(Wsysmsg *w)
.SH DESCRIPTION
These routines are analogues of the routines described in
-.IR fcall (3).
+.MR fcall (3) .
They manipulate graphics device protocol messages
rather than 9P protocol messages.
The graphics device protocol is used for internal
communication between the
-.IR devdraw (1)
+.MR devdraw (1)
graphics server
and the
-.IR draw (3)
+.MR draw (3)
library.
A
.B Wsysmsg
@@ -48,6 +48,6 @@ The protocol is intentionally undocumented and may change.
.SH SOURCE
.B \*9/src/libdraw/drawfcall.c
.SH SEE ALSO
-.IR devdraw (1),
-.IR draw (3),
-.IR graphics (3)
+.MR devdraw (1) ,
+.MR draw (3) ,
+.MR graphics (3)
diff --git a/man/man3/dsa.3 b/man/man3/dsa.3
index 41532b89..78714010 100644
--- a/man/man3/dsa.3
+++ b/man/man3/dsa.3
@@ -84,7 +84,7 @@ and
generated by
.IR DSAprimes
(see
-.IR prime (3)).
+.MR prime (3) ).
Otherwise,
.B p
and
@@ -128,17 +128,17 @@ are provided to manage signature storage.
converts an ASN1 formatted DSA private key into the corresponding
.B DSApriv
structure; see
-.IR rsa (3)
+.MR rsa (3)
for other ASN1 routines.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR aes (3),
-.IR blowfish (3),
-.IR des (3),
-.IR rc4 (3),
-.IR rsa (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR aes (3) ,
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR rc4 (3) ,
+.MR rsa (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
diff --git a/man/man3/dup.3 b/man/man3/dup.3
index 392e6fe6..26887363 100644
--- a/man/man3/dup.3
+++ b/man/man3/dup.3
@@ -36,4 +36,4 @@ To avoid name conflicts with the underlying system,
is a preprocessor macro defined as
.IR p9dup ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/elgamal.3 b/man/man3/elgamal.3
index 2fc75ac6..af4bc03b 100644
--- a/man/man3/elgamal.3
+++ b/man/man3/elgamal.3
@@ -113,13 +113,13 @@ are provided to manage signature storage.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR aes (3),
-.IR blowfish (3),
-.IR des (3),
-.IR dsa (3),
-.IR rc4 (3),
-.IR rsa (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR aes (3) ,
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR dsa (3) ,
+.MR rc4 (3) ,
+.MR rsa (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
diff --git a/man/man3/encode.3 b/man/man3/encode.3
index fde8296c..57b5cd08 100644
--- a/man/man3/encode.3
+++ b/man/man3/encode.3
@@ -49,9 +49,9 @@ of 8.
.PP
.I Encodefmt
can be used with
-.IR fmtinstall (3)
+.MR fmtinstall (3)
and
-.IR print (3)
+.MR print (3)
to print encoded representations of byte arrays.
The verbs are
.TP
diff --git a/man/man3/encrypt.3 b/man/man3/encrypt.3
index 1f44689d..894020d8 100644
--- a/man/man3/encrypt.3
+++ b/man/man3/encrypt.3
@@ -84,4 +84,4 @@ are preprocessor macros defined as
and
.IR p9decrypt ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/errstr.3 b/man/man3/errstr.3
index 3964d8d5..703f2ee0 100644
--- a/man/man3/errstr.3
+++ b/man/man3/errstr.3
@@ -53,7 +53,7 @@ the result is an empty string.
The verb
.B r
in
-.IR print (3)
+.MR print (3)
calls
.I errstr
and outputs the error string.
@@ -92,8 +92,8 @@ will reset
.I Errstr
always returns 0.
.SH SEE ALSO
-.IR intro (3),
-.IR perror (3)
+.MR intro (3) ,
+.MR perror (3)
.SH BUGS
The implementation sets
.I errno
@@ -104,4 +104,4 @@ When
.I errno
is set to other values, the error string
is synthesized using
-.IR strerror (3).
+.MR strerror (3) .
diff --git a/man/man3/event.3 b/man/man3/event.3
index 5991a17d..f76e5ea2 100644
--- a/man/man3/event.3
+++ b/man/man3/event.3
@@ -93,12 +93,12 @@ enum{
These routines provide an interface to multiple sources of input for unthreaded
programs.
Threaded programs (see
-.IR thread (3))
+.MR thread (3) )
should instead use the threaded mouse and keyboard interface described
in
-.IR mouse (3)
+.MR mouse (3)
and
-.IR keyboard (3).
+.MR keyboard (3) .
.PP
.I Einit
must be called first.
@@ -113,7 +113,7 @@ the mouse and keyboard events will be enabled;
in this case,
.IR initdraw
(see
-.IR graphics (3))
+.MR graphics (3) )
must have already been called.
The user must provide a function called
.IR eresized
@@ -123,7 +123,7 @@ is running has been resized; the argument
is a flag specifying whether the program must call
.I getwindow
(see
-.IR graphics (3))
+.MR graphics (3) )
to re-establish a connection to its window.
After resizing (and perhaps calling
.IR getwindow ),
@@ -266,7 +266,7 @@ The return is the same as for
.IR eread .
.PP
As described in
-.IR graphics (3),
+.MR graphics (3) ,
the graphics functions are buffered.
.IR Event ,
.IR eread ,
@@ -370,15 +370,15 @@ changes the cursor image to that described by the
.B Cursor
.I c
(see
-.IR mouse (3)).
+.MR mouse (3) ).
If
.B c
is nil, it restores the image to the default arrow.
.SH SOURCE
.B \*9/src/libdraw
.SH "SEE ALSO"
-.IR rio (1),
-.IR graphics (3),
-.IR plumb (3),
+.MR rio (1) ,
+.MR graphics (3) ,
+.MR plumb (3) ,
.\" .IR cons (3),
-.IR draw (3)
+.MR draw (3)
diff --git a/man/man3/exec.3 b/man/man3/exec.3
index 1a0a8a87..51096cc9 100644
--- a/man/man3/exec.3
+++ b/man/man3/exec.3
@@ -25,11 +25,11 @@ points to the name of the file
to be executed; it must not be a directory, and the permissions
must allow the current user to execute it
(see
-.IR stat (3)).
+.MR stat (3) ).
It should also be a valid binary image, as defined by the local
operating system, or a shell script
(see
-.IR rc (1)).
+.MR rc (1) ).
The first line of a
shell script must begin with
.L #!
@@ -92,24 +92,24 @@ files remain open across
.B OCEXEC
OR'd
into the open mode; see
-.IR open (3));
+.MR open (3) );
and the working directory and environment
(see
-.IR getenv (3))
+.MR getenv (3) )
remain the same.
However, a newly
.I exec'ed
process has no notification handlers
(see
-.IR notify (3)).
+.MR notify (3) ).
.SH SOURCE
.B \*9/src/lib9/exec.c
.br
.B \*9/src/lib9/execl.c
.SH SEE ALSO
-.IR prof (1),
-.IR intro (3),
-.IR stat (3)
+.MR prof (1) ,
+.MR intro (3) ,
+.MR stat (3)
.SH DIAGNOSTICS
If these functions fail, they return and set
.IR errstr .
@@ -138,4 +138,4 @@ are preprocessor macros defined as
and
.IR p9execl ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/exits.3 b/man/man3/exits.3
index 1bab40af..2f4b1f4f 100644
--- a/man/man3/exits.3
+++ b/man/man3/exits.3
@@ -39,7 +39,7 @@ explanation of the reason for
exiting, or a null pointer or empty string to indicate normal termination.
The string is passed to the parent process, prefixed by the name and process
id of the exiting process, when the parent does a
-.IR wait (3).
+.MR wait (3) .
.PP
Before calling
.I _exits
@@ -85,8 +85,8 @@ cancels a previous registration of an exit function.
.br
.B \*9/src/lib9/_exits.c
.SH "SEE ALSO"
-.IR fork (2),
-.IR wait (3)
+.MR fork (2) ,
+.MR wait (3)
.SH BUGS
Because of limitations of Unix, the exit status of a
process can only be an 8-bit integer.
@@ -117,4 +117,4 @@ are preprocessor macros defined as
and
.IR p9atexitdont ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/fcall.3 b/man/man3/fcall.3
index fe696a4b..5e9bd195 100644
--- a/man/man3/fcall.3
+++ b/man/man3/fcall.3
@@ -225,7 +225,7 @@ by a successful call to
Another structure is
.BR Dir ,
used by the routines described in
-.IR stat (3).
+.MR stat (3) .
.I ConvM2D
converts the machine-independent form starting at
.I ap
@@ -293,7 +293,7 @@ contain a validly formatted machine-independent
entry suitable as an argument, for example, for the
.B wstat
(see
-.IR stat (3))
+.MR stat (3) )
system call.
It checks that the sizes of all the elements of the the entry sum to exactly
.IR nbuf ,
@@ -321,7 +321,7 @@ for an incorrectly formatted entry.
and
.I dirmodefmt
are formatting routines, suitable for
-.IR fmtinstall (3).
+.MR fmtinstall (3) .
They convert
.BR Dir* ,
.BR Fcall* ,
@@ -343,7 +343,7 @@ with format letter
.PP
.I Read9pmsg
calls
-.IR read (3)
+.MR read (3)
multiple times, if necessary, to read an entire 9P message into
.BR buf .
The return value is 0 for end of file, or -1 for error; it does not return
@@ -351,7 +351,7 @@ partial messages.
.SH SOURCE
.B \*9/src/lib9
.SH SEE ALSO
-.IR intro (3),
-.IR 9p (3),
-.IR stat (3),
+.MR intro (3) ,
+.MR 9p (3) ,
+.MR stat (3) ,
.IR intro (9p)
diff --git a/man/man3/flate.3 b/man/man3/flate.3
index b7b1a197..81f82dcf 100644
--- a/man/man3/flate.3
+++ b/man/man3/flate.3
@@ -173,7 +173,7 @@ The block functions return the number of bytes produced when they succeed.
.I Mkcrctab
allocates
(using
-.IR malloc (3)),
+.MR malloc (3) ),
initializes, and returns a table for rapid computation of 32 bit CRC values using the polynomial
.IR poly .
.I Blockcrc
diff --git a/man/man3/fmtinstall.3 b/man/man3/fmtinstall.3
index da766d77..b68cd008 100644
--- a/man/man3/fmtinstall.3
+++ b/man/man3/fmtinstall.3
@@ -94,16 +94,16 @@ int fmtrunestrcpy(Fmt *f, Rune *s);
int errfmt(Fmt *f);
.SH DESCRIPTION
The interface described here allows the construction of custom
-.IR print (3)
+.MR print (3)
verbs and output routines.
In essence, they provide access to the workings of the formatted print code.
.PP
The
-.IR print (3)
+.MR print (3)
suite maintains its state with a data structure called
.BR Fmt .
A typical call to
-.IR print (3)
+.MR print (3)
or its relatives initializes a
.B Fmt
structure, passes it to subsidiary routines to process the output,
@@ -154,7 +154,7 @@ to generate the output.
These behave like
.B fprint
(see
-.IR print (3))
+.MR print (3) )
or
.B vfprint
except that the characters are buffered until
@@ -207,7 +207,7 @@ In
are the width and precision, and
.IB fp ->flags
the decoded flags for the verb (see
-.IR print (3)
+.MR print (3)
for a description of these items).
The standard flag values are:
.B FmtSign
@@ -282,7 +282,7 @@ produced.
.PP
Some internal functions may be useful to format primitive types.
They honor the width, precision and flags as described in
-.IR print (3).
+.MR print (3) .
.I Fmtrune
formats a single character
.BR r .
@@ -307,7 +307,7 @@ regardless of whether the output is bytes or runes.
This function prints an error message with a variable
number of arguments and then quits.
Compared to the corresponding example in
-.IR print (3),
+.MR print (3) ,
this version uses a smaller buffer, will never truncate
the output message, but might generate multiple
.B write
@@ -364,9 +364,9 @@ main(...)
.SH SOURCE
.B \*9/src/lib9/fmt
.SH SEE ALSO
-.IR print (3),
-.IR utf (7),
-.IR errstr (3)
+.MR print (3) ,
+.MR utf (7) ,
+.MR errstr (3)
.SH DIAGNOSTICS
These routines return negative numbers or nil for errors and set
.IR errstr .
diff --git a/man/man3/frame.3 b/man/man3/frame.3
index 1e063802..4b027acb 100644
--- a/man/man3/frame.3
+++ b/man/man3/frame.3
@@ -73,9 +73,9 @@ enum{
This library supports
.I frames
of editable text in a single font on raster displays, such as in
-.IR sam (1)
+.MR sam (1)
and
-.IR 9term (1).
+.MR 9term (1) .
Frames may hold any character except NUL (0).
Long lines are folded and tabs are at fixed intervals.
.PP
@@ -239,7 +239,7 @@ If a
.B Frame
is being moved but not resized, that is, if the shape of its containing
rectangle is unchanged, it is sufficient to use
-.IR draw (3)
+.MR draw (3)
to copy the containing rectangle from the old to the new location and then call
.I frsetrects
to establish the new geometry.
@@ -357,6 +357,6 @@ and
.SH SOURCE
.B \*9/src/libframe
.SH SEE ALSO
-.IR graphics (3),
-.IR draw (3),
-.IR cachechars (3).
+.MR graphics (3) ,
+.MR draw (3) ,
+.MR cachechars (3) .
diff --git a/man/man3/genrandom.3 b/man/man3/genrandom.3
index ddf481e4..b5875635 100644
--- a/man/man3/genrandom.3
+++ b/man/man3/genrandom.3
@@ -25,11 +25,11 @@ number generator. The X9.17 generator is seeded by 24
truly random bytes read via
.I truerand
(see
-.IR rand (3)).
+.MR rand (3) ).
.PP
.I Prng
uses the native
-.IR rand (3)
+.MR rand (3)
pseudo-random number generator to fill the buffer. Used with
.IR srand ,
this function can produce a reproducible stream of pseudo random
@@ -38,8 +38,8 @@ numbers useful in testing.
Both functions may be passed to
.I mprand
(see
-.IR mp (3)).
+.MR mp (3) ).
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3)
+.MR mp (3)
diff --git a/man/man3/get9root.3 b/man/man3/get9root.3
index 52fb6f09..a6bdd02f 100644
--- a/man/man3/get9root.3
+++ b/man/man3/get9root.3
@@ -49,7 +49,7 @@ if different from
should be freed with
.I free
(see
-.IR malloc (3))
+.MR malloc (3) )
when no longer needed.
.PP
As a convention, programs should never
@@ -57,7 +57,7 @@ As a convention, programs should never
paths obtained from user input.
.SH EXAMPLE
The
-.IR plumber (4)
+.MR plumber (4)
uses this code to find unrooted file names included by plumb rules.
.IP
.EX
@@ -69,7 +69,7 @@ fd = open(unsharp(buf), OREAD);
.br
.B \*9/src/lib9/unsharp.c
.SH SEE ALSO
-.IR intro (4)
+.MR intro (4)
.SH BUGS
.I Get9root
could be smarter about finding the tree when
diff --git a/man/man3/getenv.3 b/man/man3/getenv.3
index a817b6ef..a37cb659 100644
--- a/man/man3/getenv.3
+++ b/man/man3/getenv.3
@@ -18,7 +18,7 @@ int putenv(char *name, char *val)
fetches the environment value associated with
.I name
into memory allocated with
-.IR malloc (3),
+.MR malloc (3) ,
0-terminates it,
and returns a pointer to that area.
If no file exists, 0
@@ -44,4 +44,4 @@ are preprocessor macros defined as
and
.IR p9putenv ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/getfields.3 b/man/man3/getfields.3
index feaf10d8..79a1ed78 100644
--- a/man/man3/getfields.3
+++ b/man/man3/getfields.3
@@ -75,9 +75,9 @@ with
non-zero,
except that fields may be quoted using single quotes, in the manner
of
-.IR rc (1).
+.MR rc (1) .
See
-.IR quote (3)
+.MR quote (3)
for related quote-handling software.
.PP
.I Tokenize
@@ -91,5 +91,5 @@ set to \f5"\et\er\en "\fP.
.SH SEE ALSO
.I strtok
in
-.IR strcat (3),
-.IR quote (3).
+.MR strcat (3) ,
+.MR quote (3) .
diff --git a/man/man3/getns.3 b/man/man3/getns.3
index b2e03f93..6d0a5a9c 100644
--- a/man/man3/getns.3
+++ b/man/man3/getns.3
@@ -14,9 +14,9 @@ returns a pointer to a malloced string that contains the
path to the name space directory for the current process.
The name space directory is a clumsy substitute
for Plan 9's per-process name spaces; see
-.IR intro (4)
+.MR intro (4)
for details.
.SH SOURCE
.B \*9/src/lib9/getns.c
.SH SEE ALSO
-.IR intro (4)
+.MR intro (4)
diff --git a/man/man3/getsnarf.3 b/man/man3/getsnarf.3
index 938aae3f..30d22082 100644
--- a/man/man3/getsnarf.3
+++ b/man/man3/getsnarf.3
@@ -20,7 +20,7 @@ returns a copy of the current buffer;
the returned pointer should be freed with
.I free
(see
-.IR malloc (3))
+.MR malloc (3) )
when no longer needed.
.PP
.I Putsnarf
@@ -36,4 +36,4 @@ will convert as necessary.
.SH SOURCE
.B \*9/src/libdraw/snarf.c
.SH SEE ALSO
-.IR snarfer (1)
+.MR snarfer (1)
diff --git a/man/man3/getuser.3 b/man/man3/getuser.3
index 41e78e3d..45531b4c 100644
--- a/man/man3/getuser.3
+++ b/man/man3/getuser.3
@@ -19,7 +19,7 @@ name of the user who
owns the current process.
.I Getuser
calls
-.IR getuid (2)
+.MR getuid (2)
and then reads
.B /etc/passwd
to find the corresponding name.
@@ -33,7 +33,7 @@ looks first for an environment variable
If there is no such variable,
.I sysname
calls
-.IR gethostname (2)
+.MR gethostname (2)
and truncates the returned name at the first dot.
If
.I gethostname
diff --git a/man/man3/getwd.3 b/man/man3/getwd.3
index 245914f3..f9ef1949 100644
--- a/man/man3/getwd.3
+++ b/man/man3/getwd.3
@@ -23,10 +23,10 @@ bytes in the buffer provided.
.SH SOURCE
.B \*9/src/lib9/getwd.c
.SH "SEE ALSO"
-.IR pwd (1)
+.MR pwd (1)
.SH DIAGNOSTICS
On error, zero is returned.
-.IR Errstr (3)
+.MR Errstr (3)
may be consulted for more information.
.SH BUGS
To avoid name conflicts with the underlying system,
@@ -34,4 +34,4 @@ To avoid name conflicts with the underlying system,
is a preprocessor macro defined as
.IR p9getwd ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/graphics.3 b/man/man3/graphics.3
index 4f58451a..da0b61cf 100644
--- a/man/man3/graphics.3
+++ b/man/man3/graphics.3
@@ -107,7 +107,7 @@ extern Font *font
A
.B Display
structure represents a connection to the graphics device,
-.IR draw (3),
+.MR draw (3) ,
holding all graphics resources associated with the connection,
including in particular raster image data in use by the client program.
The structure is defined (in part) as:
@@ -135,7 +135,7 @@ A
.B Point
is a location in an Image
(see below and
-.IR draw (3)),
+.MR draw (3) ),
such as the display, and is defined as:
.IP
.EX
@@ -184,18 +184,18 @@ contains the coordinates of the first point beyond the rectangle.
The
.B Image
data structure is defined in
-.IR draw (3).
+.MR draw (3) .
.PP
A
.B Font
is a set of character images, indexed by runes (see
-.IR utf (7)).
+.MR utf (7) ).
The images are organized into
.BR Subfonts ,
each containing the images for a small, contiguous set of runes.
The detailed format of these data structures,
which are described in detail in
-.IR cachechars (3),
+.MR cachechars (3) ,
is immaterial for most applications.
.B Font
and
@@ -210,7 +210,7 @@ and
the distance from the top of the highest character to the bottom of
the lowest character (and hence, the interline spacing).
See
-.IR cachechars (3)
+.MR cachechars (3)
for more details.
.PP
.I Buildfont
@@ -221,7 +221,7 @@ returning a
pointer that can be used by
.B string
(see
-.IR draw (3))
+.MR draw (3) )
to draw characters from the font.
.I Openfont
does the same, but reads the description
@@ -231,7 +231,7 @@ frees a font.
In contrast to Plan 9, font names in Plan 9 from User Space are
a small language describing the desired font.
See
-.IR font (7)
+.MR font (7)
for details.
.PP
A
@@ -274,7 +274,7 @@ structure representing the connection),
(an
.B Image
representing the display memory itself or, if
-.IR rio (1)
+.MR rio (1)
is running, the client's window),
and
.B font
@@ -287,7 +287,7 @@ which is written to
.B /dev/label
if non-nil
so that it can be used to identify the window when hidden (see
-.IR rio (1)).
+.MR rio (1) ).
The font is created by reading the named
.I font
file. If
@@ -301,7 +301,7 @@ if
is not set, it imports the default (usually minimal)
font from the operating system.
(See
-.IR font (7)
+.MR font (7)
for a full discussion of font syntaxes.)
The global
.I font
@@ -322,7 +322,7 @@ is nil, the library provides a default, called
Another effect of
.I initdraw
is that it installs
-.IR print (3)
+.MR print (3)
formats
.I Pfmt
and
@@ -360,9 +360,9 @@ and
files; and
.I ref
specifies the refresh function to be used to create the window, if running under
-.IR rio (1)
+.MR rio (1)
(see
-.IR window (3)).
+.MR window (3) ).
.\" .PP
.\" The function
.\" .I newwindow
@@ -435,11 +435,11 @@ by looking in
to find the name of the window and opening it using
.B namedimage
(see
-.IR allocimage (3)).
+.MR allocimage (3) ).
The resulting window will be created using the refresh method
.I ref
(see
-.IR window (3));
+.MR window (3) );
this should almost always be
.B Refnone
because
@@ -456,7 +456,7 @@ defining the window (or the overall display, if no window system is running); an
a pointer to the
.B Screen
representing the root of the window's hierarchy. (See
-.IR window (3).
+.MR window (3) .
The overloading of the
.B screen
word is an unfortunate historical accident.)
@@ -528,15 +528,15 @@ the window boundaries; otherwise
is a no-op.
.PP
The graphics functions described in
-.IR draw (3),
-.IR allocimage (3),
-.IR cachechars (3),
+.MR draw (3) ,
+.MR allocimage (3) ,
+.MR cachechars (3) ,
and
-.IR subfont (3)
+.MR subfont (3)
are implemented by writing commands to files under
.B /dev/draw
(see
-.IR draw (3));
+.MR draw (3) );
the writes are buffered, so the functions may not take effect immediately.
.I Flushimage
flushes the buffer, doing all pending graphics operations.
@@ -546,7 +546,7 @@ is non-zero, any changes are also copied from the `soft screen' (if any) in the
driver to the visible frame buffer.
The various allocation routines in the library flush automatically, as does the event
package (see
-.IR event (3));
+.MR event (3) );
most programs do not need to call
.IR flushimage .
It returns \-1 on error.
@@ -563,13 +563,13 @@ and
.I chantostr
convert between the channel descriptor strings
used by
-.IR image (7)
+.MR image (7)
and the internal
.B ulong
representation
used by the graphics protocol
(see
-.IR draw (3)'s
+.MR draw (3) 's
.B b
message).
.B Chantostr
@@ -599,7 +599,7 @@ if(getwindow(display, Refnone) < 0)
.EE
.PP
To create and set up a new
-.IR rio (1)
+.MR rio (1)
window,
.IP
.EX
@@ -630,23 +630,23 @@ if(gengetwindow(display, "/tmp/winname",
.SH SOURCE
.B \*9/src/libdraw
.SH "SEE ALSO"
-.IR rio (1),
-.IR addpt (3),
-.IR allocimage (3),
-.IR cachechars (3),
-.IR subfont (3),
-.IR draw (3),
-.IR event (3),
-.IR frame (3),
-.IR print (3),
-.IR window (3),
-.IR draw (3),
+.MR rio (1) ,
+.MR addpt (3) ,
+.MR allocimage (3) ,
+.MR cachechars (3) ,
+.MR subfont (3) ,
+.MR draw (3) ,
+.MR event (3) ,
+.MR frame (3) ,
+.MR print (3) ,
+.MR window (3) ,
+.MR draw (3) ,
.\" .IR rio (4),
-.IR image (7),
-.IR font (7)
+.MR image (7) ,
+.MR font (7)
.SH DIAGNOSTICS
An error function may call
-.IR errstr (3)
+.MR errstr (3)
for further diagnostics.
.SH BUGS
The names
diff --git a/man/man3/html.3 b/man/man3/html.3
index 7dc486ae..b77fda91 100644
--- a/man/man3/html.3
+++ b/man/man3/html.3
@@ -1411,7 +1411,7 @@ would not otherwise fit), and
.SH SOURCE
.B \*9/src/libhtml
.SH SEE ALSO
-.IR fmt (1)
+.MR fmt (1)
.PP
W3C World Wide Web Consortium,
``HTML 4.01 Specification''.
diff --git a/man/man3/ioproc.3 b/man/man3/ioproc.3
index a87fa775..38609d7b 100644
--- a/man/man3/ioproc.3
+++ b/man/man3/ioproc.3
@@ -80,14 +80,14 @@ and
execute the
similarly named library or system calls
(see
-.IR close (2),
-.IR dial (3),
-.IR open (3),
-.IR read (3),
-.IR fcall (3),
-.IR sendfd (3),
+.MR close (2) ,
+.MR dial (3) ,
+.MR open (3) ,
+.MR read (3) ,
+.MR fcall (3) ,
+.MR sendfd (3) ,
and
-.IR sleep (3))
+.MR sleep (3) )
in the slave process associated with
.IR io .
It is an error to execute more than one call
@@ -187,10 +187,10 @@ ioread(Ioproc *io, int fd, void *a, long n)
.SH SOURCE
.B \*9/src/libthread
.SH SEE ALSO
-.IR dial (3),
-.IR open (3),
-.IR read (3),
-.IR thread (3)
+.MR dial (3) ,
+.MR open (3) ,
+.MR read (3) ,
+.MR thread (3)
.SH BUGS
.I Iointerrupt
is currently unimplemented.
diff --git a/man/man3/ip.3 b/man/man3/ip.3
index 2d9e8289..da3855ed 100644
--- a/man/man3/ip.3
+++ b/man/man3/ip.3
@@ -126,7 +126,7 @@ The string representation of Ethernet addresses is exactly
.PP
.I Eipfmt
is a
-.IR print (3)
+.MR print (3)
formatter for Ethernet (verb
.BR E )
addresses,
@@ -340,4 +340,4 @@ point to point.
.SH SOURCE
.B \*9/src/libip
.SH SEE ALSO
-.IR print (3)
+.MR print (3)
diff --git a/man/man3/isalpharune.3 b/man/man3/isalpharune.3
index 7b5cf301..f9b20a0c 100644
--- a/man/man3/isalpharune.3
+++ b/man/man3/isalpharune.3
@@ -35,7 +35,7 @@ in particular a subset of their properties as defined in the Unicode standard.
Unicode defines some characters as alphabetic and specifies three cases:
upper, lower, and title.
Analogously to
-.IR isalpha (3)
+.MR isalpha (3)
for
.SM ASCII\c
,
diff --git a/man/man3/keyboard.3 b/man/man3/keyboard.3
index 4641b86d..feedfd2e 100644
--- a/man/man3/keyboard.3
+++ b/man/man3/keyboard.3
@@ -23,14 +23,14 @@ void closekeyboard(Keyboard *kc)
.SH DESCRIPTION
These functions access and control a keyboard interface
for character-at-a-time I/O in a multi-threaded environment, usually in combination with
-.IR mouse (3).
+.MR mouse (3) .
They use the message-passing
.B Channel
interface in the threads library
(see
-.IR thread (3));
+.MR thread (3) );
programs that wish a more event-driven, single-threaded approach should use
-.IR event (3).
+.MR event (3) .
.PP
.I Initkeyboard
opens a connection to the keyboard and returns a
@@ -86,10 +86,10 @@ structure.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR draw (3),
-.IR event (3),
-.IR thread (3).
+.MR graphics (3) ,
+.MR draw (3) ,
+.MR event (3) ,
+.MR thread (3) .
.SH BUGS
Because the interface delivers complete runes,
there is no way to report lesser actions such as
diff --git a/man/man3/lock.3 b/man/man3/lock.3
index adc75d1f..2dea7467 100644
--- a/man/man3/lock.3
+++ b/man/man3/lock.3
@@ -80,7 +80,7 @@ are rendezvous points.
Locks and rendezvous points have trivial implementations in programs
not using the thread library
(see
-.IR thread (3)),
+.MR thread (3) ),
since such programs have no concurrency.
.PP
Used carelessly, spin locks can be expensive and can easily generate deadlocks.
diff --git a/man/man3/mach-cmd.3 b/man/man3/mach-cmd.3
index ac6b3bbd..a2b4462d 100644
--- a/man/man3/mach-cmd.3
+++ b/man/man3/mach-cmd.3
@@ -64,7 +64,7 @@ fields) of all currently open headers
(see
.I symopen
in
-.IR mach-symbol (3)).
+.MR mach-symbol (3) ).
When dynamically linked objects have been attached,
they are present in this linked list,
and therefore included in searches by
@@ -73,7 +73,7 @@ and therefore included in searches by
and
.I findsym
(see
-.IR mach-symbol (3)).
+.MR mach-symbol (3) ).
.TP
.I corhdr
The file header for the core dump, if any.
@@ -118,9 +118,9 @@ loaded.
uses all of these functions while
parsing an argument vector as would be passed to
a debugger like
-.IR db (1)
+.MR db (1)
or
-.IR acid (1).
+.MR acid (1) .
It expects a list of executable files, core dump files, or process ids,
given in any order.
If extra arguments are given (for example, more than one executable, or both
@@ -133,9 +133,9 @@ fills them in as best it can.
.SH SOURCE
.B \*9/src/libmach
.SH "SEE ALSO
-.IR mach (3),
-.IR mach-file (3),
-.IR mach-map (3)
+.MR mach (3) ,
+.MR mach-file (3) ,
+.MR mach-map (3)
.SH BUGS
The interface needs to be changed to support
multiple threads, each with its own register set.
diff --git a/man/man3/mach-file.3 b/man/man3/mach-file.3
index 19a10b81..cd275c5e 100644
--- a/man/man3/mach-file.3
+++ b/man/man3/mach-file.3
@@ -161,10 +161,10 @@ The memory at
should be freed via
.I free
(see
-.IR malloc (3))
+.MR malloc (3) )
when no longer needed.
.SH SOURCE
.B \*9/src/libmach
.SH "SEE ALSO"
-.IR mach (3),
-.IR mach-map (3)
+.MR mach (3) ,
+.MR mach-map (3)
diff --git a/man/man3/mach-map.3 b/man/man3/mach-map.3
index c5822572..a0e27402 100644
--- a/man/man3/mach-map.3
+++ b/man/man3/mach-map.3
@@ -133,10 +133,10 @@ via
data structures that provides access to an address space
and register set.
The functions described in
-.IR mach-file (3)
+.MR mach-file (3)
are typically used to construct these maps.
Related library functions described in
-.IR mach-symbol (3)
+.MR mach-symbol (3)
provide similar access to symbol tables.
.PP
Each
@@ -178,7 +178,7 @@ The
.B rw
function is most commonly used to provide
access to executing processes via
-.IR ptrace (2)
+.MR ptrace (2)
and to zeroed segments.
.PP
.I Allocmap
@@ -346,7 +346,7 @@ such locations are useful for passing specific constants to
functions expect locations, such as
.I unwind
(see
-.IR mach-stack (3)).
+.MR mach-stack (3) ).
.PP
.I Loccmp
compares two locations, returning negative, zero, or positive
@@ -360,7 +360,7 @@ which are ordered before indirections.
.PP
.I Locfmt
is a
-.IR print (3)-verb
+.MR print (3) -verb
that formats a
.B Loc
structure
@@ -371,7 +371,7 @@ Indirection locations are needed in some contexts (e.g., when
using
.I findlsym
(see
-.IR mach-symbol (3))),
+.MR mach-symbol (3) )),
but bothersome in most.
.I Locsimplify
rewrites indirections as absolute memory addresses, by evaluating
@@ -397,8 +397,8 @@ function families as necessary.
.SH SOURCE
.B \*9/src/libmach
.SH "SEE ALSO"
-.IR mach (3),
-.IR mach-file (3)
+.MR mach (3) ,
+.MR mach-file (3)
.SH DIAGNOSTICS
These routines set
.IR errstr .
diff --git a/man/man3/mach-stack.3 b/man/man3/mach-stack.3
index d75f641f..4c34abb1 100644
--- a/man/man3/mach-stack.3
+++ b/man/man3/mach-stack.3
@@ -68,7 +68,7 @@ a new
.I rget
function, and a symbol
(see
-.IR mach-symbol (3))
+.MR mach-symbol (3) )
describing the current function
(nil if no symbol is known).
The value returned by the tracer
@@ -180,6 +180,6 @@ trace(Map *map, ulong pc, ulong callerpc,
.SH SOURCE
.B \*9/src/libmach
.SH SEE ALSO
-.IR mach (3)
+.MR mach (3)
.SH BUGS
Need to talk about Regs
diff --git a/man/man3/mach-swap.3 b/man/man3/mach-swap.3
index eb6091f3..eda66911 100644
--- a/man/man3/mach-swap.3
+++ b/man/man3/mach-swap.3
@@ -114,4 +114,4 @@ and low 32-bits are in
.SH SOURCE
.B \*9/src/libmach
.SH "SEE ALSO"
-.IR mach (3)
+.MR mach (3)
diff --git a/man/man3/mach-symbol.3 b/man/man3/mach-symbol.3
index e14a7b2e..a761a12b 100644
--- a/man/man3/mach-symbol.3
+++ b/man/man3/mach-symbol.3
@@ -61,10 +61,10 @@ int fnbound(ulong pc, ulong bounds[2])
.SH DESCRIPTION
These functions provide machine-independent access to the
symbol table of an executable file or executing process.
-.IR Mach (3),
-.IR mach-file (3),
+.MR Mach (3) ,
+.MR mach-file (3) ,
and
-.IR mach-map (3)
+.MR mach-map (3)
describe additional library functions for
accessing executable files and executing processes.
.PP
@@ -74,7 +74,7 @@ uses the data in the
structure filled by
.I crackhdr
(see
-.IR mach-file (3))
+.MR mach-file (3) )
to initialize in-memory structures used to access the symbol
tables contained in the file.
.IR Symclose
@@ -371,6 +371,6 @@ in the system error buffer where it is available via
.SH SOURCE
.B \*9/src/libmach
.SH "SEE ALSO"
-.IR mach (3),
-.IR mach-file (3),
-.IR mach-map (3)
+.MR mach (3) ,
+.MR mach-file (3) ,
+.MR mach-map (3)
diff --git a/man/man3/mach.3 b/man/man3/mach.3
index 9c065d00..bf260d58 100644
--- a/man/man3/mach.3
+++ b/man/man3/mach.3
@@ -40,7 +40,7 @@ points at the structure for the architecture being debugged.
It is set implicitly by
.I crackhdr
(see
-.IR mach-file (3))
+.MR mach-file (3) )
and can be set explicitly by calling
.I machbyname
or
@@ -66,31 +66,31 @@ Mac OS X).
Other manual pages
describe the library functions in detail.
.PP
-.IR Mach-cmd (3)
+.MR Mach-cmd (3)
describes some convenience routines for attaching to
processes and core files.
.PP
-.IR Mach-file (3)
+.MR Mach-file (3)
describes the manipulation of binary files.
.PP
-.IR Mach-map (3)
+.MR Mach-map (3)
describes the interface to address spaces and register sets
in executable files and executing programs.
.PP
-.IR Mach-stack (3)
+.MR Mach-stack (3)
describes support for unwinding the stack.
.PP
-.IR Mach-swap (3)
+.MR Mach-swap (3)
describes helper functions for accessing data
in a particular byte order.
.PP
-.IR Mach-symbol (3)
+.MR Mach-symbol (3)
describes the interface to debugging symbol information.
.SH SOURCE
.B \*9/src/libmach
.SH "SEE ALSO
-.IR mach-file (3),
-.IR mach-map (3),
-.IR mach-stack (3),
-.IR mach-swap (3),
-.IR mach-symbol (3)
+.MR mach-file (3) ,
+.MR mach-map (3) ,
+.MR mach-stack (3) ,
+.MR mach-swap (3) ,
+.MR mach-symbol (3)
diff --git a/man/man3/malloc.3 b/man/man3/malloc.3
index 1cdff577..02498ab9 100644
--- a/man/man3/malloc.3
+++ b/man/man3/malloc.3
@@ -132,8 +132,8 @@ the source of allocation.
.SH SEE ALSO
.I trump
(in
-.IR acid (1)),
-.IR getcallerpc (3)
+.MR acid (1) ),
+.MR getcallerpc (3)
.SH DIAGNOSTICS
.I Malloc, realloc
and
@@ -153,7 +153,7 @@ The
library for
.I acid
can be used to obtain traces of malloc execution; see
-.IR acid (1).
+.MR acid (1) .
.SH BUGS
The different specification of
.I calloc
@@ -182,4 +182,4 @@ are preprocessor macros defined as
and
.IR p9free ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/matrix.3 b/man/man3/matrix.3
index 7291725c..7d6c9e6b 100644
--- a/man/man3/matrix.3
+++ b/man/man3/matrix.3
@@ -347,4 +347,4 @@ coordinates.
.SH SOURCE
.B \*9/src/libgeometry/matrix.c
.SH "SEE ALSO
-.IR arith3 (3)
+.MR arith3 (3)
diff --git a/man/man3/memdraw.3 b/man/man3/memdraw.3
index 243cfe16..8dad89d0 100644
--- a/man/man3/memdraw.3
+++ b/man/man3/memdraw.3
@@ -168,46 +168,46 @@ type defines memory-resident rectangular pictures and the methods to draw upon t
differ from
.BR Image s
(see
-.IR draw (3))
+.MR draw (3) )
in that they are manipulated directly in user memory rather than by
RPCs to the
.B /dev/draw
hierarchy.
The
.Bmemdraw
-library is the basis for the kernel
-.IR draw (3)
+library is the basis for the kernel
+.MR draw (3)
driver and also used by a number of programs that must manipulate
images without a display.
.PP
-The
-.BR r,
+The
+.BR r,
.BR clipr ,
.BR depth ,
.BR nchan ,
and
-.BR chan
+.BR chan
structure elements are identical to
the ones of the same name
-in the
+in the
.B Image
structure.
.PP
The
.B flags
-element of the
+element of the
.B Memimage
structure holds a number of bits of information about the image.
In particular, it subsumes the
purpose of the
.B repl
-element of
+element of
.B Image
structures.
.PP
.I Memimageinit
initializes various static data that the library depends on,
-as well as the replicated solid color images
+as well as the replicated solid color images
.BR memopaque ,
.BR memtransparent ,
.BR memblack ,
@@ -216,15 +216,15 @@ and
It should be called before referring to any of these images
and before calling any of the other library functions.
.PP
-Each
+Each
.B Memimage
-points at a
+points at a
.B Memdata
structure that in turn points at the actual pixel data for the image.
-This allows multiple images to be associated with the same
+This allows multiple images to be associated with the same
.BR Memdata .
The first word of the data pointed at by
-the
+the
.B base
element of
.B Memdata
@@ -232,18 +232,19 @@ points back at the
.B Memdata
structure, so that in the Plan 9 kernel, the
memory allocator (see
-Plan 9's \fIpool\fR(3))
+Plan 9's
+.IR pool (3))
can compact image memory
using
.IR memimagemove .
.PP
Because images can have different coordinate systems,
-the
+the
.B zero
-element of the
+element of the
.B Memimage
structure contains the offset that must be added
-to the
+to the
.B bdata
element of the corresponding
.B Memdata
@@ -261,18 +262,18 @@ do not include the origin, although one should only dereference
pointers corresponding to pixels within the image rectangle.
.I Wordaddr
and
-.IR byteaddr
-perform these calculations,
+.IR byteaddr
+perform these calculations,
returning pointers to the word and byte, respectively,
that contain the beginning of the data for a given pixel.
.PP
.I Allocmemimage
-allocates
+allocates
images with a given rectangle and channel descriptor
-(see
+(see
.B strtochan
in
-.IR graphics (3)),
+.MR graphics (3) ),
creating a fresh
.B Memdata
structure and associated storage.
@@ -282,7 +283,7 @@ is similar but uses the supplied
structure rather than a new one.
The
.I readmemimage
-function reads an uncompressed bitmap
+function reads an uncompressed bitmap
from the given file descriptor,
while
.I creadmemimage
@@ -293,7 +294,7 @@ writes a compressed representation of
to file descriptor
.IR fd .
For more on bitmap formats, see
-.IR image (7).
+.MR image (7) .
.I Freememimage
frees images returned by any of these routines.
The
@@ -315,7 +316,7 @@ data, respectively.
When calling
.IR cloadmemimage ,
the buffer must contain an
-integral number of
+integral number of
compressed chunks of data that exactly cover the rectangle.
.I Unloadmemimage
retrieves the uncompressed pixel data for a given rectangle of an image.
@@ -324,8 +325,8 @@ and \-1 in case of an error.
.PP
.I Memfillcolor
fills an image with the given color, a 32-bit number as
-described in
-.IR color (3).
+described in
+.MR color (3) .
.PP
.IR Memarc ,
.IR mempoly ,
@@ -334,7 +335,7 @@ described in
.IR memimageline ,
and
.I memimagedraw
-are identical to the
+are identical to the
.IR arc ,
.IR poly ,
.IR ellipse ,
@@ -343,40 +344,40 @@ are identical to the
and
.IR gendraw ,
routines described in
-.IR draw (3),
+.MR draw (3) ,
except that they operate on
.BR Memimage s
-rather than
+rather than
.BR Image s.
-Similarly,
+Similarly,
.IR allocmemsubfont ,
.IR openmemsubfont ,
.IR freememsubfont ,
.IR memsubfontwidth ,
and
.I memimagestring
-are the
+are the
.B Memimage
-analogues of
+analogues of
.IR allocsubfont ,
.IR openfont ,
.IR freesubfont ,
.IR strsubfontwidth ,
and
.B string
-(see
-.IR subfont (3)
+(see
+.MR subfont (3)
and
-.IR graphics (3)),
+.MR graphics (3) ),
except that they operate
-only on
+only on
.BR Memsubfont s
rather than
.BR Font s.
.PP
.I Drawclip
takes the images involved in a draw operation,
-together with the destination rectangle
+together with the destination rectangle
.B dr
and source
and mask alignment points
@@ -407,7 +408,7 @@ an end of a given style.
.PP
The
.I hwdraw
-and
+and
.I iprint
functions are no-op stubs that may be overridden by clients
of the library.
@@ -415,7 +416,7 @@ of the library.
is called at each call to
.I memimagedraw
with the current request's parameters.
-If it can satisfy the request, it should do so
+If it can satisfy the request, it should do so
and return 1.
If it cannot satisfy the request, it should return 0.
This allows (for instance) the kernel to take advantage
@@ -432,15 +433,15 @@ prints to a serial line rather than the screen, for obvious reasons.
.SH SOURCE
.B \*9/src/libmemdraw
.SH SEE ALSO
-.IR addpt (3),
-.IR color (3),
-.IR draw (3),
-.IR graphics (3),
-.IR memlayer (3),
-.IR stringsize (3),
-.IR subfont (3),
-.IR color (7),
-.IR utf (7)
+.MR addpt (3) ,
+.MR color (3) ,
+.MR draw (3) ,
+.MR graphics (3) ,
+.MR memlayer (3) ,
+.MR stringsize (3) ,
+.MR subfont (3) ,
+.MR color (7) ,
+.MR utf (7)
.SH BUGS
.I Memimagestring
is unusual in using a subfont rather than a font,
diff --git a/man/man3/memlayer.3 b/man/man3/memlayer.3
index a40efdc7..d7f06510 100644
--- a/man/man3/memlayer.3
+++ b/man/man3/memlayer.3
@@ -97,18 +97,18 @@ int memunload(Memimage *i, Rectangle r,
.PP
.SH DESCRIPTION
These functions build upon the
-.IR memdraw (3)
+.MR memdraw (3)
interface to maintain overlapping graphical windows on in-memory images.
They are used by the kernel to implement the windows interface presented by
-.IR draw (3)
+.MR draw (3)
and
-.IR window (3)
+.MR window (3)
and probably have little use outside of the kernel.
.PP
The basic function is to extend the definition of a
.B Memimage
(see
-.IR memdraw (3))
+.MR memdraw (3) )
to include overlapping windows defined by the
.B Memlayer
type.
@@ -270,7 +270,7 @@ They have the signatures of
and
.I memimageline
(see
-.IR memdraw (3))
+.MR memdraw (3) )
but accept
.B Memlayer
or
@@ -294,12 +294,12 @@ bytes of data in
.I buf
are in compressed image format
(see
-.IR image (7)).
+.MR image (7) ).
.SH SOURCE
.B \*9/src/libmemlayer
.SH SEE ALSO
-.IR graphics (3),
-.IR memdraw (3),
-.IR stringsize (3),
-.IR window (3),
-.IR draw (3)
+.MR graphics (3) ,
+.MR memdraw (3) ,
+.MR stringsize (3) ,
+.MR window (3) ,
+.MR draw (3)
diff --git a/man/man3/memory.3 b/man/man3/memory.3
index 51e54479..5f191dd4 100644
--- a/man/man3/memory.3
+++ b/man/man3/memory.3
@@ -109,7 +109,7 @@ All these routines have portable C implementations in
.\" Most also have machine-dependent assembly language implementations in
.\" .BR \*9/lib9/$objtype .
.SH SEE ALSO
-.IR strcat (3)
+.MR strcat (3)
.SH BUGS
ANSI C does not require
.I memcpy
diff --git a/man/man3/mouse.3 b/man/man3/mouse.3
index b5061fd9..9b835891 100644
--- a/man/man3/mouse.3
+++ b/man/man3/mouse.3
@@ -49,9 +49,9 @@ They use the message-passing
.B Channel
interface in the threads library
(see
-.IR thread (3));
+.MR thread (3) );
programs that wish a more event-driven, single-threaded approach should use
-.IR event (3).
+.MR event (3) .
.PP
The state of the mouse is recorded in a structure,
.BR Mouse ,
@@ -107,7 +107,7 @@ are a
naming the device file connected to the mouse and an
.I Image
(see
-.IR draw (3))
+.MR draw (3) )
on which the mouse will be visible.
Typically the file is
nil,
@@ -136,7 +136,7 @@ The actual value sent may be discarded; the receipt of the message
tells the program that it should call
.B getwindow
(see
-.IR graphics (3))
+.MR graphics (3) )
to reconnect to the window.
.PP
.I Readmouse
@@ -152,7 +152,7 @@ or message sent on the channel.
It calls
.B flushimage
(see
-.IR graphics (3))
+.MR graphics (3) )
before blocking, so any buffered graphics requests are displayed.
.PP
.I Closemouse
@@ -174,14 +174,14 @@ is nil, the cursor is set to the default.
The format of the cursor data is spelled out in
.B <cursor.h>
and described in
-.IR graphics (3).
+.MR graphics (3) .
.PP
.I Getrect
returns the dimensions of a rectangle swept by the user, using the mouse,
in the manner
-.IR rio (1)
+.MR rio (1)
or
-.IR sam (1)
+.MR sam (1)
uses to create a new window.
The
.I but
@@ -220,7 +220,7 @@ struct Menu
behaves the same as its namesake
.I emenuhit
described in
-.IR event (3),
+.MR event (3) ,
with two exceptions.
First, it uses a
.B Mousectl
@@ -230,7 +230,7 @@ it creates the menu as a true window on the
.B Screen
.I scr
(see
-.IR window (3)),
+.MR window (3) ),
permitting the menu to be displayed in parallel with other activities on the display.
If
.I scr
@@ -244,8 +244,8 @@ restoring the display when the menu is removed.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR draw (3),
-.IR event (3),
-.IR keyboard (3),
-.IR thread (3).
+.MR graphics (3) ,
+.MR draw (3) ,
+.MR event (3) ,
+.MR keyboard (3) ,
+.MR thread (3) .
diff --git a/man/man3/mousescrollsize.3 b/man/man3/mousescrollsize.3
index 98147356..c4c24b10 100644
--- a/man/man3/mousescrollsize.3
+++ b/man/man3/mousescrollsize.3
@@ -28,15 +28,15 @@ causes a half-window scroll increment.
.PP
.I Mousescrollsize
is used by
-.IR 9term (1)
+.MR 9term (1)
and
-.IR acme (1)
+.MR acme (1)
to set their scrolling behavior.
.SH SOURCE
.B \*9/src/libdraw/scroll.c
.SH SEE ALSO
-.IR 9term (1),
-.IR acme (1)
+.MR 9term (1) ,
+.MR acme (1)
.SH BUGS
.I Libdraw
expects up and down scroll wheel events to be expressed as clicks of mouse buttons 4 and 5,
diff --git a/man/man3/mp.3 b/man/man3/mp.3
index f0028c3f..8ea365dc 100644
--- a/man/man3/mp.3
+++ b/man/man3/mp.3
@@ -315,9 +315,9 @@ is
the buffer is allocated.
.I Mpfmt
can be used with
-.IR fmtinstall (3)
+.MR fmtinstall (3)
and
-.IR print (3)
+.MR print (3)
to print hexadecimal representations of
.BR mpint s.
.PP
diff --git a/man/man3/mux.3 b/man/man3/mux.3
index 0c429fba..ed822940 100644
--- a/man/man3/mux.3
+++ b/man/man3/mux.3
@@ -123,7 +123,7 @@ nil if an error occurred.
.I Muxprocs
allocates new procs
(see
-.IR thread (3))
+.MR thread (3) )
in which to run
.I send
and
@@ -146,7 +146,7 @@ that need to remain active.
.I Libmux
also provides a non-blocking interface, useful for programs forced
to use a
-.IR select (3)-based
+.MR select (3) -based
main loop.
.I Muxrpcstart
runs the first half of
@@ -176,7 +176,7 @@ with
.SH SOURCE
.B \*9/src/libmux
.SH SEE ALSO
-.IR thread (3),
+.MR thread (3) ,
.IR intro (9p)
.SH BUGS
.I Libmux
diff --git a/man/man3/ndb.3 b/man/man3/ndb.3
index 14c845b6..413c11d6 100644
--- a/man/man3/ndb.3
+++ b/man/man3/ndb.3
@@ -88,13 +88,13 @@ Ndbtuple* ndbsubstitute(Ndbtuple *t, Ndbtuple *from, Ndbtuple *to);
These routines are used by network administrative programs to search
the network database.
They operate on the database files described in
-.IR ndb (7).
+.MR ndb (7) .
.PP
.I Ndbopen
opens the database
.I file
and calls
-.IR malloc (3)
+.MR malloc (3)
to allocate a buffer for it.
If
.I file
@@ -128,7 +128,7 @@ is used to find each successive match.
On a successful search both return a linked list of
.I Ndbtuple
structures acquired by
-.IR malloc (3)
+.MR malloc (3)
that represent the attribute/value pairs in the
entry.
On failure they return zero.
@@ -450,8 +450,8 @@ directory of network database files
.SH SOURCE
.B \*9/src/libndb
.SH SEE ALSO
-.IR ndb (1)
-.IR ndb (7)
+.MR ndb (1)
+.MR ndb (7)
.SH DIAGNOSTICS
.IR Ndbgetvalue
and
diff --git a/man/man3/needstack.3 b/man/man3/needstack.3
index 071b8916..52fa8785 100644
--- a/man/man3/needstack.3
+++ b/man/man3/needstack.3
@@ -45,7 +45,7 @@ is a no-op.
.I Needstack
should be thought of as a comment checked at run time,
like
-.IR assert (3).
+.MR assert (3) .
.SH EXAMPLE
The X Window library implementation of
.I XLookupString
@@ -57,7 +57,7 @@ before making calls to
.IR XLookupString .
If a thread (in this case, the keyboard-reading thread used
inside the
-.IR draw (3)
+.MR draw (3)
library)
does not allocate a large enough stack, the problem is diagnosed
immediately rather than left to corrupt memory.
@@ -66,4 +66,4 @@ immediately rather than left to corrupt memory.
.br
.B \*9/src/libthread
.SH SEE ALSO
-.IR thread (3)
+.MR thread (3)
diff --git a/man/man3/notify.3 b/man/man3/notify.3
index 7dd768e7..9f2efb6d 100644
--- a/man/man3/notify.3
+++ b/man/man3/notify.3
@@ -33,12 +33,12 @@ or writing on a closed pipe, a
is posted to communicate the exception.
A note may also be posted by another process
via
-.IR postnote (3).
+.MR postnote (3) .
On Unix, notes are implemented as signals.
.PP
When a note is received, the action taken depends on the note.
See
-.IR signal (7)
+.MR signal (7)
for the full description of the defaults.
.PP
The default actions may be overridden.
@@ -53,10 +53,10 @@ replaces the previous handler, if any.
An argument of zero cancels a previous handler,
restoring the default action.
A
-.IR fork (2)
+.MR fork (2)
system call leaves the handler registered in
both the parent and the child;
-.IR exec (3)
+.MR exec (3)
restores the default behavior.
Handlers may not perform floating point operations.
.PP
@@ -112,17 +112,17 @@ set up with
using the
.I notejmp
function (see
-.IR setjmp (3)).
+.MR setjmp (3) ).
.PP
Unix provides a fixed set of notes (typically there are 32) called
.IR signals .
It also allows a process to block certain notes from being delivered
(see
-.IR sigprocmask (2))
+.MR sigprocmask (2) )
and to ignore certain notes by setting the signal hander to the special value
.B SIG_IGN
(see
-.IR signal (2)).
+.MR signal (2) ).
.I Noteenable
and
.I notedisable
@@ -137,7 +137,7 @@ is called upon receipt of the note; if the handler is not called, the note is di
Regardless of the origin of the note or the presence of a handler,
if the process is being debugged
(see
-.IR ptrace (2))
+.MR ptrace (2) )
the arrival of a note puts the process in the
.B Stopped
state and awakens the debugger.
@@ -252,7 +252,7 @@ are usually generated by the operating system.
.br
.B \*9/src/lib9/atnotify.c
.SH SEE ALSO
-.IR intro (3),
+.MR intro (3) ,
.I notejmp
in
-.IR setjmp (3)
+.MR setjmp (3)
diff --git a/man/man3/open.3 b/man/man3/open.3
index 750aa65c..d4b2e272 100644
--- a/man/man3/open.3
+++ b/man/man3/open.3
@@ -34,7 +34,7 @@ says to truncate the file
to zero length before opening it;
.B OCEXEC
says to close the file when an
-.IR exec (3)
+.MR exec (3)
or
.I execl
system call is made;
@@ -48,7 +48,7 @@ are always appended to the end of the file.
fails if the file does not exist or the user does not have
permission to open it for the requested purpose
(see
-.IR stat (3)
+.MR stat (3)
for a description of permissions).
The user must have write permission on the
.I file
@@ -61,7 +61,7 @@ system call
(unlike the implicit
.I open
in
-.IR exec (3)),
+.MR exec (3) ),
.B OEXEC
is actually identical to
.BR OREAD .
@@ -143,8 +143,8 @@ allows the file descriptor to be reused.
.SH SOURCE
.B \*9/src/lib9
.SH SEE ALSO
-.IR intro (3),
-.IR stat (3)
+.MR intro (3) ,
+.MR stat (3)
.SH DIAGNOSTICS
These functions set
.IR errstr .
@@ -169,4 +169,4 @@ are preprocessor macros defined as
and
.IR p9create ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/opentemp.3 b/man/man3/opentemp.3
index 63af2da7..f105a57f 100644
--- a/man/man3/opentemp.3
+++ b/man/man3/opentemp.3
@@ -25,7 +25,7 @@ to
.L z
are tried until the name of a file that does not yet exist
(see
-.IR access (2))
+.MR access (2) )
is generated.
.I Opentemp
then opens the file for the given
@@ -49,4 +49,4 @@ will never return the same name.
.SH "SEE ALSO
.I create
in
-.IR open (3)
+.MR open (3)
diff --git a/man/man3/pipe.3 b/man/man3/pipe.3
index 10decb69..ef4de313 100644
--- a/man/man3/pipe.3
+++ b/man/man3/pipe.3
@@ -25,7 +25,7 @@ is available for reading from
After the pipe has been established,
cooperating processes
created by subsequent
-.IR fork (2)
+.MR fork (2)
calls may pass data through the
pipe with
.I read
@@ -53,14 +53,14 @@ calls.
.\" .IR stat (3)).
.PP
When all the data has been read from a pipe and the writer has closed the pipe or exited,
-.IR read (3)
+.MR read (3)
will return 0 bytes. Writes to a pipe with no reader will generate a note
.BR "sys: write on closed pipe" .
.SH SOURCE
.B \*9/src/lib9/pipe.c
.SH SEE ALSO
-.IR intro (3),
-.IR read (3)
+.MR intro (3) ,
+.MR read (3)
.SH DIAGNOSTICS
Sets
.IR errstr .
@@ -79,7 +79,7 @@ Unix pipes are not guaranteed to be bidirectional.
In order to ensure a bidirectional channel,
.I p9pipe
creates Unix domain sockets via the
-.IR socketpair (2)
+.MR socketpair (2)
instead of Unix pipes.
.PP
The implementation of pipes as Unix domain sockets
@@ -89,11 +89,11 @@ Unix's dup device. If a Unix domain socket is open as file
descriptor 0, some implementations disallow the opening of
.BR /dev/fd/0 ;
instead one must
-.IR connect (2)
+.MR connect (2)
to it.
If this functionality is important
(as it is for
-.IR rc (1)),
+.MR rc (1) ),
one must
.B #undef
.B pipe
diff --git a/man/man3/plumb.3 b/man/man3/plumb.3
index fa78a2b5..409c40bc 100644
--- a/man/man3/plumb.3
+++ b/man/man3/plumb.3
@@ -68,7 +68,7 @@ Plumbmsg* plumbrecvfid(CFid *fid)
int plumbsendtofid(CFid *fid, Plumbmsg *m)
.SH DESCRIPTION
These routines manipulate
-.IR plumb (7)
+.MR plumb (7)
messages, transmitting them, receiving them, and
converting them between text and these data structures:
.IP
@@ -99,7 +99,7 @@ struct Plumbattr
opens the named plumb
.IR port ,
using
-.IR open (3)
+.MR open (3)
mode
.IR omode .
If
@@ -108,11 +108,11 @@ begins with a slash, it is taken as a literal file name;
otherwise
.I plumbopen
searches for the location of the
-.IR plumber (4)
+.MR plumber (4)
service and opens the port there.
.PP
For programs using the
-.IR event (3)
+.MR event (3)
interface,
.I eplumb
registers, using the given
@@ -121,9 +121,9 @@ receipt of messages from the named
.IR port .
.PP
The library mounts the
-.IR plumber (4)
+.MR plumber (4)
service on demand (using the
-.IR 9pclient (3))
+.MR 9pclient (3) )
library and reuses the mount instance for future
calls to
.IR plumbopen .
@@ -157,7 +157,7 @@ to
frees all the data associated with the message
.IR m ,
all the components of which must therefore have been allocated with
-.IR malloc (3).
+.MR malloc (3) .
.PP
.I Plumbrecv
returns the next message available on the file descriptor
@@ -259,7 +259,7 @@ The file descriptor returned by
is created with
.I fsopenfd
(see
-.IR 9pclient (3)),
+.MR 9pclient (3) ),
which masks information about read and write errors.
This is acceptable for use in
.I plumbrecv
@@ -276,10 +276,10 @@ that preserves the exact error details.
.SH SOURCE
.B \*9/src/libplumb
.SH SEE ALSO
-.IR plumb (1),
-.IR event (3),
-.IR plumber (4),
-.IR plumb (7)
+.MR plumb (1) ,
+.MR event (3) ,
+.MR plumber (4) ,
+.MR plumb (7)
.SH DIAGNOSTICS
When appropriate, including when a
.I plumbsend
diff --git a/man/man3/post9pservice.3 b/man/man3/post9pservice.3
index c3b69d71..5eeae234 100644
--- a/man/man3/post9pservice.3
+++ b/man/man3/post9pservice.3
@@ -11,11 +11,11 @@ int post9pservice(int fd, char *name, char *mtpt)
.SH DESCRIPTION
.I Post9pservice
invokes
-.IR 9pserve (4)
+.MR 9pserve (4)
to post a new 9P service in the current
``name space''
(see
-.IR intro (4))
+.MR intro (4) )
named
.IR name .
Clients connecting to the posted service
@@ -30,10 +30,10 @@ is non-nil,
mounts the service on
.IR mtpt ,
using
-.IR 9pfuse (4).
+.MR 9pfuse (4) .
.SH "SEE ALSO
-.IR intro (4),
-.IR 9pfuse (4),
-.IR 9pserve (4)
+.MR intro (4) ,
+.MR 9pfuse (4) ,
+.MR 9pserve (4)
.SH SOURCE
.B \*9/src/lib9/post9p.c
diff --git a/man/man3/postnote.3 b/man/man3/postnote.3
index 7c323964..907710a1 100644
--- a/man/man3/postnote.3
+++ b/man/man3/postnote.3
@@ -38,8 +38,8 @@ Returns zero if the write succeeds, otherwise \-1.
.SH SOURCE
.B \*9/src/lib9/postnote.c
.SH "SEE ALSO"
-.IR notify (3),
-.IR intro (3)
+.MR notify (3) ,
+.MR intro (3)
.SH DIAGNOSTICS
Sets
.IR errstr .
diff --git a/man/man3/prime.3 b/man/man3/prime.3
index 01a308e8..d364b30c 100644
--- a/man/man3/prime.3
+++ b/man/man3/prime.3
@@ -93,8 +93,8 @@ slow algorithm.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR aes (3)
-.IR blowfish (3),
-.IR des (3),
-.IR elgamal (3),
-.IR rsa (3),
+.MR aes (3)
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR elgamal (3) ,
+.MR rsa (3) ,
diff --git a/man/man3/print.3 b/man/man3/print.3
index a701bc04..452ed7c8 100644
--- a/man/man3/print.3
+++ b/man/man3/print.3
@@ -67,7 +67,7 @@ writes to the named output
file descriptor:
a buffered form
is described in
-.IR bio (3).
+.MR bio (3) .
.I Sprint
places text
followed by the NUL character
@@ -104,7 +104,7 @@ is like
.IR sprint ,
except that it prints into and returns a string of the required length, which is
allocated by
-.IR malloc (3).
+.MR malloc (3) .
.PP
The routines
.IR runesprint ,
@@ -361,7 +361,7 @@ The
.B S
verb is similar, but it interprets its pointer as an array
of runes (see
-.IR utf (7));
+.MR utf (7) );
the runes are converted to
.SM UTF
before output.
@@ -389,10 +389,10 @@ but that will change if pointers and integers are different sizes.
The
.B r
verb takes no arguments; it copies the error string returned by a call to
-.IR errstr (3).
+.MR errstr (3) .
.PP
Custom verbs may be installed using
-.IR fmtinstall (3).
+.MR fmtinstall (3) .
.SH EXAMPLE
This function prints an error message with a variable
number of arguments and then quits.
@@ -415,9 +415,9 @@ void fatal(char *msg, ...)
.SH SOURCE
.B \*9/src/lib9/fmt
.SH SEE ALSO
-.IR fmtinstall (3),
-.IR fprintf (3),
-.IR utf (7)
+.MR fmtinstall (3) ,
+.MR fprintf (3) ,
+.MR utf (7)
.SH DIAGNOSTICS
Routines that write to a file descriptor or call
.IR malloc
@@ -425,7 +425,7 @@ set
.IR errstr .
.SH BUGS
The formatting is close to that specified for ANSI
-.IR fprintf (3);
+.MR fprintf (3) ;
the main difference is that
.B b
and
diff --git a/man/man3/proto.3 b/man/man3/proto.3
index 2d5da3af..571b932e 100644
--- a/man/man3/proto.3
+++ b/man/man3/proto.3
@@ -24,7 +24,7 @@ int rdproto(char *proto, char *root, Protoenum *enm,
.I Rdproto
reads and interprets the named
.I proto
-file relative to the
+file relative to the
root directory
.IR root .
.PP
@@ -45,9 +45,9 @@ The fifth field is the name of the file from which to copy;
this file is read from the current name space,
not the source file tree.
All fields except the first are optional.
-Specifying
+Specifying
.B -
-for permissions, owner, or group
+for permissions, owner, or group
causes
.I rdproto
to fetch the corresponding information
@@ -92,29 +92,29 @@ Only the
and
.B length
fields are guaranteed to be valid.
-The argument
+The argument
.I a
is the same argument passed to
.IR rdproto ;
typically it points at some extra state
used by the enumeration function.
.PP
-When files or directories do not exist or
-cannot be read by
+When files or directories do not exist or
+cannot be read by
.IR rdproto ,
-it formats a warning message, calls
+it formats a warning message, calls
.IR warn ,
-and continues processing;
+and continues processing;
if
.I warn
-is nil,
+is nil,
.I rdproto
prints the warning message to standard error.
.PP
.I Rdproto
returns zero
if
-.I proto
+.I proto
was processed, \-1 if it could not be opened.
.SH FILES
.TF /sys/lib/sysconfig/proto/portproto
@@ -127,5 +127,6 @@ generic prototype file.
.SH SOURCE
.B \*9/src/libdisk/proto.c
.SH SEE ALSO
-.IR mk9660 (1),
-Plan 9's \fImkfs\fR(8)
+.MR mk9660 (1) ,
+Plan 9's
+.IR mkfs (8)
diff --git a/man/man3/pushtls.3 b/man/man3/pushtls.3
index fa0a080c..7a086f00 100644
--- a/man/man3/pushtls.3
+++ b/man/man3/pushtls.3
@@ -46,7 +46,7 @@ TLS is nearly the same as SSL 3.0, and the software should interoperate
with implementations of either standard.
.PP
To use just the record layer, as described in Plan 9's
-\fItls\fR(3),
+.IR tls (3),
call
.I pushtls
to open the record layer device, connect to the communications channel
@@ -108,7 +108,7 @@ used by a client to resume a previously negotiated security association.
On output, the connection directory is set, as with
.B listen
(see
-.IR dial (3)).
+.MR dial (3) ).
The input
.I cert
is freed and a freshly allocated copy of the remote's certificate
@@ -149,7 +149,7 @@ The private key corresponding to
.I cert.pem
should have been previously loaded into factotum.
(See
-.IR rsa (3)
+.MR rsa (3)
.\" XXX should be rsa(8)
for more about key generation.)
By setting
@@ -164,10 +164,10 @@ known to the client.
is not required for the ongoing conversation and may
be freed by the application whenever convenient.
.SH FILES
-.TP
+.TP
.B /sys/lib/tls
thumbprints of trusted services
-.TP
+.TP
.B /sys/lib/ssl
PEM certificate files
.SH SOURCE
@@ -175,12 +175,12 @@ PEM certificate files
.\" .br
.B \*9/src/libsec/port
.SH "SEE ALSO"
-.IR dial (3),
-.IR thumbprint (7);
+.MR dial (3) ,
+.MR thumbprint (7) ;
Plan 9's
-\fIfactotum\fR(4)
+.IR factotum (4)
and
-\fItls\fR(3)
+.IR tls (3)
.SH DIAGNOSTICS
return \-1 on failure.
.SH BUGS
diff --git a/man/man3/qball.3 b/man/man3/qball.3
index 5929ece2..a5a67a79 100644
--- a/man/man3/qball.3
+++ b/man/man3/qball.3
@@ -68,7 +68,7 @@ and normal to the axis.
.SH SOURCE
.B \*9/src/libgeometry/qball.c
.SH SEE ALSO
-.IR quaternion (3)
+.MR quaternion (3)
.br
Ken Shoemake,
``Animating Rotation with Quaternion Curves'',
diff --git a/man/man3/quaternion.3 b/man/man3/quaternion.3
index 224baea7..31b59b90 100644
--- a/man/man3/quaternion.3
+++ b/man/man3/quaternion.3
@@ -121,7 +121,7 @@ The following routines operate on rotations or orientations represented as unit
.TP
.B mtoq
Convert a rotation matrix (see
-.IR matrix (3))
+.MR matrix (3) )
to a unit quaternion.
.TP
.B qtom
@@ -148,12 +148,12 @@ This is just a rotation about the same axis by half the angle.
.SH SOURCE
.B \*9/src/libgeometry/quaternion.c
.SH SEE ALSO
-.IR matrix (3),
-.IR qball (3)
+.MR matrix (3) ,
+.MR qball (3)
.SH BUGS
To avoid name conflicts with NetBSD,
.I qdiv
is a preprocessor macro defined as
.IR p9qdiv ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/quote.3 b/man/man3/quote.3
index ae6c6c28..30e85bdf 100644
--- a/man/man3/quote.3
+++ b/man/man3/quote.3
@@ -58,10 +58,10 @@ The empty string is represented by two quotes,
The first four functions act as variants of
.B strdup
(see
-.IR strcat (3)).
+.MR strcat (3) ).
Each returns a
freshly allocated copy of the string, created using
-.IR malloc (3).
+.MR malloc (3) .
.I Quotestrdup
returns a quoted copy of
.IR s ,
@@ -75,7 +75,7 @@ The
versions of these functions do the same for
.CW Rune
strings (see
-.IR runestrcat (3)).
+.MR runestrcat (3) ).
.PP
The string returned by
.I quotestrdup
@@ -124,13 +124,13 @@ blanks, control characters, and quotes are always quoted.
is provided as a
.I doquote
function that flags any character special to
-.IR rc (1).
+.MR rc (1) .
.PP
.I Quotestrfmt
and
.I quoterunestrfmt
are
-.IR print (3)
+.MR print (3)
formatting routines that produce quoted strings as output.
They may be installed by hand, but
.I quotefmtinstall
@@ -154,21 +154,21 @@ statements so the compiler can type-check uses of
and
.B %Q
in
-.IR print (3)
+.MR print (3)
format strings.
.SH SOURCE
.B \*9/src/lib9/quote.c
.br
.B \*9/src/lib9/fmt/fmtquote.c
.SH "SEE ALSO
-.IR rc (1),
-.IR malloc (3),
-.IR print (3),
-.IR strcat (3)
+.MR rc (1) ,
+.MR malloc (3) ,
+.MR print (3) ,
+.MR strcat (3)
.SH BUGS
Because it is provided by the format library,
.I doquote
is a preprocessor macro defined as
.IR fmtdoquote ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/rand.3 b/man/man3/rand.3
index 3eaa05f5..ba7ef97f 100644
--- a/man/man3/rand.3
+++ b/man/man3/rand.3
@@ -125,7 +125,7 @@ truly random bytes read from
.PP
.I Prng
uses the native
-.IR rand (3)
+.MR rand (3)
pseudo-random number generator to fill the buffer. Used with
.IR srand ,
this function can produce a reproducible stream of pseudo random
@@ -138,7 +138,7 @@ and
may be passed to
.I mprand
(see
-.IR mp (3)).
+.MR mp (3) ).
.PP
.I Fastrand
uses
@@ -161,7 +161,7 @@ to return a uniform
.B \*9/src/libsec/port
.SH "SEE ALSO
.\" .IR cons (3),
-.IR mp (3)
+.MR mp (3)
.SH BUGS
.I Truerand
and
@@ -181,7 +181,7 @@ are preprocessor macros defined as
.IR p9lrand ,
and so on;
see
-.IR intro (3).
+.MR intro (3) .
.ie \n(HT .ds HT "
.el .ds HT " (see HTML-formatted man page for link)
.PP
diff --git a/man/man3/rc4.3 b/man/man3/rc4.3
index 026c8352..60849150 100644
--- a/man/man3/rc4.3
+++ b/man/man3/rc4.3
@@ -43,13 +43,13 @@ structure keeps track of the algorithm.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR aes (3),
-.IR blowfish (3),
-.IR des (3),
-.IR dsa (3),
-.IR elgamal (3),
-.IR rsa (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR aes (3) ,
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR dsa (3) ,
+.MR elgamal (3) ,
+.MR rsa (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
diff --git a/man/man3/read.3 b/man/man3/read.3
index cd4dbf3d..6fd9feb0 100644
--- a/man/man3/read.3
+++ b/man/man3/read.3
@@ -65,7 +65,7 @@ if this is not the same as requested.
and
.I Pwrite
equivalent to a
-.IR seek (3)
+.MR seek (3)
to
.I offset
followed by a
@@ -83,10 +83,10 @@ without interference.
.SH SOURCE
.B \*9/src/lib9/readn.c
.SH SEE ALSO
-.IR intro (3),
+.MR intro (3) ,
.IR open (3),
-.IR dup (3),
-.IR pipe (3)
+.MR dup (3) ,
+.MR pipe (3)
.SH DIAGNOSTICS
These functions set
.IR errstr .
diff --git a/man/man3/readcolmap.3 b/man/man3/readcolmap.3
index 82ccdcfd..f0c04865 100644
--- a/man/man3/readcolmap.3
+++ b/man/man3/readcolmap.3
@@ -63,14 +63,14 @@ Both return 0 on success, or \-1 on error, setting
.PP
Changing the hardware color map does not change
the color map used by the
-.IR draw (3)
+.MR draw (3)
operator to convert between
mapped and true color or greyscale images,
which is described in
-.IR color (7).
+.MR color (7) .
.SH SOURCE
.B \*9/src/libdraw
.SH "SEE ALSO"
-.IR graphics (3),
-.IR draw (3),
-.IR color (7)
+.MR graphics (3) ,
+.MR draw (3) ,
+.MR color (7)
diff --git a/man/man3/readcons.3 b/man/man3/readcons.3
index dd284b97..9deaa44e 100644
--- a/man/man3/readcons.3
+++ b/man/man3/readcons.3
@@ -31,7 +31,7 @@ is non-zero, the input is not echoed to the screen.
A stripped-down version of
.I netkey
(see
-.IR passwd (1)):
+.MR passwd (1) ):
.IP
.EX
pass = readcons("password", nil, 1);
diff --git a/man/man3/regexp.3 b/man/man3/regexp.3
index 069e1d23..854ad996 100644
--- a/man/man3/regexp.3
+++ b/man/man3/regexp.3
@@ -42,11 +42,11 @@ compiles a
regular expression and returns
a pointer to the generated description.
The space is allocated by
-.IR malloc (3)
+.MR malloc (3)
and may be released by
.IR free .
Regular expressions are exactly as in
-.IR regexp (7).
+.MR regexp (7) .
.PP
.I Regcomplit
is like
@@ -196,7 +196,7 @@ array elements should be used.
.SH SOURCE
.B \*9/src/libregexp
.SH "SEE ALSO"
-.IR grep (1)
+.MR grep (1)
.SH DIAGNOSTICS
.I Regcomp
returns
diff --git a/man/man3/rfork.3 b/man/man3/rfork.3
index d1d383cc..102ec3b3 100644
--- a/man/man3/rfork.3
+++ b/man/man3/rfork.3
@@ -15,14 +15,14 @@ int rfork(int flags)
is a partial implementation of the Plan 9 system call.
It can be used to manipulate some process state and to create
new processes a la
-.IR fork (2).
+.MR fork (2) .
It cannot be used to create shared-memory processes
(Plan 9's
.B RFMEM
flag); for that functionality use
.I proccreate
(see
-.IR thread (3)).
+.MR thread (3) ).
.PP
The
.I flags
@@ -45,7 +45,7 @@ If set, the child process will be dissociated from the parent. Upon
exit the child will leave no
.B Waitmsg
(see
-.IR wait (3))
+.MR wait (3) )
for the parent to collect.
.\" .TP
.\" .B RFNAMEG
@@ -81,9 +81,9 @@ for the parent to collect.
Each process is a member of a group of processes that all
receive notes when a note is sent to the group
(see
-.IR postnote (3)
+.MR postnote (3)
and
-.IR signal (2)).
+.MR signal (2) ).
The group of a new process is by default the same as its parent, but if
.B RFNOTEG
is set (regardless of
@@ -154,7 +154,7 @@ will sleep, if necessary, until required process resources are available.
Calling
.B rfork(RFFDG|RFPROC)
is equivalent to calling
-.IR fork (2).
+.MR fork (2) .
.SH SOURCE
.B \*9/src/lib9/rfork.c
.SH DIAGNOSTICS
diff --git a/man/man3/rsa.3 b/man/man3/rsa.3
index 0c1396a8..35145bda 100644
--- a/man/man3/rsa.3
+++ b/man/man3/rsa.3
@@ -197,7 +197,7 @@ The subject line is conventionally of the form
using the quoting conventions of
.I tokenize
(see
-.IR getfields (3)).
+.MR getfields (3) ).
.PP
.I X509req
creates an X.509 certification request.
@@ -241,14 +241,14 @@ struct PEMChain
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR mp (3),
-.IR aes (3),
-.IR blowfish (3),
-.IR des (3),
-.IR dsa (3),
-.IR elgamal (3),
-.IR rc4 (3),
-.IR sechash (3),
-.IR prime (3),
-.IR rand (3)
+.MR mp (3) ,
+.MR aes (3) ,
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR dsa (3) ,
+.MR elgamal (3) ,
+.MR rc4 (3) ,
+.MR sechash (3) ,
+.MR prime (3) ,
+.MR rand (3)
.\" .IR pem (8)
diff --git a/man/man3/rune.3 b/man/man3/rune.3
index 5bb2224e..2cff02e3 100644
--- a/man/man3/rune.3
+++ b/man/man3/rune.3
@@ -189,5 +189,5 @@ returns
.br
.B \*9/src/lib9/utf/utfrune.c
.SH SEE ALSO
-.IR utf (7),
-.IR tcs (1)
+.MR utf (7) ,
+.MR tcs (1)
diff --git a/man/man3/runestrcat.3 b/man/man3/runestrcat.3
index 347c7219..42686f10 100644
--- a/man/man3/runestrcat.3
+++ b/man/man3/runestrcat.3
@@ -56,12 +56,12 @@ Rune* runestrstr(Rune *s1, Rune *s2)
.SH DESCRIPTION
These functions are rune string analogues of
the corresponding functions in
-.IR strcat (3).
+.MR strcat (3) .
.SH SOURCE
.B \*9/src/lib9
.SH SEE ALSO
-.IR memory (3),
-.IR rune (3),
-.IR strcat (3)
+.MR memory (3) ,
+.MR rune (3) ,
+.MR strcat (3)
.SH BUGS
The outcome of overlapping moves varies among implementations.
diff --git a/man/man3/searchpath.3 b/man/man3/searchpath.3
index e0709b2e..10b741eb 100644
--- a/man/man3/searchpath.3
+++ b/man/man3/searchpath.3
@@ -13,9 +13,9 @@ char* searchpath(char *name)
searches for the executable
.I name
in the same way that
-.IR sh (1)
+.MR sh (1)
and
-.IR rc (1)
+.MR rc (1)
do.
.PP
The environment variable
@@ -32,9 +32,9 @@ returns a pointer to a malloced string containing a path
or simply
.IR name )
suitable for use in
-.IR open (3)
+.MR open (3)
or
-.IR exec (3).
+.MR exec (3) .
.PP
If
.I name
diff --git a/man/man3/sechash.3 b/man/man3/sechash.3
index d8b1cd48..cabfbce3 100644
--- a/man/man3/sechash.3
+++ b/man/man3/sechash.3
@@ -138,14 +138,14 @@ and
.I sha1unpickle
unmarshal a pickled digest.
All four routines return a pointer to a newly
-.IR malloc (3)'d
+.MR malloc (3) 'd
object.
.SH SOURCE
.B \*9/src/libsec
.SH SEE ALSO
-.IR aes (3),
-.IR blowfish (3),
-.IR des (3),
-.IR elgamal (3),
-.IR rc4 (3),
-.IR rsa (3)
+.MR aes (3) ,
+.MR blowfish (3) ,
+.MR des (3) ,
+.MR elgamal (3) ,
+.MR rc4 (3) ,
+.MR rsa (3)
diff --git a/man/man3/seek.3 b/man/man3/seek.3
index 36c594c4..7282c366 100644
--- a/man/man3/seek.3
+++ b/man/man3/seek.3
@@ -39,8 +39,8 @@ Seeking in a pipe is a no-op.
.SH SOURCE
.B \*9/src/lib9/seek.c
.SH SEE ALSO
-.IR intro (3),
-.IR open (3)
+.MR intro (3) ,
+.MR open (3)
.SH DIAGNOSTICS
Sets
.IR errstr .
@@ -50,4 +50,4 @@ To avoid name conflicts with the underlying system,
is a preprocessor macro defined as
.IR p9seek ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/sendfd.3 b/man/man3/sendfd.3
index 771bd9ae..fe6391c2 100644
--- a/man/man3/sendfd.3
+++ b/man/man3/sendfd.3
@@ -20,14 +20,14 @@ and
can be used to pass an open file descriptor over
a Unix domain socket from one process to another.
Since
-.IR pipe (3)
+.MR pipe (3)
is implemented with
-.IR socketpair (2)
+.MR socketpair (2)
instead of
-.IR pipe (2),
+.MR pipe (2) ,
.I socket
can be a file descriptor obtained from
-.IR pipe (3).
+.MR pipe (3) .
.PP
.I Sendfd
sends the file descriptor
@@ -51,7 +51,7 @@ will not.
.SH SOURCE
.B \*9/src/lib9/sendfd.c
.SH SEE ALSO
-.IR socketpair (2),
+.MR socketpair (2) ,
.I sendmsg
in
-.IR send (2)
+.MR send (2)
diff --git a/man/man3/setjmp.3 b/man/man3/setjmp.3
index 1210c171..33573ba8 100644
--- a/man/man3/setjmp.3
+++ b/man/man3/setjmp.3
@@ -46,7 +46,7 @@ was called.
is the same as
.I longjmp
except that it is to be called from within a note handler (see
-.IR notify (3)).
+.MR notify (3) ).
The
.I uregs
argument should be the first argument passed to the note handler.
@@ -58,7 +58,7 @@ can also be used to switch stacks.
.SH SOURCE
.B \*9/src/lib9/jmp.c
.SH SEE ALSO
-.IR notify (3)
+.MR notify (3)
.SH BUGS
.PP
.I Notejmp
@@ -78,10 +78,11 @@ are preprocessor macros defined as
and
.IR p9jmp_buf ;
see
-.IR intro (3).
+.MR intro (3) .
.PP
.I P9setjmp
is implemented as a preprocessor macro that calls
.I sigsetjmp
(see
-Unix's \fIsetjmp\fR(3)).
+Unix's
+.IR setjmp (3)).
diff --git a/man/man3/sleep.3 b/man/man3/sleep.3
index 0afa71d2..fabd2b4b 100644
--- a/man/man3/sleep.3
+++ b/man/man3/sleep.3
@@ -27,7 +27,7 @@ Sleep returns \-1 if interrupted, 0 otherwise.
causes an
.B alarm
note (see
-.IR notify (3))
+.MR notify (3) )
to be sent to the invoking process after the number of milliseconds
given by the argument.
Successive calls to
@@ -39,7 +39,7 @@ the alarm clock.
.SH SOURCE
.B \*9/src/lib9/sleep.c
.SH SEE ALSO
-.IR intro (3)
+.MR intro (3)
.SH DIAGNOSTICS
These functions set
.IR errstr .
@@ -53,4 +53,4 @@ are preprocessor macros defined as
and
.IR p9alarm ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/stat.3 b/man/man3/stat.3
index a992f9a5..3a652d10 100644
--- a/man/man3/stat.3
+++ b/man/man3/stat.3
@@ -105,7 +105,7 @@ struct Dir {
.EE
.PP
The returned structure is allocated by
-.IR malloc (3);
+.MR malloc (3) ;
freeing it also frees the associated strings.
.PP
This structure and
@@ -283,9 +283,9 @@ to retrieve the initial values first.
.SH SOURCE
.B \*9/src/lib9/dirstat.c
.SH SEE ALSO
-.IR intro (3),
-.IR fcall (3),
-.IR dirread (3),
+.MR intro (3) ,
+.MR fcall (3) ,
+.MR dirread (3) ,
.IR stat (9p)
.SH DIAGNOSTICS
The
@@ -305,7 +305,7 @@ or
is too short for the returned data, the return value will be
.B BIT16SZ
(see
-.IR fcall (3))
+.MR fcall (3) )
and the two bytes
returned will contain the initial count field of the
returned data;
diff --git a/man/man3/strcat.3 b/man/man3/strcat.3
index 2baa9090..7dcf51f7 100644
--- a/man/man3/strcat.3
+++ b/man/man3/strcat.3
@@ -222,7 +222,7 @@ is returned.
returns a pointer to a distinct copy of the null-terminated string
.I s
in space obtained from
-.IR malloc (3)
+.MR malloc (3)
or
.L 0
if no space can be obtained.
@@ -244,14 +244,14 @@ operates analogously, but ignores ASCII case differences when comparing strings.
.SH SOURCE
.B \*9/src/lib9
.SH SEE ALSO
-.IR memory (3),
-.IR rune (3),
-.IR runestrcat (3)
+.MR memory (3) ,
+.MR rune (3) ,
+.MR runestrcat (3)
.SH BUGS
These routines know nothing about
.SM UTF.
Use the routines in
-.IR rune (3)
+.MR rune (3)
as appropriate.
Note, however, that the definition of
.SM UTF
diff --git a/man/man3/string.3 b/man/man3/string.3
index 9b88e8d4..301185f7 100644
--- a/man/man3/string.3
+++ b/man/man3/string.3
@@ -268,4 +268,4 @@ The input stack has a maximum depth of 32 nested include files.
.SH SOURCE
.B \*9/src/libString
.SH SEE ALSO
-.IR bio (3)
+.MR bio (3)
diff --git a/man/man3/stringsize.3 b/man/man3/stringsize.3
index cbf15453..c0639ab3 100644
--- a/man/man3/stringsize.3
+++ b/man/man3/stringsize.3
@@ -57,13 +57,13 @@ are analogous, but accept an array of runes rather than
.SH SOURCE
.B \*9/src/libdraw
.SH "SEE ALSO"
-.IR addpt (3),
-.IR cachechars (3),
-.IR subfont (3),
-.IR draw (3),
-.IR draw (3),
-.IR image (7),
-.IR font (7)
+.MR addpt (3) ,
+.MR cachechars (3) ,
+.MR subfont (3) ,
+.MR draw (3) ,
+.MR draw (3) ,
+.MR image (7) ,
+.MR font (7)
.SH DIAGNOSTICS
Because strings are loaded dynamically, these routines may generate I/O
to the server and produce calls to the graphics error function.
diff --git a/man/man3/subfont.3 b/man/man3/subfont.3
index 5e1b09ab..1de30246 100644
--- a/man/man3/subfont.3
+++ b/man/man3/subfont.3
@@ -53,13 +53,13 @@ Font* mkfont(Subfont *f, Rune min)
.SH DESCRIPTION
Subfonts are the components of fonts that hold the character images.
A font comprises an array of subfonts; see
-.IR cachechars (3).
+.MR cachechars (3) .
A new
.B Subfont
is allocated and initialized with
.IR allocsubfont .
See
-.IR cachechars (3)
+.MR cachechars (3)
for the meaning of
.IR n ,
.IR height ,
@@ -81,7 +81,7 @@ The appropriate fields of the returned
structure are set to
the passed arguments, and the image is registered as a subfont
with the graphics device
-.IR draw (3).
+.MR draw (3) .
.I Allocsubfont
returns 0 on failure.
.PP
@@ -97,7 +97,7 @@ on
if
.B f->info
was not allocated by
-.IR malloc (3)
+.MR malloc (3)
it should be zeroed before calling
.IR subffree .
.PP
@@ -150,7 +150,7 @@ Although it is principally a routine internal to the library,
may be substituted by the application to provide a less file-oriented subfont naming scheme.
.PP
The format of a subfont file is described in
-.IR font (7).
+.MR font (7) .
Briefly, it contains a image with all the characters in it,
followed by a subfont header, followed by character information.
.I Readsubfont
@@ -181,13 +181,13 @@ the part of a subfont file that comes after the image. It should be preceded by
a call to
.IR writeimage
(see
-.IR allocimage (3)).
+.MR allocimage (3) ).
.PP
.I Stringsubfont
is analogous to
.B string
(see
-.IR draw (3))
+.MR draw (3) )
for subfonts. Rather than use the underlying font caching primitives,
it calls
.B draw
@@ -224,12 +224,12 @@ bitmap font file tree
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR allocimage (3),
-.IR draw (3),
-.IR cachechars (3),
-.IR image (7),
-.IR font (7)
+.MR graphics (3) ,
+.MR allocimage (3) ,
+.MR draw (3) ,
+.MR cachechars (3) ,
+.MR image (7) ,
+.MR font (7)
.SH DIAGNOSTICS
All of the functions use the graphics error function (see
-.IR graphics (3)).
+.MR graphics (3) ).
diff --git a/man/man3/sysfatal.3 b/man/man3/sysfatal.3
index c1e9b83c..210136a9 100644
--- a/man/man3/sysfatal.3
+++ b/man/man3/sysfatal.3
@@ -16,17 +16,17 @@ void sysfatal(char *fmt, ...)
prints to standard error the name of the running program,
a colon and a space,
the message described by the
-.IR print (3)
+.MR print (3)
format string
.I fmt
and subsequent arguments, and a newline.
It then calls
-.IR exits (3)
+.MR exits (3)
with the formatted message as argument.
The program's name is the value of
.BR argv0 ,
which will be set if the program uses the
-.IR arg (3)
+.MR arg (3)
interface to process its arguments.
If
.B argv0
@@ -44,7 +44,7 @@ The message is a line with several fields:
the name of the machine writing the message;
the date and time;
the message specified by the
-.IR print (3)
+.MR print (3)
format
.I fmt
and any following arguments;
@@ -60,9 +60,9 @@ can be used safely in multi-threaded programs.
.br
.B \*9/src/lib9/syslog.c
.SH "SEE ALSO"
-.IR intro (3),
-.IR errstr (3),
+.MR intro (3) ,
+.MR errstr (3) ,
the
.B %r
format in
-.IR print (3)
+.MR print (3)
diff --git a/man/man3/thread.3 b/man/man3/thread.3
index 9088ae2e..6c6b4602 100644
--- a/man/man3/thread.3
+++ b/man/man3/thread.3
@@ -267,10 +267,10 @@ in arbitrary ways and should synchronize their
actions using
.B qlocks
(see
-.IR lock (3))
+.MR lock (3) )
or channel communication.
System calls such as
-.IR read (3)
+.MR read (3)
block the entire proc;
all threads in a proc block until the system call finishes.
.PP
@@ -364,7 +364,7 @@ are threaded analogues of
and
.I execl
(see
-.IR exec (3));
+.MR exec (3) );
on success,
they replace the calling thread
and invoke the external program, never returning.
@@ -400,7 +400,7 @@ and
.I threadexec
will duplicate
(see
-.IR dup (3))
+.MR dup (3) )
the three file descriptors in
.I fd
onto standard input, output, and error for the external program
@@ -443,14 +443,14 @@ stop the running of the program.
returns a channel of pointers to
.B Waitmsg
structures (see
-.IR wait (3)).
+.MR wait (3) ).
When an exec'ed process exits, a pointer to a
.B Waitmsg
is sent to this channel.
These
.B Waitmsg
structures have been allocated with
-.IR malloc (3)
+.MR malloc (3)
and should be freed after use.
.PP
A
@@ -611,13 +611,13 @@ calls.
.PP
.I Chanprint
formats its arguments in the manner of
-.IR print (3)
+.MR print (3)
and sends the result to the channel
.IR c.
The string delivered by
.I chanprint
is allocated with
-.IR malloc (3)
+.MR malloc (3)
and should be freed upon receipt.
.PP
Thread library functions do not return on failure;
@@ -628,10 +628,10 @@ Threaded programs should use
in place of
.I atnotify
(see
-.IR notify (3)).
+.MR notify (3) ).
.PP
It is safe to use
-.IR sysfatal (3)
+.MR sysfatal (3)
in threaded programs.
.I Sysfatal
will print the error string and call
@@ -673,7 +673,7 @@ To create new processes, use
.SH FILES
.B \*9/acid/thread
contains useful
-.IR acid (1)
+.MR acid (1)
functions for debugging threaded programs.
.PP
.B \*9/src/libthread/test
@@ -681,8 +681,8 @@ contains some example programs.
.SH SOURCE
.B \*9/src/libthread
.SH SEE ALSO
-.IR intro (3),
-.IR ioproc (3)
+.MR intro (3) ,
+.MR ioproc (3)
.SH BUGS
To avoid name conflicts,
.IR alt ,
@@ -707,7 +707,7 @@ and so on.
is defined as a macro that expands to
.IR threadyield .
See
-.IR intro (3).
+.MR intro (3) .
.PP
Threadint,
threadintgrp,
diff --git a/man/man3/time.3 b/man/man3/time.3
index dfcafaf9..6095c329 100644
--- a/man/man3/time.3
+++ b/man/man3/time.3
@@ -41,4 +41,4 @@ are preprocessor macros defined as
and
.IR p9nsec ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/udpread.3 b/man/man3/udpread.3
index 11412596..ebf0b997 100644
--- a/man/man3/udpread.3
+++ b/man/man3/udpread.3
@@ -65,4 +65,4 @@ to send a response back to the sender of the original packet.
.SH SOURCE
.B \*9/src/lib9/udp.c
.SH SEE ALSO
-.IR ip (3)
+.MR ip (3)
diff --git a/man/man3/venti-cache.3 b/man/man3/venti-cache.3
index 54e46c61..15d141ea 100644
--- a/man/man3/venti-cache.3
+++ b/man/man3/venti-cache.3
@@ -112,9 +112,9 @@ the block's cache address.
allocates a new cache using the client connection
.I z
(see
-.IR venti-conn (3)
+.MR venti-conn (3)
and
-.IR venti-client (3)),
+.MR venti-client (3) ),
with
.I maxmem
bytes of memory.
@@ -195,7 +195,7 @@ The default
function is
.I vtwrite
(see
-.IR venti-client (3));
+.MR venti-client (3) );
.I vtsetcachewrite
sets it.
.I Vtsetcachewrite
@@ -230,8 +230,8 @@ or, more commonly, that cache blocks are being leaked.
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (3),
-.IR venti-client (3),
-.IR venti-conn (3),
-.IR venti-file (3),
-.IR venti (7)
+.MR venti (3) ,
+.MR venti-client (3) ,
+.MR venti-conn (3) ,
+.MR venti-file (3) ,
+.MR venti (7)
diff --git a/man/man3/venti-client.3 b/man/man3/venti-client.3
index cc8d14f4..1f81acaf 100644
--- a/man/man3/venti-client.3
+++ b/man/man3/venti-client.3
@@ -53,7 +53,7 @@ int vtping(VtConn *z)
extern int ventidoublechecksha1; /* default 1 */
.SH DESCRIPTION
These routines execute the client side of the
-.IR venti (7)
+.MR venti (7)
protocol.
.PP
.I Vtrpc
@@ -84,7 +84,7 @@ is typically called only indirectly, via
calls
.I vtversion
(see
-.IR venti-conn (3))
+.MR venti-conn (3) )
and
.IR vthello ,
in that order, returning success only
@@ -171,14 +171,14 @@ in the same proc should start separate procs running
and
.I vtrecvproc
as described in
-.IR venti-conn (3).
+.MR venti-conn (3) .
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (3),
-.IR venti-conn (3),
-.IR venti-packet (3),
-.IR venti (7)
+.MR venti (3) ,
+.MR venti-conn (3) ,
+.MR venti-packet (3) ,
+.MR venti (7)
.SH DIAGNOSTICS
.I Vtrpc
and
diff --git a/man/man3/venti-conn.3 b/man/man3/venti-conn.3
index ea597de3..ba40ff6e 100644
--- a/man/man3/venti-conn.3
+++ b/man/man3/venti-conn.3
@@ -90,21 +90,21 @@ for reading and writing.
.I Vtdial
dials the given network address
(see
-.IR dial (3))
+.MR dial (3) )
and returns a corresponding connection.
It returns nil if the connection cannot be established.
.PP
.I Vtversion
exchanges version information with the remote side
as described in
-.IR venti (7).
+.MR venti (7) .
The negotiated version is stored in
.IB z ->version \fR.
.PP
.I Vtsend
writes a packet
(see
-.IR venti-packet (3))
+.MR venti-packet (3) )
on the connection
.IR z .
The packet
@@ -115,7 +115,7 @@ be returned by
.I vtsend
will add the two-byte length field
(see
-.IR venti (7))
+.MR venti (7) )
at the begnning.
.I Vtsend
frees
@@ -137,7 +137,7 @@ and
block until the packet can be written or read from the network.
In a threaded program
(see
-.IR thread (3)),
+.MR thread (3) ),
this may not be desirable.
If the caller arranges for
.IR vtsendproc
@@ -192,12 +192,12 @@ as they are sent or received.
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (1),
-.IR venti (3),
-.IR venti-client (3),
-.IR venti-packet (3),
-.IR venti-server (3),
-.IR venti (7)
+.MR venti (1) ,
+.MR venti (3) ,
+.MR venti-client (3) ,
+.MR venti-packet (3) ,
+.MR venti-server (3) ,
+.MR venti (7)
.SH DIAGNOSTICS
Routines that return pointers return nil on error.
Routines returning integers return 0 on success, \-1 on error.
diff --git a/man/man3/venti-fcall.3 b/man/man3/venti-fcall.3
index ed3916ff..f721669e 100644
--- a/man/man3/venti-fcall.3
+++ b/man/man3/venti-fcall.3
@@ -109,7 +109,7 @@ converts a
.B VtEntry
structure describing a Venti file
(see
-.IR venti (7))
+.MR venti (7) )
into a 40-byte
.RB ( VtEntrySize )
structure at
@@ -122,7 +122,7 @@ converts a
.B VtFcall
structure describing a Venti protocol message
(see
-.IR venti (7))
+.MR venti (7) )
into a packet.
.I Vtfcallunpack
does the reverse conversion.
@@ -130,7 +130,7 @@ does the reverse conversion.
The fields in a
.B VtFcall
are named after the protocol fields described in
-.IR venti (7),
+.MR venti (7) ,
except that the
.B type
field is renamed
@@ -158,7 +158,7 @@ and the packet
The block type enumeration defined in
.B <venti.h>
(presented in
-.IR venti (7))
+.MR venti (7) )
differs from the one used on disk and in the network
protocol.
The disk and network representation uses different
@@ -232,7 +232,7 @@ is nil, the label is ignored.
and
.I vtscorefmt
are
-.IR print (3)
+.MR print (3)
formatters to print
.B VtFcall
structures and scores.
@@ -244,9 +244,9 @@ is installed as
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (1),
-.IR venti (3),
-.IR venti (7)
+.MR venti (1) ,
+.MR venti (3) ,
+.MR venti (7)
.SH DIAGNOSTICS
.IR Vtentrypack ,
.IR vtfcallpack ,
diff --git a/man/man3/venti-file.3 b/man/man3/venti-file.3
index 5378bf5c..9f3698c9 100644
--- a/man/man3/venti-file.3
+++ b/man/man3/venti-file.3
@@ -99,7 +99,7 @@ void vtfileunlock(VtFile *f);
.SH DESCRIPTION
These routines provide a simple interface to create and
manipulate Venti file trees (see
-.IR venti (7)).
+.MR venti (7) ).
.PP
.I Vtfilecreateroot
creates a new Venti file.
@@ -226,7 +226,7 @@ if an error is encountered.
.I Vtfilewrite
writes to an in-memory copy of the data blocks
(see
-.IR venti-cache (3))
+.MR venti-cache (3) )
instead of writing directly to Venti.
.I Vtfileflush
writes all copied blocks associated with
@@ -319,7 +319,7 @@ in the same directory block.
.SH SOURCE
.B \*9/src/libventi/file.c
.SH SEE ALSO
-.IR venti-cache (3),
-.IR venti-conn (3),
-.IR venti-client (3),
-.IR venti (7)
+.MR venti-cache (3) ,
+.MR venti-conn (3) ,
+.MR venti-client (3) ,
+.MR venti (7)
diff --git a/man/man3/venti-log.3 b/man/man3/venti-log.3
index 6b74c6cd..b0a99062 100644
--- a/man/man3/venti-log.3
+++ b/man/man3/venti-log.3
@@ -122,9 +122,9 @@ passed nil log structures.
.PP
The server library
(see
-.IR venti-conn (3)
+.MR venti-conn (3)
and
-.IR venti-server (3))
+.MR venti-server (3) )
writes debugging information to the log named
.IR VtServerLog ,
which defaults to the string
@@ -132,5 +132,5 @@ which defaults to the string
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (3),
-.IR venti (8)
+.MR venti (3) ,
+.MR venti (8)
diff --git a/man/man3/venti-mem.3 b/man/man3/venti-mem.3
index 0a872a0a..f9f83fb6 100644
--- a/man/man3/venti-mem.3
+++ b/man/man3/venti-mem.3
@@ -35,7 +35,7 @@ void vtfree(void *ptr)
.SH DESCRIPTION
These routines allocate and free memory.
On failure, they print an error message and call
-.IR sysfatal (3).
+.MR sysfatal (3) .
They do not return.
.PP
.I Vtbrk
@@ -63,4 +63,4 @@ when no longer needed.
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (3)
+.MR venti (3)
diff --git a/man/man3/venti-packet.3 b/man/man3/venti-packet.3
index 3ed8d6fe..faea58c2 100644
--- a/man/man3/venti-packet.3
+++ b/man/man3/venti-packet.3
@@ -129,7 +129,7 @@ because fragments may not be filled completely.
compares the data sections of two packets as
.I memcmp
(see
-.IR memory (3))
+.MR memory (3) )
would.
.PP
.I Packetconcat
@@ -260,7 +260,7 @@ bytes at offset
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (3)
+.MR venti (3)
.SH DIAGNOSTICS
These functions return errors only when passed
invalid inputs,
diff --git a/man/man3/venti-server.3 b/man/man3/venti-server.3
index 810852e1..0265781a 100644
--- a/man/man3/venti-server.3
+++ b/man/man3/venti-server.3
@@ -33,7 +33,7 @@ VtReq* vtgetreq(VtSrv *srv)
void vtrespond(VtReq *req)
.SH DESCRIPTION
These routines execute the server side of the
-.IR venti (7)
+.MR venti (7)
protocol.
.PP
.I Vtsrvhello
@@ -115,8 +115,8 @@ blocks written to it and returns error on all reads.
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (3),
-.IR venti-conn (3),
-.IR venti-packet (3),
-.IR venti (7),
-.IR venti (8)
+.MR venti (3) ,
+.MR venti-conn (3) ,
+.MR venti-packet (3) ,
+.MR venti (7) ,
+.MR venti (8)
diff --git a/man/man3/venti-zero.3 b/man/man3/venti-zero.3
index 270b7680..26bc3fe7 100644
--- a/man/man3/venti-zero.3
+++ b/man/man3/venti-zero.3
@@ -52,5 +52,5 @@ is the score of the zero-length block.
.br
.B \*9/src/libventi/zeroscore.c
.SH SEE ALSO
-.IR venti (3),
-.IR venti (7)
+.MR venti (3) ,
+.MR venti (7)
diff --git a/man/man3/venti.3 b/man/man3/venti.3
index 632d5998..f5222fad 100644
--- a/man/man3/venti.3
+++ b/man/man3/venti.3
@@ -15,61 +15,61 @@ This manual page describes general utility functions.
.PP
Other manual pages describe the library functions in detail.
.PP
-.IR Venti-cache (3)
+.MR Venti-cache (3)
describes a simple in-memory block cache to help clients.
.PP
-.IR Venti-conn (3)
+.MR Venti-conn (3)
describes routines for manipulating network connections
between Venti clients and servers.
-.IR Venti-client (3)
+.MR Venti-client (3)
and
-.IR venti-server (3)
+.MR venti-server (3)
describe routines for writing clients
and servers on top of these.
.PP
-.IR Venti-fcall (3)
+.MR Venti-fcall (3)
describes the C representation of Venti protocol messages
and data structures.
It also describes routines that convert between the C representation
and the network and disk representations.
.PP
-.IR Venti-file (3)
+.MR Venti-file (3)
describes routines for writing clients that manipulate
Venti file trees
(see
-.IR venti (7)).
+.MR venti (7) ).
.PP
-.IR Venti-log (3)
+.MR Venti-log (3)
describes routines to access in-memory log buffers
as well as the logging that is done automatically by
the library.
.PP
-.IR Venti-mem (3)
+.MR Venti-mem (3)
describes wrappers around the canonical
-.IR malloc (3)
+.MR malloc (3)
routines that abort on error.
.PP
-.IR Venti-packet (3)
+.MR Venti-packet (3)
describes routines for
manipulating zero-copy chains of
data buffers.
.PP
-.IR Venti-zero (3)
+.MR Venti-zero (3)
describes routines to zero truncate and zero extend blocks
(see
-.IR venti (7)).
+.MR venti (7) ).
.SH SOURCE
.B \*9/src/libventi
.SH SEE ALSO
-.IR venti (1),
-.IR venti-cache (3),
-.IR venti-client (3),
-.IR venti-fcall (3),
-.IR venti-file (3)
-.IR venti-log (3),
-.IR venti-mem (3),
-.IR venti-packet (3),
-.IR venti-server (3),
-.IR venti-zero (3),
-.IR venti (7),
-.IR venti (8)
+.MR venti (1) ,
+.MR venti-cache (3) ,
+.MR venti-client (3) ,
+.MR venti-fcall (3) ,
+.MR venti-file (3)
+.MR venti-log (3) ,
+.MR venti-mem (3) ,
+.MR venti-packet (3) ,
+.MR venti-server (3) ,
+.MR venti-zero (3) ,
+.MR venti (7) ,
+.MR venti (8)
diff --git a/man/man3/wait.3 b/man/man3/wait.3
index 28d5d731..889ccd1f 100644
--- a/man/man3/wait.3
+++ b/man/man3/wait.3
@@ -29,9 +29,9 @@ int awaitfor(int pid, char *s, int n)
.SH DESCRIPTION
.I Wait
causes a process to wait for any child process (see
-.IR fork (2)
+.MR fork (2)
and
-.IR rfork (3))
+.MR rfork (3) )
to exit.
It returns a
.B Waitmsg
@@ -62,7 +62,7 @@ the time spent in system calls, and the child's elapsed real time,
all in units of milliseconds.
.B Msg
contains the message that the child specified in
-.IR exits (3).
+.MR exits (3) .
For a normal exit,
.B msg[0]
is zero,
@@ -78,7 +78,7 @@ returns immediately, with return value nil.
The
.B Waitmsg
structure is allocated by
-.IR malloc (3)
+.MR malloc (3)
and should be freed after use.
For programs that only need the pid of the exiting program,
.I waitpid
@@ -114,7 +114,7 @@ The filled-in buffer
may be parsed (after appending a NUL) using
.IR tokenize
(see
-.IR getfields (3));
+.MR getfields (3) );
the resulting fields are, in order, pid, the three times, and the exit string,
which will be
.B ''
@@ -139,8 +139,8 @@ returns
.PP
.B \*9/src/lib9/await.c
.SH "SEE ALSO"
-.IR rfork (3),
-.IR exits (3),
+.MR rfork (3) ,
+.MR exits (3) ,
.SH DIAGNOSTICS
These routines set
.IR errstr .
@@ -156,4 +156,4 @@ are preprocessor macros defined as
and
.IR p9waitfor ;
see
-.IR intro (3).
+.MR intro (3) .
diff --git a/man/man3/window.3 b/man/man3/window.3
index 58250443..b8a6db18 100644
--- a/man/man3/window.3
+++ b/man/man3/window.3
@@ -121,7 +121,7 @@ to color the window initially, and a refresh method
The refresh methods are
.BR Refbackup ,
which provides backing store and is the method used by
-.IR rio (1)
+.MR rio (1)
for its clients;
.BR Refnone ,
which provides no refresh and is designed for temporary uses
@@ -142,7 +142,7 @@ pointer that may be treated like any other image.
In particular, it is freed by calling
.B freeimage
(see
-.IR allocimage (3)).
+.MR allocimage (3) ).
The following functions, however, apply only to windows, not regular images.
.PP
.B Bottomwindow
@@ -199,13 +199,13 @@ and screen position
.RI ( scr ).
Their usage is shown in the Examples section.
.PP
-.IR Rio (1)
+.MR Rio (1)
creates its client windows with backing store,
.BR Refbackup .
The graphics initialization routine,
.B initdraw
(see
-.IR graphics (3)),
+.MR graphics (3) ),
builds a
.B Screen
upon this, and then allocates upon that another window indented
@@ -234,10 +234,10 @@ actual screen position of the window unless it is recorded separately.
.SH SOURCE
.B \*9/src/libdraw
.SH SEE ALSO
-.IR graphics (3),
-.IR draw (3),
-.IR cachechars (3),
-.IR draw (3)
+.MR graphics (3) ,
+.MR draw (3) ,
+.MR cachechars (3) ,
+.MR draw (3)
.SH BUGS
The refresh method
.B Refmesg