Google
 

Trailing-Edge - PDP-10 Archives - mit_emacs_170_teco_1220 - emacs/basic20.elib
There are no other files named basic20.elib in the archive.
PW
[0+8+FQ(+4)[1
0FO10F"G+Q1'
+FQ()+4U1
FQ1"L0'
,Q1:M(Q1+4(]1]0))
   =^n>{S
8	_
+'4j<nN_jE|
w'e1_8;& BASIC20 Auto Line Numbers& Setup BASIC20 LibraryBASIC20 ModeResequence BASIC20 ProgramSet Line IncrementSet Starting Line Number^R BASIC20 Tab~DIRECTORY~%~DOC~ & BASIC20 Auto Line Numbers!~DOC~ & Setup BASIC20 Library~DOC~ BASIC20 Mode$~DOC~ Resequence BASIC20 Program~DOC~ Set Line Increment"~DOC~ Set Starting Line Number~DOC~ ^R BASIC20 Tab~DOC~ ~FILENAME~~FILENAME~
~INVERT~+0FO..QBASIC20 Setup Hookq0"G:M0'
10M.CBASIC20 Line Number Difference* Line increments
100M.CBASIC20 Starting Line Number* Starting Line Number
M.CBASIC20 Upper Line NumberValue of the next line number found.
M.CBASIC20 Lower Line NumberValue of the previous line number found.
}M(M.M& INIT BUFFER LOCALS)
M(m.mMake Local q-register)..d
1,32M.LComment Column
1,(:i*!)M.LComment Start
1,(:i*)m.lComment End
1,1M.LDisplay Matching ParenW
100M.LBASIC20 Starting Line Number
10M.LBASIC20 Line Number Difference
0M.LBASIC20 Upper Line Number
0M.LBASIC20 Lower Line Number
1,(M.M^R Basic20 Tab)M.QI
Q.0,1M(M.M& SET MODE LINE)BASIC20*[a[b[c[d[N
100000UBASIC20 Upper Line Number
-100000UBASIC20 Lower Line Number
.(0@lw<.-b@;
0,1A"'D:;
-1@L>
\F(F"GUBASIC20 Lower Line Number'
)ubW)J
.(1@lw<.-z;
0,1A"'D:;
1@L>
\F(F"GUBASIC20 Upper Line Number'
)UCW)J
QB"E
QC"E
QBASIC20 Starting Line NumberUN'
"#
QC-QBASIC20 Starting Line Number-(
)QBASIC20 Line Number Difference"G
QBASIC20 Starting Line NumberUN'
"#QC-(QBASIC20 Line Number Difference/2)UN'''
"#QC"E
QBASIC20 Line Number DifferenceUD
QB/QD*QD+QDUN'
"#QC-QB-1F"G+1/2+QBUN'
"#WQBUN'''
QNp-1[A
.[0
.(:L.-Q0[2W)J
M(M.M& BASIC20 Auto Line Number)[N
FF"NUA'
QA"LFShposition-7"G.,(9i.)'
:LFSHPosition"EQNUA'
"#0l0,1a"D\WOCheck-Tab'"#QNUA'''
0l\W0K
!Line-Number!
QAF"G:\U0
0K5-FQ0:"L
5-FQ0F"G,48I'WG0'
"#:I*C0 is too big for a line number.fsechodisp
0fsechoactive0''
!Check-Tab!
0,1a-9F"E1COReturn'
"#-23"E1D''
9I
!Return!
QA:"L:Lq2R'
QAF"G
QBASIC20 Lower Line Number-QA:"'L+(
QBASIC20 Upper Line Number-QA:"'G)"N
QA:\U0
QBASIC20 Lower Line Number:\[1
QBASIC20 Upper Line Number:\[2
:I*CLine number 0 is outside the range (1,2).fsechodisp0fsechoactive''
[10UBASIC20 Line Number Difference
FF"N
F"GUBASIC20 Line Number Difference''
X100UBASIC20 Starting Line Number
FF"N
F"GUBASIC20 Starting Line Number''
N
FSRUNTIME
[A[B[C[D
:I*`~[0
F=(QMODE)BASIC20"N
W:I*CWrong Modefsechodisp0FSECHOACTIVE'
B[F0[GZ[H0[Y
FF"N0L.UF
UG'
QG"LM(M.M^R SET BOUNDS REGION)
BUFZUH'
QF,QHM(M.M& Save for Undo)Buffer Resequencing
QG"LQF,QHFSBOUNDARIES'
"#0,fszfsboundaries'
[..D
F[BBIND
34*5,32I94<IA    >0,.FX..D
F]BBIND
38*5:F..D     
44*5:F..D     
92*5:F..D     
127*5:F..D     
0[L
.(<.-z;W\"N%Lw'w1l>
)J
QBASIC20 Starting Line NumberUA
QBASIC20 Line Number DifferenceUB
(QL-1)*QB+QA-99999F"G+99999:\[L
:I*CLine Numbers [L] will exceed the allowed maximum of 99999.(
)fsechodisp
]L(99999-QA)/(QL-1):\UL
:I*AThe maximum line increment is L.fsechodisp
0fsechoactive
qfj
0,fszfsboundaries
0'
]L
J<:SFOR;
<:FB=TOSTEP;
:FB"L1R
1A"DG0''>
>
J<:SMARGINPAGEDATA;
<:FB;1R
1A"DG0'
1FWLW>>
QFJ<:s00001	REM 00002	REM ;
0lG0wl>
-1uK
<.-Z;
1A"D
QA:\UC
\:\UD
0KG0
5-FQCF"G,48I'WGC
.(
J<:SLINO(D)D;
R-FQDDWG0GC>)J
QA+QBUA
QA-99999"G
J<:S`~;FKD>
W:I*C? Cannot Continue, LINE NUMBERS are too bigfsechodisp0FSECHOACTIVE
0,FSZFSBOUNDARIES
''
1@L
FQC"GFQD"G!<!:I*AD => Cfsechodisp0fsechoactive''
>
J0S0W<:S;FKD>
:I*CResequencing Complete in fsechodisp
@:(FSRUNTIME-QE+500)/1000=@FT sec.

0FSECHOACTIVE
QFJ
0,FSZFSBOUNDARIES
BASIC20=Library of macros for editing programs written in BASIC20S Sets up for Basic20 Mode7C This module sets up EMACS for editing BASIC20 programs.
 The following definitions are made:
	TAB -- move past the line number if ahead of it
	       otherwise insert a tab
/S Subroutine that gets the next line number%^R The definition for tab.
A positive numeric argument will insert that value as the line number
for the line.  A numeric argument of 0 will remove any line number,
while a negative one will either insert a line number (or a tab, if the
current position on the line is greater than 6).>C Set the Default line number increments.
The value of Q$Basic20 Line Number Difference$, which is also an option,
gets set to 10 by default or any positive argument if any were given.C Set the Default Starting Line number.
Resets the value of Q$BASIC20 Starting Line Number$ to either the
positive given argument or 100 if none given.JC Resequences the buffer if in BASIC20 mode.

NOTE: If for more than about 300 lines, it is suggested to use the
	RESEQ command in the BASIC Subsystem.

The first line number is set by Q$BASIC20 Starting Line Number$ and uses
Q$BASIC20 Line Number Difference$ as the difference between consecutive
lines.
	Given a positive argument, the resequencing is done
from the current location to the end of the file, updating ALL
entries, even if they appear before the current location.
	Given a negative argument, the resequencing is ONLY done
in the currently defined region. "& Setup BASIC20 Library
BASIC20 Mode
& BASIC20 Auto Line Numbers
^R BASIC20 Tab
Set Line Increment
Set Starting Line Number
Resequence BASIC20 Program
T+8+fq(+4)[20[3
<%3,-q2f2u3q3&1@;q3"l0'>
f[BBindq3-1*5,q3*5g2q:..o(0)+q2