use macro for /usr/local/plan9
diff --git a/man/man1/9c.1 b/man/man1/9c.1
index 6745ae3..4281b81 100644
--- a/man/man1/9c.1
+++ b/man/man1/9c.1
@@ -172,4 +172,4 @@
Link the final two object files and any necessary objects from the library
into an executable.
.SH SOURCE
-.B /usr/local/plan9/bin
+.B \*9/bin
diff --git a/man/man1/9p.1 b/man/man1/9p.1
index 199c26b..a90ac4d 100644
--- a/man/man1/9p.1
+++ b/man/man1/9p.1
@@ -118,7 +118,7 @@
9p read acme/$winid/body
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/9p.c
+.B \*9/src/cmd/9p.c
.SH SEE ALSO
.IR intro (4),
.IR intro (9p),
diff --git a/man/man1/9term.1 b/man/man1/9term.1
index ebb9bd7..9a8d0f7 100644
--- a/man/man1/9term.1
+++ b/man/man1/9term.1
@@ -280,7 +280,7 @@
A typical use of this feature is to tell the editor to find the source of an error
by plumbing the file and line information in a compiler's diagnostic.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/9term
+.B \*9/src/cmd/9term
.SH BUGS
There should be a program to toggle the current window's hold mode.
.PP
diff --git a/man/man1/acid.1 b/man/man1/acid.1
index 1f7c264..b1f2cd0 100644
--- a/man/man1/acid.1
+++ b/man/man1/acid.1
@@ -80,9 +80,9 @@
At startup,
.I acid
obtains standard function definitions from the library file
-.BR /usr/local/plan9/acid/port ,
+.BR \*9/acid/port ,
architecture-dependent functions from
-.BR /usr/local/plan9/acid/$objtype ,
+.BR \*9/acid/$objtype ,
user-specified functions from
.BR $home/lib/acid ,
and further functions from
@@ -95,7 +95,7 @@
Then the function
.IR acidmap ()
will be invoked if defined.
-.B /usr/local/plan9/acid/port
+.B \*9/acid/port
provides a definition of
.I acidmap
that attaches all the shared libraries being used by the target process
@@ -489,19 +489,19 @@
acid: cont()
.EE
.SH FILES
-.B /usr/local/plan9/acid/$objtype
+.B \*9/acid/$objtype
.br
-.B /usr/local/plan9/acid/port
+.B \*9/acid/port
.br
-.B /usr/local/plan9/acid/kernel
+.B \*9/acid/kernel
.br
-.B /usr/local/plan9/acid/trump
+.B \*9/acid/trump
.br
-.B /usr/local/plan9/acid/truss
+.B \*9/acid/truss
.br
.B $home/lib/acid
.SH SOURCE
-.B /usr/local/plan9/src/cmd/acid
+.B \*9/src/cmd/acid
.SH "SEE ALSO"
.IR mk (1),
.IR db (1)
diff --git a/man/man1/acme.1 b/man/man1/acme.1
index 7e1ec7c..56a6dfd 100644
--- a/man/man1/acme.1
+++ b/man/man1/acme.1
@@ -463,15 +463,15 @@
in a (possibly newly-created) window labeled
.BR /adm/+Errors ;
in a window containing
-.B /usr/local/plan9/src/cmd/sam/sam.c
+.B \*9/src/cmd/sam/sam.c
executing
.B mk
will run
.IR mk (1)
in
-.BR /usr/local/plan9/src/cmd/sam ,
+.BR \*9/src/cmd/sam ,
producing output in a window labeled
-.BR /usr/local/plan9/src/cmd/sam/+Errors .
+.BR \*9/src/cmd/sam/+Errors .
The environment of such commands contains the variable
.B $%
with value set to the filename of the window in which the command is run.
@@ -675,11 +675,11 @@
.B /acme/*/mips
MIPS-specific binaries for applications
.SH SOURCE
-.B /usr/local/plan9/src/cmd/acme
+.B \*9/src/cmd/acme
.br
-.B /usr/local/plan9/src/cmd/9term/win.c
+.B \*9/src/cmd/9term/win.c
.br
-.B /usr/local/plan9/bin/awd
+.B \*9/bin/awd
.SH SEE ALSO
.IR acme (4)
.br
diff --git a/man/man1/acmeevent.1 b/man/man1/acmeevent.1
index aeca02a..31103d6 100644
--- a/man/man1/acmeevent.1
+++ b/man/man1/acmeevent.1
@@ -7,7 +7,7 @@
.B acme/acme/$winid/event | acmeevent
.PP
.B
-\&. /usr/local/plan9/lib/acme.rc
+\&. \*9/lib/acme.rc
.PP
.B newwindow
.PP
@@ -314,12 +314,12 @@
will create a new window with the dictionary's entry for that word.
.PP
See
-.B /usr/local/plan9/bin/adict
+.B \*9/bin/adict
for the full implementation.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/acmeevent.c
+.B \*9/src/cmd/acmeevent.c
.br
-.B /usr/local/plan9/lib/acme.rc
+.B \*9/lib/acme.rc
.SH SEE ALSO
.IR acme (1),
.IR acme (4),
diff --git a/man/man1/ascii.1 b/man/man1/ascii.1
index 20a4302..d145e04 100644
--- a/man/man1/ascii.1
+++ b/man/man1/ascii.1
@@ -151,9 +151,9 @@
.B /lib/unicode
table of characters and descriptions.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/ascii.c
+.B \*9/src/cmd/ascii.c
.br
-.B /usr/local/plan9/src/cmd/unicode.c
+.B \*9/src/cmd/unicode.c
.SH "SEE ALSO"
.IR look (1)
.IR tcs (1),
diff --git a/man/man1/astro.1 b/man/man1/astro.1
index e2502f9..be6241d 100644
--- a/man/man1/astro.1
+++ b/man/man1/astro.1
@@ -113,7 +113,7 @@
.B /lib/sky/here
default latitude (N), longitude (W), and elevation (meters)
.SH SOURCE
-.B /usr/local/plan9/src/cmd/astro
+.B \*9/src/cmd/astro
.SH SEE ALSO
.IR scat (1)
.SH BUGS
diff --git a/man/man1/basename.1 b/man/man1/basename.1
index e954cef..ba31a48 100644
--- a/man/man1/basename.1
+++ b/man/man1/basename.1
@@ -32,4 +32,4 @@
If the string contains no slash,
a period and newline are printed.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/basename.c
+.B \*9/src/cmd/basename.c
diff --git a/man/man1/bc.1 b/man/man1/bc.1
index 9bb0f08..bd180a5 100644
--- a/man/man1/bc.1
+++ b/man/man1/bc.1
@@ -270,7 +270,7 @@
.B /sys/lib/bclib
mathematical library
.SH SOURCE
-.B /usr/local/plan9/src/cmd/bc.y
+.B \*9/src/cmd/bc.y
.SH "SEE ALSO"
.IR dc (1),
.IR hoc (1)
diff --git a/man/man1/bundle.1 b/man/man1/bundle.1
index c56e943..977ea4c 100644
--- a/man/man1/bundle.1
+++ b/man/man1/bundle.1
@@ -43,7 +43,7 @@
.L
cd gift; rc horse; mk
.SH SOURCE
-.B /usr/local/plan9/bin/bundle
+.B \*9/bin/bundle
.SH SEE ALSO
.I 9ar
(in
diff --git a/man/man1/cal.1 b/man/man1/cal.1
index 1746268..0709a5d 100644
--- a/man/man1/cal.1
+++ b/man/man1/cal.1
@@ -35,7 +35,7 @@
cal sep 1752
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/cal.c
+.B \*9/src/cmd/cal.c
.SH BUGS
The year is always considered to start in January even though this
is historically naive.
diff --git a/man/man1/calendar.1 b/man/man1/calendar.1
index 1c6b3be..9a9e20e 100644
--- a/man/man1/calendar.1
+++ b/man/man1/calendar.1
@@ -50,4 +50,4 @@
.B /usr/$user/lib/calendar
personal calendar
.SH SOURCE
-.B /usr/local/plan9/src/cmd/calendar.c
+.B \*9/src/cmd/calendar.c
diff --git a/man/man1/cat.1 b/man/man1/cat.1
index d2b8d5c..f758beb 100644
--- a/man/man1/cat.1
+++ b/man/man1/cat.1
@@ -83,11 +83,11 @@
.IR acme (1))
window.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/cat.c
+.B \*9/src/cmd/cat.c
.br
-.B /usr/local/plan9/src/cmd/read.c
+.B \*9/src/cmd/read.c
.br
-.B /usr/local/plan9/bin/nobs
+.B \*9/bin/nobs
.SH SEE ALSO
.IR cp (1)
.SH DIAGNOSTICS
diff --git a/man/man1/cleanname.1 b/man/man1/cleanname.1
index d219138..02ad0ba 100644
--- a/man/man1/cleanname.1
+++ b/man/man1/cleanname.1
@@ -27,6 +27,6 @@
.IB pwd /
before processing.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/cleanname.c
+.B \*9/src/cmd/cleanname.c
.SH SEE ALSO
.IR cleanname (3).
diff --git a/man/man1/clog.1 b/man/man1/clog.1
index 401e531..5b306c0 100644
--- a/man/man1/clog.1
+++ b/man/man1/clog.1
@@ -12,7 +12,7 @@
and writes every line read from it, prefixed by the ASCII time, to the file
.IR logfile .
.SH SOURCE
-.B /usr/local/plan9/src/cmd/auxclog.c
+.B \*9/src/cmd/auxclog.c
.SH BUGS
Should be named
.IR aux/clog .
diff --git a/man/man1/cmp.1 b/man/man1/cmp.1
index 5023b6a..a3ab1c9 100644
--- a/man/man1/cmp.1
+++ b/man/man1/cmp.1
@@ -42,7 +42,7 @@
.BR 0 ,
octal; with anything else, decimal.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/cmp.c
+.B \*9/src/cmd/cmp.c
.SH "SEE ALSO"
.IR diff (1)
.SH DIAGNOSTICS
diff --git a/man/man1/colors.1 b/man/man1/colors.1
index ea33e9a..d72b5bf 100644
--- a/man/man1/colors.1
+++ b/man/man1/colors.1
@@ -68,6 +68,6 @@
.B /lib/cmap
directory of color map files
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/colors.c
+.B \*9/src/cmd/draw/colors.c
.SH SEE ALSO
.IR color (7)
diff --git a/man/man1/comm.1 b/man/man1/comm.1
index 68e5f47..1e5d24d 100644
--- a/man/man1/comm.1
+++ b/man/man1/comm.1
@@ -39,7 +39,7 @@
.IP
Print lines common to two sorted files.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/comm.c
+.B \*9/src/cmd/comm.c
.SH "SEE ALSO"
.IR sort (1),
.IR cmp (1),
diff --git a/man/man1/core.1 b/man/man1/core.1
index 3c2c0d4..c051386 100644
--- a/man/man1/core.1
+++ b/man/man1/core.1
@@ -39,7 +39,7 @@
.I core
searches the current directory.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/core.c
+.B \*9/src/cmd/core.c
.SH "SEE ALSO
.IR acid (1),
.IR db (1),
diff --git a/man/man1/crop.1 b/man/man1/crop.1
index 2804ece..1df8bf9 100644
--- a/man/man1/crop.1
+++ b/man/man1/crop.1
@@ -137,7 +137,7 @@
crop -c 255 255 255 -i -10 -b 255 150 150 imagefile > cropped
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/crop.c
+.B \*9/src/cmd/draw/crop.c
.SH SEE ALSO
.IR image (7),
.IR color (3)
diff --git a/man/man1/date.1 b/man/man1/date.1
index 45440e6..1936e42 100644
--- a/man/man1/date.1
+++ b/man/man1/date.1
@@ -53,6 +53,6 @@
.\" .I Clock
.\" draws a simple analog clock in its window.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/date.c
+.B \*9/src/cmd/date.c
.\" .br
-.\" .B /usr/local/plan9/src/cmd/draw/clock.c
+.\" .B \*9/src/cmd/draw/clock.c
diff --git a/man/man1/db.1 b/man/man1/db.1
index b802100..fafa719 100644
--- a/man/man1/db.1
+++ b/man/man1/db.1
@@ -949,7 +949,7 @@
.SH "SEE ALSO"
.IR acid (1)
.SH SOURCE
-.B /usr/local/plan9/src/cmd/db
+.B \*9/src/cmd/db
.SH DIAGNOSTICS
Exit status is 0, unless the last command failed or
returned non-zero status.
diff --git a/man/man1/dc.1 b/man/man1/dc.1
index 1f62dfb..d6bc35c 100644
--- a/man/man1/dc.1
+++ b/man/man1/dc.1
@@ -233,7 +233,7 @@
Print the first ten values of
.IR n !
.SH SOURCE
-.B /usr/local/plan9/src/cmd/dc.c
+.B \*9/src/cmd/dc.c
.SH "SEE ALSO"
.IR bc (1),
.IR hoc (1)
diff --git a/man/man1/deroff.1 b/man/man1/deroff.1
index 18d6228..8911601 100644
--- a/man/man1/deroff.1
+++ b/man/man1/deroff.1
@@ -91,9 +91,9 @@
.I troff
files.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/deroff.c
+.B \*9/src/cmd/deroff.c
.br
-.B /usr/local/plan9/src/cmd/delatex.lx
+.B \*9/src/cmd/delatex.lx
.SH "SEE ALSO"
.IR troff (1),
.IR tex (1),
diff --git a/man/man1/dial.1 b/man/man1/dial.1
index 9d55888..7fc50bc 100644
--- a/man/man1/dial.1
+++ b/man/man1/dial.1
@@ -25,6 +25,6 @@
.I dial
to exit only in response to end of file on the network connection.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/dial.c
+.B \*9/src/cmd/dial.c
.SH SEE ALSO
.IR dial (3)
diff --git a/man/man1/dict.1 b/man/man1/dict.1
index 056ff27..de987d9 100644
--- a/man/man1/dict.1
+++ b/man/man1/dict.1
@@ -191,14 +191,14 @@
.SH "SEE ALSO"
.IR regexp (7)
.SH SOURCE
-.B /usr/local/plan9/src/cmd/dict
+.B \*9/src/cmd/dict
.br
-.B /usr/local/plan9/bin/adict
+.B \*9/bin/adict
.SH BUGS
A font with wide coverage of the Unicode Standard
should be used for best results.
(Try
-.BR /usr/local/plan9/font/pelm/unicode.9.font .)
+.BR \*9/font/pelm/unicode.9.font .)
.PP
If the
.I pattern
@@ -207,6 +207,6 @@
.PP
The dictionaries are not distributed outside Bell Labs,
though see
-.B /usr/local/plan9/dict/README
+.B \*9/dict/README
for information on using free dictionaries prepared
by Project Gutenberg.
diff --git a/man/man1/diff.1 b/man/man1/diff.1
index c1b5e84..8d3289e 100644
--- a/man/man1/diff.1
+++ b/man/man1/diff.1
@@ -130,7 +130,7 @@
.SH FILES
.B /tmp/diff[12]
.SH SOURCE
-.B /usr/local/plan9/src/cmd/diff
+.B \*9/src/cmd/diff
.SH "SEE ALSO"
.IR cmp (1),
.IR comm (1),
diff --git a/man/man1/doctype.1 b/man/man1/doctype.1
index cb339ae..02a3601 100644
--- a/man/man1/doctype.1
+++ b/man/man1/doctype.1
@@ -43,7 +43,7 @@
.BR chapter.1 ,
\&...
.SH SOURCE
-.B /usr/local/plan9/bin/doctype
+.B \*9/bin/doctype
.SH SEE ALSO
.IR troff (1),
.IR eqn (1),
diff --git a/man/man1/echo.1 b/man/man1/echo.1
index 9a75eec..cfeb58c 100644
--- a/man/man1/echo.1
+++ b/man/man1/echo.1
@@ -17,7 +17,7 @@
.B -n
suppresses the newline.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/echo.c
+.B \*9/src/cmd/echo.c
.SH DIAGNOSTICS
If
.I echo
diff --git a/man/man1/ed.1 b/man/man1/ed.1
index b61972b..d218d65 100644
--- a/man/man1/ed.1
+++ b/man/man1/ed.1
@@ -669,7 +669,7 @@
.B ed.hup
\ \ work is saved here if terminal hangs up
.SH SOURCE
-.B /usr/local/plan9/src/cmd/ed.c
+.B \*9/src/cmd/ed.c
.SH "SEE ALSO"
.IR sam (1),
.IR sed (1),
diff --git a/man/man1/eqn.1 b/man/man1/eqn.1
index 2d91449..bf4bac6 100644
--- a/man/man1/eqn.1
+++ b/man/man1/eqn.1
@@ -316,7 +316,7 @@
.B /sys/lib/troff/font/devutf
font descriptions for PostScript
.SH SOURCE
-.B /usr/local/plan9/src/cmd/eqn
+.B \*9/src/cmd/eqn
.SH "SEE ALSO"
.IR troff (1),
.IR tbl (1)
diff --git a/man/man1/factor.1 b/man/man1/factor.1
index 2ce1379..597484b 100644
--- a/man/man1/factor.1
+++ b/man/man1/factor.1
@@ -61,6 +61,6 @@
is missing, it reads the starting number from the
standard input.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/factor.c
+.B \*9/src/cmd/factor.c
.br
-.B /usr/local/plan9/src/cmd/primes.c
+.B \*9/src/cmd/primes.c
diff --git a/man/man1/fmt.1 b/man/man1/fmt.1
index 997b71b..7bdfe25 100644
--- a/man/man1/fmt.1
+++ b/man/man1/fmt.1
@@ -81,9 +81,9 @@
as the base URL for the document when displaying anchors; sets
.BI -a .
.SH SOURCE
-.B /usr/local/plan9/src/cmd/fmt.c
+.B \*9/src/cmd/fmt.c
.PP
-.B /usr/local/plan9/src/cmd/htmlfmt
+.B \*9/src/cmd/htmlfmt
.SH BUGS
.I Htmlfmt
makes no attempt to render the two-dimensional geometry of tables;
diff --git a/man/man1/fortune.1 b/man/man1/fortune.1
index 371c1d6..8c9c562 100644
--- a/man/man1/fortune.1
+++ b/man/man1/fortune.1
@@ -20,4 +20,4 @@
.B /sys/games/lib/fortunes.index
\ \ fast lookup table, maintained automatically
.SH SOURCE
-.B /usr/local/plan9/src/cmd/fortune.c
+.B \*9/src/cmd/fortune.c
diff --git a/man/man1/freq.1 b/man/man1/freq.1
index 853e479..cbbd415 100644
--- a/man/man1/freq.1
+++ b/man/man1/freq.1
@@ -34,7 +34,7 @@
flags specify a subset of value formats: decimal, hex, octal, and
character, respectively.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/freq.c
+.B \*9/src/cmd/freq.c
.SH SEE ALSO
.IR utf (7),
.IR wc (1)
diff --git a/man/man1/fsize.1 b/man/man1/fsize.1
index cabe7f3..dd2da56 100644
--- a/man/man1/fsize.1
+++ b/man/man1/fsize.1
@@ -15,8 +15,8 @@
prints the name and modification time (in seconds since the epoch)
of each of the files.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/fsize.c
+.B \*9/src/cmd/fsize.c
.br
-.B /usr/local/plan9/src/cmd/mtime.c
+.B \*9/src/cmd/mtime.c
.SH BUGS
The output formats of the two programs are different.
diff --git a/man/man1/grap.1 b/man/man1/grap.1
index 8fbfaaa..d9dae3f 100644
--- a/man/man1/grap.1
+++ b/man/man1/grap.1
@@ -404,7 +404,7 @@
.B /sys/lib/grap.defines
definitions of standard plotting characters, e.g., bullet
.SH SOURCE
-.B /usr/local/plan9/src/cmd/grap
+.B \*9/src/cmd/grap
.SH "SEE ALSO"
.IR pic (1),
.IR troff (1)
diff --git a/man/man1/graph.1 b/man/man1/graph.1
index f105d87..d602f83 100644
--- a/man/man1/graph.1
+++ b/man/man1/graph.1
@@ -135,7 +135,7 @@
the axis
is reversed.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/graph
+.B \*9/src/cmd/graph
.SH "SEE ALSO"
.IR plot (1),
.IR grap (1)
diff --git a/man/man1/grep.1 b/man/man1/grep.1
index b8cb431..7ae84a9 100644
--- a/man/man1/grep.1
+++ b/man/man1/grep.1
@@ -109,9 +109,9 @@
*.C *.b *.c *.h *.m *.cc *.java *.py *.tex *.ms
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/grep
+.B \*9/src/cmd/grep
.br
-.B /usr/local/plan9/bin/g
+.B \*9/bin/g
.SH SEE ALSO
.IR ed (1),
.IR awk (1),
diff --git a/man/man1/gview.1 b/man/man1/gview.1
index 1d5835f..6b0be4c 100644
--- a/man/man1/gview.1
+++ b/man/man1/gview.1
@@ -142,7 +142,7 @@
awk 'BEGIN{for(x=.1;x<500;x+=.1)print x,sin(x)/x}' | gview
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/gview.c
+.B \*9/src/cmd/draw/gview.c
.SH SEE ALSO
.IR awk (1)
.SH BUGS
diff --git a/man/man1/gzip.1 b/man/man1/gzip.1
index 5888689..683ba3a 100644
--- a/man/man1/gzip.1
+++ b/man/man1/gzip.1
@@ -146,9 +146,9 @@
.B -D
Produce debugging output.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/gzip
+.B \*9/src/cmd/gzip
.br
-.B /usr/local/plan9/src/cmd/bzip2
+.B \*9/src/cmd/bzip2
.SH SEE ALSO
.IR tar (1),
.IR compress (1)
diff --git a/man/man1/hoc.1 b/man/man1/hoc.1
index 87694f5..f73ec8a 100644
--- a/man/man1/hoc.1
+++ b/man/man1/hoc.1
@@ -131,7 +131,7 @@
for(i=1; i<12; i++) print gcd(i,12)
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/hoc
+.B \*9/src/cmd/hoc
.SH "SEE ALSO"
.IR bc (1),
.IR dc (1)
diff --git a/man/man1/idiff.1 b/man/man1/idiff.1
index d497939..fda8458 100644
--- a/man/man1/idiff.1
+++ b/man/man1/idiff.1
@@ -61,7 +61,7 @@
.SH FILES
.B /tmp/idiff.*
.SH SOURCE
-.B /usr/local/plan9/src/cmd/idiff.c
+.B \*9/src/cmd/idiff.c
.SH "SEE ALSO
.IR diff (1)
.br
diff --git a/man/man1/join.1 b/man/man1/join.1
index 841d077..6b0eeee 100644
--- a/man/man1/join.1
+++ b/man/man1/join.1
@@ -128,7 +128,7 @@
join -1 3 -2 3 -o 1.1,2.1 temp temp | awk '$1 < $2'
Print all pairs of users with identical userids.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/join.c
+.B \*9/src/cmd/join.c
.SH "SEE ALSO"
.IR sort (1),
.IR comm (1),
diff --git a/man/man1/jpg.1 b/man/man1/jpg.1
index b81490b..a59033b 100644
--- a/man/man1/jpg.1
+++ b/man/man1/jpg.1
@@ -233,7 +233,7 @@
a single icon file. The masks in the icon file will be the white
space in the image. The icon file is written to standard output.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/jpg
+.B \*9/src/cmd/jpg
.SH "SEE ALSO"
.IR page (1),
.IR image (7).
diff --git a/man/man1/kill.1 b/man/man1/kill.1
index c7d5ff9..5719f16 100644
--- a/man/man1/kill.1
+++ b/man/man1/kill.1
@@ -63,7 +63,7 @@
.B CONT
signal.
.SH SOURCE
-.B /usr/local/plan9/bin
+.B \*9/bin
.SH "SEE ALSO"
.IR ps (1),
.IR notify (3)
diff --git a/man/man1/label.1 b/man/man1/label.1
index 0caf8d5..20fd900 100644
--- a/man/man1/label.1
+++ b/man/man1/label.1
@@ -57,9 +57,9 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/bin/label
+.B \*9/bin/label
.br
-.B /usr/local/plan9/bin/awd
+.B \*9/bin/awd
.SH BUGS
.I Awd
is also documented in
diff --git a/man/man1/lex.1 b/man/man1/lex.1
index 7021e8d..c0f43e3 100644
--- a/man/man1/lex.1
+++ b/man/man1/lex.1
@@ -73,7 +73,7 @@
Unix Research System Programmer's Manual,
Tenth Edition, Volume 2.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/lex
+.B \*9/src/cmd/lex
.SH BUGS
Cannot handle
.SM UTF.
diff --git a/man/man1/look.1 b/man/man1/look.1
index e06e842..ddd50af 100644
--- a/man/man1/look.1
+++ b/man/man1/look.1
@@ -71,7 +71,7 @@
.SH FILES
.B /lib/words
.SH SOURCE
-.B /usr/local/plan9/src/cmd/look.c
+.B \*9/src/cmd/look.c
.SH "SEE ALSO"
.IR sort (1),
.IR grep (1)
diff --git a/man/man1/ls.1 b/man/man1/ls.1
index 4cea25b..96877b8 100644
--- a/man/man1/ls.1
+++ b/man/man1/ls.1
@@ -153,9 +153,9 @@
if none of the above permissions is granted.
.PD
.SH SOURCE
-.B /usr/local/plan9/src/cmd/ls.c
+.B \*9/src/cmd/ls.c
.br
-.B /usr/local/plan9/bin/lc
+.B \*9/bin/lc
.SH SEE ALSO
.IR stat (3)
.IR mc (1)
diff --git a/man/man1/man.1 b/man/man1/man.1
index 7b86584..3531f3f 100644
--- a/man/man1/man.1
+++ b/man/man1/man.1
@@ -89,9 +89,9 @@
index for
.I lookman
.SH SOURCE
-.B /usr/local/plan9/bin/9man
+.B \*9/bin/9man
.br
-.B /usr/local/plan9/bin/lookman
+.B \*9/bin/lookman
.SH "SEE ALSO"
.IR proof (1)
.SH BUGS
diff --git a/man/man1/map.1 b/man/man1/map.1
index d6363ff..a2d0985 100644
--- a/man/man1/map.1
+++ b/man/man1/map.1
@@ -637,7 +637,7 @@
.B /bin/aux/mapd
Map driver program
.SH SOURCE
-.B /usr/local/plan9/src/cmd/map
+.B \*9/src/cmd/map
.SH "SEE ALSO"
.IR map (7),
.IR plot (1)
diff --git a/man/man1/mc.1 b/man/man1/mc.1
index ac53520..5d3d293 100644
--- a/man/man1/mc.1
+++ b/man/man1/mc.1
@@ -34,7 +34,7 @@
.L :
is printed separately.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/mc.c
+.B \*9/src/cmd/draw/mc.c
.SH "SEE ALSO"
.IR 9term (1),
.IR acme (1),
diff --git a/man/man1/mkdir.1 b/man/man1/mkdir.1
index cac5818..e658847 100644
--- a/man/man1/mkdir.1
+++ b/man/man1/mkdir.1
@@ -34,7 +34,7 @@
in
.IR rc (1)
.SH SOURCE
-.B /usr/local/plan9/src/cmd/mkdir.c
+.B \*9/src/cmd/mkdir.c
.SH DIAGNOSTICS
.I Mkdir
returns null exit status if all directories were successfully made.
diff --git a/man/man1/namespace.1 b/man/man1/namespace.1
index 45f443b..763d9e1 100644
--- a/man/man1/namespace.1
+++ b/man/man1/namespace.1
@@ -9,6 +9,6 @@
See
.IR intro (4).
.SH SOURCE
-.B /usr/local/plan9/src/cmd/namespace.c
+.B \*9/src/cmd/namespace.c
.SH SEE ALSO
.IR getns (3)
diff --git a/man/man1/news.1 b/man/man1/news.1
index bce5e18..bd9faf2 100644
--- a/man/man1/news.1
+++ b/man/man1/news.1
@@ -60,4 +60,4 @@
.B /sys/lib/subscribers
who gets news mailed to them
.SH SOURCE
-.B /usr/local/plan9/src/cmd/news.c
+.B \*9/src/cmd/news.c
diff --git a/man/man1/p.1 b/man/man1/p.1
index e98134e..7bed5fd 100644
--- a/man/man1/p.1
+++ b/man/man1/p.1
@@ -30,4 +30,4 @@
Quit.
.PP
.SH SOURCE
-.B /usr/local/plan9/src/cmd/p.c
+.B \*9/src/cmd/p.c
diff --git a/man/man1/page.1 b/man/man1/page.1
index eb4fed5..e3fd644 100644
--- a/man/man1/page.1
+++ b/man/man1/page.1
@@ -51,6 +51,6 @@
.IR tex (1),
.IR troff (1)
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/img.c
+.B \*9/src/cmd/draw/img.c
.br
-.B /usr/local/plan9/bin/psv
+.B \*9/bin/psv
diff --git a/man/man1/pic.1 b/man/man1/pic.1
index ae84569..f47fa42 100644
--- a/man/man1/pic.1
+++ b/man/man1/pic.1
@@ -331,7 +331,7 @@
for i = 1 to 10 do { line from A.s+.025*i,.01*i down i/50 }
.PE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/pic
+.B \*9/src/cmd/pic
.SH "SEE ALSO"
.IR grap (1),
.IR doctype (1),
diff --git a/man/man1/plot.1 b/man/man1/plot.1
index e26dac6..3c8803f 100644
--- a/man/man1/plot.1
+++ b/man/man1/plot.1
@@ -55,7 +55,7 @@
By default it uses a 512×512 window in the
middle of the screen.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/plot
+.B \*9/src/cmd/plot
.SH "SEE ALSO"
.IR rio (1),
.IR plot (7)
diff --git a/man/man1/plumb.1 b/man/man1/plumb.1
index c296a1e..4885b90 100644
--- a/man/man1/plumb.1
+++ b/man/man1/plumb.1
@@ -85,7 +85,7 @@
mount point for
.IR plumber (4).
.SH SOURCE
-.B /usr/local/plan9/src/cmd/plumb
+.B \*9/src/cmd/plumb
.SH "SEE ALSO"
.IR plumb (3),
.IR plumber (4),
diff --git a/man/man1/pr.1 b/man/man1/pr.1
index ce8dc68..860c026 100644
--- a/man/man1/pr.1
+++ b/man/man1/pr.1
@@ -104,7 +104,7 @@
.I n
characters instead of the default 72.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/pr.c
+.B \*9/src/cmd/pr.c
.SH "SEE ALSO"
.IR cat (1),
.IR lp (1)
diff --git a/man/man1/proof.1 b/man/man1/proof.1
index 01e8e35..27662d0 100644
--- a/man/man1/proof.1
+++ b/man/man1/proof.1
@@ -124,7 +124,7 @@
how to convert troff output fonts and character names
into screen fonts and character numbers
.SH SOURCE
-.B /usr/local/plan9/src/cmd/proof
+.B \*9/src/cmd/proof
.SH SEE ALSO
.IR lp (1),
.IR gs (1),
diff --git a/man/man1/ps.1 b/man/man1/ps.1
index 9cfcb2e..7c23c18 100644
--- a/man/man1/ps.1
+++ b/man/man1/ps.1
@@ -98,9 +98,9 @@
.I ps
to print the arguments for the process. Newlines in arguments will be translated to spaces for display.
.SH SOURCE
-.B /usr/local/plan9/bin/ps
+.B \*9/bin/ps
.br
-.B /usr/local/plan9/bin/psu
+.B \*9/bin/psu
.SH "SEE ALSO"
.IR acid (1),
.IR db (1),
diff --git a/man/man1/psfonts.1 b/man/man1/psfonts.1
index 19f3de8..c408f54 100644
--- a/man/man1/psfonts.1
+++ b/man/man1/psfonts.1
@@ -21,7 +21,7 @@
.IR tr2post (1)
use non-standard PostScript fonts
(found in
-.BR /usr/local/plan9/postscript/font ).
+.BR \*9/postscript/font ).
Before sending PostScript output from
.I tr2post
to a standard printer, code implementing
@@ -96,7 +96,7 @@
.B -r
above;
default
-.BR /usr/local/plan9/postscript/font ).
+.BR \*9/postscript/font ).
.TP
.BI -T " tmpdir
Use
@@ -117,9 +117,9 @@
.IR tr2post (1)
for an example.
.SH SOURCE
-.B /usr/local/plan9/bin/psfonts
+.B \*9/bin/psfonts
.br
-.B /usr/local/plan9/src/cmd/postscript/download
+.B \*9/src/cmd/postscript/download
.SH SEE ALSO
.IR troff (1),
.IR tr2post (1)
diff --git a/man/man1/pwd.1 b/man/man1/pwd.1
index a154379..0a3e066 100644
--- a/man/man1/pwd.1
+++ b/man/man1/pwd.1
@@ -14,7 +14,7 @@
It prints no final newline and is intended for applications
such as constructing shell prompts.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/pbd.c
+.B \*9/src/cmd/pbd.c
.SH SEE ALSO
.I cd
in
diff --git a/man/man1/rc.1 b/man/man1/rc.1
index 6419a39..26cede6 100644
--- a/man/man1/rc.1
+++ b/man/man1/rc.1
@@ -947,7 +947,7 @@
as they are executed).
.PD
.SH SOURCE
-.B /usr/local/plan9/src/cmd/rc
+.B \*9/src/cmd/rc
.SH "SEE ALSO"
Tom Duff,
``Rc \- The Plan 9 Shell''.
diff --git a/man/man1/rm.1 b/man/man1/rm.1
index a2ab0d1..83bc817 100644
--- a/man/man1/rm.1
+++ b/man/man1/rm.1
@@ -23,6 +23,6 @@
entire contents of a directory
and the directory itself.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/rm.c
+.B \*9/src/cmd/rm.c
.SH "SEE ALSO"
.IR remove (3)
diff --git a/man/man1/sam.1 b/man/man1/sam.1
index e2085ad..be66d04 100644
--- a/man/man1/sam.1
+++ b/man/man1/sam.1
@@ -865,27 +865,27 @@
.L y
causes writing; anything else skips the file.
.SH FILES
-.TF /usr/local/plan9/src/cmd/samterm
+.TF \*9/src/cmd/samterm
.TP
.B $home/sam.save
.TP
.B $home/sam.err
.TP
-.B /usr/local/plan9/bin/samsave
+.B \*9/bin/samsave
the program called to unpack
.BR $home/sam.save .
.SH SOURCE
-.TF /usr/local/plan9/src/cmd/samterm
+.TF \*9/src/cmd/samterm
.TP
-.B /usr/local/plan9/src/cmd/sam
+.B \*9/src/cmd/sam
source for
.I sam
itself
.TP
-.B /usr/local/plan9/src/cmd/samterm
+.B \*9/src/cmd/samterm
source for the separate terminal part
.TP
-.B /usr/local/plan9/bin/B
+.B \*9/bin/B
.SH SEE ALSO
.IR ed (1),
.IR sed (1),
diff --git a/man/man1/scat.1 b/man/man1/scat.1
index 8840c1d..f5ee897 100644
--- a/man/man1/scat.1
+++ b/man/man1/scat.1
@@ -322,7 +322,7 @@
.SH FILES
.B /lib/sky/*.scat
.SH SOURCE
-.B /usr/local/plan9/src/cmd/scat
+.B \*9/src/cmd/scat
.SH SEE ALSO
.IR astro (1)
.br
diff --git a/man/man1/secstore.1 b/man/man1/secstore.1
index 862857d..b50fc32 100644
--- a/man/man1/secstore.1
+++ b/man/man1/secstore.1
@@ -196,7 +196,7 @@
encrypts and decrypts using AES (Rijndael) in cipher
block chaining (CBC) mode.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/secstore
+.B \*9/src/cmd/secstore
.SH SEE ALSO
.IR factotum (4),
Plan 9's \fIsecstore\fR(8)
diff --git a/man/man1/sed.1 b/man/man1/sed.1
index 4e9ac33..b176e43 100644
--- a/man/man1/sed.1
+++ b/man/man1/sed.1
@@ -366,7 +366,7 @@
Delete all but one of each group of empty lines from a
formatted manuscript.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/9sed.c
+.B \*9/src/cmd/9sed.c
.SH SEE ALSO
.IR ed (1),
.IR grep (1),
diff --git a/man/man1/seq.1 b/man/man1/seq.1
index 5fda241..3f295c0 100644
--- a/man/man1/seq.1
+++ b/man/man1/seq.1
@@ -64,7 +64,7 @@
Print
.BR "0.00 0.05 0.10" .
.SH SOURCE
-.B /usr/local/plan9/src/cmd/seq.c
+.B \*9/src/cmd/seq.c
.SH BUGS
Option
.B -w
diff --git a/man/man1/sleep.1 b/man/man1/sleep.1
index 68c94a9..3eb617b 100644
--- a/man/man1/sleep.1
+++ b/man/man1/sleep.1
@@ -26,6 +26,6 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/sleep.c
+.B \*9/src/cmd/sleep.c
.SH "SEE ALSO"
.IR sleep (3)
diff --git a/man/man1/sort.1 b/man/man1/sort.1
index 4400f0a..eb0d7f4 100644
--- a/man/man1/sort.1
+++ b/man/man1/sort.1
@@ -238,7 +238,7 @@
.SH FILES
.BI /tmp/sort. <pid>.<ordinal>
.SH SOURCE
-.B /usr/local/plan9/src/cmd/sort.c
+.B \*9/src/cmd/sort.c
.SH SEE ALSO
.IR uniq (1),
.IR look (1)
diff --git a/man/man1/spell.1 b/man/man1/spell.1
index 3b25f83..44a1a0e 100644
--- a/man/man1/spell.1
+++ b/man/man1/spell.1
@@ -61,10 +61,10 @@
(adjective).
.SH FILES
.TP
-.B /usr/local/plan9/lib/amspell
+.B \*9/lib/amspell
American spelling list
.TP
-.B /usr/local/plan9/lib/brspell
+.B \*9/lib/brspell
British spelling list
.TP
.B /bin/aux/sprog
@@ -73,12 +73,12 @@
and takes the same arguments as
.IR spell .
.SH SOURCE
-.TF /usr/local/plan9/src/cmd/spell
+.TF \*9/src/cmd/spell
.TP
-.B /usr/local/plan9/bin/spell
+.B \*9/bin/spell
the script
.TP
-.B /usr/local/plan9/src/cmd/spell
+.B \*9/src/cmd/spell
source for
.I sprog
.SH SEE ALSO
diff --git a/man/man1/split.1 b/man/man1/split.1
index e00e3d0..9b2c976 100644
--- a/man/man1/split.1
+++ b/man/man1/split.1
@@ -74,7 +74,7 @@
force output file names (excluding the suffix)
to lower case.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/split.c
+.B \*9/src/cmd/split.c
.SH SEE ALSO
.IR sed (1),
.IR awk (1),
diff --git a/man/man1/src.1 b/man/man1/src.1
index 4c03dd7..5f6a29c 100644
--- a/man/man1/src.1
+++ b/man/man1/src.1
@@ -76,7 +76,7 @@
src -s strcmp rc
.EE
.SH SOURCE
-.B /usr/local/plan9/bin/src
+.B \*9/bin/src
.SH "SEE ALSO"
.IR db (1),
.IR plumb (1),
diff --git a/man/man1/stats.1 b/man/man1/stats.1
index e02b54a..85256bd 100644
--- a/man/man1/stats.1
+++ b/man/man1/stats.1
@@ -173,11 +173,11 @@
.BR daemon .
.IP
.B
-stats -lmisce `hostname` tux:/usr/local/plan9/bin/auxstats daemon
+stats -lmisce `hostname` tux:\*9/bin/auxstats daemon
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/stats.c
+.B \*9/src/cmd/draw/stats.c
.PP
-.B /usr/local/plan9/src/cmd/auxstats
+.B \*9/src/cmd/auxstats
.SH BUGS
The
.I auxstats
diff --git a/man/man1/strings.1 b/man/man1/strings.1
index 2f3af53..d04dc41 100644
--- a/man/man1/strings.1
+++ b/man/man1/strings.1
@@ -23,6 +23,6 @@
terminated by three dots and the printing is resumed on the next
line with the offset of the continuation line.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/strings.c
+.B \*9/src/cmd/strings.c
.SH SEE ALSO
.IR nm (1)
diff --git a/man/man1/sum.1 b/man/man1/sum.1
index 6eaa1ef..b95851d 100644
--- a/man/man1/sum.1
+++ b/man/man1/sum.1
@@ -67,11 +67,11 @@
the standard input is
summed.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/sum.c
+.B \*9/src/cmd/sum.c
.br
-.B /usr/local/plan9/src/cmd/md5sum.c
+.B \*9/src/cmd/md5sum.c
.br
-.B /usr/local/plan9/src/cmd/sha1sum.c
+.B \*9/src/cmd/sha1sum.c
.SH "SEE ALSO"
.IR cmp (1),
.IR wc (1)
diff --git a/man/man1/tail.1 b/man/man1/tail.1
index 6cae088..3681dd3 100644
--- a/man/man1/tail.1
+++ b/man/man1/tail.1
@@ -72,7 +72,7 @@
.B sed 10q file
Print the first 10 lines of a file.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/tail.c
+.B \*9/src/cmd/tail.c
.SH BUGS
Tails relative to the end of the file
are treasured up in a buffer, and thus
diff --git a/man/man1/tbl.1 b/man/man1/tbl.1
index 0e986e9..ce13a4a 100644
--- a/man/man1/tbl.1
+++ b/man/man1/tbl.1
@@ -272,7 +272,7 @@
.if t \{.sp3
.1C\}
.SH SOURCE
-.B /usr/local/plan9/src/cmd/tbl
+.B \*9/src/cmd/tbl
.SH SEE ALSO
.IR troff (1),
.IR eqn (1),
diff --git a/man/man1/tcs.1 b/man/man1/tcs.1
index e1a410c..f23d1ce 100644
--- a/man/man1/tcs.1
+++ b/man/man1/tcs.1
@@ -160,7 +160,7 @@
.B tcs -lv
Print an up to date list of the supported character sets.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/tcs
+.B \*9/src/cmd/tcs
.SH SEE ALSO
.IR ascii (1),
.IR rune (3),
diff --git a/man/man1/tee.1 b/man/man1/tee.1
index 57ca9ba..428ebbc 100644
--- a/man/man1/tee.1
+++ b/man/man1/tee.1
@@ -25,4 +25,4 @@
.I files
rather than rewriting them.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/tee.c
+.B \*9/src/cmd/tee.c
diff --git a/man/man1/test.1 b/man/man1/test.1
index d5473a3..ec01791 100644
--- a/man/man1/test.1
+++ b/man/man1/test.1
@@ -206,6 +206,6 @@
.IP
.B test -f abc -o -d abc
.SH SOURCE
-.B /usr/local/plan9/src/cmd/test.c
+.B \*9/src/cmd/test.c
.SH "SEE ALSO"
.IR rc (1)
diff --git a/man/man1/time.1 b/man/man1/time.1
index 03f2437..57a0a56 100644
--- a/man/man1/time.1
+++ b/man/man1/time.1
@@ -16,6 +16,6 @@
system time, and real time, in seconds,
followed by the command line.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/time.c
+.B \*9/src/cmd/time.c
.SH "SEE ALSO"
.IR prof (1)
diff --git a/man/man1/touch.1 b/man/man1/touch.1
index 551ea2c..a02440d 100644
--- a/man/man1/touch.1
+++ b/man/man1/touch.1
@@ -25,7 +25,7 @@
.B -c
is present.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/touch.c
+.B \*9/src/cmd/touch.c
.SH SEE ALSO
.IR ls (1),
.IR stat (3),
diff --git a/man/man1/tr.1 b/man/man1/tr.1
index a597ba1..cef4a17 100644
--- a/man/man1/tr.1
+++ b/man/man1/tr.1
@@ -92,6 +92,6 @@
\&' <file1 >file2
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/tr.c
+.B \*9/src/cmd/tr.c
.SH "SEE ALSO"
.IR sed (1)
diff --git a/man/man1/tr2post.1 b/man/man1/tr2post.1
index b4b64a8..3a54e4d 100644
--- a/man/man1/tr2post.1
+++ b/man/man1/tr2post.1
@@ -101,13 +101,13 @@
Preview this manual page:
.IP
.EX
-troff -man /usr/local/plan9/man/man1/tr2post.1 |
+troff -man \*9/man/man1/tr2post.1 |
tr2post |
psfonts >/tmp/a.ps
psv /tmp/a.ps
.EE
.SH SOURCE
-.B /usr/local/plan9/src/cmd/postscript/tr2post
+.B \*9/src/cmd/postscript/tr2post
.SH SEE ALSO
.IR troff (1),
.IR psfonts (1)
diff --git a/man/man1/troff.1 b/man/man1/troff.1
index 3f990ab..5923084 100644
--- a/man/man1/troff.1
+++ b/man/man1/troff.1
@@ -174,7 +174,7 @@
font width tables for
.I troff
.SH SOURCE
-.B /usr/local/plan9/src/cmd/troff
+.B \*9/src/cmd/troff
.SH "SEE ALSO"
.IR lpr (1),
.IR proof (1),
diff --git a/man/man1/tweak.1 b/man/man1/tweak.1
index 511e1ce..ac52a9b 100644
--- a/man/man1/tweak.1
+++ b/man/man1/tweak.1
@@ -156,7 +156,7 @@
.IR tweak .
The program will complain once about modified but unwritten files.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/draw/tweak.c
+.B \*9/src/cmd/draw/tweak.c
.SH "SEE ALSO"
.IR cachechars (3),
.IR image (7),
diff --git a/man/man1/uniq.1 b/man/man1/uniq.1
index 64a302e..ae17f09 100644
--- a/man/man1/uniq.1
+++ b/man/man1/uniq.1
@@ -51,7 +51,7 @@
characters are ignored.
Fields are skipped before characters.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/uniq.c
+.B \*9/src/cmd/uniq.c
.SH "SEE ALSO"
.IR sort (1)
.SH BUGS
diff --git a/man/man1/units.1 b/man/man1/units.1
index 2386356..fff68a2 100644
--- a/man/man1/units.1
+++ b/man/man1/units.1
@@ -95,7 +95,7 @@
.SH FILES
.B /lib/units
.SH SOURCE
-.B /usr/local/plan9/src/cmd/units.y
+.B \*9/src/cmd/units.y
.SH BUGS
Since
.I units
diff --git a/man/man1/vac.1 b/man/man1/vac.1
index 4d3208d..d8c512e 100644
--- a/man/man1/vac.1
+++ b/man/man1/vac.1
@@ -124,7 +124,7 @@
Produce more verbose output on standard error, including the name of the files added to the archive
and the vac archives that are expanded and merged.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/vac
+.B \*9/src/cmd/vac
.SH "SEE ALSO"
Plan 9's \fIvacfs\fR(4) and \fIventi\fR(8)
diff --git a/man/man1/wc.1 b/man/man1/wc.1
index 684f4fb..f0df4a4 100644
--- a/man/man1/wc.1
+++ b/man/man1/wc.1
@@ -35,7 +35,7 @@
.RB ( -lwc )
are reported.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/wc.c
+.B \*9/src/cmd/wc.c
.SH BUGS
The Unicode Standard has many blank characters scattered through it,
but
diff --git a/man/man1/web.1 b/man/man1/web.1
index 0bcc9ca..cf0b691 100644
--- a/man/man1/web.1
+++ b/man/man1/web.1
@@ -64,12 +64,12 @@
rules for opening web pages and writing mail messages.
.SH FILES
.TP
-.B /usr/local/plan9/plumb/basic
+.B \*9/plumb/basic
plumbing rules using
.I web
and
.I wmail
.SH SOURCE
-.B /usr/local/plan9/bin
+.B \*9/bin
.SH SEE ALSO
.IR plumber (4)
diff --git a/man/man1/wintext.1 b/man/man1/wintext.1
index 7d3463d..413b3d2 100644
--- a/man/man1/wintext.1
+++ b/man/man1/wintext.1
@@ -84,7 +84,7 @@
.IR 9term (1),
.IR acme (1)
.SH SOURCE
-.B /usr/local/plan9/bin
+.B \*9/bin
.SH BUGS
.I \C'"'
and
diff --git a/man/man1/xd.1 b/man/man1/xd.1
index 933faea..10307aa 100644
--- a/man/man1/xd.1
+++ b/man/man1/xd.1
@@ -79,7 +79,7 @@
Print repeating groups of identical 16-byte sequences as the first group
followed by an asterisk.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/xd.c
+.B \*9/src/cmd/xd.c
.SH "SEE ALSO"
.IR db (1)
.SH BUGS
diff --git a/man/man1/yacc.1 b/man/man1/yacc.1
index 91bc7d0..362d506 100644
--- a/man/man1/yacc.1
+++ b/man/man1/yacc.1
@@ -139,13 +139,13 @@
.B y.acts.*
temporary file
.TP
-.B /usr/local/plan9/lib/yaccpar
+.B \*9/lib/yaccpar
parser prototype
.TP
-.B /usr/local/plan9/lib/yaccpars
+.B \*9/lib/yaccpars
parser prototype using stdio
.SH SOURCE
-.B /usr/local/plan9/src/cmd/9yacc.c
+.B \*9/src/cmd/9yacc.c
.SH "SEE ALSO"
.IR lex (1)
.br
diff --git a/man/man3/9p.3 b/man/man3/9p.3
index 9d8967e..1e153bf 100644
--- a/man/man3/9p.3
+++ b/man/man3/9p.3
@@ -717,7 +717,7 @@
option to increment
.BR chatty9p .
.SH EXAMPLES
-/usr/local/plan9/src/lib9p/ramfs.c
+\*9/src/lib9p/ramfs.c
is an example of simple single-threaded file servers.
On Plan 9, see
.IR archfs ,
@@ -742,7 +742,7 @@
.IR nntpfs )
or is maintained elsewhere.
.SH SOURCE
-.B /usr/local/plan9/src/lib9p
+.B \*9/src/lib9p
.SH SEE ALSO
.IR 9pfid (3),
.IR 9pfile (3),
diff --git a/man/man3/9pclient.3 b/man/man3/9pclient.3
index 1c7e76a..b21676a 100644
--- a/man/man3/9pclient.3
+++ b/man/man3/9pclient.3
@@ -319,7 +319,7 @@
.B CFsys
is unmounted.
.SH SOURCE
-.B /usr/local/plan9/src/lib9pclient
+.B \*9/src/lib9pclient
.SH SEE ALSO
.IR intro (4),
.IR intro (9p)
diff --git a/man/man3/9pcmdbuf.3 b/man/man3/9pcmdbuf.3
index e961422..cd1c731 100644
--- a/man/man3/9pcmdbuf.3
+++ b/man/man3/9pcmdbuf.3
@@ -110,9 +110,9 @@
This interface is not used in any distributed 9P servers.
It was lifted from the Plan 9 kernel.
Almost any kernel driver
-.RB ( /usr/local/plan9/src/9/*/dev*.c )
+.RB ( \*9/src/9/*/dev*.c )
is a good example.
.SH SOURCE
-.B /usr/local/plan9/src/lib9p/parse.c
+.B \*9/src/lib9p/parse.c
.SH SEE ALSO
.IR 9p (3)
diff --git a/man/man3/9pfid.3 b/man/man3/9pfid.3
index 2852baf..6225143 100644
--- a/man/man3/9pfid.3
+++ b/man/man3/9pfid.3
@@ -198,7 +198,7 @@
.B Req
structures.
.SH SOURCE
-.B /usr/local/plan9/src/lib9p
+.B \*9/src/lib9p
.SH SEE ALSO
.IR 9p (3),
.IR 9pfile (3)
diff --git a/man/man3/9pfile.3 b/man/man3/9pfile.3
index 1bb3038..cf03eb2 100644
--- a/man/man3/9pfile.3
+++ b/man/man3/9pfile.3
@@ -216,7 +216,7 @@
return nf;
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9p/file.c
+.B \*9/src/lib9p/file.c
.SH SEE ALSO
.IR 9p (3)
.SH BUGS
diff --git a/man/man3/addpt.3 b/man/man3/addpt.3
index e249c08..c00a1de 100644
--- a/man/man3/addpt.3
+++ b/man/man3/addpt.3
@@ -183,6 +183,6 @@
give the width (Δx) and height (Δy) of a Rectangle.
They are implemented as macros.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3)
diff --git a/man/man3/aes.3 b/man/man3/aes.3
index df8ff29..06f42de 100644
--- a/man/man3/aes.3
+++ b/man/man3/aes.3
@@ -37,7 +37,7 @@
bytes should random enough to be unlikely to be reused but does not need to be
cryptographically strongly unpredictable.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR blowfish (3),
diff --git a/man/man3/allocimage.3 b/man/man3/allocimage.3
index e9da53a..8bfd323 100644
--- a/man/man3/allocimage.3
+++ b/man/man3/allocimage.3
@@ -331,7 +331,7 @@
red = allocimage(display, Rect(0, 0, 1, 1), RGB24, 1, DRed);
.EE
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH "SEE ALSO"
.IR graphics (3),
.IR draw (3),
diff --git a/man/man3/arg.3 b/man/man3/arg.3
index 6f7bb92..3124930 100644
--- a/man/man3/arg.3
+++ b/man/man3/arg.3
@@ -121,4 +121,4 @@
prog -b -f(file1) badflag('r') -f(file2) 2 args: 'arg1' 'arg2'
.PP
.SH SOURCE
-.B /usr/local/plan9/include/libc.h
+.B \*9/include/libc.h
diff --git a/man/man3/arith3.3 b/man/man3/arith3.3
index faba4aa..1e764c7 100644
--- a/man/man3/arith3.3
+++ b/man/man3/arith3.3
@@ -264,6 +264,6 @@
sub4
Subtract the coordinates of two points.
.SH SOURCE
-.B /usr/local/plan9/src/libgeometry
+.B \*9/src/libgeometry
.SH "SEE ALSO
.IR matrix (3)
diff --git a/man/man3/atof.3 b/man/man3/atof.3
index f8d7c60..f6da685 100644
--- a/man/man3/atof.3
+++ b/man/man3/atof.3
@@ -127,7 +127,7 @@
after calling
.IR charstod .
.SH SOURCE
-.B /usr/local/plan9/src/lib9
+.B \*9/src/lib9
.SH SEE ALSO
.IR fscanf (3)
.SH DIAGNOSTICS
diff --git a/man/man3/bin.3 b/man/man3/bin.3
index 1d1e320..7606202 100644
--- a/man/man3/bin.3
+++ b/man/man3/bin.3
@@ -89,7 +89,7 @@
upon a call to
.IR binfree .
.SH SOURCE
-.B /usr/local/plan9/src/libbin
+.B \*9/src/libbin
.SH SEE ALSO
.IR malloc (3)
.SH DIAGNOSTICS
diff --git a/man/man3/bio.3 b/man/man3/bio.3
index 8228dad..8260cc2 100644
--- a/man/man3/bio.3
+++ b/man/man3/bio.3
@@ -321,7 +321,7 @@
read on the file; when writing, it is the number of bytes ready to be
written.
.SH SOURCE
-.B /usr/local/plan9/src/libbio
+.B \*9/src/libbio
.SH SEE ALSO
.IR open (3),
.IR print (3),
diff --git a/man/man3/blowfish.3 b/man/man3/blowfish.3
index 5938e35..20d43f6 100644
--- a/man/man3/blowfish.3
+++ b/man/man3/blowfish.3
@@ -38,7 +38,7 @@
functions take a BFstate structure, a data buffer, and a length, which
must be a multiple of eight bytes as padding is currently unsupported.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR aes (3),
diff --git a/man/man3/cachechars.3 b/man/man3/cachechars.3
index bb7a475..b0c7abf 100644
--- a/man/man3/cachechars.3
+++ b/man/man3/cachechars.3
@@ -300,7 +300,7 @@
Thus, characters or subfonts with small ages are the best candidates
for replacement when the cache is full.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR allocimage (3),
diff --git a/man/man3/cleanname.3 b/man/man3/cleanname.3
index 5568880..efb7d82 100644
--- a/man/man3/cleanname.3
+++ b/man/man3/cleanname.3
@@ -29,6 +29,6 @@
.I filename
must contain room for at least two bytes.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/cleanname.c
+.B \*9/src/lib9/cleanname.c
.SH SEE ALSO
.IR cleanname (1)
diff --git a/man/man3/color.3 b/man/man3/color.3
index aac61bd..5428337 100644
--- a/man/man3/color.3
+++ b/man/man3/color.3
@@ -47,7 +47,7 @@
library routines that
take colors as arguments.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR allocimage (3),
diff --git a/man/man3/complete.3 b/man/man3/complete.3
index dc74050..6ccf9da 100644
--- a/man/man3/complete.3
+++ b/man/man3/complete.3
@@ -91,7 +91,7 @@
.IR acme (1),
file name completion is triggered by a control-F character or an Insert character.
.SH SOURCE
-.B /usr/local/plan9/src/libcomplete
+.B \*9/src/libcomplete
.SH SEE ALSO
.IR rio (1),
.IR acme (1)
diff --git a/man/man3/cputime.3 b/man/man3/cputime.3
index c88340d..78a93fa 100644
--- a/man/man3/cputime.3
+++ b/man/man3/cputime.3
@@ -25,4 +25,4 @@
.I Times
returns the elapsed real time, in milliseconds, that the process has been running.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/time.c
+.B \*9/src/lib9/time.c
diff --git a/man/man3/ctime.3 b/man/man3/ctime.3
index ef3ae11..8b2f041 100644
--- a/man/man3/ctime.3
+++ b/man/man3/ctime.3
@@ -81,9 +81,9 @@
is not
.BR GMT .
.SH SOURCE
-.B /usr/local/plan9/src/lib9/date.c
+.B \*9/src/lib9/date.c
.br
-.B /usr/local/plan9/src/lib9/ctime.c
+.B \*9/src/lib9/ctime.c
.SH "SEE ALSO"
.IR date (1),
.IR time (3)
diff --git a/man/man3/des.3 b/man/man3/des.3
index 5d4d133..3c3cd20 100644
--- a/man/man3/des.3
+++ b/man/man3/des.3
@@ -130,7 +130,7 @@
.IR key_setup .
.PP
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR aes (3),
diff --git a/man/man3/dial.3 b/man/man3/dial.3
index 5110227..36364f3 100644
--- a/man/man3/dial.3
+++ b/man/man3/dial.3
@@ -299,11 +299,11 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9/dial.c
+.B \*9/src/lib9/dial.c
.br
-.B /usr/local/plan9/src/lib9/announce.c
+.B \*9/src/lib9/announce.c
.br
-.B /usr/local/plan9/src/lib9/_p9dialparse.c
+.B \*9/src/lib9/_p9dialparse.c
.SH DIAGNOSTICS
.IR Dial ,
.IR announce ,
diff --git a/man/man3/dirread.3 b/man/man3/dirread.3
index ac83edf..2522e9a 100644
--- a/man/man3/dirread.3
+++ b/man/man3/dirread.3
@@ -83,7 +83,7 @@
.BR buf .
The file offset is advanced by the number of bytes actually read.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/dirread.c
+.B \*9/src/lib9/dirread.c
.SH SEE ALSO
.IR intro (3),
.IR open (3),
diff --git a/man/man3/disk.3 b/man/man3/disk.3
index 30e4440..bec50f2 100644
--- a/man/man3/disk.3
+++ b/man/man3/disk.3
@@ -163,7 +163,7 @@
systems; the numbers bear little or no resemblance
to reality.
.SH SOURCE
-.B /usr/local/plan9/src/libdisk/disk.c
+.B \*9/src/libdisk/disk.c
.SH SEE ALSO
Plan 9's
\fIfloppy\fR(3) and \fIsd\fR(3)
diff --git a/man/man3/draw.3 b/man/man3/draw.3
index be5e6c6..39f2b81 100644
--- a/man/man3/draw.3
+++ b/man/man3/draw.3
@@ -805,7 +805,7 @@
.I on
is non-zero.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR stringsize (3),
diff --git a/man/man3/dsa.3 b/man/man3/dsa.3
index f95ca77..c29d287 100644
--- a/man/man3/dsa.3
+++ b/man/man3/dsa.3
@@ -121,7 +121,7 @@
.I dsasigfree
are provided to manage signature storage.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR aes (3),
diff --git a/man/man3/dup.3 b/man/man3/dup.3
index 3c7312d..a9378dc 100644
--- a/man/man3/dup.3
+++ b/man/man3/dup.3
@@ -26,7 +26,7 @@
(closing any old file associated with
.IR newfd ).
.SH SOURCE
-.B /usr/local/plan9/src/lib9/dup.c
+.B \*9/src/lib9/dup.c
.SH DIAGNOSTICS
Sets
.IR errstr .
diff --git a/man/man3/elgamal.3 b/man/man3/elgamal.3
index 204b85e..2fc75ac 100644
--- a/man/man3/elgamal.3
+++ b/man/man3/elgamal.3
@@ -111,7 +111,7 @@
.I egsigfree
are provided to manage signature storage.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR aes (3),
diff --git a/man/man3/encode.3 b/man/man3/encode.3
index 44c6afd..fde8296 100644
--- a/man/man3/encode.3
+++ b/man/man3/encode.3
@@ -80,6 +80,6 @@
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9/u32.c
+.B \*9/src/lib9/u32.c
.br
-.B /usr/local/plan9/src/lib9/u64.c
+.B \*9/src/lib9/u64.c
diff --git a/man/man3/errstr.3 b/man/man3/errstr.3
index a0e6d3f..3964d8d 100644
--- a/man/man3/errstr.3
+++ b/man/man3/errstr.3
@@ -87,7 +87,7 @@
will reset
.IR errno .
.SH SOURCE
-.B /usr/local/plan9/src/lib9/errstr.c
+.B \*9/src/lib9/errstr.c
.SH DIAGNOSTICS
.I Errstr
always returns 0.
diff --git a/man/man3/event.3 b/man/man3/event.3
index e029981..5991a17 100644
--- a/man/man3/event.3
+++ b/man/man3/event.3
@@ -375,7 +375,7 @@
.B c
is nil, it restores the image to the default arrow.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH "SEE ALSO"
.IR rio (1),
.IR graphics (3),
diff --git a/man/man3/exec.3 b/man/man3/exec.3
index 285af11..2c5b166 100644
--- a/man/man3/exec.3
+++ b/man/man3/exec.3
@@ -103,9 +103,9 @@
(see
.IR notify (3)).
.SH SOURCE
-.B /usr/local/plan9/src/lib9/exec.c
+.B \*9/src/lib9/exec.c
.br
-.B /usr/local/plan9/src/lib9/execl.c
+.B \*9/src/lib9/execl.c
.SH SEE ALSO
.IR prof (1),
.IR intro (3),
diff --git a/man/man3/exits.3 b/man/man3/exits.3
index 95e2b93..62ea8d3 100644
--- a/man/man3/exits.3
+++ b/man/man3/exits.3
@@ -78,9 +78,9 @@
.I Atexitdont
cancels a previous registration of an exit function.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/atexit.c
+.B \*9/src/lib9/atexit.c
.br
-.B /usr/local/plan9/src/lib9/_exits.c
+.B \*9/src/lib9/_exits.c
.SH "SEE ALSO"
.IR fork (2),
.IR wait (3)
diff --git a/man/man3/fcall.3 b/man/man3/fcall.3
index 1143217..fe696a4 100644
--- a/man/man3/fcall.3
+++ b/man/man3/fcall.3
@@ -349,7 +349,7 @@
The return value is 0 for end of file, or -1 for error; it does not return
partial messages.
.SH SOURCE
-.B /usr/local/plan9/src/lib9
+.B \*9/src/lib9
.SH SEE ALSO
.IR intro (3),
.IR 9p (3),
diff --git a/man/man3/flate.3 b/man/man3/flate.3
index 8383539..e7594b3 100644
--- a/man/man3/flate.3
+++ b/man/man3/flate.3
@@ -204,4 +204,4 @@
.I adler
(that is, its value after seeing zero bytes) should be 1.
.SH SOURCE
-.B /usr/local/plan9/src/libflate
+.B \*9/src/libflate
diff --git a/man/man3/fmtinstall.3 b/man/man3/fmtinstall.3
index 8a437f1..d279bc8 100644
--- a/man/man3/fmtinstall.3
+++ b/man/man3/fmtinstall.3
@@ -362,7 +362,7 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9/fmt
+.B \*9/src/lib9/fmt
.SH SEE ALSO
.IR print (3),
.IR utf (7),
diff --git a/man/man3/frame.3 b/man/man3/frame.3
index db004df..7dc9bc1 100644
--- a/man/man3/frame.3
+++ b/man/man3/frame.3
@@ -355,7 +355,7 @@
and
.IR p1 .
.SH SOURCE
-.B /usr/local/plan9/src/libframe
+.B \*9/src/libframe
.SH SEE ALSO
.IR graphics (3),
.IR draw (3),
diff --git a/man/man3/genrandom.3 b/man/man3/genrandom.3
index 761df86..bb6118c 100644
--- a/man/man3/genrandom.3
+++ b/man/man3/genrandom.3
@@ -38,6 +38,6 @@
(see
.IR mp (3)).
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3)
diff --git a/man/man3/get9root.3 b/man/man3/get9root.3
index 134f305..9c9ed26 100644
--- a/man/man3/get9root.3
+++ b/man/man3/get9root.3
@@ -13,7 +13,7 @@
char* unsharp(char *path)
.SH DESCRIPTION
This tree of Plan 9 software is conventionally installed in
-.B /usr/local/plan9
+.B \*9
but may be installed in other places (for example, users without
the ability to write to
.B /usr/local
@@ -25,7 +25,7 @@
returns a static pointer to the pathname of root, first checking
.B $PLAN9
and defaulting to
-.BR /usr/local/plan9 .
+.BR \*9 .
.PP
The lack of a fixed location for the Plan 9 tree
makes it difficult to hard-code paths
@@ -65,7 +65,7 @@
fd = open(unsharp(buf), OREAD);
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9/getns.c
+.B \*9/src/lib9/getns.c
.SH SEE ALSO
.IR intro (4)
.SH BUGS
diff --git a/man/man3/getcallerpc.3 b/man/man3/getcallerpc.3
index 8ad95a3..4815bc9 100644
--- a/man/man3/getcallerpc.3
+++ b/man/man3/getcallerpc.3
@@ -31,7 +31,7 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9/
+.B \*9/src/lib9/
.SH BUGS
The
.I firstarg
diff --git a/man/man3/getenv.3 b/man/man3/getenv.3
index 4be92ec..a6d5795 100644
--- a/man/man3/getenv.3
+++ b/man/man3/getenv.3
@@ -30,7 +30,7 @@
to
.IR val .
.SH SOURCE
-.B /usr/local/plan9/src/lib9/getenv.c
+.B \*9/src/lib9/getenv.c
.SH DIAGNOSTICS
Sets
.IR errstr .
diff --git a/man/man3/getfields.3 b/man/man3/getfields.3
index 7805290..feaf10d 100644
--- a/man/man3/getfields.3
+++ b/man/man3/getfields.3
@@ -87,7 +87,7 @@
.I delims
set to \f5"\et\er\en "\fP.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/tokenize.c
+.B \*9/src/lib9/tokenize.c
.SH SEE ALSO
.I strtok
in
diff --git a/man/man3/getns.3 b/man/man3/getns.3
index cc76f2b..b2e03f9 100644
--- a/man/man3/getns.3
+++ b/man/man3/getns.3
@@ -17,6 +17,6 @@
.IR intro (4)
for details.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/getns.c
+.B \*9/src/lib9/getns.c
.SH SEE ALSO
.IR intro (4)
diff --git a/man/man3/getsnarf.3 b/man/man3/getsnarf.3
index a90d595..1745634 100644
--- a/man/man3/getsnarf.3
+++ b/man/man3/getsnarf.3
@@ -34,4 +34,4 @@
.I putsnarf
will convert as necessary.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw/x11-itrans.c
+.B \*9/src/libdraw/x11-itrans.c
diff --git a/man/man3/getuser.3 b/man/man3/getuser.3
index a7ada46..41e78e3 100644
--- a/man/man3/getuser.3
+++ b/man/man3/getuser.3
@@ -47,6 +47,6 @@
.I sysname
caches the string, deriving the host name only once.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/getuser.c
+.B \*9/src/lib9/getuser.c
.br
-.B /usr/local/plan9/src/lib9/sysname.c
+.B \*9/src/lib9/sysname.c
diff --git a/man/man3/getwd.3 b/man/man3/getwd.3
index d9aa02b..b68eea4 100644
--- a/man/man3/getwd.3
+++ b/man/man3/getwd.3
@@ -21,7 +21,7 @@
.I size
bytes in the buffer provided.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/getwd.c
+.B \*9/src/lib9/getwd.c
.SH "SEE ALSO"
.IR pwd (1),
.SH DIAGNOSTICS
diff --git a/man/man3/graphics.3 b/man/man3/graphics.3
index 971303e..7e3a70b 100644
--- a/man/man3/graphics.3
+++ b/man/man3/graphics.3
@@ -617,7 +617,7 @@
.SH FILES
.BR /lib/font/bit " directory of fonts
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH "SEE ALSO"
.IR rio (1),
.IR addpt (3),
diff --git a/man/man3/html.3 b/man/man3/html.3
index be239f7..7dc486a 100644
--- a/man/man3/html.3
+++ b/man/man3/html.3
@@ -1409,7 +1409,7 @@
.B FRvscrollauto
(the frame gets a vertical scrollbar only if required).
.SH SOURCE
-.B /usr/local/plan9/src/libhtml
+.B \*9/src/libhtml
.SH SEE ALSO
.IR fmt (1)
.PP
diff --git a/man/man3/intmap.3 b/man/man3/intmap.3
index 443f4e4..d0d3a82 100644
--- a/man/man3/intmap.3
+++ b/man/man3/intmap.3
@@ -120,7 +120,7 @@
and
.BR Reqpool s.
.SH SOURCE
-.B /usr/local/plan9/src/lib9p/intmap.c
+.B \*9/src/lib9p/intmap.c
.SH SEE ALSO
.IR 9p (3),
.IR 9pfid (3).
diff --git a/man/man3/ioproc.3 b/man/man3/ioproc.3
index 5c3ebda..2d5bbd7 100644
--- a/man/man3/ioproc.3
+++ b/man/man3/ioproc.3
@@ -185,7 +185,7 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/src/libthread
+.B \*9/src/libthread
.SH SEE ALSO
.IR dial (3),
.IR open (3),
diff --git a/man/man3/ip.3 b/man/man3/ip.3
index c31c294..2d9e828 100644
--- a/man/man3/ip.3
+++ b/man/man3/ip.3
@@ -338,6 +338,6 @@
the remote address if the network is
point to point.
.SH SOURCE
-.B /usr/local/plan9/src/libip
+.B \*9/src/libip
.SH SEE ALSO
.IR print (3)
diff --git a/man/man3/isalpharune.3 b/man/man3/isalpharune.3
index 78bc4e6..7b5cf30 100644
--- a/man/man3/isalpharune.3
+++ b/man/man3/isalpharune.3
@@ -45,7 +45,7 @@
.PP
The case-conversion routines return the character unchanged if it has no case.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/utf/runetype.c
+.B \*9/src/lib9/utf/runetype.c
.SH "SEE ALSO
.IR isalpha (3) ,
.IR "The Unicode Standard" .
diff --git a/man/man3/keyboard.3 b/man/man3/keyboard.3
index f341e50..4641b86 100644
--- a/man/man3/keyboard.3
+++ b/man/man3/keyboard.3
@@ -84,7 +84,7 @@
structure.
.PP
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR draw (3),
diff --git a/man/man3/lock.3 b/man/man3/lock.3
index 9034229..4308e36 100644
--- a/man/man3/lock.3
+++ b/man/man3/lock.3
@@ -193,9 +193,9 @@
.B Ref
and returns zero if the resulting value is zero, non-zero otherwise.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/qlock.c
+.B \*9/src/lib9/qlock.c
.br
-.B /usr/local/plan9/src/libthread
+.B \*9/src/libthread
.SH BUGS
.B Locks
are not always spin locks.
diff --git a/man/man3/mach-cmd.3 b/man/man3/mach-cmd.3
index 202ca39..ac6b3bb 100644
--- a/man/man3/mach-cmd.3
+++ b/man/man3/mach-cmd.3
@@ -131,7 +131,7 @@
.I attachargs
fills them in as best it can.
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH "SEE ALSO
.IR mach (3),
.IR mach-file (3),
diff --git a/man/man3/mach-file.3 b/man/man3/mach-file.3
index 17911ec..19a10b8 100644
--- a/man/man3/mach-file.3
+++ b/man/man3/mach-file.3
@@ -164,7 +164,7 @@
.IR malloc (3))
when no longer needed.
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH "SEE ALSO"
.IR mach (3),
.IR mach-map (3)
diff --git a/man/man3/mach-map.3 b/man/man3/mach-map.3
index 2fc8cc7..45f48e7 100644
--- a/man/man3/mach-map.3
+++ b/man/man3/mach-map.3
@@ -395,7 +395,7 @@
.I rput
function families as necessary.
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH "SEE ALSO"
.IR mach (3),
.IR mach-file (3)
diff --git a/man/man3/mach-stack.3 b/man/man3/mach-stack.3
index caae6bf..d75f641 100644
--- a/man/man3/mach-stack.3
+++ b/man/man3/mach-stack.3
@@ -178,7 +178,7 @@
print("no stack frame\n");
.RE
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH SEE ALSO
.IR mach (3)
.SH BUGS
diff --git a/man/man3/mach-swap.3 b/man/man3/mach-swap.3
index 50271f6..eb6091f 100644
--- a/man/man3/mach-swap.3
+++ b/man/man3/mach-swap.3
@@ -112,6 +112,6 @@
and low 32-bits are in
.IR lo .
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH "SEE ALSO"
.IR mach (3)
diff --git a/man/man3/mach-symbol.3 b/man/man3/mach-symbol.3
index c74ae8e..e14a7b2 100644
--- a/man/man3/mach-symbol.3
+++ b/man/man3/mach-symbol.3
@@ -369,7 +369,7 @@
in the system error buffer where it is available via
.IR errstr .
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH "SEE ALSO"
.IR mach (3),
.IR mach-file (3),
diff --git a/man/man3/mach.3 b/man/man3/mach.3
index 1814789..9c065d0 100644
--- a/man/man3/mach.3
+++ b/man/man3/mach.3
@@ -87,7 +87,7 @@
.IR Mach-symbol (3)
describes the interface to debugging symbol information.
.SH SOURCE
-.B /usr/local/plan9/src/libmach
+.B \*9/src/libmach
.SH "SEE ALSO
.IR mach-file (3),
.IR mach-map (3),
diff --git a/man/man3/malloc.3 b/man/man3/malloc.3
index 01493c7..8b79247 100644
--- a/man/man3/malloc.3
+++ b/man/man3/malloc.3
@@ -126,9 +126,9 @@
to provide more useful information about
the source of allocation.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/malloc.c
+.B \*9/src/lib9/malloc.c
.br
-.B /usr/local/plan9/src/lib9/malloctag.c
+.B \*9/src/lib9/malloctag.c
.SH SEE ALSO
.I trump
(in
diff --git a/man/man3/matrix.3 b/man/man3/matrix.3
index 87ba34c..7291725 100644
--- a/man/man3/matrix.3
+++ b/man/man3/matrix.3
@@ -345,6 +345,6 @@
.I z
coordinates.
.SH SOURCE
-.B /usr/local/plan9/src/libgeometry/matrix.c
+.B \*9/src/libgeometry/matrix.c
.SH "SEE ALSO
.IR arith3 (3)
diff --git a/man/man3/memdraw.3 b/man/man3/memdraw.3
index 4b59428..969fee0 100644
--- a/man/man3/memdraw.3
+++ b/man/man3/memdraw.3
@@ -433,7 +433,7 @@
.I iprint
prints to a serial line rather than the screen, for obvious reasons.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR addpt (3),
.IR color (3),
diff --git a/man/man3/memlayer.3 b/man/man3/memlayer.3
index 90e63e5..57ab8af 100644
--- a/man/man3/memlayer.3
+++ b/man/man3/memlayer.3
@@ -296,7 +296,7 @@
(see
.IR image (7)).
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR memdraw (3),
diff --git a/man/man3/memory.3 b/man/man3/memory.3
index 746dc7d..51e5447 100644
--- a/man/man3/memory.3
+++ b/man/man3/memory.3
@@ -105,9 +105,9 @@
.IR s .
.SH SOURCE
All these routines have portable C implementations in
-.BR /usr/local/plan9/src/lib9 .
+.BR \*9/src/lib9 .
.\" Most also have machine-dependent assembly language implementations in
-.\" .BR /usr/local/plan9/lib9/$objtype .
+.\" .BR \*9/lib9/$objtype .
.SH SEE ALSO
.IR strcat (3)
.SH BUGS
diff --git a/man/man3/mouse.3 b/man/man3/mouse.3
index 8d2eca2..216c72b 100644
--- a/man/man3/mouse.3
+++ b/man/man3/mouse.3
@@ -240,7 +240,7 @@
restoring the display when the menu is removed.
.PP
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR draw (3),
diff --git a/man/man3/mousescrollsize.3 b/man/man3/mousescrollsize.3
index 915a6bb..9814735 100644
--- a/man/man3/mousescrollsize.3
+++ b/man/man3/mousescrollsize.3
@@ -33,7 +33,7 @@
.IR acme (1)
to set their scrolling behavior.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw/scroll.c
+.B \*9/src/libdraw/scroll.c
.SH SEE ALSO
.IR 9term (1),
.IR acme (1)
diff --git a/man/man3/mp.3 b/man/man3/mp.3
index 9a4ed84..c4ecb37 100644
--- a/man/man3/mp.3
+++ b/man/man3/mp.3
@@ -580,4 +580,4 @@
returns the factorial of
.IR n .
.SH SOURCE
-.B /usr/local/plan9/src/libmp
+.B \*9/src/libmp
diff --git a/man/man3/mux.3 b/man/man3/mux.3
index cc8de4d..e36763d 100644
--- a/man/man3/mux.3
+++ b/man/man3/mux.3
@@ -131,7 +131,7 @@
that need to remain active.
.SH EXAMPLE
See
-.B /usr/local/plan9/src/lib9pclient/fs.c
+.B \*9/src/lib9pclient/fs.c
for an example of using
.I libmux
with
@@ -139,7 +139,7 @@
(see
.IR intro (9p)).
.SH SOURCE
-.B /usr/local/plan9/src/libmux
+.B \*9/src/libmux
.SH SEE ALSO
.IR thread (3),
.IR intro (9p)
diff --git a/man/man3/nan.3 b/man/man3/nan.3
index 69777e5..9590579 100644
--- a/man/man3/nan.3
+++ b/man/man3/nan.3
@@ -41,4 +41,4 @@
returns true if its first argument is infinity
with the same sign as the second argument.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/nan.c
+.B \*9/src/lib9/nan.c
diff --git a/man/man3/needstack.3 b/man/man3/needstack.3
index 31588f6..cf13809 100644
--- a/man/man3/needstack.3
+++ b/man/man3/needstack.3
@@ -50,7 +50,7 @@
The X Window library implementation of
.I XLookupString
allocates some very large buffers on the stack, so
-.B /usr/local/plan9/src/libdraw/x11-itrans.c
+.B \*9/src/libdraw/x11-itrans.c
calls
.B needstack(20*1024)
before making calls to
@@ -62,8 +62,8 @@
does not allocate a large enough stack, the problem is diagnosed
immediately rather than left to corrupt memory.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/needstack.c
+.B \*9/src/lib9/needstack.c
.br
-.B /usr/local/plan9/src/libthread
+.B \*9/src/libthread
.SH SEE ALSO
.IR thread (3)
diff --git a/man/man3/notify.3 b/man/man3/notify.3
index 41b8452..616c655 100644
--- a/man/man3/notify.3
+++ b/man/man3/notify.3
@@ -221,7 +221,7 @@
.RE
.PP
See
-.B /usr/local/plan9/src/lib9/await.c
+.B \*9/src/lib9/await.c
(sic)
for the full list.
.PP
@@ -229,9 +229,9 @@
.B sys:
are usually generated by the operating system.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/notify.c
+.B \*9/src/lib9/notify.c
.br
-.B /usr/local/plan9/src/lib9/atnotify.c
+.B \*9/src/lib9/atnotify.c
.SH SEE ALSO
.IR intro (3),
.I notejmp
diff --git a/man/man3/open.3 b/man/man3/open.3
index b964cc9..51ff2cd 100644
--- a/man/man3/open.3
+++ b/man/man3/open.3
@@ -138,7 +138,7 @@
.I close
allows the file descriptor to be reused.
.SH SOURCE
-.B /usr/local/plan9/src/lib9
+.B \*9/src/lib9
.SH SEE ALSO
.IR intro (3),
.IR stat (3)
diff --git a/man/man3/opentemp.3 b/man/man3/opentemp.3
index 23e77d3..6177b44 100644
--- a/man/man3/opentemp.3
+++ b/man/man3/opentemp.3
@@ -41,7 +41,7 @@
.I opentemp
will never return the same name.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/opentemp.c
+.B \*9/src/lib9/opentemp.c
.SH "SEE ALSO
.I create
in
diff --git a/man/man3/pipe.3 b/man/man3/pipe.3
index 993e33a..10decb6 100644
--- a/man/man3/pipe.3
+++ b/man/man3/pipe.3
@@ -57,7 +57,7 @@
will return 0 bytes. Writes to a pipe with no reader will generate a note
.BR "sys: write on closed pipe" .
.SH SOURCE
-.B /usr/local/plan9/src/lib9/pipe.c
+.B \*9/src/lib9/pipe.c
.SH SEE ALSO
.IR intro (3),
.IR read (3)
diff --git a/man/man3/plumb.3 b/man/man3/plumb.3
index c988bba..970919a 100644
--- a/man/man3/plumb.3
+++ b/man/man3/plumb.3
@@ -259,7 +259,7 @@
.I lib9pclient
that preserves the exact error details.
.SH SOURCE
-.B /usr/local/plan9/src/libplumb
+.B \*9/src/libplumb
.SH SEE ALSO
.IR plumb (1),
.IR event (3),
diff --git a/man/man3/post9pservice.3 b/man/man3/post9pservice.3
index 74404c1..9ea6945 100644
--- a/man/man3/post9pservice.3
+++ b/man/man3/post9pservice.3
@@ -26,4 +26,4 @@
.IR intro (4),
.IR 9pserve (4)
.SH SOURCE
-.B /usr/local/plan9/src/lib9/post9p.c
+.B \*9/src/lib9/post9p.c
diff --git a/man/man3/postnote.3 b/man/man3/postnote.3
index 535c7e6..1bf10ee 100644
--- a/man/man3/postnote.3
+++ b/man/man3/postnote.3
@@ -38,7 +38,7 @@
If the write is successful, zero is returned.
Otherwise \-1 is returned.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/postnote.c
+.B \*9/src/lib9/postnote.c
.SH "SEE ALSO"
.IR notify (3),
.IR intro (3)
diff --git a/man/man3/prime.3 b/man/man3/prime.3
index 9a59573..01a308e 100644
--- a/man/man3/prime.3
+++ b/man/man3/prime.3
@@ -91,7 +91,7 @@
can later confirm the computation. Be patient; this is a
slow algorithm.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR aes (3)
.IR blowfish (3),
diff --git a/man/man3/proto.3 b/man/man3/proto.3
index ab8d304..fcd3904 100644
--- a/man/man3/proto.3
+++ b/man/man3/proto.3
@@ -125,7 +125,7 @@
.B /sys/lib/sysconfig/proto/portproto
generic prototype file.
.SH SOURCE
-.B /usr/local/plan9/src/libdisk/proto.c
+.B \*9/src/libdisk/proto.c
.SH SEE ALSO
.IR mk9660 (8),
Plan 9's \fImkfs\fR(8)
diff --git a/man/man3/pushtls.3 b/man/man3/pushtls.3
index b92dcb6..5af31d7 100644
--- a/man/man3/pushtls.3
+++ b/man/man3/pushtls.3
@@ -173,7 +173,7 @@
.SH SOURCE
.\" .B /sys/src/libc/9sys/pushtls.c
.\" .br
-.B /usr/local/plan9/src/libsec/port
+.B \*9/src/libsec/port
.SH "SEE ALSO"
.IR dial (3),
.IR thumbprint (7);
diff --git a/man/man3/qball.3 b/man/man3/qball.3
index 8d27f21..5929ece 100644
--- a/man/man3/qball.3
+++ b/man/man3/qball.3
@@ -66,7 +66,7 @@
the nearest point also on the plane through the sphere's center
and normal to the axis.
.SH SOURCE
-.B /usr/local/plan9/src/libgeometry/qball.c
+.B \*9/src/libgeometry/qball.c
.SH SEE ALSO
.IR quaternion (3)
.br
diff --git a/man/man3/quaternion.3 b/man/man3/quaternion.3
index 31f4ab5..941df24 100644
--- a/man/man3/quaternion.3
+++ b/man/man3/quaternion.3
@@ -146,7 +146,7 @@
This is just a rotation about the same axis by half the angle.
.PD
.SH SOURCE
-.B /usr/local/plan9/src/libgeometry/quaternion.c
+.B \*9/src/libgeometry/quaternion.c
.SH SEE ALSO
.IR matrix (3),
.IR qball (3)
diff --git a/man/man3/quote.3 b/man/man3/quote.3
index 5a4c8d1..7e547c0 100644
--- a/man/man3/quote.3
+++ b/man/man3/quote.3
@@ -157,9 +157,9 @@
.IR print (3)
format strings.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/quote.c
+.B \*9/src/lib9/quote.c
.br
-.B /usr/local/plan9/src/lib9/fmt/fmtquote.c
+.B \*9/src/lib9/fmt/fmtquote.c
.SH "SEE ALSO
.IR rc (1),
.IR malloc (3),
diff --git a/man/man3/rand.3 b/man/man3/rand.3
index 25ea8a4..d6032d8 100644
--- a/man/man3/rand.3
+++ b/man/man3/rand.3
@@ -156,9 +156,9 @@
.IR x ,
.RI 0≤ x < val ≤ 2\u\s732\s10\d-1.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/
+.B \*9/src/lib9/
.br
-.B /usr/local/plan9/src/libsec/port/
+.B \*9/src/libsec/port/
.SH "SEE ALSO
.\" .IR cons (3),
.IR mp (3)
diff --git a/man/man3/rc4.3 b/man/man3/rc4.3
index ba848d9..026c835 100644
--- a/man/man3/rc4.3
+++ b/man/man3/rc4.3
@@ -41,7 +41,7 @@
.I RC4state
structure keeps track of the algorithm.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR aes (3),
diff --git a/man/man3/read.3 b/man/man3/read.3
index 34e65c6..cd4dbf3 100644
--- a/man/man3/read.3
+++ b/man/man3/read.3
@@ -81,7 +81,7 @@
read and write operations on the same file descriptor
without interference.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/readn.c
+.B \*9/src/lib9/readn.c
.SH SEE ALSO
.IR intro (3),
.IR open (3),
diff --git a/man/man3/readcolmap.3 b/man/man3/readcolmap.3
index 51753c5..82ccdcfd 100644
--- a/man/man3/readcolmap.3
+++ b/man/man3/readcolmap.3
@@ -69,7 +69,7 @@
which is described in
.IR color (7).
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH "SEE ALSO"
.IR graphics (3),
.IR draw (3),
diff --git a/man/man3/regexp.3 b/man/man3/regexp.3
index 2d3c1a2..06733aa 100644
--- a/man/man3/regexp.3
+++ b/man/man3/regexp.3
@@ -194,7 +194,7 @@
.I match
array elements should be used.
.SH SOURCE
-.B /usr/local/plan9/src/libregexp
+.B \*9/src/libregexp
.SH "SEE ALSO"
.IR grep (1)
.SH DIAGNOSTICS
diff --git a/man/man3/regexp9.3 b/man/man3/regexp9.3
index dc5e434..12e9b71 100644
--- a/man/man3/regexp9.3
+++ b/man/man3/regexp9.3
@@ -194,7 +194,7 @@
.I match
array elements should be used.
.SH SOURCE
-.B /usr/local/plan9/src/libregexp
+.B \*9/src/libregexp
.SH "SEE ALSO"
.IR grep (1)
.SH DIAGNOSTICS
diff --git a/man/man3/rfork.3 b/man/man3/rfork.3
index 12cedda..d1d383c 100644
--- a/man/man3/rfork.3
+++ b/man/man3/rfork.3
@@ -156,7 +156,7 @@
is equivalent to calling
.IR fork (2).
.SH SOURCE
-.B /usr/local/plan9/src/lib9/rfork.c
+.B \*9/src/lib9/rfork.c
.SH DIAGNOSTICS
.I Rfork
sets
diff --git a/man/man3/rsa.3 b/man/man3/rsa.3
index c0b0fe9..0c1396a 100644
--- a/man/man3/rsa.3
+++ b/man/man3/rsa.3
@@ -239,7 +239,7 @@
};
.EE
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR mp (3),
.IR aes (3),
diff --git a/man/man3/rune.3 b/man/man3/rune.3
index bc3dbe8..62c89dd 100644
--- a/man/man3/rune.3
+++ b/man/man3/rune.3
@@ -182,9 +182,9 @@
returns
.IR s1 .
.SH SOURCE
-.B /usr/local/plan9/src/lib9/utf/rune.c
+.B \*9/src/lib9/utf/rune.c
.br
-.B /usr/local/plan9/src/lib9/utf/utfrune.c
+.B \*9/src/lib9/utf/utfrune.c
.SH SEE ALSO
.IR utf (7),
.IR tcs (1)
diff --git a/man/man3/runestrcat.3 b/man/man3/runestrcat.3
index dadcbcd..347c721 100644
--- a/man/man3/runestrcat.3
+++ b/man/man3/runestrcat.3
@@ -58,7 +58,7 @@
the corresponding functions in
.IR strcat (3).
.SH SOURCE
-.B /usr/local/plan9/src/lib9
+.B \*9/src/lib9
.SH SEE ALSO
.IR memory (3),
.IR rune (3),
diff --git a/man/man3/scsi.3 b/man/man3/scsi.3
index 5b6f24c..d4f0d04 100644
--- a/man/man3/scsi.3
+++ b/man/man3/scsi.3
@@ -178,7 +178,7 @@
consulted by
.BR scsierror .
.SH SOURCE
-.B /usr/local/plan9/src/libdisk/scsi.c
+.B \*9/src/libdisk/scsi.c
.SH SEE ALSO
Plan 9's
\fIsd\fR(3) and
diff --git a/man/man3/sechash.3 b/man/man3/sechash.3
index 9f9f58e..a6f2c0e 100644
--- a/man/man3/sechash.3
+++ b/man/man3/sechash.3
@@ -140,7 +140,7 @@
.IR malloc (3)'d
object.
.SH SOURCE
-.B /usr/local/plan9/src/libsec
+.B \*9/src/libsec
.SH SEE ALSO
.IR aes (3),
.IR blowfish (3),
diff --git a/man/man3/seek.3 b/man/man3/seek.3
index 2ce4cff..e6435f4 100644
--- a/man/man3/seek.3
+++ b/man/man3/seek.3
@@ -37,7 +37,7 @@
Seeking in a directory is not allowed.
Seeking in a pipe is a no-op.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/seek.c
+.B \*9/src/lib9/seek.c
.SH SEE ALSO
.IR intro (3),
.IR open (3)
diff --git a/man/man3/sendfd.3 b/man/man3/sendfd.3
index 8090dfc..771bd9a 100644
--- a/man/man3/sendfd.3
+++ b/man/man3/sendfd.3
@@ -49,7 +49,7 @@
between processes, but the kernel structure it represents
will not.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/sendfd.c
+.B \*9/src/lib9/sendfd.c
.SH SEE ALSO
.IR socketpair (2),
.I sendmsg
diff --git a/man/man3/setjmp.3 b/man/man3/setjmp.3
index 0ed7845..e2af559 100644
--- a/man/man3/setjmp.3
+++ b/man/man3/setjmp.3
@@ -86,7 +86,7 @@
}
.EE
.SH SOURCE
-.B /usr/local/plan9/src/lib9/jmp.c
+.B \*9/src/lib9/jmp.c
.SH SEE ALSO
.IR notify (3)
.SH BUGS
diff --git a/man/man3/sleep.3 b/man/man3/sleep.3
index da2e695..7df6c33 100644
--- a/man/man3/sleep.3
+++ b/man/man3/sleep.3
@@ -37,7 +37,7 @@
The return value is the amount of time previously remaining in
the alarm clock.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/sleep.c
+.B \*9/src/lib9/sleep.c
.SH SEE ALSO
.IR intro (3)
.SH DIAGNOSTICS
diff --git a/man/man3/stat.3 b/man/man3/stat.3
index 03f3abe..ff2ac25 100644
--- a/man/man3/stat.3
+++ b/man/man3/stat.3
@@ -277,7 +277,7 @@
.I stat
to retrieve the initial values first.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/dirstat.c
+.B \*9/src/lib9/dirstat.c
.SH SEE ALSO
.IR intro (3),
.IR fcall (3),
diff --git a/man/man3/strcat.3 b/man/man3/strcat.3
index 8fcf2ca..2baa909 100644
--- a/man/man3/strcat.3
+++ b/man/man3/strcat.3
@@ -242,7 +242,7 @@
.I Cistrstr
operates analogously, but ignores ASCII case differences when comparing strings.
.SH SOURCE
-.B /usr/local/plan9/src/lib9
+.B \*9/src/lib9
.SH SEE ALSO
.IR memory (3),
.IR rune (3),
diff --git a/man/man3/string.3 b/man/man3/string.3
index 0b39d5c..e17906b 100644
--- a/man/man3/string.3
+++ b/man/man3/string.3
@@ -266,6 +266,6 @@
has been read.
The input stack has a maximum depth of 32 nested include files.
.SH SOURCE
-.B /usr/local/plan9/src/libString
+.B \*9/src/libString
.SH SEE ALSO
.IR bio (3)
diff --git a/man/man3/stringsize.3 b/man/man3/stringsize.3
index 448df99..cbf1545 100644
--- a/man/man3/stringsize.3
+++ b/man/man3/stringsize.3
@@ -55,7 +55,7 @@
.SH FILES
.BR /lib/font/bit " directory of fonts
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH "SEE ALSO"
.IR addpt (3),
.IR cachechars (3),
diff --git a/man/man3/subfont.3 b/man/man3/subfont.3
index 4933c0d..b3ca89c 100644
--- a/man/man3/subfont.3
+++ b/man/man3/subfont.3
@@ -222,7 +222,7 @@
.B /lib/font/bit
bitmap font file tree
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR allocimage (3),
diff --git a/man/man3/sysfatal.3 b/man/man3/sysfatal.3
index ea1a3df..615e39f 100644
--- a/man/man3/sysfatal.3
+++ b/man/man3/sysfatal.3
@@ -29,7 +29,7 @@
.B argv0
is null, it is ignored and the following colon and space are suppressed.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/sysfatal.c
+.B \*9/src/lib9/sysfatal.c
.SH "SEE ALSO"
.IR intro (3),
.IR errstr (3),
diff --git a/man/man3/thread.3 b/man/man3/thread.3
index 05c1902..50bcb4e 100644
--- a/man/man3/thread.3
+++ b/man/man3/thread.3
@@ -643,15 +643,15 @@
.\" group with
.\" .IR rfork .
.SH FILES
-.B /usr/local/plan9/acid/thread
+.B \*9/acid/thread
contains useful
.IR acid (1)
functions for debugging threaded programs.
.PP
-.B /usr/local/plan9/src/libthread/test
+.B \*9/src/libthread/test
contains some example programs.
.SH SOURCE
-.B /usr/local/plan9/src/libthread
+.B \*9/src/libthread
.SH SEE ALSO
.IR intro (3),
.IR ioproc (3)
@@ -661,8 +661,8 @@
to link the thread library, resulting in the unintelligible error:
.IP
.EX
-/usr/local/plan9/lib/lib9.a(main.o)(.text+0x17): In function `main':
-/usr/local/plan9/src/lib9/main.c:10: undefined reference to `p9main'
+\*9/lib/lib9.a(main.o)(.text+0x17): In function `main':
+\*9/src/lib9/main.c:10: undefined reference to `p9main'
.EE
.LP
or similar. To force the thread library to be linked properly in such cases,
diff --git a/man/man3/time.3 b/man/man3/time.3
index 6f3cbcd..9bf2db3 100644
--- a/man/man3/time.3
+++ b/man/man3/time.3
@@ -27,7 +27,7 @@
.BI * tp
is also set to the answer.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/time.c
+.B \*9/src/lib9/time.c
.SH DIAGNOSTICS
These functions set
.IR errstr .
diff --git a/man/man3/udpread.3 b/man/man3/udpread.3
index 3a0a7ea..1141259 100644
--- a/man/man3/udpread.3
+++ b/man/man3/udpread.3
@@ -63,6 +63,6 @@
.I udpwrite
to send a response back to the sender of the original packet.
.SH SOURCE
-.B /usr/local/plan9/src/lib9/udp.c
+.B \*9/src/lib9/udp.c
.SH SEE ALSO
.IR ip (3)
diff --git a/man/man3/wait.3 b/man/man3/wait.3
index 03b55bf..445f29c 100644
--- a/man/man3/wait.3
+++ b/man/man3/wait.3
@@ -135,9 +135,9 @@
returns
.BR -1 .
.SH SOURCE
-.B /usr/local/plan9/src/lib9/wait.c
+.B \*9/src/lib9/wait.c
.PP
-.B /usr/local/plan9/src/lib9/await.c
+.B \*9/src/lib9/await.c
.SH "SEE ALSO"
.IR rfork (3),
.IR exits (3),
diff --git a/man/man3/wctl.3 b/man/man3/wctl.3
index dfed6fc..9addaeb 100644
--- a/man/man3/wctl.3
+++ b/man/man3/wctl.3
@@ -34,6 +34,6 @@
requests that the program's window be moved
above all other windows and given the input focus.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw/x11-init.c
+.B \*9/src/libdraw/x11-init.c
.br
-.B /usr/local/plan9/src/libdraw/x11-wsys.c
+.B \*9/src/libdraw/x11-wsys.c
diff --git a/man/man3/window.3 b/man/man3/window.3
index 6f14060..5825044 100644
--- a/man/man3/window.3
+++ b/man/man3/window.3
@@ -232,7 +232,7 @@
is translated to the origin and there will be no way to discover the
actual screen position of the window unless it is recorded separately.
.SH SOURCE
-.B /usr/local/plan9/src/libdraw
+.B \*9/src/libdraw
.SH SEE ALSO
.IR graphics (3),
.IR draw (3),
diff --git a/man/man4/9pserve.4 b/man/man4/9pserve.4
index 81cfc26..510c16e 100644
--- a/man/man4/9pserve.4
+++ b/man/man4/9pserve.4
@@ -43,4 +43,4 @@
.IR intro (4),
.IR intro (9p)
.SH SOURCE
-.B /usr/local/plan9/src/cmd/9pserve.c
+.B \*9/src/cmd/9pserve.c
diff --git a/man/man4/acme.4 b/man/man4/acme.4
index f6a4853..7d5f248 100644
--- a/man/man4/acme.4
+++ b/man/man4/acme.4
@@ -400,7 +400,7 @@
.B tag
is always appended; the file offset is ignored.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/acme
+.B \*9/src/cmd/acme
.SH SEE ALSO
.IR rio (1),
.IR acme (1)
diff --git a/man/man4/plumber.4 b/man/man4/plumber.4
index 681bd5e..95259a0 100644
--- a/man/man4/plumber.4
+++ b/man/man4/plumber.4
@@ -101,7 +101,7 @@
.B /usr/$user/lib/plumbing
default rules file
.TP
-.B /usr/local/plan9/plumb
+.B \*9/plumb
directory to search for files in
.B include
statements
@@ -110,7 +110,7 @@
mount name for
.IR plumber (4).
.SH SOURCE
-.B /usr/local/plan9/src/cmd/plumb
+.B \*9/src/cmd/plumb
.SH "SEE ALSO"
.IR plumb (1),
.IR plumb (3),
diff --git a/man/man4/ramfs.4 b/man/man4/ramfs.4
index 32405de..25ae4bf 100644
--- a/man/man4/ramfs.4
+++ b/man/man4/ramfs.4
@@ -44,7 +44,7 @@
to write a user-level file server.
It can also be used to provide high-performance temporary files.
.SH SOURCE
-.B /usr/local/plan9/src/cmd/ramfs.c
+.B \*9/src/cmd/ramfs.c
.SH "SEE ALSO"
.IR 9p (3),
.IR 9pserve (4)
diff --git a/man/man7/plot.7 b/man/man7/plot.7
index 452ab19..d4550f5 100644
--- a/man/man7/plot.7
+++ b/man/man7/plot.7
@@ -269,6 +269,13 @@
.BR white ,
and
.BR kblack .
+If
+.I string
+begins with a digit, it is taken to be
+a 32-bit number specifying 8 bit each of red, green, blue, and alpha.
+For example,
+.B 0xFFFF00FF
+denotes solid yellow.
.TP 10
.BI pe " string"
Use
diff --git a/man/man8/mk9660.8 b/man/man8/mk9660.8
index 85edf2d..f2075f9 100644
--- a/man/man8/mk9660.8
+++ b/man/man8/mk9660.8
@@ -222,7 +222,7 @@
-p /sys/lib/sysconfig/srcproto cdimage
.EE
.SH SOURCE
-/usr/local/plan9/src/cmd/9660
+\*9/src/cmd/9660
.SH "SEE ALSO
.IR proto (3)
.\" .SH "SEE ALSO"