



































































%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.09 0
%%Pages: 2
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.09 0
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
/Times-Roman@0 ENC0/Times-Roman RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(CT)72 48 Q -.4(AG)-.93 G 379.28(S\(1\) CT).4 F
-.4(AG)-.93 G(S\(1\)).4 E/F1 9/Times-Bold@0 SF -.18(NA)72 84 S(ME).18 E
F0(ctags - Generates "tags" and \(optionally\) "refs" \214les)108 96 Q
F1(SYNOPSIS)72 112.8 Q/F2 10/Times-Bold@0 SF(ctags)108 124.8 Q F0([)2.5
E F2(-BSstvraT)A F0(])A/F3 10/Times-Italic@0 SF(\214lesnames)2.5 E F0
(...)A F1(DESCRIPTION)72 141.6 Q F3(cta)108 153.6 Q(gs)-.1 E F0 .551(ge\
nerates the "tags" and "refs" \214les from a group of C source \214les.)
3.051 F .55(The "tags" \214le is used by Elvis')5.55 F 1.145
(":tag" command, control-] command, and -t option.)108 165.6 R 1.145
(The "refs" \214le is sometimes used by the)6.145 F F3 -.37(re)3.645 G
(f\(1\)).37 E F0(pro-)3.645 E(gram.)108 177.6 Q 1.656(Each C source \
\214le is scanned for #de\214ne statements and global function de\214ni\
tions.)108 194.4 R 1.656(The name of the)6.656 F .855
(macro or function becomes the name of a tag.)108 206.4 R -.15(Fo)5.855
G 3.355(re).15 G .855
(ach tag, a line is added to the "tags" \214le which con-)-3.355 F
(tains:)108 218.4 Q 2.5(-t)161.5 230.4 S(he name of the tag)-2.5 E 2.5
(-at)161.5 242.4 S(ab character)-2.5 E 2.5(-t)161.5 254.4 S
(he name of the \214le containing the tag)-2.5 E 2.5(-at)161.5 266.4 S
(ab character)-2.5 E 2.5(-aw)161.5 278.4 S
(ay to \214nd the particular line within the \214le.)-2.6 E(The \214len\
ames list will typically be the names of all C source \214les in the cu\
rrent directory)108 295.2 Q 2.5(,l)-.65 G(ik)-2.5 E 2.5(et)-.1 G(his:)
-2.5 E 2.5($c)144 307.2 S(tags -stv *.[ch])-2.5 E F1(OPTIONS)72 324 Q F2
(-B)108 336 Q F0(Normally)26 E 4.107(,c)-.65 G 1.607(tags encloses re)
-4.107 F 1.607(gular e)-.15 F 1.607(xpressions in slashes \(/re)-.15 F
(ge)-.15 E 1.607(xp/\) which causes)-.15 F F3(elvis)4.106 E F0 1.606
(to search)4.106 F 1.011(from the top of the \214le.)144 348 R(The)6.011
E F2(-B)3.511 E F0 1.011(\215ag causes ctags to enclose the re)3.511 F
1.012(gular e)-.15 F 1.012(xpressions in question)-.15 F(marks \(?re)144
360 Q(ge)-.15 E(xp?\) so)-.15 E F3(elvis)2.5 E F0(will search backw)2.5
E(ard from the bottom of the \214le.)-.1 E(This rarely matters.)5 E F2
(-t)108 376.8 Q F0 .402(Include typedefs.)29.34 F 2.902(At)5.402 G .401
(ag will be generated for each user)-2.902 F .401(-de\214ned type.)-.2 F
.401(Also tags will be generated)5.401 F .53(for struct and enum names.)
144 388.8 R -.8(Ty)5.53 G .53(pes are considered to be global if the).8
F 3.03(ya)-.15 G .53(re de\214ned in a header \214le,)-3.03 F
(and static if the)144 400.8 Q 2.5(ya)-.15 G
(re de\214ned in a C source \214le.)-2.5 E F2(-v)108 417.6 Q F0 .637
(Include v)27.67 F .637(ariable declarations.)-.25 F 3.137(At)5.637 G
.637(ag will be generated for each v)-3.137 F .636(ariable, e)-.25 F
.636(xcept for those that are)-.15 F
(declared inside the body of a function.)144 429.6 Q F2(-s)108 446.4 Q
F0 .861(Include static tags.)28.78 F F3(Cta)5.861 E(gs)-.1 E F0 .861(wi\
ll normally put global tags in the "tags" \214le, and silently ignore t\
he)3.361 F .889(static tags.)144 458.4 R .889
(This \215ag causes both global and static tags to be added.)5.889 F
.888(The name of a static tag is)5.888 F .353(generated by pre\214xing \
the name of the declared item with the name of the \214le where it is d\
e\214ned,)144 470.4 R 3.122(with a colon in between.)144 482.4 R -.15
(Fo)8.122 G 5.621(re).15 G 3.121(xample, "static foo\(\){}" in "bar)
-5.771 F 3.121(.c" results in a tag named)-.55 F("bar)144 494.4 Q
(.c:foo".)-.55 E F2(-S)108 511.2 Q F0 .428(Include static tags, b)27.11
F .428(ut mak)-.2 F 2.928(et)-.1 G .428(hem look lik)-2.928 F 2.928(eg)
-.1 G .428(lobal tags.)-2.928 F .428(Most tags-a)5.428 F -.1(wa)-.15 G
.428(re programs don').1 F 2.928(tl)-.18 G(ik)-2.928 E 2.928(et)-.1 G
(he)-2.928 E .125
("\214lename:tagname" tags produced by the -s \215ag, so -S w)144 523.2
R .125(as added as an alternati)-.1 F -.15(ve)-.25 G 5.124(.I).15 G(f)
-5.124 E F3(elvis)2.624 E F0(and)2.624 E F3 -.37(re)2.624 G(f).37 E F0
(are the only programs that read the tags \214le, then you don')144
535.2 Q 2.5(tn)-.18 G(eed -S; otherwise you do.)-2.5 E F2(-r)108 552 Q
F0(This causes)28.23 E F3(cta)2.5 E(gs)-.1 E F0
(to generate both "tags" and "refs".)2.5 E -.4(Wi)5 G(thout).4 E F2(-r)
2.5 E F0 2.5(,i)C 2.5(tw)-2.5 G(ould only generate "tags".)-2.6 E F2(-a)
108 568.8 Q F0 .024(Append to "tags", and maybe "refs".)27.67 F
(Normally)5.025 E(,)-.65 E F3(cta)2.525 E(gs)-.1 E F0 -.15(ove)2.525 G
.025(rwrites these \214les each time it is in).15 F -.2(vo)-.4 G -.1(ke)
.2 G(d.).1 E .744(This \215ag is useful when you ha)144 580.8 R 1.044
-.15(ve t)-.2 H 3.244(om).15 G(an)-3.244 E 3.244<798c>-.15 G .743
(les in the current directory for you to list them on a)-3.244 F
(single command-line; it allo)144 592.8 Q(ws you to split the ar)-.25 E
(guments among se)-.18 E -.15(ve)-.25 G(ral in).15 E -.2(vo)-.4 G
(cations.).2 E F2(-T)108 609.6 Q F0 .47(This \215ag isn')26 F 2.97(ta)
-.18 G -.25(va)-3.17 G .47(ilable on all systems.).25 F .47
(UNIX has it, b)5.47 F .47(ut most others don')-.2 F 2.97(t. The)-.18 F
F2(-T)2.97 E F0 .47(\215ag pre)2.97 F -.15(ve)-.25 G(nts).15 E 1.414
(ctags from generating a "tags" \214le.)144 621.6 R 1.414
(This is useful when you w)6.414 F 1.413
(ant to generate a "refs" without)-.1 F(changing "tags".)144 633.6 Q F1
(FILES)72 650.4 Q F0 17.39(tags A)108 662.4 R .077(cross-reference that\
 lists each tag name, the name of the source \214le that contains it, a\
nd a w)2.577 F .078(ay to)-.1 F
(locate a particular line in the source \214le.)144 674.4 Q 18.51
(refs The)108 691.2 R .471("refs" \214le contains the de\214nitions for\
 each tag in the "tags" \214le, and v)2.972 F .471(ery little else.)-.15
F .471(This \214le)5.471 F .672(can be useful, for e)144 703.2 R .672
(xample, when licensing restrictions pre)-.15 F -.15(ve)-.25 G .672
(nt you from making the source code).15 F .58
(to the standard C library readable by e)144 715.2 R -.15(ve)-.25 G
(rybody).15 E 3.079(,b)-.65 G .579(ut you still e)-3.279 F -.15(ve)-.25
G .579(rybody to kno).15 F 3.079(ww)-.25 G .579(hat ar)-3.079 F(guments)
-.18 E(the library functions need.)144 727.2 Q(1)535 768 Q EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(CT)72 48 Q -.4(AG)-.93 G 379.28(S\(1\) CT).4 F
-.4(AG)-.93 G(S\(1\)).4 E/F1 9/Times-Bold@0 SF -.09(BU)72 84 S(GS).09 E
/F2 10/Times-Italic@0 SF(cta)108 96 Q(gs)-.1 E F0 .65(is sensiti)3.15 F
.95 -.15(ve t)-.25 H 3.15(oi).15 G .65(ndenting and line breaks.)-3.15 F
(Consequently)5.65 E 3.15(,i)-.65 G 3.15(tm)-3.15 G .65(ight not disco)
-3.15 F -.15(ve)-.15 G 3.15(ra).15 G .65(ll of the tags in a \214le)
-3.15 F(that is formatted in an unusual w)108 108 Q(ay)-.1 E(.)-.65 E F1
(SEE ALSO)72 124.8 Q F0(elvis\(1\), refs\(1\))108 136.8 Q F1 -.45(AU)72
153.6 S(THOR).45 E F0(Ste)108 165.6 Q .3 -.15(ve K)-.25 H(irk).15 E
(endall)-.1 E(kirk)108 177.6 Q(enda@cs.pdx.edu)-.1 E(2)535 768 Q EP
%%Trailer
end
%%EOF




%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.09 0
%%Pages: 3
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.09 0
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
/Times-Roman@0 ENC0/Times-Roman RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(EL)72 48 Q 387.52(VIS\(1\) EL)-1 F(VIS\(1\))-1 E
/F1 9/Times-Bold@0 SF -.18(NA)72 84 S(ME).18 E F0(elvis, e)108 96 Q
(x, vi, vie)-.15 E 1.3 -.65(w, i)-.25 H(nput - The editor).65 E F1
(SYNOPSIS)72 112.8 Q/F2 10/Times-Bold@0 SF(elvis)108 124.8 Q F0([)2.5 E
/F3 10/Times-Italic@0 SF<8d61>A(gs)-.1 E F0 2.5(][)C F2(+)-2.5 E F3(cmd)
A F0 2.5(][)C F3(\214les)-2.5 E F0(...])A F1(DESCRIPTION)72 141.6 Q F3
(Elvis)108 153.6 Q F0(is a te)2.5 E(xt editor which emulates)-.15 E F3
(vi)2.5 E F0(/)A F3 -.2(ex)C F0(.).2 E .834
(On systems which pass the program name as an ar)108 170.4 R .833
(gument, such as Unix and Minix, you may also install)-.18 F F3(elvis)
108 182.4 Q F0 .33(under the names "e)2.83 F .33(x", "vi", "vie)-.15 F
.33(w", and "input".)-.25 F .33(These e)5.33 F .33(xtra names w)-.15 F
.33(ould normally be links to elvis;)-.1 F(see the "ln" shell command.)
108 194.4 Q(When)108 211.2 Q F3(elvis)3.914 E F0 1.414(is in)3.914 F -.2
(vo)-.4 G -.1(ke).2 G 3.914(da).1 G 3.914(s")-3.914 G 1.414
(vi", it beha)-3.914 F -.15(ve)-.2 G 3.914(se).15 G 1.414
(xactly as though it w)-4.064 F 1.414(as in)-.1 F -.2(vo)-.4 G -.1(ke).2
G 3.914(da).1 G 3.914(s")-3.914 G 3.914(elvis". Ho)-3.914 F(we)-.25 E
-.15(ve)-.25 G 2.213 -.4(r, i).15 H 3.913(fy).4 G(ou)-3.913 E(in)108
223.2 Q -.2(vo)-.4 G -.1(ke).2 G F3(elvis)3.911 E F0 1.311(as "vie)3.811
F 1.311(w", then the readonly option is set as though you had gi)-.25 F
-.15(ve)-.25 G 3.812(ni).15 G 3.812(tt)-3.812 G 1.312(he "-R" \215ag.)
-3.812 F 1.312(If you)6.312 F(in)108 235.2 Q -.2(vo)-.4 G -.1(ke).2 G F3
(elvis)3.681 E F0 1.081(as "e)3.581 F 1.081(x", then)-.15 F F3(elvis)
3.581 E F0 1.08
(will start up in the colon command mode instead of the visual command)
3.581 F .372(mode, as though you had gi)108 247.2 R -.15(ve)-.25 G 2.872
(ni).15 G 2.872(tt)-2.872 G .372(he "-e" \215ag.)-2.872 F .372
(If you in)5.372 F -.2(vo)-.4 G -.1(ke).2 G F3(elvis)2.972 E F0 .373
(as "input" or "edit", then)2.873 F F3(elvis)2.873 E F0 .373(will start)
2.873 F(up in input mode, as though the "-i" \215ag w)108 259.2 Q(as gi)
-.1 E -.15(ve)-.25 G(n.).15 E F1(OPTIONS)72 276 Q F2(-r)108 288 Q F0
2.028 -.8(To t)28.23 H .427(he real vi, this \215ag means that a pre).8
F .427(vious edit should be reco)-.25 F -.15(ve)-.15 G(red.).15 E F3
(Elvis)5.427 E F0 2.927(,t)C .427(hough, has a sepa-)-2.927 F .82
(rate program, called)144 300 R F3(elvr)3.32 E(ec\(1\))-.37 E F0 3.32
(,f)C .82(or reco)-3.32 F -.15(ve)-.15 G .82(ring \214les.).15 F .82
(When you in)5.82 F -.2(vo)-.4 G -.1(ke).2 G F3(elvis)3.42 E F0 .82
(with -r)3.32 F(,)-.4 E F3(elvis)3.32 E F0 .82(will tell)3.32 F
(you to run)144 312 Q F3(elvr)2.5 E(ec)-.37 E F0(.)A F2(-R)108 328.8 Q
F0(This sets the "readonly" option, so you w)25.45 E(on')-.1 E 2.5(ta)
-.18 G(ccidentally o)-2.5 E -.15(ve)-.15 G(rwrite a \214le.).15 E F2(-s)
108 345.6 Q F0 .832(This set the "safer" option, which disables man)
28.78 F 3.331(yp)-.15 G .831(otentially harmful commands.)-3.331 F .831
(It has not been)5.831 F(rigorously pro)144 357.6 Q -.15(ve)-.15 G 2.5
(nt).15 G 2.5(ob)-2.5 G 2.5(ea)-2.5 G(bsolutely secure, ho)-2.5 E(we)
-.25 E -.15(ve)-.25 G -.55(r.).15 G F2(-t)108 374.4 Q F3(ta)2.5 E(g)-.1
E F0(This causes)14.16 E F3(elvis)2.5 E F0(to start editing at the gi)
2.5 E -.15(ve)-.25 G 2.5(nt).15 G(ag.)-2.5 E F2(-m)108 391.2 Q F0([)2.5
E F3(\214le)A F0(])A F3(Elvis)144 403.2 Q F0 .87(will search through)
3.37 F F3(\214le)3.37 E F0 .871(for something that looks lik)3.37 F
3.371(ea)-.1 G 3.371(ne)-3.371 G .871(rror message from a compiler)
-3.371 F 5.871(.I)-.55 G(t)-5.871 E 1.565(will then be)144 415.2 R 1.564
(gin editing the source \214le that caused the error)-.15 F 4.064(,w)-.4
G 1.564(ith the cursor sitting on the line)-4.064 F(where the error w)
144 427.2 Q(as detected.)-.1 E(If you don')5 E 2.5(te)-.18 G
(xplicitly name a)-2.65 E F3(\214le)2.5 E F0 2.5(,t)C
(hen "errlist" is assumed.)-2.5 E F2(-e)108 444 Q F3(Elvis)28.23 E F0
(will start up in colon command mode.)2.5 E F2(-v)108 460.8 Q F3(Elvis)
27.67 E F0(will start up in visual command mode.)2.5 E F2(-i)108 477.6 Q
F3(Elvis)29.89 E F0(will start up in input mode.)2.5 E F2(-w)108 494.4 Q
F3(winsize)2.5 E F0(Sets the "windo)144 506.4 Q(w" option')-.25 E 2.5
(sv)-.55 G(alue to)-2.75 E F3(winsize)2.5 E F0(.)A F2(+)108 523.2 Q F3
(command)A F0(or)2.5 E F2(-c)2.5 E F3(command)2.5 E F0 .688
(If you use the +)144 535.2 R F3(command)A F0(parameter)3.188 E 3.188
(,t)-.4 G .688(hen after the \214rst \214le is loaded)-3.188 F F3
(command)3.188 E F0 .689(is e)3.189 F -.15(xe)-.15 G .689(cuted as an)
.15 F 1.322(EX command.)144 547.2 R 3.822(At)6.322 G 1.322(ypical e)
-3.822 F 1.322(xample w)-.15 F 1.321(ould be "elvis +237 foo", which w)
-.1 F 1.321(ould cause)-.1 F F3(elvis)3.821 E F0 1.321(to start)3.821 F
.882(editing foo and then mo)144 559.2 R 1.182 -.15(ve d)-.15 H .882
(irectly to line 237.).15 F .883(The "-c)5.883 F F3(command)3.383 E F0
3.383("v)C .883(ariant w)-3.633 F .883(as added for UNIX)-.1 F
(SysV compatibility)144 571.2 Q(.)-.65 E F1(FILES)72 588 Q F0(/tmp/elv*)
108 600 Q .748(During editing,)144 612 R F3(elvis)3.248 E F0 .748
(stores te)3.248 F .748(xt in a temporary \214le.)-.15 F -.15(Fo)5.748 G
3.248(rU).15 G .747(NIX, this \214le will usually be stored in)-3.248 F
1.006(the /tmp directory)144 624 R 3.506(,a)-.65 G 1.006
(nd the \214rst three characters will be "elv".)-3.506 F -.15(Fo)6.006 G
3.506(ro).15 G 1.006(ther systems, the temporary)-3.506 F
(\214les may be stored someplace else; see the v)144 636 Q
(ersion-speci\214c section of the documentation.)-.15 E 17.39(tags This)
108 652.8 R 1.299(is the database used by the)3.799 F F3(:ta)3.798 E(gs)
-.1 E F0 1.298(command and the)3.798 F F2(-t)3.798 E F0 3.798
(option. It)3.798 F 1.298(is usually created by the)3.798 F F3(cta)144
664.8 Q(gs\(1\))-.1 E F0(program.)2.5 E(.e)108 681.6 Q(xrc or elvis.rc)
-.15 E .951(On UNIX-lik)144 693.6 R 3.451(es)-.1 G .951
(ystems, a \214le called ".e)-3.451 F .952
(xrc" in your home directory is e)-.15 F -.15(xe)-.15 G .952
(cuted as a series of).15 F F3 -.2(ex)3.452 G F0 2.61(commands. A)144
705.6 R .11(\214le by the same name may be e)2.61 F -.15(xe)-.15 G .109
(cuted in the current directory).15 F 2.609(,t)-.65 G 2.609(oo. On)
-2.609 F(non-UNIX)2.609 E 1.702(systems, ".e)144 717.6 R 1.703
(xrc" is usually an in)-.15 F -.25(va)-.4 G 1.703
(lid \214le name; there, the initialization \214le is called "elvis.rc")
.25 F(instead.)144 729.6 Q(1)535 768 Q EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(EL)72 48 Q 387.52(VIS\(1\) EL)-1 F(VIS\(1\))-1 E
/F1 9/Times-Bold@0 SF(ENVIR)72 84 Q(ONMENT)-.27 E F0 5.72(TERM This)108
96 R .023(is the name of your terminal')2.523 F 2.522(se)-.55 G .022
(ntry in the termcap or terminfo database.)-2.522 F .022(The list of le)
5.022 F -.05(ga)-.15 G 2.522(lv).05 G(al-)-2.772 E(ues v)144 108 Q
(aries from one system to another)-.25 E(.)-.55 E(TERMCAP)108 124.8 Q
2.5(Optional. If)144 136.8 R
(your system uses termcap, and the TERMCAP v)2.5 E
(ariable is unset, then)-.25 E .49(will read your terminal')146.5 148.8
R 2.99(sd)-.55 G .491(e\214nition from)-2.99 F/F2 10/Times-Bold@0 SF
(/etc/termcap)2.991 E F0 5.491(.I)C 2.991(fT)-5.491 G .491
(ERMCAP is set to the full pathname)-2.991 F .661
(of a \214le \(starting with a '/'\) then)144 160.8 R .66
(will look in the named \214le instead of)5.661 F F2(/etc/termcap)3.16 E
F0 5.66(.I)C 3.16(fT)-5.66 G(ERM-)-3.16 E .134(CAP is set to a v)144
172.8 R .135(alue which doesn')-.25 F 2.635(ts)-.18 G .135
(tart with a '/', then its v)-2.635 F .135
(alue is assumed to be the full termcap)-.25 F(entry for your terminal.)
144 184.8 Q(TERMINFO)108 201.6 Q 2.5(Optional. If)144 213.6 R
(your system uses terminfo, and the TERMINFO v)2.5 E
(ariable is unset, then)-.25 E .527(will read your terminal')146.5 225.6
R 3.027(sd)-.55 G .527(e\214nition from the database in the)-3.027 F F2
(/usr/lib/terminf)3.027 E(o)-.25 E F0 3.027(database. If)3.027 F(TER-)
3.026 E(MINFO is set, then its v)144 237.6 Q
(alue is used as the database name to use instead of)-.25 E F2
(/usr/lib/terminf)2.5 E(o)-.25 E F0(.)A(LINES, COLUMNS)108 254.4 Q 2.543
(Optional. These)144 266.4 R -.25(va)2.543 G .043
(riables, if set, will o).25 F -.15(ve)-.15 G .044
(rride the screen size v).15 F .044(alues gi)-.25 F -.15(ve)-.25 G 2.544
(ni).15 G 2.544(nt)-2.544 G .044(he termcap/terminfo)-2.544 F .928
(for your terminal.)144 278.4 R .928(On windo)5.928 F .927
(wing systems such as X,)-.25 F .927(has other w)5.927 F .927
(ays of determining the screen)-.1 F(size, so you should probably lea)
144 290.4 Q .3 -.15(ve t)-.2 H(hese v).15 E(ariables unset.)-.25 E
(EXINIT)108 307.2 Q 2.766(Optional. This)144 319.2 R -.25(va)2.766 G
.266(riable can hold EX commands which will be e).25 F -.15(xe)-.15 G
.266(cuted instead of the .e).15 F .267(xrc \214le in)-.15 F
(your home directory)144 331.2 Q(.)-.65 E(SHELL)108 348 Q 4.137
(Optional. The)144 360 R 1.636(SHELL v)4.137 F 1.636
(ariable sets the def)-.25 F 1.636(ault v)-.1 F 1.636
(alue for the "shell" option, which determines)-.25 F .613
(which shell program is used to perform wildcard e)144 372 R .613
(xpansion in \214le names, and also which is used)-.15 F(to e)144 384 Q
-.15(xe)-.15 G(cute \214lters or e).15 E(xternal programs.)-.15 E
(The def)5 E(ault v)-.1 E(alue on UNIX systems is "/bin/sh".)-.25 E
(Note: Under MS-DOS, this v)144 400.8 Q
(ariable is called COMSPEC instead of SHELL.)-.25 E 4.06(HOME This)108
417.6 R -.25(va)2.5 G
(riable should be set to the name of your home directory).25 E(.)-.65 E
1.92(looks for its initialization \214le there; if HOME is unset then t\
he initialization \214le will not be)146.5 429.6 R -.15(exe)144 441.6 S
(cuted.).15 E -1.04 -.93(TA G)108 458.4 T -.92(PA).93 G(TH)-.19 E 3.348
(Optional. This)144 470.4 R -.25(va)3.348 G .849
(riable is used by the "ref" program, which is in).25 F -.2(vo)-.4 G -.1
(ke).2 G 3.349(db).1 G 3.349(yt)-3.349 G .849(he shift-K, control-],)
-3.349 F(and :tag commands.)144 482.4 Q(See "ref" for more information.)
5 E(TMP)108 499.2 Q 2.5(,T)-1.11 G(EMP)-2.5 E .318(These optional en)144
511.2 R .318(vironment v)-.4 F .317
(ariables are only used in non-UNIX v)-.25 F .317(ersions of .)-.15 F
(The)5.317 E 2.817(ya)-.15 G(llo)-2.817 E 2.817(wy)-.25 G .317(ou to)
-2.817 F
(supply a directory name to be used for storing temporary \214les.)144
523.2 Q F1(SEE ALSO)72 540 Q F0
(ctags\(1\), ref\(1\), elvprsv\(1\), elvrec\(1\))108 552 Q/F3 10
/Times-Italic@0 SF(Elvis - A Clone of V)108 568.8 Q(i/Ex)-.74 E F0 2.5
(,t)C(he complete)-2.5 E F3(elvis)2.5 E F0(documentation.)2.5 E F1 -.09
(BU)72 585.6 S(GS).09 E F0(There is no LISP support.)108 597.6 Q
(Certain other features are missing, too.)5 E .169
(Auto-indent mode is not quite compatible with the real vi.)108 614.4 R
.17(Among other things, 0^D and ^^D don')5.169 F 2.67(td)-.18 G 2.67(ow)
-2.67 G(hat)-2.67 E(you might e)108 626.4 Q(xpect.)-.15 E .082
(Long lines are displayed dif)108 643.2 R(ferently)-.25 E 5.082(.T)-.65
G .082(he real vi wraps long lines onto multiple ro)-5.082 F .081
(ws of the screen, b)-.25 F(ut)-.2 E F3(elvis)2.581 E F0(scrolls side)
108 655.2 Q -.1(wa)-.25 G(ys.).1 E F1 -.45(AU)72 672 S(THOR).45 E F0
(Ste)108 684 Q .3 -.15(ve K)-.25 H(irk).15 E(endall)-.1 E(kirk)108 696 Q
(enda@cs.pdx.edu)-.1 E(Man)108 712.8 Q 2.734(yo)-.15 G .234
(ther people ha)-2.734 F .534 -.15(ve w)-.2 H(ork).05 E .234(ed to port)
-.1 F F3(elvis)2.734 E F0 .234(to v)2.734 F .234
(arious operating systems.)-.25 F 1.834 -.8(To s)5.234 H .234
(ee who deserv).8 F .235(es credit, run)-.15 F(the)108 724.8 Q F3(:ver)
6.324 E(sion)-.1 E F0 3.824(command from within)6.324 F F3(elvis)6.324 E
F0 6.324(,o)C 6.324(rl)-6.324 G 3.823
(ook in the system-speci\214c section of the complete)-6.324 F(2)535 768
Q EP
%%Page: 3 3
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(EL)72 48 Q 387.52(VIS\(1\) EL)-1 F(VIS\(1\))-1 E
(documentation.)108 84 Q(3)535 768 Q EP
%%Trailer
end
%%EOF




%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.09 0
%%Pages: 1
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.09 0
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
/Times-Roman@0 ENC0/Times-Roman RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(EL)72 48 Q 355.28(VPRSV\(1\) EL)-1 F(VPRSV\(1\))
-1 E/F1 9/Times-Bold@0 SF -.18(NA)72 84 S(ME).18 E F0(elvprsv - Preserv)
108 96 Q 2.5(et)-.15 G(he the modi\214ed v)-2.5 E
(ersion of a \214le after a crash.)-.15 E F1(SYNOPSIS)72 112.8 Q/F2 10
/Times-Bold@0 SF(elvprsv ["-)108 124.8 Q/F3 10/Times-Italic@0 SF
(why elvis died)A F2("] /tmp/)A F3(\214lename)A F2(...)A
(elvprsv -R /tmp/)108 136.8 Q F3(\214lename)A F2(...)A F1(DESCRIPTION)72
153.6 Q F3(elvpr)108 165.6 Q(sv)-.1 E F0(preserv)2.5 E
(es your edited te)-.15 E(xt after)-.15 E F3(elvis)2.5 E F0 2.5
(dies. The)2.5 F(te)2.5 E(xt can be reco)-.15 E -.15(ve)-.15 G
(red later).15 E 2.5(,v)-.4 G(ia the)-2.5 E F3(elvpr)2.5 E(sv)-.1 E F0
(program.)2.5 E -.15(Fo)108 182.4 S 2.851(rU).15 G(NIX-lik)-2.851 E
2.851(es)-.1 G .351(ystems, you should ne)-2.851 F -.15(ve)-.25 G 2.851
(rn).15 G .351(eed to run this program from the command line.)-2.851 F
.35(It is run auto-)5.35 F 2.058(matically when)108 194.4 R F3(elvis)
4.558 E F0 2.058(is about to die, and it should be run \(via /etc/rc\) \
when the computer is booted.)4.558 F(THA)108 206.4 Q(T'S ALL!)-1.11 E
-.15(Fo)108 223.2 S 2.62(rn).15 G .12
(on-UNIX systems such as MS-DOS or VMS, you can either use)-2.62 F F3
(elvpr)2.619 E(sv)-.1 E F0 .119(the same w)2.619 F .119
(ay as under UNIX)-.1 F .399(systems \(by running it from your A)108
235.2 R(UT)-.55 E(OEXEC.B)-.18 E 2.619 -1.11(AT \214)-.35 H .399
(le\), or you can run it separately with the "-R" \215ag to)1.11 F(reco)
108 247.2 Q -.15(ve)-.15 G 2.5(rt).15 G(he \214les in one step.)-2.5 E
.931(If you')108 264 R .931(re editing a \214le when)-.5 F F3(elvis)
3.431 E F0 .931(dies \(due to a b)3.431 F .93(ug, system crash, po)-.2 F
.93(wer f)-.25 F .93(ailure, etc.\))-.1 F(then)5.93 E F3(elvpr)3.43 E
(sv)-.1 E F0(will)3.43 E(preserv)108 276 Q 3.521(et)-.15 G 1.021
(he most recent v)-3.521 F 1.021(ersion of your te)-.15 F 3.522(xt. The)
-.15 F(preserv)3.522 E 1.022(ed te)-.15 F 1.022
(xt is stored in a special directory; it does)-.15 F(NO)108 288 Q 2.849
(To)-.4 G -.15(ve)-2.999 G .349(rwrite your te).15 F .349
(xt \214le automatically)-.15 F 5.349(.\()-.65 G .349(If the preserv)
-5.349 F .349(ation directory hasn')-.25 F 2.848(tb)-.18 G .348
(een set up correctly)-2.848 F 2.848(,t)-.65 G(hen)-2.848 E
(elvprsv will simply send you a mail message descrining ho)108 300 Q 2.5
(wt)-.25 G 2.5(om)-2.5 G(anually run elvprsv)-2.5 E(.\))-.65 E F3(elvpr)
108 316.8 Q(sv)-.1 E F0 1.322(will send mail to an)3.822 F 3.822(yu)-.15
G 1.322(ser whose w)-3.822 F 1.323(ork it preserv)-.1 F 1.323
(es, if your operating system normally supports)-.15 F(mail.)108 328.8 Q
F1(FILES)72 345.6 Q F0(/tmp/elv*)108 357.6 Q(The temporary \214le that)
144 369.6 Q F3(elvis)2.5 E F0 -.1(wa)2.5 G 2.5(su).1 G
(sing when it died.)-2.5 E(/usr/preserv)108 386.4 Q(e/p*)-.15 E(The te)
144 398.4 Q(xt that is preserv)-.15 E(ed by)-.15 E F3(elvpr)2.5 E(sv)-.1
E F0(.)A(/usr/preserv)108 415.2 Q(e/Inde)-.15 E(x)-.15 E 3.112(At)144
427.2 S -.15(ex)-3.112 G 3.112<748c>.15 G .611
(le which lists the names of all preserv)-3.112 F .611
(ed \214les, and the names of the /usr/preserv)-.15 F .611(e/p* \214les)
-.15 F(which contain their preserv)144 439.2 Q(ed te)-.15 E(xt.)-.15 E
F1 -.09(BU)72 456 S(GS).09 E F0 .602
(Due to the permissions on the /usr/preserv)108 468 R 3.102(ed)-.15 G
(irectory)-3.102 E 3.102(,o)-.65 G 3.102(nU)-3.102 G .602(NIX systems)
-3.102 F F3(elvpr)3.102 E(sv)-.1 E F0 .602(must be run as superuser)
3.102 F(.)-.55 E .416(This is accomplished by making the)108 480 R F3
(elvpr)2.916 E(sv)-.1 E F0 -.15(exe)2.916 G .416(cutable be o).15 F .416
(wned by "root" and turning on its "set user id")-.25 F(bit.)108 492 Q
(If you')108 508.8 Q(re editing a nameless b)-.5 E(uf)-.2 E(fer when)
-.25 E F3(elvis)2.5 E F0(dies, then)2.5 E F3(elvpr)2.5 E(sv)-.1 E F0
(will pretend that the \214le w)2.5 E(as named "foo".)-.1 E F1 -.45(AU)
72 525.6 S(THOR).45 E F0(Ste)108 537.6 Q .3 -.15(ve K)-.25 H(irk).15 E
(endall)-.1 E(kirk)108 549.6 Q(enda@cs.pdx.edu)-.1 E(1)535 768 Q EP
%%Trailer
end
%%EOF




%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.09 0
%%Pages: 1
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.09 0
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
/Times-Roman@0 ENC0/Times-Roman RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(EL)72 48 Q 366.4(VREC\(1\) EL)-1 F(VREC\(1\))-1
E/F1 9/Times-Bold@0 SF -.18(NA)72 84 S(ME).18 E F0(elvrec - Reco)108 96
Q -.15(ve)-.15 G 2.5(rt).15 G(he modi\214ed v)-2.5 E
(ersion of a \214le after a crash)-.15 E F1(SYNOPSIS)72 112.8 Q/F2 10
/Times-Bold@0 SF(elvr)108 124.8 Q(ec)-.18 E F0([)2.5 E/F3 10
/Times-Italic@0 SF(pr)A(eserved\214le)-.37 E F0([)2.5 E F3(ne)A(w\214le)
-.15 E F0(]])A F1(DESCRIPTION)72 141.6 Q F0 .63(If you')108 153.6 R .63
(re editing a \214le when)-.5 F F3(elvis)3.13 E F0 .63
(dies, the system crashes, or po)3.13 F .63(wer f)-.25 F .63
(ails, the most recent v)-.1 F .63(ersion of your)-.15 F(te)108 165.6 Q
.505(xt will be preserv)-.15 F 3.005(ed. The)-.15 F(preserv)3.005 E .505
(ed te)-.15 F .505(xt is stored in a special directory; it does NO)-.15
F 3.005(To)-.4 G -.15(ve)-3.155 G .505(rwrite your te).15 F(xt)-.15 E
(\214le automatically)108 177.6 Q(.)-.65 E(The)108 194.4 Q F3(elvr)2.514
E(ec)-.37 E F0 .014(program locates the preserv)2.514 F .014(ed v)-.15 F
.013(ersion of a gi)-.15 F -.15(ve)-.25 G 2.513<6e8c>.15 G .013
(le, and writes it o)-2.513 F -.15(ve)-.15 G 2.513(rt).15 G .013
(he top of your te)-2.513 F .013(xt \214le --)-.15 F(or to a ne)108
206.4 Q 2.5<778c>-.25 G(le, if you prefer)-2.5 E 5(.T)-.55 G(he reco)-5
E -.15(ve)-.15 G(red \214le will ha).15 E .3 -.15(ve n)-.2 H
(early all of your changes.).15 E 1.6 -.8(To s)108 223.2 T
(ee a list of all reco).8 E -.15(ve)-.15 G(rable \214les, run).15 E F3
(elvr)2.5 E(ec)-.37 E F0(with no ar)2.5 E(guments.)-.18 E 1.186
(\(Note: if you ha)108 240 R -.15(ve)-.2 G(n').15 E 3.686(ts)-.18 G
1.187(et up a directory for \214le preserv)-3.686 F 1.187(ation, then)
-.25 F F3(elvis)3.687 E F0 3.687('y)C(ou')-3.687 E 1.187(ll ha)-.1 F
1.487 -.15(ve t)-.2 H 3.687(om).15 G 1.187(anually run the)-3.687 F F3
(elvpr)108 252 Q(sv)-.1 E F0(program instead of)2.5 E F3(elvr)2.5 E(ec)
-.37 E F0(.\))A F1(FILES)72 268.8 Q F0(/usr/preserv)108 280.8 Q(e/p*)
-.15 E(The te)144 292.8 Q(xt that w)-.15 E(as preserv)-.1 E(ed when)-.15
E F3(elvis)2.5 E F0(died.)2.5 E(/usr/preserv)108 309.6 Q(e/Inde)-.15 E
(x)-.15 E 3.112(At)144 321.6 S -.15(ex)-3.112 G 3.112<748c>.15 G .611
(le which lists the names of all preserv)-3.112 F .611
(ed \214les, and the names of the /usr/preserv)-.15 F .611(e/p* \214les)
-.15 F(which contain their preserv)144 333.6 Q(ed te)-.15 E(xt.)-.15 E
F1 -.09(BU)72 350.4 S(GS).09 E F3(elvr)108 362.4 Q(ec)-.37 E F0 .093
(is v)2.593 F .093(ery pick)-.15 F 2.593(ya)-.15 G .093
(bout \214lenames.)-2.593 F -1.1(Yo)5.093 G 2.594(um)1.1 G .094
(ust tell it to reco)-2.594 F -.15(ve)-.15 G 2.594(rt).15 G .094
(he \214le using e)-2.594 F .094(xactly the same pathname as)-.15 F .512
(when you were editing it.)108 374.4 R .512(The simplest w)5.512 F .512
(ay to do this is to go into the same directory that you were edit-)-.1
F .126(ing, and in)108 386.4 R -.2(vo)-.4 G -.1(ke).2 G F3(elvr)2.726 E
(ec)-.37 E F0 .126(with the same \214lename as)2.626 F F3(elvis)2.626 E
F0 5.126(.I)C 2.626(ft)-5.126 G .126(hat doesn')-2.626 F 2.626(tw)-.18 G
.127(ork, then try running)-2.726 F F3(elvr)2.627 E(ec)-.37 E F0 .127
(with no)2.627 F(ar)108 398.4 Q(guments, to see e)-.18 E
(xactly which pathname it is using for the desired \214le.)-.15 E .897
(Due to the permissions on the /usr/preserv)108 415.2 R 3.397(ed)-.15 G
(irectory)-3.397 E 3.397(,o)-.65 G 3.397(nU)-3.397 G .897(NIX systems)
-3.397 F F3(elvr)3.397 E(ec)-.37 E F0 .897(must be run as superuser)
3.397 F(.)-.55 E(This is accomplished by making the)108 427.2 Q F3(elvr)
2.5 E(ec)-.37 E F0 -.15(exe)2.5 G(cutable be o).15 E
(wned by "root" and setting its "set user id" bit.)-.25 E(If you')108
444 Q(re editing a nameless b)-.5 E(uf)-.2 E(fer when)-.25 E F3(elvis)
2.5 E F0(dies, then)2.5 E F3(elvr)2.5 E(ec)-.37 E F0
(will pretend that the \214le w)2.5 E(as named "foo".)-.1 E F1 -.45(AU)
72 460.8 S(THOR).45 E F0(Ste)108 472.8 Q .3 -.15(ve K)-.25 H(irk).15 E
(endall)-.1 E(kirk)108 484.8 Q(enda@cs.pdx.edu)-.1 E(1)535 768 Q EP
%%Trailer
end
%%EOF




%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.09 0
%%Pages: 1
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.09 0
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
/Times-Roman@0 ENC0/Times-Roman RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 401.06(FMT\(1\) FMT\(1\))72 48 R/F1 9
/Times-Bold@0 SF -.18(NA)72 84 S(ME).18 E F0
(fmt - adjust line-length for paragraphs of te)108 96 Q(xt)-.15 E F1
(SYNOPSIS)72 112.8 Q/F2 10/Times-Bold@0 SF(fmt)108 124.8 Q F0<5bad>2.5 E
/F3 10/Times-Italic@0 SF(width)A F0 2.5(][)C F3(\214les)-2.5 E F0(]...)A
F1(DESCRIPTION)72 141.6 Q F3(fmt)108 153.6 Q F0 .623(is a simple te)
3.123 F .623(xt formatter)-.15 F 5.623(.I)-.55 G 3.123(ti)-5.623 G .623
(nserts or deletes ne)-3.123 F .623(wlines, as necessary)-.25 F 3.122
(,t)-.65 G 3.122(om)-3.122 G(ak)-3.122 E 3.122(ea)-.1 G .622
(ll lines in a paragraph)-3.122 F(be approximately the same width.)108
165.6 Q(It preserv)5 E(es indentation and w)-.15 E(ord spacing.)-.1 E
.39(The def)108 182.4 R .39(ault line width is 72 characters.)-.1 F -1.1
(Yo)5.39 G 2.89(uc)1.1 G .39(an o)-2.89 F -.15(ve)-.15 G .391
(rride this with the \255).15 F F3(width)A F0 2.891(\215ag. If)2.891 F
.391(you don')2.891 F 2.891(tn)-.18 G .391(ame an)-2.891 F(y)-.15 E
(\214les on the command line, then)108 194.4 Q F3(fmt)2.5 E F0
(will read from stdin.)2.5 E .371(It is typically used from within)108
211.2 R F3(vi)2.871 E F0 .371
(to adjust the line breaks in a single paragraph.)2.871 F 1.971 -.8
(To d)5.371 H 2.871(ot).8 G .371(his, mo)-2.871 F .671 -.15(ve t)-.15 H
.37(he cur).15 F(-)-.2 E
(sor to the top of the paragraph, type "!}fmt", and hit <Return>.)108
223.2 Q F1 -.45(AU)72 240 S(THOR).45 E F0(Ste)108 252 Q .3 -.15(ve K)
-.25 H(irk).15 E(endall)-.1 E(kirk)108 264 Q(enda@cs.pdx.edu)-.1 E(1)535
768 Q EP
%%Trailer
end
%%EOF




%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.09 0
%%Pages: 2
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.09 0
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
/Times-Roman@0 ENC0/Times-Roman RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 405.5(REF\(1\) REF\(1\))72 48 R/F1 9
/Times-Bold@0 SF -.18(NA)72 84 S(ME).18 E F0
(ref - Display a C function header)108 96 Q F1(SYNOPSIS)72 112.8 Q/F2 10
/Times-Bold@0 SF -.18(re)108 124.8 S(f).18 E F0([-t] [-x] [-c)2.5 E/F3
10/Times-Italic@0 SF(class)2.5 E F0(]... [-f)A F3(\214le)2.5 E F0(]...)A
F3(ta)2.5 E(g)-.1 E F1(DESCRIPTION)72 141.6 Q F3 -.37(re)108 153.6 S(f)
.37 E F0 .391(quickly locates and displays the header of a function.)
2.891 F 1.99 -.8(To d)5.391 H 2.89(ot).8 G(his,)-2.89 E F3 -.37(re)2.89
G(f).37 E F0 .39(looks in the "tags" \214le for the line)2.89 F .516(th\
at describes the function, and then scans the source \214le for the fun\
ction.)108 165.6 R .516(When it locates the function, it)5.516 F 1.12
(displays an introductory comment \(if there is one\), the function')108
177.6 R 3.619(sd)-.55 G 1.119(eclaration, and the declarations of all)
-3.619 F(ar)108 189.6 Q(guments.)-.18 E F1(SEARCH METHOD)72 206.4 Q F3
-.37(re)108 218.4 S(f).37 E F0 1.173(uses a f)3.673 F 1.173
(airly sophisticated tag look-up algorithm.)-.1 F 1.173
(If you supply a \214lename via)6.173 F F2(-f)3.674 E F3(\214le)3.674 E
F0 3.674(,t)C 1.174(hen elvis \214rst)-3.674 F .624
(scans the tags \214le for a static tag from that \214le.)108 230.4 R
.623(This search is limited to the tags \214le in the current direc-)
5.624 F(tory)108 242.4 Q(.)-.65 E .31(If you supply a classname via)108
259.2 R F2(-c)2.81 E F3(class)2.81 E F0 2.81(,t)C .311
(hen elvis searches for a tag from that class.)-2.81 F .311
(This search is not lim-)5.311 F .153(ited to the current directory; Y)
108 271.2 R .153(ou can supply a list of directories in the en)-1.1 F
.153(vironment v)-.4 F(ariable)-.25 E F3 -1.85 -.5(TA G)2.653 H -1.07
-.9(PA T).5 H(H).9 E F0 2.652(,a)C(nd)-2.652 E F3 -.37(re)108 283.2 S(f)
.37 E F0(will search through the "tags" \214le in each directory until \
it \214nds a tag in the desired class.)2.5 E 1.085(If that f)108 300 R
(ails,)-.1 E F3 -.37(re)3.585 G(f).37 E F0 1.085
(will then try to look up an ordinary global tag.)3.585 F 1.085
(This search checks all of the directories)6.085 F .023(listed in)108
312 R F3 -1.85 -.5(TA G)2.523 H -1.07 -.9(PA T).5 H(H).9 E F0 2.522(,t)C
2.522(oo. If)-2.522 F .022(the tag being sought doesn')2.522 F 2.522(tc)
-.18 G .022(ontain an)-2.522 F 2.522(yc)-.15 G .022(olons, and you ha)
-2.522 F -.15(ve)-.2 G(n').15 E 2.522(tg)-.18 G -2.15 -.25(iv e)-2.522 H
2.522(na-).25 G 2.522<788d>-2.522 G(ag,)-2.522 E(then an)108 324 Q 2.5
(ys)-.15 G(tatic tags in a tags \214le will be treated as global tags.)
-2.5 E .587(If you')108 340.8 R .887 -.15(ve g)-.5 H -2.15 -.25(iv e).15
H 3.087(nt).25 G(he)-3.087 E F2(-t)3.087 E F0 .587(\215ag, then)3.087 F
F3 -.37(re)3.087 G(f).37 E F0 .587
(will simply output the tag line that it found, and then e)3.087 F 3.088
(xit. W)-.15 F(ithout)-.4 E F2(-t)3.088 E F0(,)A(though,)108 352.8 Q F3
-.37(re)2.535 G(f).37 E F0 .035(will search for the tag line.)2.535 F
.034(It will try to open the source \214le, which should be in the same\
 direc-)5.035 F .326(tory as the tags \214le where the tag w)108 364.8 R
.326(as disco)-.1 F -.15(ve)-.15 G 2.826(red. If).15 F .326
(the source \214le doesn')2.826 F 2.826(te)-.18 G .326
(xist, or is unreadable, then)-2.976 F F3 -.37(re)2.826 G(f).37 E F0
.777(will try to open a \214le called ")108 376.8 R F3 -.37(re)C(fs).37
E F0 3.276("i)C 3.276(nt)-3.276 G .776(hat directory)-3.276 F 5.776(.E)
-.65 G .776(ither w)-5.776 F(ay)-.1 E(,)-.65 E F3 -.37(re)3.276 G(f).37
E F0 .776(will try to locate the tag, and display)3.276 F(whate)108
388.8 Q -.15(ve)-.25 G 2.5(ri).15 G 2.5<748c>-2.5 G(nds.)-2.5 E F1
(INTERA)72 405.6 Q(CTION WITH EL)-.495 E(VIS)-.828 E F3 -.37(re)108
417.6 S(f).37 E F0 .242(is used by)2.742 F F3(elvis)2.743 E F0 2.743('s)
C .243(hift-K command.)-2.743 F .243(If the cursor is located on a w)
5.243 F .243(ord such as "splat", in the \214le "foo.c",)-.1 F(then)108
429.6 Q F3(elvis)2.5 E F0(will in)2.5 E -.2(vo)-.4 G -.1(ke).2 G F3 -.37
(re)2.6 G(f).37 E F0(with the command "ref -f foo.c splat".)2.5 E(If)108
446.4 Q F3(elvis)2.728 E F0 .228(has been compiled with the -DEXTERN)
2.728 F(AL_T)-.35 E -.4(AG)-.93 G 2.728<538d>.4 G .228(ag, then)-2.728 F
F3(elvis)2.728 E F0 .228(will use)2.728 F F3 -.37(re)2.728 G(f).37 E F0
.227(to scan the tags \214les.)2.728 F .209(This is slo)108 458.4 R .209
(wer than the b)-.25 F .209(uilt-in tag searching, b)-.2 F .209
(ut it allo)-.2 F(ws)-.25 E F3(elvis)2.71 E F0 .21
(to access the more sophisticated tag lookup)2.71 F(pro)108 470.4 Q
(vided by)-.15 E F3 -.37(re)2.5 G(f).37 E F0 5(.O)C(ther than that, e)-5
E(xternal tags should act e)-.15 E(xactly lik)-.15 E 2.5(ei)-.1 G
(nternal tags.)-2.5 E F1(OPTIONS)72 487.2 Q F2(-t)108 499.2 Q F0
(Output tag info, instead of the function header)29.34 E(.)-.55 E F2(-f)
108 516 Q F3(\214le)2.5 E F0 .802(The tag might be a static function in)
14.62 F F3(\214le)3.302 E F0 5.802(.Y)C .802(ou can use se)-6.902 F -.15
(ve)-.25 G .801(ral -f \215ags to ha).15 F -.15(ve)-.2 G F3 -.37(re)
3.451 G(f).37 E F0 .801(consider static)3.301 F
(tags from more than one \214le.)144 528 Q F2(-c)108 544.8 Q F3(class)
2.5 E F0 .685(The tag might be a member of class)5.73 F F3(class)3.185 E
F0 5.685(.Y)C .685(ou can use se)-6.785 F -.15(ve)-.25 G .685
(ral -c \215ags to ha).15 F -.15(ve)-.2 G F3 -.37(re)3.336 G(f).37 E F0
.686(consider tags)3.186 F(from more than one class.)144 556.8 Q F1
(FILES)72 573.6 Q F2(tags)108 585.6 Q F0
(List of function names and their locations, generated by)18.78 E F3
(cta)2.5 E(gs)-.1 E F0(.)A F2 -.18(re)108 602.4 S(fs).18 E F0
(Function headers e)20.08 E(xtracted from source \214les \(optional\).)
-.15 E F1(ENVIR)72 619.2 Q(ONMENT)-.27 E F2 -1.25 -.9(TA G)108 631.2 T
-.74(PA).9 G(TH)-.21 E F0 .415(List of directories to be searched.)144
643.2 R .415
(The elements in the list are separated by either semicolons \(for)5.415
F 1.68(MS-DOS, Atari T)144 655.2 R 1.68(OS, and Amig)-.18 F 1.68
(aDos\), or by colons \(e)-.05 F -.15(ve)-.25 G 1.68
(ry other operating system\).).15 F -.15(Fo)6.68 G 4.18(re).15 G(ach)
-4.18 E(operating system,)144 667.2 Q F3 -.37(re)2.5 G(f).37 E F0
(has a b)2.5 E(uilt-in def)-.2 E(ault which is probably adequate.)-.1 E
F1(NO)72 684 Q(TES)-.36 E F0 -1.1(Yo)108 696 S 3.186(um)1.1 G .686
(ight w)-3.186 F .686(ant to generate a "tags" \214le the directory tha\
t contains the source code for standard C library)-.1 F 1.21
(on your system.)108 708 R 1.21(If licensing restrictions pre)6.21 F
-.15(ve)-.25 G 1.211
(nt you from making the library source readable by e).15 F -.15(ve)-.25
G(ry-).15 E(body)108 720 Q 2.5(,t)-.65 G(hen you can ha)-2.5 E -.15(ve)
-.2 G F3(cta)2.65 E(gs)-.1 E F0(generate a "refs" \214le, and mak)2.5 E
2.5(e")-.1 G(refs" readable by e)-2.5 E -.15(ve)-.25 G(rybody).15 E(.)
-.65 E(1)535 768 Q EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 405.5(REF\(1\) REF\(1\))72 48 R .582
(If your system doesn')108 84 R 3.082(tc)-.18 G .582(ome with the libra\
ry source code, then perhaps you can produce something w)-3.082 F(ork-)
-.1 E(able from the)108 96 Q/F1 10/Times-Italic@0 SF(lint)2.5 E F0
(libraries.)2.5 E/F2 9/Times-Bold@0 SF(SEE ALSO)72 112.8 Q F0
(elvis\(1\), ctags\(1\))108 124.8 Q F2 -.45(AU)72 141.6 S(THOR).45 E F0
(Ste)108 153.6 Q .3 -.15(ve K)-.25 H(irk).15 E(endall)-.1 E(kirk)108
165.6 Q(enda@cs.pdx.edu)-.1 E(2)535 768 Q EP
%%Trailer
end
%%EOF




