Trailing-Edge
-
PDP-10 Archives
-
mit_emacs_170_teco_1220
-
emacs/mini.emacs
There are no other files named mini.emacs in the archive.
!* -*- Teco -*- Library created and maintained by KMP@MC !
!~Filename~:! !Pseduo Tags Hack for people who don't like tags tables!
MINI
!& Setup MINI Library:! !& Set things up for our neat library!
m.m^R_Mini-Find_Tagu.., !* Put Mini-Find on M-, !
m.m^R_Mini-Visit_Tagu..., !* Put Mini-Visit on C-M-, !
!& Kill MINI Library:! !& Kill our library !
1,m.m^R_Mini-Find_Tag - q.., "e 0u.., '
1,m.m^R_Mini-Visit_Tag - q...,"e 0u...,'
!^R Mini-Visit Tag:! !^R Get recursive edit on tag in current buffer.!
1,(f):m(m.m^R_Mini-Find_Tag)
!^R Mini-Find Tag:! !^R Search for tag in current buffer.
Defaults are kept per-mode. The following modes are permitted:
Lisp, Scheme, Teco, Midas, Schlap !
[0[1[2[3[4[5[6[7[8[9[B !* Bind qregs needed !
qModeu0 !* Get mode in q0 !
:i*fo..QLast_0_Mini-Tagu1 !* Get default in q1 !
1:< o0 > !* Try to find tag to use !
!* If we get here, we lost !
:i*USM Unsupported_Mode:_0 fserr
!* Note: If q3 does not contain a linefeed, repeated calls to !
!* C-U M-, and C-U C-M-, will lose by finding same tag !
!* repeatedly unless user types C-N on his own !
!Schlap!
!Midas! >
:i3
!* Search from head of line !
:i4 : !* Require a : on line !
oDo-It !* !
!Teco! >
:i3
! !* q3: leading text !
:i4 :! !* q4: trailing text !
oDo-It !* Go do the search !
!Scheme!
!Lisp! >
:i3
(DEF
(SET !* q3: leading text !
:i4 !* q4: trailing text !
oDo-It !* Go do the search !
!* -- The search itself -- *!
!Do-It! !* Come here to search !
qBuffer_NameuB !* Remember this buffer !
.u7 .u9 !* Remember starting point !
fn qBm(m.mSelect_Buffer) q7j !* Come back here when done !
ff&1"n !* If explicit arg, !
q1u2 !* Use default string !
:i*No_more_such_tagsu8 !* Set up error message !
oArg-Given' !* Skip prompt !
"# j !* Else, jump to buffer top !
:i*No_such_tagu8' !* and set up other errmsg !
ff&2"e
1,fFind_0_Def_(1):_u2' !* Prompt for tag !
"#
1,fVisit_0_Def_(1):_u2'
fq2"l 0' !* Overrubout means ignore !
fq2"e q1u2 ' !* Use the default !
"# q2m.vLast_0_Mini-Tag ' !* Make new form default !
!Arg-Given! !* Come here if arg given !
< :s3"e !* Find first string !
q7j :i*8:_2 fserr' !* Erring if none like it !
fq4"e oInside ' !* Maybe skip next check !
:fb4"l !Inside! !* Check for 2nd string !
0l :fb2"l fkc !* Check for stuff user gave!
fq4@; !* Match if no trailer !
:fb4:;'' > !* Match if trailer follows !
0l q7:w .u7 !* Update the value of here !
ff&2"n !* If an arg, !
[Last_0_Mini-Tag !* Bind tag default !
[Editor_Type !* Bind Editor Type !
qEditor_Type[0 !* Get old editor type !
fq0"g :i0,_0 ' !* Maybe add prefix !
:iEditor_Type20 !* Set up new editor type !
1fsmodech !* Need to change modeline !
q9u7 ' !* Edit and return to start !
0 !* If we go here, Unwind !