!* -*- TECO -*- ! !~FILENAME~:! !LISPDOC command similar to TECDOC! DOCLISP !DOCLISP:! !C Print out LISP documentation Takes string arg of command to find. If string is null, it will prompt for one.! f[ B Bind !* Get our own buffer! f[ D File !* Don't modify defaults! FN EC FS RGETTY "EFT ' !* Be sure to close on exit, and look nice! !* on losing terminals! er DSK:macind;MACLSP_MANDOC 1:A !* Get the pointer to the directory! \ FS IF Access !* Access the directory! ^Y !* read it in! ER !* re-open it! s'(l 0,.k !* Flush superfluous header! 1,F LISP_Command?__ [1 !* Get the argument! FQ1 "E !* if null! :F "G !* and we were called via MM or whatever! 1, m(m.m &_Read_Line)LISP_Command?__ f(u1)"E''' !* try from TTY! FQ1 "E !* Still null? ! 0FO..Q DOCLISP_Last_Argument u1' !* try our previous arg! q1"E @FT_[No_Previous_LISP_command]  !* nope, just give up on him! 0fs echo active w' !* don't flush typeout! q1 m.v DOCLISP_Last_Argument !* remember for next time! QLISPDOC_Readtable[..D !* Get our very own readtable! FS B Cons[ 0 !* Get a buffer to read things into! [2[3 J F !* Nope, try next entry! Q2 "E FTNot_Found? ' !* if no entry was found, point that out! FTMore?__ !* ask the question! FI u2 !* get the answer!   Print_next_entry   Search_for_same_item_again  Read_a_new_item_to_search_for  Redisplays N,Q,X, exit. ' ft More?__ FIU2> !* Get his new command! > !* Done? OK, see you later! 0u..h !* don't inhibit re-display! !& Setup DOCLISP Library:! !S Initialze, create ..D, etc.! :i*..D[0 !* 0 gets a copy of ..D !*5:f0AA !* Modify our copy! -*5:F0AA +*5:F0AA =*5:F0AA >*5:F0AA <*5:F0AA **5:F0AA \*5:F0AA /*5:F0A/ !* / does not terminate words etc.! |*5:F0A| !* | doesn't either! 95 *5:F0AA !* Can't say ^^_ or ^^^Q_ or ^^^]^Q_! Q0 m.vLISPDOC_Readtable !* and save it for future scan!