Google
 

Trailing-Edge - PDP-10 Archives - mit_emacs_170_teco_1220 - emacs/ivory.elib
There are no other files named ivory.elib in the archive.
HW[0 +8+fq(+4)[1
0fo10f"g+q1'
+fq()+4u1
fq1"l 0'
,q1:m(q1+4(]1]0))it0D
g6_(9.C6aO.V'Bj%Nr$5~yO6$7&/a+H1g8/	H.;W-ue5}lP_sAS8\9P$O3:=G:STOnc;mIYGKEt;d+BK7OEAWRLXZ8
cCmL)K}Jz#NG-7u7D>RB&nCombineCompresstData&CompresseBuffer&LDeclareOLoad-TimeDefaults&tFiledPURIFY Loaded"& Make Load-Time Default Setup& Purify Buffer& Setup IVORY Library
TecDocde^RIBackwardTECODConditional^RpForwardtTECOConditional^RBIvory-BoundOThis Pagere Load-Time Defaults~DOC~ & File PURIFY Loaded(~DOC~ & Make Load-Time Default Setup~DOC~ & Purify Buffer~DOC~ & Setup IVORY Library~DOC~ 1Generate.~DOC~ Change PURIFY Format to IVORY Format~DOC~ Compress File~DOC~ Flush Test Functions~DOC~ Generate Library~DOC~ Key Test Load~DOC~ List TECO FS Flags~DOC~ No Key Test Load~DOC~ TecDoc~DOC~ TECO Mode~DOC~ Test Load&~DOC~ ^R Backward TECO Conditional%~DOC~ ^R Forward TECO Conditional"~DOC~ ^R Ivory-Bound This Page~DOC~ ^R TQuote~DOC~ ~FILENAME~~FILENAME~
~INVERT~	IVORYxm(m.m& Init Buffer Locals)
 1,1m.lSpace Indent Flag
 1,40m.lComment Column
 1,(:i*!* )m.lComment Start
 1,(:i*!)m.lComment End
 1,(:i*)m.lParagraph Delimiter
 1,(m.m^R Indent Nested)m.qI
 1,q(1,q.m.qw)m.q.
1,0m.lDisplay Matching Paren
 m.m^R Backward TECO Conditionalm.q.."
 m.m^R Forward TECO Conditionalm.q..'
 m.q..D
 0fo..qTECO ..Df"n u..d'
"# w :g..du..d
q..dm.vTECO ..D
    1m(m.m& Alter ..D)[A]A"(')<(>);A'
    1m(m.m& Set Mode Line)TECO F
[..o[0[1[2[3[4[5[6[7
q..ou7
"N
0fo..qSilent Running"E ft(PURIFY format file)
'
     m(m.mRun Library)PURIFY& Compress Bufferw
0s

    j< :s; -3c-2d >
0s:!  j< :s; -c @f k >
js
!~DOC~  0l
.,( s
!~DIRECTORY~:!0l ).fx1
q8u..o g1 q7u..o
:k i~FILENAME~ 0l
.,( < .-z; i! :l i:! k > )zfx1
q9u..o g1 q7u..o
'
"#
j <  :s!*;
.-2(s! @f	 l),.k
-@f
	 k
2f=
"e 2c @f
	 k'
>
j <
<
@f
k     3f=
:@;
3d >
.-z;
0u1
<  1a-!"n :i*Macro name or documentation missingfsErr'
:fb:!; %1w
@f
 k
>
q1"e :i*Macro name missingfsErr'
0x1 q9u..o g1 q8u..o g1 fkc
<ci~DOC~  s:! .-z;>
i

q7u..o d .(s!r),.fx1 d q8u..o g1 i
 q7u..o
2f=
"n :i*Text after documentationfsErr'
2c @f
	 k
1f~m(m.m& Declare Load-Time Defaults)
"e	k .-b(s),.-b(qzu..o)f(-1g7q7u..o):d
@f
	 k'
14.,1a-14."e :i*Macro body emptyfsErr'
:s
: :cw
-@f
	 k
.-z; 3c >
'
:"l
"n
j :s!~FILENAME~:!"e
:i*1st file compressed MUST have ~FILENAME~fsErr'
      l
.,(@:f
	 l).x* m.v1st ~FILENAME~ Namew
'
"#
0u1
j :s!~FILENAME~:!"l
.( l .,(@:f
l).x1
:i2& Compressed 1 Library
)-2j-10dg2
q8u..o -s!~DOC~ ~FILENAME~:! 7c10dg2 zj
q9u..o -s!~FILENAME~:! 1c10d g2 zj
q7u..o'
q1"n
j :s!& SetUp 1 Library:!"l
q& SetUp Compressed Librariesu2
@:i& SetUp Compressed Libraries|2m(m.m& SetUp 1 Library)
|'
j :s!& Kill 1 Library:!"l
q& Kill Compressed Librariesu2
@:i& Kill Compressed Libraries|m(m.m& Kill 1 Library)
2|
''
'
'
zj -3f=
"n i
' Gf[BBind i
q..om(m.m& Make Load-Time Default Setup)
m(hfx*) F[..o [0[1[2[3[4
 @fn|q..q[..o :fo..qIvDVar *5,(:fo..qIvDVar!*5)k |
j< @f
	 k .-z; .u0
:s,"e :i*No comma ending default variable name fsErr'
    -d q0,.x1 27i @f
	 k
.(r :s:"e c :i*No colon ending default variable comment fsErr'
    -d),.x2 27i @f
	 k
.-z"e :i*No value for default variable fsErr'
    (1a--"'e)(1a"'d)"n .(:\:\u3),.k'
"# 1au3
.,(c :s3"e :i*No end delimiter for string default value fsErr'
	  ).fx3
@:i3|@:i*3|'
@f	 k
15.,1a-15."n :i*Something follows default value on line fsErr'
0fo..qIvDVar 1 IvDValf"nu4
f=43"n :i*Incompatible value for 1: 4 vs 3 fsErr'
      f~IvDVar 1 IvDCom2"n :i*Incompatible comment for 1: 4 vs 2 fsErr'
      q0,.k'
"#w
q3 m.vIvDVar 1 IvDValw
q2 m.vIvDVar 1 IvDComw
z-.(q0j g3 im.C),zj l'
    >
[0[1[2[3[4[5[6[7[8[9
zj @i|
!~INVERT~:!
+8+fq(+4)[2 0[3
< %3,-q2f2u3 q3&1@; q3"l 0' >
f[BBind q3-1*5,q3*5g2 q:..o(0)+q2|
j @i|[0 +8+fq(+4)[1
0fo10f"g+q1'
+fq()+4u1
fq1"l 0'
,q1:m(q1+4(]1]0))|
.+8u1 q1+4/5*5+1-q1,0i
.+4u5 j 177.i q5&177.i q5/200.&177.i q5/40000.&177.i q5j
0u6 0u7
q..ou8 f[BBind [..o q..ou9 q8u..o
<	.-z; .u3 :x2 q9u..o g2
fkc <	1a-!"n :i*Missing namefsErr'
d .(s:!
),.+2u2 q2-2r
177.i q2&177.i q2/200.&177.i q2/40000.&177.i
l q6+q2u6 q3-q5\i
 %7w .-z;>
q8u..o l q3,.k
zu4 :s
"l -3d .u4 q3j'
q4-.+4u4 177.i q4&177.i q4/200.&177.i q4/40000.&177.i
	q4-4c >

    q5j q7*10+5+4u4 177.i q4&177.i q4/200.&177.i q4/40000.&177.i
q4-4,0i
.u4 q6,0i .-q5u6
z+4+5120-1/5120*5120u2
j 177.i q2&177.i q2/200.&177.i q2/40000.&177.i
zj q2-(h),0i
1f?
q4+4u4 q5+4u5
q9u..o
    1f[^PCase 4c:l2l f]^PCase
q5+4u1
q1/5*5-q1"n @feDSI fsErr'
q1/5u1
2u:8(q1)
j < .-z; .(4cl),.-2x2 q4:f82
q4-q5u:8(%1) q4+fq2u4
\+q6u:8(%1) l>
q8u..o j [1[2 -1f[FnamSyntax
qBuffer Filenamesf"ew'f[DFile
4,4fLibraryu1 et1 fsDFileu1
et ELIB fsDFileu2
m(m.mGenerate Library)21
n[0[1[2[3[6[7[8[9 f[FNamSyntax
f[BBind f[DFile
fsURead"n e[  fn e]'
fsUWrite"n e\  fn e^'
1fsFNamSyntax
etFOO ELIB 4,1fLibraryu2
et2 fsDFileu2
-1fsFNamSyntax
et EMACS 0fsDVersionw
1[F
fsBCons
:i*[& SetUp Compressed Libraries
:i*[& Kill Compressed Libraries
0[1st ~FILENAME~ Name
:i* m.vCompressed Library Filenamesw
fsBConsu9 fsBConsu8
< 4,4fSourceu0
-fq0;
er0
fsIFileu0
fsIFCDate:fsFDConvertu7
fsIFFN1:f6u3
@y
qCompressed Library Filenamesu1
:iCompressed Library Filenames1
   0,	7
0fo..qSilent Running"E FT Compressing file	0
    '
   qF,(0fo..qPURIFY Library 3)m(m.m& Compress Buffer)
.fsVBw
0uF
>
0fsVBw
m(m.m& Combine Compress Data)
0fo..qSilent Running"e ft Purifying...
'
m(m.m& Purify Buffer)
et2 eih@pef
0fo..qSilent Running"e fsOFileu2 ft Pure file is		2
' [1[2
q1st ~FILENAME~ Nameu1
j :s!& Setup 1 Library:!"e
zj .fsVBw
@i|!& Setup 1 Library:! !S IVORY-Generated Setup -- Calls hook.!
0fo..q1 Setup Hookf"n[0m0w'|
-1,m(m.m& Compress Buffer)
0fsVBw -l'"# l'
qzm(m.m& Make Load-Time Default Setup)
 qz[..o 0u2 j<:sM.C; %2w> ]..o
q2-4"l gz'
"# fsDate:\u2 i0fo..q1 Loaded-2"n
 gz g2 im.v1 Loaded'
'
qzfsBKill
q& SetUp Compressed Librariesu2
fq2"g g2'
q8[..o
j s!~DOC~ & Setup 1 Library:!
s
 3r
i
This object file was compressed on m(m.mInsert Date)li
by fsXUNamef6i on fsMachinef6i from the following source libraries:
 gCompressed Library Filenames
zj ]..o
q& Kill Compressed Librariesu2 fq2"g
j :s!& Kill 1 Library:!"l :l g2'
"# zj .fsVBw
i!& Kill 1 Library:! !S IVORY-Generated Kill.!
2

-1,m(m.m& Compress Buffer)
0fsVBw''
zj .(g8)j q8fsBKill
<:s; !>
zj i!~DIRECTORY~:!
 .u2 g9 q9fsBKill
0s:!
 q2j <	1a-!"n :i*Missing excl???fsErr'
d s
	.-z;>
q2j <:s~; l-k>
00[Test Load Sets Keys
f:m(m.mTest Load)01[Test Load Sets Keys
f:m(m.mTest Load)[0[1[2[3[4[5[6[7[8[9[k[r[.0
 .u7 FN q7j 
[7
qTest Load Sets Keysu0
q..ou1
f[BBind q..ou2
g1
fsBCons
fsBConsu8 fsBConsu9
-1,m(m.m& Compress Buffer)
q9fsBKill
zj .(g8)j q8fsBKill
0s <:s;!>
qzm(m.m& Make Load-Time Default Setup)
mz qzfsBKill
m.mKill VariableuK
m.m& Read Q-Reg NameuR
bj
 < :s:!; 2r .u3 0f:fb! c
.,q3f=~FILENAME~"e q3+2j !<!>'
.,q3f=~DOC~ ~FILENAME~"e q3+2j !<!>''
.,q3x3
l .(:s
"e zj'"# 3r'),.x4
"l :i5'
"# 1,m.m3f"ew :i*'u5'
f=45"n
0u7
0:g3-~"e oCOMP'
"l oUNCOMP'
ff&1"E !UNCOMP!
q1[..o
bj s!3:!
0l .,(:s
	       "e zj'"# 3r'
	       ).x6
"l :i5'
f=56"N
0fo..qMM 3u.0
mkMM 3
q6 m.vMM 3 (TEST)w
ftMade uncompressed MM-variable MM 3 (TEST).

	    1u7'
]..o
'
"# !COMP!
0fo..qMM 3u.0
mkMM 3
q4 m.vMM 3 (TEST)w
ftMade compressed MM-variable MM 3 (TEST).
	 1u7'
q7"N q0"n
f~(0,3:g3)^R "E
ft   Put on which key (rubout means no key)? 
:i..0
Key: 
mRu4
f=4"E ft None.
	 '
	 "# ft4

	    0u5
q4"n
q.0-q4"n
q4fp"l
m(m.m& Load BARE)'
1:< q4m(m.m& Macro Name)u5 >w
q5"e q4fp"g :i5an unnamed function''
q5"n f~53"e
0u5'
"#
ft   4 runs 5  -- Ok to replace?
m(m.m& Yes Or No)"l 0u5'''''
q5"e m.m3 (TEST)u4''
''''
>
ff-1"G
q2u..o
bj :s
!& Setup"L 0l .u4
:s
	"e zj'"# 3r'
ftMacroing & Setup
	m( q4,.x* )
'
'
ftDone.

 2[1[k :i1
f[BBind m(m.m& Insert Prefixed Variable Names)MM 
j m(m.mKeep Lines) (TEST)
j fq1"g m(m.mKeep Lines)1'
:i*When exit ^R mode, remaining ones will be killed.[..j
@:i*|m(m.mDescribe)Flush Test Functions|f[HelpMacro

m.mKill Variableuk
j <@f
	 l .-z;
:x1
mk1w l>
g[1[2[3 [7[8[9
 :i* m.vCompressed Library Filenames
4,4fCOMPRS filef[DFile
 fsDFile( 4,1fSource fileu2 )u1
f[BBind -1f[FnamSyntax
er2
fsIFileu3
fsIFCDate:fsFDConvertu7
@y
:iCompressed Library Filenames
 3, 7
ft Compressing file	3

fsBCons
fsBConsu9 fsBConsu8
1,m(m.m& Compress Buffer)
j < :s
;
fk+1c i
 l >
m(m.m& Combine Compress Data)
f6COMPRSfsDFN2w 1fsFnamSyntaxw
et1 eihpef
fsOFileu3
ft Compressed file is	3
 g
[A [B [C [D [E
J<.-Z; 0UD 0UD
.,(:L.)@F 	F:UA
QA,. FSBOUNDARIES
J :S:! "N .UB 2R
-:S!* "E QBJ
      :S! "N
.,FSZFSBOUNDARIES
S! '
"# ZJ'
OLOOP' '
J :S!* "L 2R
.(.,FSZFSBOUNDARIES
2:S!"L.UD'W)J
QA,. FSBOUNDARIES
    .,QA@F 	F:UB
QA,QB FSBOUNDARIES'
ZJ FSHPOSITIONUC
J  <:S 	;
.-B-1"E -D %E'
"# -1A-"N -D %E'
"# R -D C %E
.-B-1"N
-1A-29"E R -D C %E' ' ' ' >
ZJ QC-FSHPOSITION F"G,32I' '
!LOOP!
.,FSZ FSBOUNDARIES
QDF"N-QE-.F"G+. J' '
1L>
0,FSZ FSBOUNDARIES
J 0S_ <:S;
.-B-1"E .-1F '
"# -1A-"N .-1F '
"# R -D 1C
.-B-1"N
-1A-29"E R -D C' ' ' ' >
ff&1"e
ftNote that this is approximate -- you should check the result carefully,
especially for conversions that can only be done by understanding the
semantics:
    1.  PURIFY files sometimes have comments in the middle of string args.
	Those will be ok in IVORY if compressed, but not if run uncompressed.
    2.  Similarly, " or ' in comments should be avoided if you want to run the
	code uncompressed.
    3.  Line indentation within string args will be wrongly retained.  You
	will have to remove it by hand.
    4.  PURIFY compresses n successive CRLFs into just one, which again will
	require you to correct any within string args.
 Also, things like 1u1 2u2 will become the uglier 1u12u2, which you may want
 to correct.
 We suggest that you write the new IVORY source to a file different from the
 PURIFY source, then compress both files -- using the PURIFY function
 & Compress File and the IVORY function Compress File -- and then compare the
 resulting COMPRS files.
'
J W 
[1
 .:\u1 fn1j
fsWindow+bfsWindoww
0,fsZ fsBoundariesw
-:s
:
.:
:s
"e zj'"# 3r'
@m(m.m^R Set Bounds Region)0[1 .[3
    .( :s
: fsZ-.f[VZ )j
< :s"'!*;
      0a-" "e %1' !'!
!"!   0a-' "e q1-1u1 q1-1"l 0''
      0a-* "e s!' >
q3j fg 000[1 [2 .[3
 .( -:s
   : .f[VB )j
< -:s"'!
  ;
   1a-" "e q1-1u1 q1-1"l 0'' !'!
!"!   1a-' "e %1'
      1a-! "e .u2 -s!
2a-*"n q2j''
>
    q3j fg 8
[0 [1 [2 [3 [4 [5 [6
    1,fCommand: u1
f[BBind Q..OU4 [..o g1
:i*Teco Doc[..J 0f[^RStart
f[DFile etDSK:INFO;TECORD INFO 0fsDVersionw
0fo..qTecord Bufferu3
q3fp"e
0[..f f[BBind q3[..o'
"#
ff&1"n
0[..F
f[BBind Q..OU3 [..O
er @y'
"#
[Previous Buffer qBuffer Nameu3 @fn|m(m.mSelect Buffer)3|
fsDFileu3
-1,m(m.mFind File)3
q..om.vTecord Bufferw
q..ou3 [..o''
!ARG!
    :FT Q4U..O
    J <:S^ ; -DR>
J :S "N B,.-1K '
J <.-Z; 1A-32"L 1A-33."N 1A( D I^)+100.I 2R'' C>
Z"E OGET ARG'
H@FC
    J :< 1A F :@"G C!<!>'
1A-^"E 2AF: +1"N CDI@!<!> '' 0; >
.( 1:< 1A-F"E C 1A-S"E
		  .-Z"N C 40.I 1A-^"E 2C 40.I ''''
"# 1A-E"E C '' 1A-^"E C ' >
:CW 0A-<"E 9I'
B,.X2
),.X5
0A-9"E -D'
    J<:S ;-D>
Q3U..O BJ S)
!SEARCH AGAIN!
    :S
5"E FG FTNot found. OASK '
1A-:"E :L '"# 0:L '
.U6
< :S
2
<>2
<>,<>2"E Q6J 0;'
FQ2R :I0
:<
1A-40.F"L :; '"E 0,0A-^"N C !<!> ''
1@X0 C >
0,FQ4:G0U0
F~04"E :0L 0;'
>
!MORE!
    .(
< LS
	 FKC .,.+4F=

:@;>
),.T
!ASK!
    0fsFlushedw FT
More (
    .u0 s
 r
.,( s ).t 0:l
FT)? 
    @:FIU0 33.FS^RInit-Q0"E FIW 0U..H '
FIU0
XQNQ0F+1"G -fsReReadw 0U..H '
Q0-40."e OMORE'
Q0-12."E FT
 OSEARCH AGAIN '
Q0-33."E
!GET ARG!
       FR 1f[Typeout
1,m(m.m& Read Line)Teco Command: U0
       f]Typeout
       FQ0"G Q4U..O HKG0  oARG'
O ASK'
FT
Responses at this point are:
X, Q, N exit
Rubout  exit
Space   type more
Line    search again for same arg
Altmode read another arg and search
 oASKNf[VB f[VZ
:,. f fsBoundw
j< @:fl .-z;
       i c>
    hvf[BBind
    :fe j  :LL
J<
      fsWidth/9<
.-z; :LK I    >
      -@f k i
    .-z; >
    ht :fv 0'0fo..qIVORY Loaded-13154152933"n
@:i*||m.C& SetUp Compressed Librariessetup-caller
@:i*||m.C& Kill Compressed Librarieskill-caller
0m.C1st ~FILENAME~ Name1st found
1m.CTest Load Sets Keys* Non-0 allows key-setting
13154152933m.vIVORY Loaded'
0fo..qIVORY Setup Hookf"n[0m0w'*Macros for maintaining EMACS libraries$C Set up commands for editing TECO code.
Makes Rubout the Tab-hacking Rubout.  Tab does ^R Indent Nested.
M-' and M-" move forward and back over conditionals.hS Compress a file of macros, in the buffer.
Removes comments, and makes the documentation and directory strings.
Documentation will be added to the buffer passed in Q8.
Function names will be added to the buffer passed in Q9.[S Called only if interpreting source
that hasnt been generated into a library.
Otherwise, IVORY will when compressing, simply look for this subroutine to
    be called, and create something for an & Setup to run.,S Make specs in NUMARG buffer into code.jS Convert macros in buffer to :EJ'able format.
Assumes compression has been done already, if desired.7C Make one ELIB file from just one source file.
Takes one string argument which is the source filename.  If no string
    argument is given, it defaults to the buffer filenames.^C Make one ELIB file from several source files.
Takes desired name for ELIB file as first string argument, followed by
    the names of the input files.  A null string argument
    (altmode-altmode) ends the argument list.
The input files are all compressed and purified together.  You are
    told as each is compressed etc.  However, if $Silent Running$ is
    non-0 nothing is printed.  (Good for ^Z ^Ping.)
Filename defaulting is sticky; input FN2's default to >; the output
    FN2 to ELIB. 
The defaults are restored after the macro is finished.
~FILENAME~ is taken from first file's ~FILENAME~.  It must have one.
Other ~FILENAME~s are turned into "& Compressed foo Library:"s.
All "hidden" & SetUps (i.e. not of same name as object ~FILENAME~)
    will be accumulated, and code to call them will be inserted at the
    beginning of the first file's &Setup.  If that file has no &Setup,
    one will be created.
Also, the &Setup documentation will have a record (as part of its
    documentation string) telling who generated the object, when, and
    from what source files.
All "hidden" & Kills (i.e. not of same name as object ~FILENAME~) will
    be accumulated and called from the main &Kill in a similar manner.
Note that all source libraries are always compressed, no COMPRS files
    are created, and the destination library is always created.
For a given FN1, if variable PURIFY Library FN1 is non-zero, then
    the file is assumed to be a PURIFY library.	S ...hC Test Load with Test Load Sets Keys bound to 0.
Thus Test Load will not offer to set any keys.  Useful if running Test
    Load over an entire library with many ^R commands.
Numeric arguments are passed along to Text Load.C Test Load with Test Load Sets Keys bound to 1.
Thus Test Load will offer to set keys.
Numeric arguments are passed along to Test Load.BC Load any modified macros into MM-variables and ^R-keys.
A library source is in the buffer.
Compares each macro (compressed) with M.M-found version;  if
    different, puts the new macro (uncompressed) in an MM-variable.
If Test Load Sets Keys is non-0 (the default) and if the macro is an
    ^R one, user is asked which key to put it on.  Rubout means do not
    put it on any key.  (any better?)
If a positive NUMARG is given, compressed macros are put into
    MM-variables when differences are found.  Negative NUMARG means
    make uncompressed, without checking difference.
If a pre-comma ARG is given, the library is searched for a & Setup...
    macro, which if found is macroed.-C  mode on all (TEST) function names, then kill.
This is for killing sets of impure test functions created by
    M-X Test Load.
String argument, if non-null, prunes the list.
The user is put into a recursive  mode on the list of all
    MM-variable names which contain "(TEST)" and the string argument
    if any.
The user may then trim the list further.
When the  is exited, those names that are left are killed.C Generate a PURIFY style COMPRS file from a source file.
STRARG1 is the COMPRS file.
STRARG2 is the source file.  Filename defaulting is sticky left to
    right.
(The second filename of the COMPRS file MUST be COMPRS.)
This command is useful for creating COMPRS files so people using the
    standard EMACS purify package can GEN them into their libraries.
One tricky thing:  it always leaves ^Ls on their own lines, even if
    not there to begin with, since PURIFY will change CRLF ^L to ^L,
    and CRLF CRLF ^L to CRLF ^L.BC Changes Buffer to IVORY Format.
This function is a good starting place -- but you will need to finish the
    conversion by carefully checking the code yourself.  A warning message to
    this effect, and some hints, will be printed.
The conversion warning message is suppressed if you supply a numeric argument.^R Even if already bounded.
Thus calling this always results in the same thing, unlike the normal
    EMACS ^R Mark Page, which moves forward a page if already
    bounded.
Uses IVORY-style definition of what a page is, i.e.:
    <not-C-Q><C-L><CRLF>.X^R Move past the ' matching the following ".
This ignores "s or 's inside comments.]^R Move back past the " matching the preceding '.
This ignores "s or 's inside comments._C Look up information on Teco commands.
String arg is command, e.g. MM TecdocF^B or MM TecdocFS HPOS.
Represent a control character with a "^" not followed by a space.
Spaces elsewhere are ignored.
For speed (of another TecDoc) it keeps TECORD in an EMACS buffer,
    named *TECORD*.  If you are worried about space, kill that buffer.
    Giving TecDoc a numeric argument will inhibit use of the buffer.
The format of INFO;TECORD is understood.  Type "?" for help.}^R Quote with ^] all altmodes and ^]'s in the region.
This is to aid quoting inside a string argument to a Teco command.&C List names of all TECO FS flags.+? If this is defined, PURIFY is loaded.
This is to prevent some functions (e.g. Teco Mode) from loading it.
Even though we arent in fact PURIFY.....(We're better...)aS IVORY-Generated Setup -- Calls hook.
This object file was compressed on 6:40pm  Friday, 5 April 1996
by ALDERSON on toed.xkl.com from the following source libraries:

   DXX:<EMACS>IVORY.EMACS.192,	04/05/96 17:44:07GTECO Mode
& Compress Buffer
& Declare Load-Time Defaults
& Make Load-Time Default Setup
& Purify Buffer
1Generate
Generate Library
& Combine Compress Data
No Key Test Load
Key Test Load
Test Load
Flush Test Functions
Compress File
Change PURIFY Format to IVORY Format
^R Ivory-Bound This Page
^R Forward TECO Conditional
^R Backward TECO Conditional
TecDoc
^R TQuote
List TECO FS Flags
& File PURIFY Loaded
& Setup IVORY Library
\+8+fq(+4)[2 0[3
< %3,-q2f2u3 q3&1@; q3"l 0' >
f[BBind q3-1*5,q3*5g2 q:..o(0)+q2