;skip 1 ;vsp 5 ;vsp 36 ;squish ;lftmar 0 ;topmar 0 ;botmar 0 ;rgtmar 0 ;dfont TIMESROMAN10,TIMESROMAN10,TIMESROMAN10I,HELVETICA10,TIMESROMAN18B,TIMESROMAN12B,LPT10,GACHA10B,HELVETICA18 "‡"!"P cMASSACHUSETTS INSTITUTE OF TECHNOLOGY  }ARTIFICIAL INTELLIGENCE LABORATORY  ,"I ,Working Paper 209  April, 1981 "‡"\ ^Operating the Lisp Machine "‡" ?David A. Moon  1Allan C. Wechsler "‡"\ ,This‚document‚is‚a‚draft‚copy‚of‚a‚portion‚of‚the‚Lisp‚Machine‚window‚system‚manual.‚It‚is  ,being‚îpublished‚îin‚îthis‚îform‚now‚to‚make‚it‚available,‚since‚the‚complete‚window‚system‚manual  ,is‚unlikely‚to‚be‚nished‚in‚the‚near‚future.‚The‚information‚in‚this‚document‚is‚accurate‚as‚of  ,system‚ 67,‚but‚ is‚ not‚ guaranteed‚ to‚ remain‚ 100%‚ accurate.‚ "$ ,This‚îdocument‚îexplains‚îhow‚to‚use‚the‚Lisp‚Machine‚from‚a‚non-programmer's‚point‚of‚view.‚It  ,explains‚the‚general‚characteristics‚of‚the‚user‚interface,‚particularly‚the‚window‚system‚and‚the  ,program-control‚commands.‚This‚document‚is‚intended‚to‚tell‚you‚everything‚you‚need‚to‚know  ,to‚îsit‚îdown‚îat‚îa‚îLisp‚îmachine‚îand‚îrun‚îprograms,‚but‚îdoes‚înot‚îdeal‚with‚the‚writing‚of‚programs.  ,Many‚arcane‚commands‚and‚user-interface‚features‚are‚also‚documented‚herein,‚although‚the  ,beginning‚ user‚ can‚ safely‚ ignore‚ them.‚ "‡"‡"o ,A.I.‚Laboratory‚Working‚Papers‚are‚produced‚for‚internal‚circulation,‚ and‚may‚contain  ,information‚that‚is,‚for‚example,‚too‚preliminary‚or‚too‚detailed‚for‚formal‚publication.‚It‚is‚not  ,intended‚ that‚ they‚ should‚ be‚ considered‚ papers‚ to‚ which‚ reference‚ can‚ be‚ made‚ in‚ the‚ literature.‚ "-î "‡"! ,Operating the Lisp Machine 1 xThe Console "P ,1. The Console "( ^This‚chapter‚describes‚the‚basic‚logical‚characteristics‚of‚the‚devices‚that‚are‚used‚to‚talk‚to  ,the‚Lisp‚Machine.‚These‚include‚one‚or‚more‚bit-raster‚displays,‚a‚specially‚extended‚keyboard,  ,and‚a‚graphical‚input‚device‚called‚a‚mouse‚.‚Collectively‚these‚form‚a‚complete‚and‚extremely  ,exible‚ user‚ interface,‚called‚ the‚ console‚.‚  ,"? ,1.1 The Screen "  ^The‚Lisp‚Machine‚generally‚displays‚its‚output‚on‚one‚or‚more‚bit-raster‚displays.‚The  ,window‚system‚controls‚how‚display‚space‚is‚allocated‚to‚various‚programs,‚systems,‚menus,‚and  ,messages,‚allowing‚the‚user‚to‚shift‚his‚attention‚between‚these‚easily.‚This‚is‚discussed‚more  ,fully‚ later,‚in‚ the‚ chapter‚ called‚ "The‚ Window‚ System".‚  ,"@ ,1.2 The Keyboard "  ^We‚are‚in‚the‚process‚of‚changing‚over‚from‚the‚old‚Knight‚keyboard‚to‚a‚new‚type.‚Most  ,of‚the‚current‚software‚can‚deal‚with‚both‚kinds‚of‚keyboards.‚In‚particular,‚the‚new‚keyboards  ,can‚generate‚all‚the‚characters‚that‚the‚old‚keyboards‚can.‚However,‚transition‚problems‚may‚be  ,encountered‚over‚the‚next‚few‚months.‚New‚software‚may‚have‚been‚written‚with‚specic  ,features‚of‚the‚new‚keyboards‚in‚mind,‚and‚thus‚may‚be‚dicult‚to‚use‚from‚the‚old‚keyboards.  ,Most‚system‚software‚can‚still‚be‚used‚fairly‚easily‚from‚the‚old‚keyboards,‚but‚exceptions‚exist  ,and‚ will‚ probably‚ become‚ more‚ frequent.‚ "  ^These‚problems‚will‚be‚resolved‚with‚time‚as‚programs‚and‚people‚become‚adapted‚to‚the  ,new‚ keyboards.‚ "  ^This‚document‚will‚assume‚that‚a‚new‚keyboard‚is‚being‚used.‚ Where‚applicable,‚the  ,sequence‚that‚would‚have‚to‚be‚typed‚on‚the‚old‚keyboards‚to‚get‚the‚same‚result‚will‚also‚be  ,given.‚ "  ^There‚are‚100‚physical‚keys‚on‚the‚new‚keyboards.‚The‚keyboard‚has‚unlimited‚rollover,  ,meaning‚that‚a‚keystroke‚is‚sensed‚when‚the‚key‚is‚depressed,‚no‚matter‚what‚other‚keys‚are  ,depressed‚ at‚ the‚ time.‚ "  ^Actually,‚the‚hardware‚can‚tell‚exactly‚what‚physical‚keys‚are‚being‚pressed‚at‚any‚given  ,moment:‚it‚knows‚when‚any‚key‚is‚depressed‚and‚when‚it‚is‚released.‚This‚means‚that‚the‚Lisp  ,Machine‚îcould‚îbe‚îprogrammed‚îto‚îinterpret‚îthe‚keyboard‚in‚any‚manner‚whatsoever:‚in‚this‚sense  ,the‚keyboard‚is‚completely‚"soft".‚But‚the‚Lisp‚Machine‚has‚already‚been‚programmed‚to  ,interpret‚the‚keyboard‚input‚in‚a‚useful‚way,‚and‚such‚reprogramming‚would‚be‚necessary‚only  ,for‚ the‚ most‚ special‚ needs.‚ "  ^The‚keys‚are‚divided‚into‚three‚groups:‚function‚keys,‚character‚keys,‚and‚modier‚keys.  ,Character‚ keys‚ are‚ generally‚ small‚ and‚ gray,‚while‚ function‚ keys‚ are‚ generally‚ large‚ and‚ blue.‚  ," ,Function Keys tABORT,‚BREAK,‚CALL,‚CLEAR-INPUT,‚CLEAR-SCREEN,‚DELETE,‚END,  tHELP,‚HOLD-OUTPUT,‚LINE,‚MACRO,‚NETWORK,‚OVER-STRIKE,‚QUOTE,  tRESUME,‚RETURN,‚RUBOUT,‚STATUS,‚STOP-OUTPUT,‚SYSTEM,‚TAB, "< ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! The Keyboard 2 *Operating the Lisp Machine "P ^TERMINAL‚ "  ^In‚addition‚to‚these,‚there‚are‚some‚gray‚function‚keys:‚four‚on‚the‚right‚with  ^ngers‚pointing‚in‚various‚directions,‚called‚HAND-UP,‚HAND-DOWN,‚HAND-  ^RIGHT,‚and‚HAND-LEFT;‚and‚four‚on‚the‚left‚with‚the‚roman‚numerals‚I,‚II,  ^III,‚and‚ IV.‚  " Character Keys ^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‚î0‚î1‚î2‚3‚4‚5‚6‚7‚8‚9‚:‚-‚=  ^{‚ }‚ (‚ )‚ ‚ \‚ ;‚'‚ ,‚.‚/‚  ^In‚ addition,‚ALT-MODE‚ and‚ the‚ space‚ bar‚ are‚ character‚ keys,‚despite‚ being‚ blue.‚  " Modier Keys ^MODE-LOCK,‚CAPS-LOCK,‚REPEAT,‚ALT-LOCK,‚left‚TOP,‚left‚GREEK,  ^left‚SHIFT,‚left‚HYPER,‚left‚SUPER,‚left‚META,‚left‚CTRL,‚right‚TOP,‚right  ^GREEK,‚right‚ SHIFT,‚right‚ HYPER,‚right‚ SUPER,‚right‚ META,‚right‚ CTRL‚  "@ 1.2.1 Modifier Keys "  HModier‚ keys‚ are‚ intended‚ to‚ be‚ held‚ down‚ while‚ typing‚ another‚ key.‚ "  HNone‚of‚the‚software‚distinguishes‚between‚the‚left‚and‚right‚versions‚of‚TOP,‚GREEK,  SHIFT,‚HYPER,‚SUPER,‚META,‚and‚CTRL.‚When‚one‚of‚these‚is‚specied,‚either‚physical  key‚(or‚both)‚will‚work.‚*The‚ incantations‚ used‚ for‚ warm-booting‚ and‚ cold-booting  (CTRL/META/CTRL/META/RETURN‚and‚CTRL/META/CTRL/META/RUBOUT,‚respectively)  are‚ the‚ only‚ exceptions;‚these‚ require‚ that‚ both‚ control‚ keys‚ and‚ both‚ meta‚ keys‚ be‚ held‚ down.‚ "  HThe‚MODE-LOCK,‚CAPS-LOCK,‚and‚ALT-LOCK‚keys‚hold‚themselves‚down‚once  depressed,‚and‚ must‚ be‚ explicitly‚ released‚ by‚ striking‚ them‚ again.‚ "  HIn‚this‚document,‚the‚action‚of‚holding‚down‚some‚modier‚keys‚while‚striking‚some‚other  key‚will‚be‚represented‚with‚a‚slash‚notation.‚$For‚example,‚if‚you‚are‚told‚to‚type  HYPER/META/J,‚you‚will‚accomplish‚this‚by‚holding‚down‚the‚HYPER‚and‚META‚keys‚while  you‚ strike‚ "j".‚ "  HThe‚îSHIFT,‚TOP,‚and‚îGREEK‚îkeys‚îare‚îintended‚îto‚îmodify‚îcharacter‚îkeys‚îto‚îproduce‚îprinted  characters.‚Some‚printed‚characters‚can‚be‚produced‚in‚more‚than‚one‚way.‚The‚software‚never  distinguishes‚between‚the‚possible‚ways‚of‚producing‚a‚particular‚printed‚character.‚For‚example,  typing‚îthe‚î"9"‚îkey‚îwhile‚îholding‚îdown‚îSHIFT‚îproduces‚îan‚open‚parenthesis,‚and‚so‚does‚striking  the‚ "("‚ with‚ no‚ modiers.‚There‚ is‚ no‚ dierence‚ between‚ these‚ two‚ parentheses.‚ "  HGREEK‚îis‚îalso‚called‚FRONT‚since‚it‚causes‚a‚character‚key‚to‚generate‚the‚character‚written  on‚the‚front‚of‚the‚key.‚These‚characters‚are‚greek‚letters‚on‚the‚alphabetic‚keys‚and‚special  punctuation‚ symbols‚ on‚ the‚ other‚ keys.‚ "  HThe‚HYPER,‚SUPER,‚META,‚and‚CTRL‚keys‚are‚used‚by‚programs‚like‚the‚Editor‚whose  commands‚are‚mostly‚single‚characters.‚They‚are‚intended‚to‚modify‚other‚keys‚to‚produce  commands‚ for‚ these‚ programs.‚ "  HThe‚CAPS-LOCK‚key,‚when‚depressed,‚causes‚all‚typed‚letters‚(A‚through‚Z)‚to‚be  interpreted‚îas‚îif‚îthe‚îshift‚îkey‚îwere‚îdown.‚CAPS-LOCK‚îdoes‚not‚aect‚the‚interpretation‚of‚non-  alphabetic‚ character‚ keys.‚ "Y DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 3 The Mouse "P ^The‚functions‚of‚the‚ALT-LOCK‚and‚MODE-LOCK‚keys‚have‚not‚been‚assigned‚as‚of‚this  ,writing.‚  ,"@ ,1.2.2 Function Keys "  ^The‚îfunction‚îkeys‚îallow‚îthe‚îuser‚îto‚îdo‚îcertain‚îuseful‚îoperations‚îin‚îvery‚îfew‚keystrokes.‚Some  ,of‚these‚operations‚may‚be‚performed‚anytime,‚no‚matter‚what‚the‚Lisp‚Machine‚is‚doing‚at‚the  ,moment.‚Other‚operations‚are‚only‚dened‚in‚certain‚contexts,‚and‚the‚keys‚that‚perform‚these  ,operations‚may‚do‚dierent‚things‚at‚dierent‚times,‚or‚may‚be‚ignored‚if‚the‚associated  ,operation‚ is‚ not‚ relevant‚ to‚ what‚ the‚ Lisp‚ Machine‚ is‚ doing.‚ "  ^The‚four‚nger‚keys‚are‚function‚keys,‚but‚functions‚have‚not‚yet‚been‚assigned‚to‚them.  ,HAND-UP‚and‚HAND-DOWN‚may‚eventually‚be‚used‚for‚answering‚yes-or-no‚questions.  ,FRONT-shifting‚a‚nger‚key‚gives‚a‚printing‚character:‚circle-plus,‚circle-minus,‚circle-cross,‚and  ,circle-slash‚ are‚ typed‚ this‚ way.‚ "  ^The‚îroman-numeral‚îkeys‚îare‚înot‚îused‚îby‚îthe‚îsystem.‚One‚îuseful‚îthing‚îyou‚îcan‚do‚with‚them  ,is‚ to‚ put‚ your‚ own‚ editor‚ commands‚ or‚ keyboard‚ macros‚ on‚ them.‚ "  ^The‚operations‚performed‚by‚the‚various‚function‚keys‚are‚summarized‚in‚the‚Index‚of  ,Function‚ Keys‚ (see‚ chapter‚ 9,‚page‚ 35).‚  ,"@ ,1.3 The Mouse "  ^The‚mouse‚is‚a‚pointing‚device‚that‚can‚be‚moved‚around‚on‚a‚at‚surface.‚These‚motions  ,are‚îsensed‚îby‚îthe‚îLisp‚îMachine,‚which‚îusually‚îresponds‚îby‚îmoving‚îa‚îcursor‚îaround‚îon‚îthe‚îscreen  ,in‚a‚corresponding‚manner.‚The‚shape‚of‚the‚cursor‚varies,‚depending‚on‚context.‚See‚chapter  ,10,‚page‚ 40.‚ "  ^There‚are‚three‚buttons‚on‚the‚mouse,‚called‚Left,‚Middle,‚and‚Right.‚They‚are‚used‚to  ,specify‚operations‚to‚be‚performed.‚Typically‚the‚user‚points‚at‚something‚with‚the‚mouse‚and  ,species‚an‚operation‚by‚clicking‚the‚mouse‚buttons.‚Rapid‚double‚clicks‚are‚conventionally  ,distinguished‚îfrom‚îsingle‚clicks.‚Thus,‚in‚any‚specic‚context,‚there‚are‚up‚to‚six‚operations‚that  ,can‚be‚performed‚with‚the‚mouse,‚invoked‚by‚Left,‚Left‚Double,‚Middle,‚Middle‚Double,  ,Right,‚and‚îRight‚îDouble‚îclicks.‚Some‚îof‚îthese‚îoperations‚îare‚îlocal‚îto‚îparticular‚îprograms‚îsuch‚îas  ,the‚ editor,‚and‚ some‚ are‚ dened‚ more‚ widely‚ across‚ the‚ system.‚ "  ^Typically‚the‚operations‚available‚by‚clicking‚the‚mouse‚buttons‚are‚listed‚at‚the‚bottom‚of  ,the‚ screen.‚This‚ display‚ changes‚ as‚ you‚ move‚ the‚ mouse‚ around‚ or‚ run‚ dierent‚ programs.‚ "  ^Sometimes‚holding‚a‚mouse‚button‚down‚continuously‚for‚a‚period‚of‚time‚may‚also‚be  ,dened‚to‚perform‚some‚operation,‚for‚example‚drawing‚a‚curve‚on‚the‚screen.‚This‚will‚be  ,indicated‚by‚the‚word‚"Hold".‚For‚example,‚"Middle‚Hold"‚means‚to‚click‚the‚middle‚mouse  ,button‚down‚and‚hold‚it‚down,‚releasing‚it‚only‚when‚the‚operation‚is‚complete.‚"Left‚Double  ,Hold"‚means‚to‚click‚the‚left‚mouse‚button‚twice,‚holding‚it‚down‚the‚second‚time‚until‚the  ,operation‚ is‚ complete.‚ "  ^Occasionally‚a‚long‚click‚is‚distinguished‚from‚a‚short‚one,‚as‚a‚Morse‚Code‚dash‚is  ,distinguished‚from‚a‚dot.‚In‚these‚cases‚it‚doesn't‚matter‚exactly‚how‚long‚the‚button‚is‚held "9 ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Booting the Machine 4 *Operating the Lisp Machine "P down,‚as‚long‚as‚it‚is‚perceptibly‚longer‚than‚the‚usual‚rapid‚strike.‚Such‚a‚click‚will‚be  described‚ by‚ the‚ word‚ "Long",‚as‚ in‚ "Right‚ Long".‚ "  HThe‚îmouse‚îis‚îcompletely‚î"soft",‚like‚îthe‚îkeyboard:‚The‚îLisp‚îMachine‚îcan‚be‚programmed‚to  interpret‚the‚mouse‚in‚any‚desired‚fashion.‚The‚protocol‚that‚has‚been‚chosen,‚however,‚is  extremely‚ general‚ and‚ should‚ suce‚ for‚ almost‚ all‚ needs.‚  "@ 1.4 Booting the Machine "  HThe‚Lisp‚machine‚can‚be‚"booted"‚by‚typing‚special‚combinations‚of‚keys‚on‚the‚keyboard.  There‚are‚two‚kinds‚of‚booting;‚cold-booting‚completely‚reinitializes‚the‚machine,‚while‚warm-  booting‚crashes‚it‚and‚then‚restarts‚it.‚Cold-booting‚is‚what‚you‚do‚when‚you‚have‚just‚switched  on‚îpower‚to‚the‚machine.‚It‚is‚also‚a‚good‚idea‚to‚cold-boot‚when‚done‚with‚the‚machine‚so‚as  to‚ leave‚ it‚ in‚ a‚ completely‚ clean‚ state‚ for‚ the‚ next‚ person.‚ "  HWarm-booting‚îis‚îa‚îkludgey‚îescape‚mechanism‚which‚allows‚you‚to‚restart‚the‚machine‚after‚it  has‚crashed‚or‚when‚it‚is‚in‚some‚run-away‚state‚that‚for‚some‚reason‚you‚can't‚get‚out‚of‚by  using‚the‚normal‚function‚keys.‚Warm-booting‚is‚not‚guaranteed‚to‚work,‚since‚it‚may‚have‚to  restart‚the‚machine‚from‚any‚arbitrary,‚inconsistent‚state.‚ However,‚warm-booting‚makes‚a  reasonable‚îattempt‚îto‚îget‚îthe‚îsystem‚îto‚îcome‚îup‚îso‚îthat‚îyou‚îcan‚îcontinue,‚or‚îsave‚îyour‚îwork‚îand  then‚ cold-boot.‚ "  HBoth‚kinds‚of‚booting‚start‚by‚resetting‚the‚machine‚hardware‚and‚reloading‚the‚microcode  from‚îthe‚îdisk.‚Cold-booting‚îthen‚îreloads‚îthe‚îentire‚îcontents‚of‚virtual‚memory‚from‚a‚fresh‚copy  on‚the‚disk,‚while‚warm-booting‚recovers‚the‚virtual‚memory‚you‚were‚working‚in.‚The‚Lisp  system‚then‚comes‚up‚and‚runs‚for‚a‚few‚seconds,‚performing‚various‚initialization‚tasks,‚puts‚a  greeting‚message‚at‚the‚top‚of‚the‚screen,‚and‚leaves‚you‚in‚a‚Lisp‚listener‚waiting‚for‚you‚to  type‚ in‚ Lisp‚ forms‚ to‚ be‚ evaluated.‚See‚ chapter‚ 3,‚page‚ 19.‚ "  HThe‚incantations‚used‚for‚warm-booting‚and‚cold-booting‚involve‚holding‚down‚all‚four  control‚and‚meta‚keys‚simultaneously‚(the‚two‚to‚the‚left‚of‚the‚space‚bar‚and‚the‚two‚to‚the  right‚îof‚îthe‚îspace‚îbar),‚and‚îstriking‚îRUBOUT‚îfor‚îa‚îcold-boot‚îor‚îRETURN‚îfor‚îa‚îwarm-boot.‚This  combination‚ of‚ keys‚ is‚ extremely‚ dicult‚ to‚ type‚ accidentally.‚ "  HOn‚terminals‚where‚the‚mouse‚is‚plugged‚into‚the‚keyboard‚rather‚than‚the‚base‚of‚the  display‚îmonitor,‚after‚îa‚îboot‚îthe‚îmouse‚îwill‚înot‚îwork‚îuntil‚îyou‚rst‚type‚a‚key.‚This‚is‚to‚avoid  disturbing‚the‚machine‚while‚it‚is‚booting,‚which‚could‚make‚it‚forget‚whether‚it‚was‚to‚do‚a  cold‚or‚warm‚boot.‚Normally‚you‚will‚not‚notice‚this,‚as‚the‚rst‚thing‚you‚ought‚to‚do‚after  cold-booting‚ is‚ to‚ log‚ in,‚which‚ involves‚ typing‚ on‚ the‚ keyboard.‚ "‡"‡"‡"7 DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 5 The Window System "P ,2. The Window System "( ^The‚window‚system‚is‚responsible‚for‚the‚appearance‚of‚the‚display.‚It‚allocates‚display‚space  ,and‚îallows‚îthe‚user‚to‚shift‚his‚attention‚between‚many‚programs‚quickly‚and‚easily.‚Usually,‚all  ,input‚ and‚ output‚ are‚ mediated‚ by‚ the‚ window‚ system.‚  ,"@ ,2.1 The Geography of the Display  ,"@ ,2.1.1 Windows "  ^The‚display‚shows‚one‚or‚more‚windows‚,‚which‚are‚independent‚sub-displays.‚Most‚windows  ,have‚borders‚(black‚outlines)‚around‚them.‚Some‚have‚a‚label‚which‚is‚usually‚in‚the‚lower‚left-  ,hand‚corner.‚If‚the‚display‚is‚completely‚taken‚up‚by‚one‚window,‚the‚borders‚and‚label‚are  ,often‚ omitted.‚ "  ^Often‚îa‚îwindow‚îwill‚îfunction‚îas‚îa‚stream‚,‚that‚is,‚a‚place‚that‚a‚program‚can‚read‚from‚and  ,write‚îto.‚In‚îthis‚îway,‚a‚îwindow‚provides‚a‚communications‚channel‚whereby‚the‚user‚can‚talk‚to  ,a‚ program.‚ "  ^Usually‚one‚of‚the‚windows‚on‚the‚screen‚is‚selected‚.‚This‚means‚that‚that‚window‚is‚the  ,focus‚îof‚îyour‚îattention,‚and‚îkeyboard‚îinput‚îis‚îdirected‚îto‚îit,‚so‚that‚a‚program‚reading‚from‚that  ,window‚îwill‚îread‚îwhat‚îyou‚îtype.‚Most‚îoften‚the‚selected‚window‚will‚have‚a‚blinking‚cursor‚and  ,the‚îother‚îwindows‚îon‚îthe‚îdisplay‚î(if‚îany)‚îwill‚înot.‚Usually,‚what‚you‚type‚will‚be‚printed‚in‚the  ,selected‚ window‚ at‚ the‚ place‚ marked‚ by‚ the‚ blinking‚ cursor.‚ "  ^Windows‚can‚be‚exposed‚,‚meaning‚that‚they‚are‚fully‚visible‚on‚the‚screen,‚or‚else  ,deexposed‚.‚A‚deexposed‚window‚may‚either‚be‚partially‚visible‚and‚partially‚covered‚by‚other  ,windows,‚or‚entirely‚invisible.‚Deexposed‚windows‚can‚be‚brought‚back‚to‚the‚display‚in‚many  ,ways,‚described‚ later.‚The‚ selected‚ window‚ is‚ always‚ exposed.‚  ,"@ ,2.1.2 The Who-line and Run-lights "  ^At‚the‚bottom‚of‚the‚display‚is‚the‚who-line‚.‚Here‚are‚displayed‚several‚pieces‚of‚status  ,information.‚From‚left‚to‚right‚the‚who-line‚shows‚the‚date‚and‚time,‚your‚login‚name,‚the  ,current‚package,‚the‚state‚of‚the‚process‚that‚is‚connected‚to‚the‚keyboard,‚and‚the‚state‚of‚an  ,open‚île‚îor‚îthe‚îconsole‚îidle‚time,‚the‚time‚since‚the‚keyboard‚was‚last‚typed‚upon‚or‚the‚mouse  ,last‚ clicked‚ upon.‚ "  ^Many‚things‚can‚appear‚in‚the‚process‚state‚eld;‚here‚are‚some‚of‚the‚most‚common‚and  ,least‚self-explanatory.‚Don't‚expect‚to‚understand‚everything‚in‚this‚table‚(nor‚process‚states‚you  ,see‚îthat‚îare‚înot‚îin‚îthis‚îtable)‚îcompletely.‚The‚îprocess‚îstate‚îin‚îthe‚îwho-line‚îis‚there‚to‚give‚you‚a  ,hint‚as‚to‚what‚is‚going‚on,‚but‚often‚has‚to‚do‚with‚internal‚details‚of‚the‚particular‚program  ,being‚ run,‚or‚ with‚ the‚ more‚ esoteric‚ features‚ of‚ the‚ Lisp‚ machine‚ process‚ system.‚  ," ,RUN tThe‚ process‚ is‚ running‚ (as‚ opposed‚ to‚ waiting‚ for‚ something).‚  ," ,TYI tThe‚ process‚ is‚ waiting‚ for‚ you‚ to‚ type‚ on‚ the‚ keyboard.‚ "U ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! The Geography of the Display 6 *Operating the Lisp Machine "P Output Hold ^The‚îprocess‚îis‚îtrying‚îto‚îdisplay‚îon‚îa‚îwindow‚îwhich‚îcannot‚îdisplay‚îright‚înow.‚For  ^instance,‚the‚window‚may‚not‚be‚exposed.‚$[This‚needs‚to‚be‚explained  ^somewhere‚ in‚ this‚ document.]‚  " LOCK ^The‚process‚is‚waiting‚for‚some‚other‚process‚to‚unlock‚a‚lock.‚This‚is‚typical‚of  ^a‚îset‚îof‚îprocess‚îstates‚îwhose‚îinterpretation‚îdepends‚îon‚knowledge‚of‚the‚particular  ^program‚ running.‚  " NIL ^The‚who-line‚is‚not‚looking‚at‚any‚process.‚Typically‚this‚is‚because‚no‚window  ^is‚selected.‚ The‚who-line‚normally‚looks‚at‚the‚process‚associated‚with‚the  ^selected‚ window.‚  " ARREST ^The‚process‚is‚arrested‚,‚which‚means‚it‚is‚not‚allowed‚to‚run.‚#See‚the  ^TERMINAL‚ A‚ command‚ (page‚ 36).‚  " STOP ^The‚ process‚ is‚ not‚ running‚ because‚ it‚ does‚ not‚ have‚ a‚ "run‚ reason".‚  " OPEN, NETI, NETO, Net Wait, File Finish, etc.  ^The‚process‚is‚waiting‚for‚service‚from‚another‚machine,‚over‚the‚Chaosnet.  ^Typically‚ the‚ other‚ machine‚ is‚ a‚ le‚ server‚ such‚ as‚ the‚ AI‚ Lab‚ timesharing‚ system.‚ "  HUnderneath‚the‚who-line‚are‚three‚run-lights‚,‚small‚horizontal‚bars‚which‚icker‚on‚and‚o.  The‚one‚on‚the‚right,‚approximately‚under‚the‚process‚state,‚is‚there‚when‚the‚processor‚is  running.‚The‚îone‚îin‚îthe‚îmiddle‚is‚there‚when‚the‚disk‚is‚running.‚The‚one‚to‚the‚left‚lights‚up  when‚ the‚ garbage-collector‚ is‚ running.‚ "  HAbove‚the‚who-line‚there‚is‚a‚line‚of‚mouse-documentation,‚which‚is‚displayed‚in‚inverse  video‚to‚make‚it‚easy‚to‚move‚your‚eyes‚to‚it‚from‚someplace‚else‚on‚the‚screen.‚This‚line‚tells  you‚what‚the‚buttons‚on‚the‚mouse‚would‚do‚if‚you‚clicked‚them‚with‚the‚mouse‚where‚it  currently‚is.‚If‚the‚line‚is‚blank,‚it‚means‚the‚default‚mouse‚buttons‚are‚in‚eect;‚clicking‚Left  will‚select‚the‚window‚pointed-to,‚and‚clicking‚Right‚will‚get‚you‚the‚system‚menu‚(these‚are  explained‚ later).‚  "@ 2.1.3 Blinkers and Cursors "  HScattered‚around‚the‚display‚are‚markers‚of‚various‚shapes‚and‚dynamic‚characteristics.‚They  are‚ all‚ called‚ blinkers‚ for‚ historical‚ reasons,‚although‚ only‚ some‚ of‚ them‚ blink.‚ "  HOne‚blinker‚is‚associated‚with‚the‚mouse:‚when‚you‚slide‚the‚mouse‚along‚a‚surface,‚that  blinker‚moves‚in‚a‚corresponding‚direction.‚When‚the‚mouse‚is‚moved‚very‚rapidly,‚the‚mouse  blinker‚gets‚big‚like‚Godzilla‚in‚order‚to‚maintain‚visibility.‚Small‚children‚should‚be‚taken‚out  of‚ the‚ room‚ before‚ demonstrating‚ this‚ frightening‚ feature.‚ "  HEach‚îwindow‚îon‚îthe‚îdisplay‚înormally‚îkeeps‚îtrack‚îof‚îa‚îposition‚îcalled‚îthe‚îcursor‚,‚which‚is‚the  place‚îat‚îwhich‚îtext‚îwill‚înext‚îbe‚îdisplayed‚in‚the‚window.‚The‚cursor‚is‚almost‚always‚marked‚by  a‚rectangular‚blinker.‚In‚the‚selected‚window,‚this‚blinker‚ashes‚with‚a‚period‚of‚about‚half‚a  second.‚This‚ is‚ how‚ you‚ tell‚ at‚ a‚ glance‚ which‚ window‚ is‚ selected.‚ "  HSometimes‚when‚the‚Lisp‚Machine‚is‚very‚busy,‚the‚blinkers‚will‚falter‚because‚the‚program  responsible‚for‚maintaining‚them‚is‚not‚getting‚run‚regularly.‚#This‚does‚not‚indicate‚a  malfunction‚ but‚ is‚ part‚ of‚ the‚ normal‚ behavior‚ of‚ the‚ Lisp‚ Machine.‚ "d DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 7 DUsing the Mouse "P ,2.2 Using the Mouse "  ^One‚blinker‚is‚always‚associated‚with‚the‚mouse,‚and‚whenever‚the‚mouse‚is‚moved,‚this  ,blinker‚îmoves‚îin‚îa‚îcorresponding‚îfashion.‚The‚îblinker‚îcontrolled‚îby‚îthe‚îmouse‚îis‚often‚called‚the  ,mouse‚ cursor‚.‚ "  ^At‚any‚given‚moment,‚some‚program‚is‚listening‚to‚the‚mouse‚and‚is‚responsible‚for‚the  ,appearance‚îof‚the‚mouse‚cursor,‚the‚way‚in‚which‚it‚moves‚around,‚and‚what‚happens‚when‚the  ,mouse‚îbuttons‚îare‚îpressed.‚You‚îcan‚îtell‚îwho‚îis‚îlistening‚îto‚îthe‚îmouse‚îby‚îlooking‚îat‚the‚shape‚of  ,the‚mouse‚cursor.‚The‚cursor‚may‚change‚shape‚as‚you‚move‚it‚around‚the‚display,‚indicating  ,that‚jurisdiction‚over‚the‚mouse‚is‚passing‚from‚one‚program‚to‚another.‚ Also,‚individual  ,programs‚îmay‚îvary‚îthe‚shape‚of‚the‚mouse‚cursor‚to‚show‚exactly‚what‚functions‚are‚available‚in  ,a‚ particular‚ context.‚See‚ chapter‚ 10,‚page‚ 40.‚  ,"@ ,2.2.1 Pointing at Something with the Mouse "  ^The‚mouse‚is‚almost‚always‚used‚as‚a‚pointing‚device.‚One‚uses‚the‚mouse‚to‚indicate  ,something‚on‚the‚display,‚and‚then‚one‚clicks‚the‚mouse‚buttons‚to‚specify‚an‚operation‚to‚be  ,performed‚ on‚ or‚ with‚ the‚ thing‚ indicated.‚ "  ^Graphics-oriented‚programs‚may‚simply‚use‚the‚mouse‚as‚a‚device‚for‚indicating‚positions‚on  ,the‚screen.‚One‚could‚imagine‚using‚the‚mouse‚to‚specify‚two‚points‚to‚be‚connected‚by‚a‚line,  ,for‚ example.‚ "  ^More‚îoften,‚however,‚the‚îmouse‚îis‚îused‚îto‚îpoint‚îto‚distinctly‚displayed‚objects‚on‚the‚screen.  ,In‚many‚cases,‚an‚object‚thus‚indicated‚responds‚by‚changing‚its‚appearance‚in‚some‚way.‚Such  ,objects‚are‚mouse-sensitive‚.‚The‚system‚convention‚is‚that‚when‚the‚mouse‚is‚pointing‚at‚or‚near  ,a‚ mouse-sensitive‚ object,‚an‚ outline‚ is‚ drawn‚ around‚ that‚ object.‚  ,"@ ,2.2.2 Clicking the Mouse "  ^When‚you‚click‚a‚mouse‚button‚while‚the‚mouse‚is‚pointing‚at‚a‚mouse-sensitive‚object,‚the  ,response‚to‚the‚mouse‚buttons‚depends‚on‚that‚object.‚Otherwise‚the‚response‚depends‚on‚the  ,window‚that‚the‚mouse‚is‚pointing‚at.‚Often‚the‚shape‚of‚the‚mouse‚cursor‚is‚used‚as‚a‚clue‚to  ,what‚the‚mouse‚buttons‚will‚do.‚Generally‚the‚mouse-documentation‚line‚at‚the‚bottom‚of‚the  ,screen‚ will‚ also‚ give‚ a‚ brief‚ reminder‚ of‚ what‚ the‚ mouse‚ buttons‚ will‚ do.‚ "  ^Sometimes,‚clicking‚the‚mouse‚buttons‚does‚not‚do‚something‚to‚the‚object‚indicated‚by‚the  ,mouse,‚but‚rather‚calls‚up‚a‚menu‚of‚available‚operations.‚In‚this‚case‚options‚oered‚by‚the  ,menu‚may‚pertain‚to‚the‚object‚that‚the‚mouse‚was‚pointing‚at,‚or‚they‚may‚be‚more‚general  ,operations.‚Menus‚ are‚ discussed‚ in‚ detail‚ below.‚ "  ^Although‚the‚usage‚of‚the‚mouse‚buttons‚varies‚depending‚on‚what‚the‚mouse‚is‚pointing‚at,  ,there‚are‚system-wide‚conventions‚that‚most‚programs‚adhere‚to.‚Generally‚the‚Left‚button‚on  ,the‚îmouse‚îwill‚îdo‚something‚simple,‚while‚the‚Right‚button‚will‚do‚something‚more‚complicated,  ,oering‚îoptions‚îand‚choices‚that‚the‚beginning‚user‚probably‚does‚not‚need‚to‚worry‚about.‚The  ,use‚ of‚ the‚ Middle‚ button‚ is‚ less‚ standardized.‚ "} ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Manipulating Windows 8 *Operating the Lisp Machine "P HIf‚there‚are‚several‚things‚you‚might‚mean‚by‚pointing‚to‚a‚mouse-sensitive‚object‚and  clicking,‚typically‚the‚Right‚button‚will‚give‚you‚a‚menu‚of‚operations‚from‚which‚you‚can  choose,‚and‚îthe‚îLeft‚îbutton‚îwill‚îdo‚îthe‚îmost‚î"obvious"‚îthing.‚If‚there‚is‚no‚"obvious"‚choice,‚it  will‚generally‚do‚the‚last‚thing‚you‚chose‚in‚the‚same‚circumstances‚with‚the‚Right‚button.‚If  there‚îis‚îonly‚îone‚thing‚you‚could‚mean‚by‚clicking,‚no‚distinction‚will‚be‚made‚among‚the‚three  buttons.‚ "  HThe‚system‚convention‚is‚that‚if‚there‚isn't‚anything‚better‚for‚the‚mouse‚buttons‚to‚do,  clicking‚Left‚selects‚the‚window‚the‚mouse‚is‚pointing‚at‚(see‚section‚2.3.4,‚page‚11)‚and‚clicking  Right‚invokes‚the‚System‚Menu‚(see‚section‚2.3.2,‚page‚9).‚$In‚this‚case,‚the‚mouse-  documentation‚ line‚ at‚ the‚ bottom‚ of‚ the‚ screen‚ will‚ be‚ blank.‚ "  HThe‚ following‚ sections‚ discuss‚ the‚ things‚ you‚ can‚ do‚ by‚ clicking‚ the‚ mouse‚ in‚ more‚ detail.‚  "@ 2.3 Manipulating Windows "  HWhen‚you‚step‚up‚to‚a‚free‚Lisp‚Machine,‚a‚window‚of‚the‚Lisp‚Listener‚type‚will‚ll‚the  whole‚display.‚You‚can‚tell‚from‚the‚rectangular‚blinker‚near‚the‚upper‚left‚corner‚that‚this  window‚is‚selected.‚The‚Lisp‚Listener‚window‚is‚used‚to‚talk‚to‚the‚Lisp‚interpreter.‚Its‚use‚is  described‚in‚the‚chapter‚"The‚Lisp‚Listener"‚(chapter‚3,‚page‚19).‚If‚you‚want‚to‚start‚using  Lisp‚as‚soon‚as‚possible,‚you‚can‚read‚that‚chapter‚now,‚as‚it‚does‚not‚depend‚on‚any‚of‚the  others.‚ "  HAs‚you‚use‚the‚Lisp‚Machine,‚you‚may‚create‚new‚windows,‚reselect‚old‚ones,‚and‚move  windows‚around‚the‚screen‚or‚reshape‚them‚to‚suit‚your‚taste.‚This‚section‚describes‚how‚these  operations‚ may‚ be‚ performed.‚  "? 2.3.1 Menus "  HA‚particularly‚common‚and‚useful‚kind‚of‚window‚is‚the‚menu‚.‚Menus‚are‚windows‚that  contain‚the‚names‚of‚several‚options.‚These‚options‚are‚mouse-sensitive,‚and‚you‚select‚one‚by  pointing‚ at‚ it‚ with‚ the‚ mouse‚ and‚ clicking.‚ "  HMany‚îmenus‚îare‚îinvisible‚îunless‚îit‚îis‚time‚to‚select‚an‚option‚from‚them.‚Then‚they‚pop‚up‚,  or‚îappear‚îsuddenly‚îon‚top‚of‚some‚previous‚display,‚obscuring‚what‚was‚there‚before.‚After‚you  select‚an‚option‚with‚the‚mouse,‚the‚menu‚disappears‚and‚the‚operation‚that‚you‚specied‚is  performed.‚If‚you‚don't‚want‚to‚select‚any‚of‚the‚options,‚you‚can‚simply‚move‚the‚mouse‚far  out‚of‚the‚menu‚and‚it‚will‚disappear.‚When‚this‚is‚not‚the‚case,‚the‚menu‚will‚contain‚the  word‚ ABORT;‚clicking‚ on‚ that‚ will‚ make‚ it‚ disappear.‚ "‡"‡"‡" DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 9 vManipulating Windows "P ,2.3.2 The System Menu "  ^One‚important‚and‚useful‚menu‚is‚the‚system‚menu‚.‚It‚has‚a‚repertoire‚of‚operations‚that  ,mostly‚have‚to‚do‚with‚windows.‚You‚can‚almost‚always‚conjure‚up‚a‚system‚menu‚by‚pointing  ,at‚îsome‚îplace‚îon‚îthe‚îscreen‚îand‚îclicking‚îDouble‚îRight.‚The‚system‚menu‚will‚appear‚at‚the‚spot  ,you‚ pointed‚ to.‚The‚ mouse‚ cursor‚ appears‚ on‚ the‚ system‚ menu‚ as‚ a‚ little‚ cross.‚ "  ^If‚the‚mouse‚cursor‚is‚an‚arrow‚pointing‚North‚by‚Northwest‚you‚can‚get‚the‚system‚menu  ,by‚ clicking‚ either‚ Right‚ Single‚ or‚ Right‚ Double.‚ "  ^To‚select‚an‚operation‚from‚the‚system‚menu,‚point‚at‚it‚with‚the‚mouse‚and‚click‚Left‚or  ,Right.‚If‚you‚call‚up‚the‚system‚menu‚by‚mistake,‚as‚with‚most‚menus‚you‚can‚dismiss‚it  ,without‚selecting‚anything‚by‚simply‚moving‚the‚mouse‚far‚o‚the‚menu.‚This‚also‚works‚for  ,most‚ other‚ kinds‚ of‚ pop-up‚ menus.‚ "  ^This‚subsection‚describes‚what‚the‚various‚options‚on‚the‚system‚menu‚do.‚Since‚this‚is  ,designed‚as‚a‚quick‚reference,‚unfamiliar‚vocabulary‚may‚appear.‚ If‚you‚don't‚understand  ,something,‚it‚ is‚ probably‚ explained‚ elsewhere‚ in‚ this‚ document.‚  ," ,Create tThis‚allows‚you‚to‚create‚a‚new‚window.‚The‚system‚will‚ask‚you‚what‚kind‚of  twindow‚you‚want‚and‚where‚to‚put‚it‚on‚the‚screen.‚See‚section‚2.3.6,‚page‚13  tfor‚ the‚ details.‚  ," ,Select tThe‚system‚menu‚is‚replaced‚by‚a‚menu‚whose‚options‚are‚all‚the‚windows  tcurrently‚selectable.‚When‚you‚pick‚one‚with‚the‚mouse,‚that‚window‚becomes  tselected.‚  ," ,Inspect tThe‚ Inspector‚ is‚ invoked.‚See‚ chapter‚ 5,‚page‚ 27.‚  ," ,Trace tThe‚function-tracing‚system‚is‚invoked‚(see‚trace‚in‚the‚Lisp‚machine‚manual).  tFirst‚îa‚îsmall‚îwindow‚îappears‚îin‚îwhich‚îyou‚îare‚îasked‚îfor‚îthe‚îname‚îof‚îthe‚îfunction  tto‚îbe‚îtraced.‚Then‚îa‚îmenu‚îof‚îoptions‚îto‚îthe‚îtrace‚îsystem‚îappears.‚After‚selecting  twhich‚trace‚features‚you‚want,‚click‚on‚Do‚It‚to‚do‚it.‚If‚you‚decide‚you‚don't  twant‚ to‚ do‚ it‚ after‚ all,‚click‚ on‚ Abort.‚  ," ,Split Screen tThis‚is‚a‚convenient‚way‚to‚divide‚the‚screen‚area‚among‚several‚windows.‚See  tsection‚ 2.3.8,‚page‚ 14‚ for‚ the‚ details.‚  ," ,Layouts tThe‚îsystem‚menu‚is‚replaced‚by‚a‚menu‚containing‚at‚least‚the‚options‚Just‚Lisp  tand‚Save‚This.‚If‚you‚choose‚Just‚Lisp,‚an‚idle‚Lisp‚Listener‚will‚be‚picked,  texpanded‚to‚cover‚the‚whole‚screen,‚and‚selected.‚If‚you‚choose‚Save‚This,‚the  tcurrent‚conguration‚of‚exposed‚windows‚will‚be‚remembered.‚ You‚will‚be  tprompted‚ for‚ a‚ name‚ to‚ remember‚ the‚ conguration‚ under.‚ "  tAll‚îof‚îthe‚îpreviously‚remembered‚layouts‚will‚appear‚in‚future‚Layouts‚menus.‚If  tyou‚pick‚that‚option‚from‚the‚Layouts‚menu,‚that‚layout‚will‚be‚restored‚to‚the  tscreen.‚  ," ,Edit Screen tInvokes‚the‚screen‚editor,‚which‚allows‚you‚to‚move‚windows‚around‚in‚various  tways.‚See‚ section‚ 2.3.12,‚page‚ 16.‚  ," ,Other tThe‚system‚menu‚is‚replaced‚by‚another‚menu‚with‚more‚options‚on‚it.‚This  tmenu‚îis‚îan‚îextension‚îof‚îthe‚îsystem‚îmenu,‚and‚îits‚îoptions‚îare‚îdocumented‚îfully‚îin  tthe‚ remaining‚ part‚ of‚ this‚ table.‚ "K ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Manipulating Windows y10 *Operating the Lisp Machine "P Arrest ^Often‚îa‚îwindow‚îhas‚îa‚îprocess‚îassociated‚îwith‚îit‚îin‚îsome‚way.‚Pointing‚the‚mouse  ^at‚a‚window,‚calling‚up‚a‚system‚menu,‚and‚clicking‚on‚"Arrest"‚halts‚the  ^process‚ associated‚ with‚ that‚ window.‚  " Un-Arrest ^Pointing‚at‚a‚window,‚calling‚a‚system‚menu,‚and‚clicking‚on‚"Un-Arrest"‚starts  ^the‚process‚associated‚with‚that‚window‚from‚where‚it‚left‚o,‚if‚it‚was‚stopped  ^by‚mousing‚"Arrest"‚from‚the‚system‚menu.‚There‚are‚other‚reasons‚for‚a  ^process‚îto‚îbe‚îstopped,‚however,‚and‚îthis‚will‚not‚undo‚all‚of‚them.‚See‚"Arrest"  ^above,‚and‚also‚see‚the‚"Index‚to‚Function‚Keys"‚under‚"TERMINAL‚A"‚(page  ^36).‚  " Reset ^Pointing‚at‚a‚window,‚calling‚a‚system‚menu,‚and‚clicking‚on‚"Reset"‚starts‚the  ^process‚îassociated‚îwith‚that‚window‚from‚scratch,‚re-evaluating‚that‚process'‚initial  ^form.‚Whatever‚program‚the‚process‚had‚been‚running‚is‚thrown‚out‚of.‚Before  ^the‚reset‚actually‚happens,‚a‚window‚will‚pop‚up‚asking‚you‚to‚conrm‚the  ^operation;‚answer‚yes‚by‚clicking‚the‚mouse‚or‚no‚by‚moving‚it‚away‚from‚the  ^conrmation‚ window.‚  " Kill ^Destroys‚the‚window‚that‚the‚mouse‚was‚pointing‚to‚when‚the‚system‚menu‚was  ^summoned.‚Before‚îthe‚îkill‚îactually‚îhappens,‚a‚îwindow‚will‚pop‚up‚asking‚you‚to  ^conrm‚îthe‚îoperation;‚answer‚îyes‚îby‚îclicking‚îthe‚îmouse‚îor‚no‚by‚moving‚it‚away  ^from‚ the‚ conrmation‚ window.‚  " Emergency Break  ^Clicking‚on‚"Emergency‚Break"‚is‚the‚same‚as‚typing‚"TERMINAL‚CALL".‚It  ^gets‚you‚to‚the‚cold-load‚stream‚where‚there‚is‚a‚Lisp‚interpreter‚running‚that  ^does‚înot‚îdepend‚îon‚îthe‚îwindow‚îsystem.‚See‚îthe‚"Index‚to‚Function‚Keys"‚under  ^"TERMINAL‚îCALL"‚î(page‚î37).‚This‚îfunction‚îis‚îaccessible‚îfrom‚îboth‚îthe‚îkeyboard  ^and‚îthe‚mouse‚so‚that‚if‚you‚break‚the‚software‚for‚one‚of‚them‚you‚still‚have‚a  ^chance‚ of‚ getting‚ to‚ the‚ cold-load‚ stream‚ and‚ xing‚ it.‚  " Refresh ^Refreshes‚the‚display‚on‚the‚window‚that‚the‚mouse‚was‚pointing‚to‚when‚the  ^system‚menu‚was‚summoned.‚ Useful‚when‚something‚dark‚and‚sinister‚has  ^munged‚ your‚ screen.‚  " Set Mouse Screen  ^The‚window‚system's‚jurisdiction‚extends‚not‚only‚to‚the‚main‚black-and-white  ^monitor,‚but‚to‚any‚other‚bit-raster‚monitors‚that‚are‚connected‚to‚the‚Lisp  ^Machine,‚such‚as‚a‚color‚monitor.‚However,‚in‚order‚to‚manipulate‚windows‚on  ^another‚screen,‚the‚mouse‚must‚somehow‚be‚moved‚to‚that‚screen.‚If‚you‚pick  ^the‚Set‚Mouse‚Screen‚option‚from‚the‚system‚menu,‚and‚there‚is‚more‚than‚one  ^screen‚connected‚to‚the‚Lisp‚Machine,‚the‚mouse‚will‚be‚moved‚onto‚another  ^screen.‚If‚you‚click‚Left‚on‚Set‚Mouse‚Screen,‚the‚system‚will‚pick‚another  ^screen‚(this‚is‚useful‚when‚there‚are‚only‚two).‚If‚you‚click‚Right,‚the‚system  ^menu‚will‚be‚replaced‚by‚a‚menu‚whose‚options‚are‚the‚names‚of‚the‚various  ^screens.‚When‚ you‚ pick‚ one‚ of‚ these‚ screens,‚the‚ mouse‚ will‚ move‚ to‚ that‚ screen.‚ "‡"‡"1 DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 11 vManipulating Windows "P ,2.3.3 Notification "  ^When‚certain‚asynchronous‚events‚occur,‚unrelated‚to‚what‚you‚are‚currently‚doing‚with‚the  ,selected‚îwindow,‚the‚îsystem‚înoties‚îyou‚îby‚îbeeping‚îand‚displaying‚an‚explanatory‚message.‚Such  ,an‚îevent‚îmight‚be‚an‚error‚in‚a‚process‚whose‚window‚is‚not‚exposed,‚an‚error‚or‚other‚attempt  ,to‚type‚out‚by‚a‚"background"‚process‚which‚has‚no‚associated‚window,‚or‚an‚attempt‚to‚type  ,out‚îon‚îa‚îdeexposed‚îwindow‚îof‚îa‚îkind‚îwhich‚înoties‚îrather‚than‚just‚waiting‚for‚you‚to‚expose‚it.  ,The‚system‚noties‚you‚in‚one‚of‚two‚ways,‚depending‚on‚what‚windows‚are‚currently‚on‚your  ,screen.‚ "  ^One‚way‚that‚you‚can‚be‚notied‚is‚by‚the‚appearance‚of‚a‚message‚enclosed‚in‚square  ,brackets.‚This‚method‚is‚used‚when‚the‚selected‚window‚is‚a‚Lisp‚listener,‚or‚any‚other‚type‚of  ,window‚that‚accepts‚notications.‚For‚instance,‚in‚the‚editor‚notications‚are‚printed‚this‚way‚in  ,the‚î"echo‚îarea"‚îbelow‚îthe‚îmode‚îline.‚If‚îthe‚înotication‚îinforms‚îyou‚îof‚îa‚îwindow‚waiting‚to‚type  ,out‚or‚to‚tell‚you‚about‚an‚error‚incurred‚by‚some‚program,‚then‚you‚can‚select‚that‚window‚at  ,any‚time‚by‚typing‚TERMINAL‚0‚S,‚or‚ESC‚0‚S‚on‚the‚old‚keyboards.‚You‚can‚return‚from  ,there‚îto‚îyour‚îoriginal‚îwindow‚îby‚îtyping‚îTERMINAL‚îS,‚or‚îESC‚îS‚on‚the‚old‚keyboards.‚See‚the  ,section‚ on‚ "Selecting‚ a‚ Window"‚ (section‚ 2.3.5,‚page‚ 12)‚ for‚ further‚ details.‚ "  ^The‚îother‚îway‚îyou‚can‚be‚notied‚is‚by‚the‚popping-up‚of‚a‚small‚window‚with‚the‚message  ,displayed‚îin‚îit.‚This‚îhappens‚îwhen‚îthere‚îis‚îno‚îgood‚îplace‚îon‚îthe‚îscreen‚îto‚îprint‚îthe‚îmessage.‚In  ,this‚case‚you‚point‚the‚mouse‚at‚the‚notication‚window‚and‚click‚the‚Left‚button,‚at‚which  ,point‚the‚notication‚will‚disappear‚and‚the‚associated‚window‚which‚is‚waiting‚to‚type‚out‚(if  ,any)‚will‚appear.‚Typing‚any‚normal‚key‚(typically‚space)‚will‚get‚rid‚of‚the‚notication‚and  ,return‚you‚to‚the‚window‚you‚were‚in‚when‚the‚notication‚popped‚up.‚#Alternatively,  ,TERMINAL‚0‚S‚will‚select‚the‚interesting‚window,‚then‚TERMINAL‚S‚will‚reselect‚the‚window  ,that‚îyou‚îwere‚îtyping‚at‚when‚the‚notication‚occurred.‚Selecting‚that‚window‚with‚the‚mouse‚by  ,clicking‚ Left‚ at‚ it‚ also‚ works.‚ "  ^If‚a‚notication‚pops‚up‚while‚you‚are‚typing,‚the‚system‚saves‚your‚typing‚in‚the‚window  ,you‚were‚typing‚at‚before‚the‚notication‚popped‚up.‚After‚beeping,‚it‚gives‚you‚a‚second‚or  ,two‚îto‚înotice‚îand‚îstop‚îtyping‚îbefore‚îit‚listens‚to‚the‚keyboard;‚at‚this‚point‚if‚you‚hit‚a‚key‚this  ,means‚ that‚ you‚ have‚ read‚ the‚ notication‚ and‚ want‚ it‚ to‚ go‚ away‚ now.‚ "  ^Notications‚are‚saved.‚If‚you‚want‚to‚see‚old‚notications‚again,‚call‚the‚function‚tv:print-  ,notifications,‚which‚îwill‚îprint‚îeach‚înotication‚îwith‚îthe‚îtime‚îthat‚it‚occurred.‚This‚can‚be‚useful  ,when‚ a‚ notication‚ is‚ accidentally‚ erased‚ before‚ you‚ have‚ had‚ time‚ to‚ read‚ it.‚  ,"@ ,2.3.4 Selecting a Window "  ^There‚are‚several‚ways‚to‚cause‚a‚particular‚window‚to‚become‚selected.‚If‚any‚part‚of‚the  ,desired‚window‚is‚visible‚on‚the‚screen,‚you‚can‚select‚it‚by‚pointing‚at‚it‚with‚the‚mouse‚and  ,clicking‚Left.‚If‚the‚desired‚window‚is‚completely‚invisible,‚you‚can‚call‚up‚a‚system‚menu‚and  ,pick‚the‚"Select"‚option.‚The‚system‚menu‚will‚be‚replaced‚by‚a‚menu‚of‚all‚the‚currently  ,selectable‚ windows.‚Pick‚ the‚ one‚ you‚ want‚ by‚ clicking‚ Left‚ on‚ it.‚ "  ^When‚a‚window‚is‚selected,‚it‚will‚become‚exposed‚if‚it‚was‚not‚exposed‚already.‚If‚the  ,selected‚window‚has‚a‚standard‚rectangular‚blinker,‚the‚blinker‚will‚wake‚up‚and‚start‚to‚ash.  ,The‚ window‚ is‚ now‚ fully‚ awake‚ and‚ anything‚ you‚ type‚ will‚ be‚ directed‚ to‚ it.‚ "K ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Manipulating Windows y12 *Operating the Lisp Machine "P 2.3.5 More Advanced Window Selection "  HAll‚the‚currently‚selectable‚windows‚are‚arranged‚in‚a‚kind‚of‚stack‚with‚the‚selected‚window  on‚top.‚This‚has‚no‚relation‚to‚the‚arrangement‚of‚windows‚on‚the‚display,‚but‚rather‚refers‚to  the‚way‚the‚window‚system‚keeps‚track‚of‚selectable‚windows.‚When‚you‚select‚a‚window‚with  the‚mouse,‚it‚is‚dredged‚up‚and‚put‚on‚top‚of‚the‚stack.‚The‚windows‚are‚thus‚arranged‚with  the‚most‚recently‚selected‚ones‚near‚the‚top‚of‚the‚stack.‚If‚you‚type‚TERMINAL‚1‚S,‚the  currently‚selected‚window‚will‚be‚moved‚to‚the‚bottom,‚and‚the‚next‚most‚recently‚selected  window‚îwill‚îcome‚îto‚îthe‚îtop‚and‚be‚selected.‚Repeatedly‚typing‚TERMINAL‚1‚S‚will‚select‚each  of‚ the‚ selectable‚ windows‚ in‚ turn.‚ "  HTyping‚TERMINAL‚-‚S‚(or‚TERMINAL‚-1‚S:‚the‚two‚are‚equivalent)‚will‚drag‚the‚window  on‚îthe‚îbottom‚îof‚the‚stack‚to‚the‚top.‚Repeatedly‚typing‚TERMINAL‚-‚S‚will‚select‚each‚of‚the  selectable‚îwindows‚îin‚îreverse‚îorder.‚Note‚îthat‚TERMINAL‚1‚S‚and‚TERMINAL‚-‚S‚do‚not‚alter  the‚ cyclic‚ order‚ of‚ the‚ selectable‚ windows.‚ "  HYou‚can‚select‚any‚selectable‚window‚with‚some‚variant‚of‚the‚TERMINAL‚S‚command.‚To  select‚the‚n‚th‚window‚in‚the‚stack,‚where‚the‚currently‚selected‚window‚is‚considered‚the‚rst,  type‚TERMINAL‚n‚S.‚This‚is‚just‚like‚selecting‚that‚window‚with‚the‚"Select"‚option‚to‚the  system‚ menu.‚The‚ window‚ in‚ question‚ is‚ extracted‚ from‚ the‚ stack‚ and‚ pushed‚ on‚ top.‚ " HTyping‚TERMINAL‚2‚S‚repeatedly‚ips‚back‚and‚forth‚between‚the‚two‚top‚windows‚on‚the  stack.‚When‚you‚type‚TERMINAL‚S‚with‚no‚argument,‚the‚argument‚defaults‚to‚2,‚and‚this‚is  the‚behavior‚you‚get.‚Typing‚TERMINAL‚3‚S‚repeatedly‚cycles‚through‚the‚top‚three‚windows  on‚the‚stack,‚and‚so‚on.‚If‚there‚are‚k‚selectable‚windows,‚giving‚TERMINAL‚S‚an‚argument  larger‚than‚k‚is‚the‚same‚as‚giving‚an‚argument‚of‚k‚,‚which‚is‚the‚same‚as‚giving‚an‚argument  of‚ -1;‚it‚ brings‚ up‚ the‚ "oldest"‚ window.‚ "  HGiving‚TERMINAL‚S‚a‚negative‚argument‚(other‚than‚-1,‚which‚was‚discussed‚above)‚of‚-k  takes‚îthe‚îcurrently‚îselected‚îwindow‚îand‚îstashes‚îit‚îin‚îthe‚îk‚th‚îslot‚îdown,‚bringing‚îthe‚îk‚-1‚îwindows  beneath‚it‚up.‚The‚window‚that‚was‚in‚second‚position‚becomes‚Top‚Dog‚and‚is‚selected.  Repeated‚k‚times,‚this‚cycles‚through‚the‚top‚k‚windows‚on‚the‚stack‚in‚reverse‚order.‚This‚is  exactly‚the‚inverse‚of‚a‚positive‚argument.‚TERMINAL‚n‚S‚and‚TERMINAL‚-n‚S‚undo‚each  other.‚ "  HThere‚is‚also‚a‚way‚to‚select‚a‚window‚that‚is‚trying‚to‚talk‚to‚you.‚When‚a‚deexposed  window‚has‚a‚process‚doing‚something‚interesting‚in‚it,‚such‚as‚waiting‚to‚type‚out‚or‚waiting‚to  tell‚you‚about‚an‚error‚it‚encountered,‚you‚can‚select‚it‚by‚typing‚TERMINAL‚0‚S.‚When‚a  window‚îgoes‚îinto‚îsuch‚îa‚îcondition,‚it‚îsends‚îyou‚a‚notication‚(see‚section‚2.3.3,‚page‚11).‚When  there‚îis‚îno‚îwindow‚îin‚îsuch‚îa‚îcondition,‚TERMINAL‚î0‚S‚does‚nothing.‚When‚there‚is‚more‚than  one‚îsuch‚îwindow,‚the‚îrst‚îone‚îfound‚îin‚îthe‚îstack‚îwill‚îbe‚îselected.‚Repeatedly‚typing‚TERMINAL  0‚ S‚ will‚ get‚ all‚ of‚ them.‚ "‡"‡"c DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 13 vManipulating Windows "P ,2.3.6 Creating New Windows "  ^Starting‚up‚new‚Editors,‚Lisp‚Listeners,‚Supdups,‚and‚so‚on,‚is‚done‚by‚creating‚new  ,windows‚îof‚îthe‚îappropriate‚îtype.‚This‚îsection‚îexplains‚îone‚îway‚to‚create‚new‚windows‚of‚various  ,types.‚ "  ^Call‚up‚a‚system‚menu‚and‚pick‚the‚"Create"‚option.‚The‚system‚menu‚will‚be‚replaced‚by  ,a‚menu‚of‚window‚types‚to‚create.‚At‚present‚there‚are‚six‚kinds‚of‚windows‚on‚this‚menu:  ,Supdup,‚Telnet,‚Lisp,‚Lisp‚î(Edit),‚Edit,‚and‚Peek.‚There‚is‚also‚Any,‚which‚allows‚you‚to‚type  ,in‚the‚avor‚of‚window‚you‚want‚from‚the‚keyboard.‚User-dened‚windows‚may‚be‚added‚to  ,this‚menu‚through‚the‚variable‚tv:default-window-types-item-list,‚so‚you‚may‚see‚more‚choices  ,in‚the‚menu‚than‚those‚listed‚here.‚The‚various‚window‚types‚are‚explained‚in‚other‚sections‚of  ,this‚ document.‚ "  ^Click‚on‚the‚type‚of‚window‚you‚wish‚to‚create.‚The‚menu‚will‚vanish‚and‚the‚mouse  ,blinker‚îwill‚change‚into‚an‚upper‚left‚corner‚bracket.‚With‚this‚corner‚bracket,‚point‚to‚the‚spot  ,on‚the‚screen‚where‚you‚want‚the‚upper‚left‚corner‚of‚the‚new‚window‚to‚be‚and‚click‚Left.  ,The‚bracket‚will‚freeze‚on‚that‚spot‚in‚order‚to‚mark‚it,‚and‚the‚mouse‚blinker‚will‚change‚into  ,a‚îlower‚îright‚îcorner‚îbracket.‚Use‚îthis‚îbracket‚îin‚îthe‚îsame‚îway‚îto‚îdene‚îthe‚îlower‚îright‚îcorner‚of  ,the‚ new‚ window.‚The‚ new‚ window‚ will‚ take‚ shape‚ between‚ the‚ corners‚ thus‚ delimited.‚ " ^To‚îmake‚îthe‚înew‚îwindow‚îoccupy‚îthe‚îwhole‚îscreen,‚simply‚îplace‚îthe‚îlower‚right‚corner‚above  ,or‚ to‚ the‚ left‚ of‚ the‚ upper‚ left‚ corner.‚ "  ^When‚you‚are‚giving‚the‚system‚a‚rectangle‚with‚the‚mouse‚in‚this‚way,‚clicking‚Left‚will  ,place‚the‚bracket‚where‚it‚is‚now,‚while‚clicking‚Right‚will‚place‚it‚at‚the‚nearest‚"suitable"  ,place.‚The‚îexact‚denition‚of‚"suitable"‚is‚complicated,‚but‚it‚tries‚to‚put‚it‚at‚a‚nearby‚window  ,edge‚or‚corner,‚if‚one‚is‚close‚enough.‚Note‚that‚the‚bracket‚will‚only‚move‚in‚the‚direction‚it  ,points,‚thus‚ you‚ point‚ at‚ a‚ corner‚ of‚ a‚ rectangle‚ from‚ inside‚ the‚ rectangle.‚ "  ^Usually‚îclicking‚îMiddle‚îwill‚abort‚the‚whole‚operation.‚Click‚Middle‚if‚you‚decide‚you‚don't  ,want‚ to‚ create‚ a‚ window‚ after‚ all.‚ "  ^Whenever‚îyou‚îcreate‚îa‚înew‚îwindow,‚it‚is‚immediately‚selected,‚and‚pushed‚onto‚the‚stack‚of  ,selectable‚windows.‚Usually‚the‚new‚window‚will‚stay‚around‚on‚that‚stack‚as‚a‚selectable  ,window‚ until‚ it‚ is‚ explicitly‚ destroyed.‚ "  ^Another‚ way‚ that‚ windows‚ get‚ created‚ is‚ explained‚ in‚ the‚ next‚ section.‚  ,"@ ,2.3.7 Selecting a System "  ^The‚SYSTEM‚function‚key‚can‚be‚used‚to‚nd‚a‚window‚of‚a‚particular‚type,‚and‚if‚one  ,does‚ not‚ exist,‚to‚ create‚ one.‚ "  ^The‚ SYSTEM‚ key‚ should‚ be‚ followed‚ by‚ one‚ of‚ these‚ code‚ letters:‚  ," ,E tEditor.‚  ," ,I tInspector.‚  ," ,L tLisp‚ Listener.‚ "M ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Manipulating Windows y14 *Operating the Lisp Machine "P M ^Mail-reading‚ system.‚  " P ^Peek.‚  " S ^Supdup.‚  " T ^Telnet.‚ "  HWhen‚you‚type‚SYSTEM‚followed‚by‚one‚of‚these‚letters,‚the‚stack‚of‚selectable‚windows‚is  scanned,‚from‚the‚top‚down,‚for‚a‚window‚of‚the‚specied‚type.‚As‚soon‚as‚one‚is‚found,‚it‚is  selected‚îand‚îmoved‚îto‚îthe‚îtop‚îof‚îthe‚îstack.‚If‚îthere‚îare‚îno‚windows‚of‚the‚specied‚type,‚one‚is  created.‚ "  HIf‚you‚hold‚down‚CTRL‚while‚typing‚the‚code‚letter,‚a‚new‚window‚of‚that‚type‚will‚be  created‚ even‚ if‚ one‚ already‚ exists.‚ "  HIn‚the‚event‚that‚the‚currently‚selected‚window‚is‚itself‚of‚the‚specied‚type,‚it‚is‚moved‚to  the‚bottom‚of‚the‚stack‚before‚the‚scan‚begins.‚Typing‚SYSTEM‚L‚repeatedly,‚for‚example,  cycles‚through‚all‚selectable‚Lisp‚Listener‚windows.‚If‚there‚is‚only‚one‚window‚of‚the‚specied  type,‚and‚it‚is‚current,‚it‚remains‚current‚and‚the‚system‚beeps‚to‚tell‚you‚that‚you‚probably  goofed.‚ "  HInvoking‚the‚function‚ed‚from‚a‚Lisp‚Listener‚is‚almost‚exactly‚the‚same‚as‚typing‚SYSTEM  E.‚The‚same‚Editor‚window‚gets‚selected‚in‚both‚cases.‚One‚minor‚dierence‚is‚that‚the‚next  time‚that‚particular‚Lisp‚Listener‚window‚is‚selected,‚the‚rst‚thing‚that‚will‚happen‚is‚that‚the  ed‚function‚will‚return‚t.‚(Actually,‚the‚ed‚function‚returns‚t‚right‚away,‚but‚the‚value‚can't‚be  typed‚ out‚ until‚ the‚ Lisp‚ listener‚ window‚ is‚ exposed‚ again.)‚ "  HTyping‚îCTRL/Z‚îto‚îan‚Editor‚is‚not‚the‚same‚as‚typing‚SYSTEM‚L.‚SYSTEM‚L‚gets‚you‚to  the‚îmost-recently‚îselected‚îLisp‚Listener,‚while‚CTRL/Z‚gets‚you‚to‚the‚last‚place‚you‚ran‚the‚ed  function.‚ "  HAdditional‚code‚letters‚for‚the‚SYSTEM‚key‚can‚be‚added‚through‚the‚Split‚Screen  command‚in‚the‚system‚menu,‚or‚via‚the‚variable‚tv:*system-keys*.‚Typing‚SYSTEM‚HELP  will‚ always‚ tell‚ you‚ all‚ the‚ available‚ choices.‚  "@ 2.3.8 Splitting the Screen "  HThe‚Split‚Screen‚option‚of‚the‚system‚menu‚is‚a‚convenient‚way‚to‚divide‚the‚screen‚area  among‚several‚windows.‚If‚you‚select‚Split‚Screen,‚the‚system‚menu‚is‚replaced‚by‚a‚menu  whose‚options‚are‚detailed‚below.‚By‚selecting‚items‚from‚this‚menu,‚the‚user‚species‚a‚set‚of  windows‚that‚are‚to‚share‚the‚screen.‚Typically‚these‚are‚newly-created‚windows,‚but‚there‚are  also‚options‚to‚incorporate‚existing‚windows‚into‚a‚split‚screen‚arrangement.‚As‚the‚specication  proceeds,‚a‚small‚diagram‚of‚the‚proposed‚display‚appears‚next‚to‚the‚Split‚Screen‚menu‚and‚is  updated‚ as‚ you‚ make‚ selections.‚  " Supdup ^Incorporate‚a‚new‚Supdup‚window‚into‚the‚split-screen‚layout.‚See‚chapter‚8,  ^page‚ 34.‚  " Telnet ^Incorporate‚îa‚înew‚îTelnet‚îwindow‚îinto‚îthe‚îsplit-screen‚îlayout.‚See‚chapter‚8,‚page  ^34.‚ "i DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 15 vManipulating Windows "P ,Lisp tIncorporate‚a‚new‚Lisp‚Listener‚window‚into‚the‚split-screen‚layout.‚See‚chapter  t3,‚page‚ 19.‚  ," ,Lisp (Edit) tIncorporate‚a‚new‚Editing‚Lisp‚Listener‚window‚into‚the‚split-screen‚layout.‚See  tchapter‚ 3,‚page‚ 19.‚  ," ,Edit tIncorporate‚îa‚înew‚îEditor‚îwindow‚îinto‚îthe‚îsplit-screen‚layout.‚See‚chapter‚4,‚page  t21.‚  ," ,Peek tIncorporate‚a‚new‚Peek‚window‚into‚the‚split-screen‚layout.‚See‚chapter‚7,‚page  t32.‚  ," ,Any tWill‚ ask‚ what‚ avor‚ of‚ new‚ window‚ you‚ want.‚  ," ,Existing Window  tA‚îmenu‚îwill‚îpop‚îup‚îcontaining‚îthe‚înames‚îof‚îall‚îthe‚îselectable‚îwindows.‚Pick‚one  twith‚ the‚ mouse,‚and‚ it‚ will‚ be‚ incorporated‚ into‚ the‚ split-screen‚ layout.‚  ," ,Existing Lisp tAn‚idle‚Lisp‚Listener‚will‚be‚chosen‚and‚incorporated‚into‚the‚split-screen‚layout.  tSince‚it‚doesn't‚matter‚which‚one‚is‚incorporated,‚the‚user‚is‚not‚asked‚to‚pick  tone.‚  ," ,Plain Window tIncorporate‚ a‚ new‚ window‚ with‚ no‚ interesting‚ features‚ at‚ all.‚  ," ,Trace & Error tIncorporate‚a‚new‚window‚which‚will‚be‚used‚for‚output‚from‚the‚trace‚package  tand‚interaction‚with‚the‚error-handler.‚This‚allows‚you‚to‚use‚those‚debugging  tfacilities‚without‚interfering‚with‚the‚window‚in‚which‚you‚are‚running‚your  tprogram,‚which‚ might‚ contain‚ a‚ graphic‚ display,‚for‚ example.‚  ," ,Trace tIncorporate‚ a‚ new‚ window‚ which‚ receives‚ just‚ trace‚ output.‚  ," ,Error tIncorporate‚ a‚ new‚ window‚ which‚ is‚ used‚ just‚ for‚ error-handler‚ interaction.‚  ," ,Frame tThe‚default‚is‚to‚split‚the‚screen‚simply‚by‚creating‚windows‚with‚the‚appropriate  tsizes,‚shapes,‚and‚positions.‚ If‚you‚select‚the‚Frame‚option,‚however,‚the  twindows‚in‚the‚split-screen‚layout‚will‚be‚bound‚together‚as‚inferiors‚of‚a‚frame  t(see‚section‚2.3.10,‚page‚16).‚The‚main‚eect‚of‚this‚is‚that‚they‚will‚be‚exposed  tand‚de-exposed‚together;‚selecting‚one‚of‚the‚windows,‚for‚instance‚with‚the  tSelect‚ operation‚ in‚ the‚ system‚ menu,‚will‚ expose‚ the‚ whole‚ set.‚ "  tSelecting‚Frame‚pops‚up‚an‚additional‚window‚which‚lets‚you‚specify‚parameters  tfor‚the‚frame:‚whether‚it‚should‚exist‚(so‚you‚can‚turn‚it‚o‚if‚you‚decide‚you  tdon't‚îwant‚îit),‚its‚îname,‚and‚îa‚îkey‚îwhich‚îcan‚îbe‚îtyped‚îafter‚the‚SYSTEM‚key‚to  tselect‚îit.‚You‚îcan‚îchange‚îone‚îof‚îthese‚îparameters‚îby‚îpointing‚îthe‚mouse‚at‚it,‚so  tthat‚ a‚ box‚ appears‚ around‚ it,‚and‚ clicking.‚  ," ,Mouse Corners  tAllows‚îyou‚to‚use‚the‚mouse‚to‚point‚to‚the‚upper-left‚and‚lower-right‚corners‚of  tthe‚îscreen‚îarea‚îto‚îbe‚îdivided‚îamong‚îthe‚îwindows‚îyou‚îselect,‚just‚as‚in‚the‚Create  toperation‚(see‚page‚13).‚If‚you‚don't‚use‚Mouse‚Corners,‚the‚entire‚screen‚will  tbe‚ split.‚  ," ,Undo tRemove‚ the‚ last‚ window‚ you‚ added‚ to‚ the‚ layout‚ you‚ are‚ building‚ up.‚  ," ,Do It tCreate‚îall‚îthe‚îwindows‚îthat‚îneed‚îto‚îbe‚îcreated,‚and‚îassemble‚them‚with‚the‚other  tspecied‚îwindows‚îinto‚îthe‚îsplit-screen‚îlayout.‚Expose‚the‚entire‚layout,‚and‚select  tthe‚ rst‚ selectable‚ window‚ that‚ was‚ specied.‚ "F ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Manipulating Windows y16 *Operating the Lisp Machine "P Abort ^Flush‚the‚proposed‚layout‚and‚go‚back‚to‚the‚previously‚selected‚window.‚Use  ^this‚ if‚ you‚ decide‚ you‚ didn't‚ really‚ want‚ to‚ split‚ the‚ screen‚ after‚ all.‚  "@ 2.3.9 Destroying a Window "  HTo‚destroy‚a‚window,‚point‚at‚it‚with‚the‚mouse‚and‚click‚Double‚Right.‚This‚calls‚up‚a  system‚menu.‚Pick‚the‚"Other"‚option.‚The‚system‚menu‚will‚be‚replaced‚with‚another‚menu  containing‚îadditional‚îoptions.‚This‚î"Other"‚îmenu‚îis‚in‚some‚sense‚the‚second‚page‚of‚the‚system  menu.‚To‚kill‚the‚window‚you‚indicated,‚choose‚the‚"Kill"‚option‚from‚this‚auxiliary‚menu.  You‚will‚be‚asked‚to‚conrm‚that‚you‚really‚wanted‚to‚kill‚that‚window‚by‚the‚popping-up‚of‚a  small‚conrmation‚window.‚To‚answer‚yes,‚click‚the‚mouse‚on‚the‚conrmation‚window.‚To  answer‚ no,‚move‚ the‚ mouse‚ away‚ from‚ the‚ window‚ so‚ that‚ it‚ disappears.‚  "@ 2.3.10 Frames "  HSometimes‚windows‚are‚grouped‚into‚frames‚.‚A‚frame‚is‚a‚window‚which‚acts‚like‚a‚screen;  it‚can‚have‚several‚windows‚displayed‚on‚it.‚The‚purpose‚of‚frames‚is‚to‚group‚related‚windows  together‚îso‚îthat‚îthey‚îcan‚îbe‚manipulated‚as‚a‚unit,‚while‚still‚keeping‚them‚separate‚so‚that‚each  window‚ can‚ do‚ a‚ dierent‚ thing.‚ "  HPrograms‚that‚have‚a‚display‚made‚up‚of‚several‚windows‚always‚group‚them‚into‚a‚frame.  The‚ editor,‚the‚ inspector,‚and‚ the‚ window‚ error-handler‚ are‚ examples.‚  "@ 2.3.11 Invoking the Inspector "  HThere‚are‚three‚ways‚to‚enter‚the‚Inspector‚system.‚You‚may‚type‚SYSTEM‚I,‚the‚function  inspect‚may‚be‚invoked‚from‚a‚Lisp‚Listener,‚or‚the‚"Inspect"‚option‚may‚be‚chosen‚from‚the  system‚ menu.‚For‚ full‚ documentation‚ of‚ the‚ inspector,‚see‚ chapter‚ 5,‚page‚ 27.‚  "@ 2.3.12 The Screen Editor "  HThe‚screen‚editor‚is‚a‚mouse-controlled‚program‚for‚manipulating‚the‚layout‚of‚your‚screen.  It‚can‚be‚used‚to‚move‚windows‚around,‚to‚change‚the‚size‚and‚shape‚of‚windows,‚and‚to  change‚ which‚ windows‚ are‚ displayed.‚ "  HThe‚screen‚editor‚is‚gotten‚from‚the‚system‚menu‚by‚clicking‚on‚Edit‚Screen.‚Ordinarily‚it  will‚enter‚the‚screen‚editor‚immediately,‚editing‚the‚whole‚screen.‚However,‚if‚you‚select‚Edit  Screen‚by‚clicking‚Right‚(indicating‚you‚want‚the‚hairier‚version‚of‚the‚command),‚and‚the  window‚that‚the‚mouse‚is‚in‚is‚a‚frame,‚you‚have‚the‚option‚of‚editing‚that‚frame‚or‚the‚whole  screen;‚another‚ pop-up‚ menu‚ will‚ appear‚ asking‚ you‚ to‚ choose.‚ "  HThe‚screen‚editor‚works‚by‚displaying‚a‚menu‚of‚commands.‚You‚select‚a‚command‚by  clicking‚on‚it‚with‚the‚mouse‚and‚the‚menu‚disappears.‚If‚you‚need‚to‚point‚to‚any‚windows,  edges,‚or‚îcorners‚îneeded‚îas‚îarguments‚to‚the‚command,‚the‚screen-editor‚will‚prompt‚you‚with‚a  message‚in‚the‚mouse-documentation‚line‚above‚the‚who-line‚and‚will‚change‚the‚shape‚of‚the  mouse‚îcursor.‚When‚îyou‚îare‚îto‚îpoint‚îto‚îa‚îwindow,‚the‚îmouse‚îcursor‚changes‚to‚a‚small‚reticule,  which‚ should‚ be‚ positioned‚ over‚ the‚ desired‚ window.‚ "B DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 17 vManipulating Windows "P ^When‚îthe‚îscreen‚îeditor‚îis‚asking‚you‚to‚point‚to‚something,‚clicking‚Left‚will‚select‚what‚the  ,mouse‚is‚pointing‚at.‚Clicking‚either‚of‚the‚other‚two‚buttons‚will‚abort‚the‚current‚command  ,and‚ bring‚ back‚ the‚ screen‚ editor's‚ command‚ menu.‚ "  ^After‚executing‚the‚command,‚the‚screen‚editor's‚menu‚will‚appear‚again.‚To‚exit‚the‚screen  ,editor,‚choose‚ "Exit".‚ "  ^This‚ is‚ a‚ summary‚ of‚ the‚ options‚ in‚ the‚ Edit‚ Screen‚ menu.‚  ," ,Bury tBury‚the‚specied‚window,‚deexposing‚it‚and‚allowing‚whatever‚display‚it‚was  tobscuring‚ to‚ be‚ seen.‚  ," ,Expose tCompletely‚îexpose‚îthe‚îspecied‚îwindow.‚This‚is‚used‚for‚displaying‚windows‚that  thave‚ been‚ partially‚ obscured‚ by‚ others.‚  ," ,Expose (menu)  tLike‚Expose‚but‚pops‚up‚a‚menu‚of‚all‚active‚deexposed‚windows.‚This‚is‚good  tfor‚îexposing‚îa‚îwindow‚îwhich‚îyou‚îcan't‚îpoint‚îto‚because‚you‚can't‚see‚any‚part‚of  tit.‚  ," ,Create tCreate‚îa‚înew‚îwindow‚îinferior‚îto‚the‚frame‚or‚screen‚you‚are‚editing.‚This‚is‚just  tlike‚the‚Create‚operation‚in‚the‚system‚menu‚(see‚section‚2.3.6,‚page‚13),‚except  tthat‚if‚you‚are‚editing‚a‚frame‚the‚choice‚of‚window‚types‚to‚create‚may‚be  tdierent,‚or‚there‚may‚be‚no‚choice‚at‚all.‚For‚instance,‚when‚screen-editing‚an  teditor‚ frame,‚you‚ are‚ only‚ allowed‚ to‚ create‚ editor‚ windows.‚  ," ,Create (expand)  tThis‚îis‚îthe‚îsame‚îas‚îCreate,‚except‚îthat‚îinstead‚îof‚prompting‚you‚for‚an‚upper-left  tcorner‚and‚a‚lower-right‚corner,‚it‚only‚prompts‚you‚for‚a‚single‚point.‚The  twindow‚îis‚îcreated‚îin‚îsuch‚îa‚îway‚îthat‚îit‚îoccupies‚îany‚îunused‚îarea‚îsurrounding‚îthat  tpoint.‚An‚unused‚area‚is‚any‚part‚of‚the‚screen‚that‚doesn't‚contain‚an‚exposed  twindow;‚it‚may‚contain‚nothing‚(blank)‚or‚it‚may‚contain‚a‚visible‚portion‚of‚a  tdeexposed‚ window.‚  ," ,Kill tDestroy‚the‚specied‚window.‚Before‚the‚kill‚actually‚happens,‚a‚window‚will  tpop‚îup‚îasking‚îyou‚îto‚conrm‚the‚operation;‚answer‚yes‚by‚clicking‚the‚mouse‚or  tno‚ by‚ moving‚ it‚ away‚ from‚ the‚ conrmation‚ window.‚  ," ,Exit tExit‚ the‚ Screen‚ Editor.‚  ," ,Undo tAttempt‚to‚reverse‚the‚last‚Edit‚Screen‚operation.‚"Kill‚cannot‚be‚undone.  tUndoing‚Create‚simply‚buries‚the‚window‚rather‚than‚killing‚it.‚Undo‚can‚itself  tbe‚ undone.‚  ," ,Move Window tKeeping‚its‚size‚and‚shape‚constant,‚move‚the‚specied‚window‚to‚another‚place  ton‚the‚display.‚After‚you‚pick‚a‚window,‚a‚rectangle‚the‚size‚and‚shape‚of‚the  twindow‚will‚follow‚the‚mouse‚around.‚Click‚Left‚to‚move‚the‚window‚to‚where  tthe‚îrectangle‚îis;‚click‚îMiddle‚îor‚îRight‚to‚abort‚and‚leave‚the‚window‚where‚it‚is.  tIf‚ the‚ window‚ cannot‚ be‚ moved‚ to‚ where‚ you‚ tell‚ it,‚you‚ will‚ get‚ a‚ beep.‚  ," ,Reshape tThe‚îuser‚îis‚îasked‚îto‚îpick‚îa‚îwindow,‚and‚îthen‚îis‚îprompted‚îto‚îreposition‚îthe‚îupper  tleft‚ and‚ lower‚ right‚ corners‚ of‚ that‚ window‚ (see‚ page‚ 13).‚  ," ,Move Multiple tThe‚îmouse‚îblinker‚îbecomes‚îa‚îMove‚îblinker‚which‚is‚used‚for‚pointing‚at‚exposed  tcorners‚îand‚îedges‚îof‚îwindows.‚(See‚Move‚Single.)‚Clicking‚Left‚at‚a‚feature‚adds  tthat‚feature‚to‚a‚list‚of‚things‚to‚be‚moved.‚Features‚that‚are‚on‚the‚list‚are "2 ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Manipulating Windows y18 *Operating the Lisp Machine "P ^highlighted.‚If‚a‚feature‚is‚already‚a‚member‚of‚the‚list,‚it‚is‚removed‚when‚you  ^click‚ at‚ it.‚ "  ^When‚îyou‚îhave‚îselected‚îthe‚îfeatures‚îyou‚îwish‚îto‚îmove,‚click‚îRight‚(meaning‚"Do  ^It").‚All‚of‚the‚features‚are‚moved‚together,‚and‚nailed‚down‚in‚a‚new‚location  ^at‚ the‚ next‚ Left‚ or‚ Right‚ click.‚ "  ^Clicking‚Left‚Long‚at‚a‚feature‚is‚the‚same‚as‚clicking‚Left,‚but‚it‚also  ^commences‚ the‚ move.‚ "  ^If‚îyou‚îwant‚îto‚îabort‚îthe‚îoperation,‚either‚îwhile‚îselecting‚features‚or‚while‚moving  ^them,‚click‚îMiddle.‚This‚îreturns‚îto‚îthe‚îscreen‚îeditor's‚command‚menu‚and‚leaves  ^all‚ the‚ features‚ where‚ they‚ were‚ originally.‚ "  ^When‚one‚of‚a‚set‚of‚coincident‚edges‚or‚corners‚is‚picked‚to‚be‚added‚to‚the  ^list,‚the‚rest‚are‚also‚added.‚This‚facilitates‚the‚rearrangement‚of‚groups‚of  ^adjacent‚windows.‚If‚the‚user‚does‚not‚desire‚to‚do‚this,‚the‚extra‚features‚can  ^be‚deleted‚from‚the‚list‚of‚things‚to‚be‚moved‚by‚clicking‚Left‚at‚them‚in‚the  ^usual‚ way.‚  " Move Single ^The‚îmouse‚îblinker‚îbecomes‚îa‚îMove‚îblinker‚which‚is‚used‚for‚pointing‚at‚exposed  ^corners‚îand‚îedges‚îof‚îwindows.‚The‚îMove‚îblinker‚îis‚îa‚îlarge‚îarrow‚which‚points‚at  ^the‚feature‚in‚question.‚It‚always‚points‚at‚features‚from‚inside‚the‚window‚with  ^which‚that‚feature‚is‚associated.‚It‚has‚two‚states:‚pointing‚at‚an‚edge‚and  ^pointing‚at‚a‚corner.‚When‚pointing‚at‚an‚edge,‚it‚points‚steadily‚in‚a‚direction  ^perpendicular‚to‚that‚edge.‚"When‚pointing‚at‚a‚corner,‚the‚arrow‚rotates  ^smoothly‚ as‚ it‚ is‚ moved,‚so‚ that‚ it‚ continues‚ to‚ point‚ directly‚ at‚ the‚ corner.‚ "  ^Using‚the‚Move‚blinker,‚select‚a‚feature‚by‚clicking‚Left‚at‚it.‚The‚feature‚will  ^be‚highlighted‚in‚boldface,‚and‚the‚Move‚blinker‚will‚vanish.‚The‚feature‚will  ^now‚follow‚the‚mouse‚to‚a‚new‚position.‚Another‚click‚Left‚xes‚it‚in‚the‚new  ^position.‚Clicking‚Middle‚aborts‚the‚move‚and‚leaves‚the‚feature‚where‚it‚was  ^originally.‚  " Expand Window  ^Reshape‚the‚specied‚window‚so‚that‚it‚occupies‚any‚unused‚area‚surrounding‚it.  ^An‚îunused‚îarea‚îis‚îany‚îpart‚îof‚îthe‚îscreen‚that‚doesn't‚contain‚an‚exposed‚window;  ^it‚may‚contain‚nothing‚(blank)‚or‚it‚may‚contain‚a‚visible‚portion‚of‚a‚deexposed  ^window.‚  " Expand All ^Reshape‚all‚the‚currently‚exposed‚windows‚so‚that‚together‚they‚occupy‚as‚much  ^of‚the‚screen‚as‚possible,‚subject‚to‚the‚restriction‚that‚no‚window‚gives‚up‚any  ^of‚its‚former‚territory‚(all‚its‚edges‚move‚outward‚if‚at‚all).‚There‚are‚several  ^possible‚îalgorithms:‚the‚îone‚îimplemented‚îseems‚îto‚îdo‚îthe‚right‚thing‚most‚of‚the  ^time,‚and‚is‚stable‚with‚respect‚to‚itself,‚so‚that‚if‚Expand‚All‚is‚called‚twice‚in  ^succession,‚the‚ second‚ invocation‚ does‚ nothing.‚ "‡"‡"  DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 19 >BREAK"‚îand‚îthe‚îerror-handler‚îprompt‚î"".‚You‚can  tpoke‚ around‚ in‚ the‚ process,‚then‚ type‚ RESUME‚ or‚ CTRL/C‚ to‚ continue.‚  ," ,CTRL/META/BREAK  tForces‚the‚process‚you‚type‚it‚at‚into‚the‚error‚handler,‚whether‚or‚not‚it‚is  trunning.‚  ," ,CALL tImmediately‚stops‚the‚process‚you‚are‚typing‚at,‚and‚selects‚an‚idle‚lisp-listener  t(creating‚one‚if‚there‚aren't‚any).‚This‚is‚the‚key‚to‚use‚to‚get‚to‚"command  tlevel"‚without‚destroying‚the‚computation‚in‚progress.‚When‚the‚window‚called  tout-of‚ is‚ selected‚ again,‚its‚ process‚ will‚ be‚ allowed‚ to‚ run‚ once‚ more.‚  ," ,CLEAR-INPUT tUsually‚ushes‚the‚input‚expression‚you‚are‚typing.‚This‚command‚can‚be‚given  ton‚ the‚ old‚ keyboards‚ by‚ typing‚ CLEAR.‚  ," ,CLEAR-SCREEN  tUsually‚erases‚and‚refreshes‚the‚selected‚window.‚On‚the‚old‚keyboards,‚which  thave‚no‚CLEAR-SCREEN‚key,‚the‚FORM‚key‚can‚be‚used‚for‚this.‚In‚the  teditor‚(in‚searches‚and‚after‚CTRL/Q)‚this‚key‚inserts‚a‚page‚separator‚character,  twhich‚ displays‚ as‚ "page"‚ in‚ a‚ box.‚  ," ,DELETE tThis‚îkey‚îis‚îfor‚îsome‚as‚yet‚unspecied‚form‚of‚deletion.‚In‚Supdup‚it‚substitutes  tfor‚ the‚ VT‚ key‚ of‚ the‚ old‚ keyboards.‚ "E ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Index of Function Keys y36 *Operating the Lisp Machine "P END ^Marks‚the‚end‚of‚input‚to‚many‚programs.‚Input‚of‚a‚single-line‚nature‚may‚be  ^ended‚îwith‚RETURN,‚but‚END‚will‚terminate‚multiple-line‚input‚where‚RETURN  ^is‚useful‚for‚separating‚lines.‚The‚END‚key‚does‚not‚apply‚when‚typing‚in‚Lisp  ^expressions,‚which‚are‚self-delimiting.‚The‚old‚keyboards‚have‚no‚END‚key;  ^TOP/RETURN‚ may‚ be‚ used‚ as‚ a‚ substitute.‚  " HELP ^Usually‚gets‚you‚some‚on-line‚documentation‚or‚programmed‚assistance.‚On‚the  ^old‚keyboards,‚HELP‚does‚not‚exist‚as‚a‚separate‚key,‚but‚it‚can‚be‚typed‚as  ^TOP/H.‚See‚ SYSTEM‚ HELP,‚TERMINAL‚ HELP.‚  " HOLD-OUTPUT ^Not‚ used‚ currently.‚  " LINE ^The‚function‚of‚this‚key‚varies‚considerably.‚It‚is‚used‚as‚a‚command‚by‚the  ^editor,‚and‚ sends‚ a‚ "line‚ feed"‚ character‚ in‚ Supdup‚ and‚ Telnet.‚  " MACRO ^Introduces‚a‚keyboard-macro‚command‚in‚programs,‚such‚as‚the‚editor,‚that‚have  ^keyboard‚macros.‚The‚MACRO‚key‚is‚only‚dened‚while‚running‚such‚programs.  ^The‚ BACK‚ NEXT‚ key‚ may‚ be‚ used‚ for‚ this‚ function‚ on‚ the‚ old‚ keyboards.‚  " NETWORK ^This‚key‚is‚used‚to‚get‚the‚attention‚of‚a‚running‚Supdup‚or‚Telnet.‚As‚such‚it  ^functions‚as‚a‚command‚prex.‚This‚replaces‚BREAK‚on‚the‚old‚keyboards.‚See  ^chapter‚ 8,‚page‚ 34.‚  " OVER-STRIKE ^Moves‚the‚cursor‚back‚so‚that‚you‚can‚superpose‚two‚characters,‚should‚you  ^really‚ want‚ to.‚The‚ key‚ called‚ BS‚ will‚ do‚ the‚ same‚ thing‚ on‚ the‚ old‚ keyboards.‚  " QUOTE ^Not‚ currently‚ used.‚  " RESUME ^Continues‚îfrom‚îthe‚îbreak‚îfunction‚îand‚îthe‚îerror‚îhandler.‚In‚Supdup‚this‚sends‚a  ^backspace‚ character,‚which‚ is‚ used‚ for‚ a‚ resume-like‚ command‚ by‚ ITS‚ DDT.‚  " RETURN ^"Carriage‚ return"‚ or‚ end‚ of‚ line.‚Exact‚ signicance‚ may‚ vary.‚  " RUBOUT ^Usually‚ erases‚ the‚ last‚ character‚ typed.‚It‚ is‚ not‚ the‚ same‚ as‚ DELETE.‚  " STATUS ^Not‚ currently‚ used.‚  " STOP-OUTPUT ^Not‚ currently‚ used.‚  " SYSTEM ^This‚key‚is‚a‚prex‚for‚a‚family‚of‚commands,‚generally‚used‚to‚select‚a‚window  ^of‚a‚specied‚type,‚such‚as‚Lisp‚Listener‚or‚Editor.‚These‚commands‚can‚be  ^given‚from‚the‚old‚keyboards‚by‚typing‚TOP/ESC‚instead‚of‚SYSTEM.‚For‚a  ^detailed‚ description‚ see‚ section‚ 2.3.7,‚page‚ 13.‚  " TAB ^This‚îkey‚îis‚îonly‚îsometimes‚îdened.‚Its‚îexact‚function‚depends‚on‚context,‚but‚in  ^general‚ it‚ is‚ used‚ to‚ move‚ the‚ cursor‚ right‚ to‚ an‚ appropriate‚ point.‚  " TERMINAL ^This‚key‚is‚a‚prex‚for‚a‚family‚of‚commands‚relating‚to‚the‚display,‚which‚you  ^may‚type‚at‚any‚time,‚no‚matter‚what‚program‚you‚are‚running.‚These‚are  ^documented‚below.‚#Most‚of‚these‚commands‚can‚be‚given‚from‚the‚old  ^keyboards‚ by‚ using‚ the‚ ESC‚ key.‚  " TERMINAL A  ^Striking‚îTERMINAL‚îA‚î(or‚îESC‚îA‚îon‚îthe‚îold‚keyboards)‚arrests‚the‚process‚whose  ^state‚is‚currently‚being‚displayed‚in‚the‚who-line.‚TERMINAL‚-‚A‚un-arrests‚that  ^process,‚whether‚it‚was‚originally‚arrested‚by‚typing‚TERMINAL‚A,‚or‚CALL,‚or  ^whether‚ it‚ was‚ arrested‚ for‚ some‚ other‚ reason.‚ "k DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 37 tIndex of Function Keys "P ,TERMINAL ABORT  ,TERMINAL BREAK  tThese‚are‚the‚same‚as‚ABORT‚and‚BREAK‚except‚that‚they‚always‚work.‚The  tplain‚ABORT‚and‚BREAK‚keys‚are‚turned‚o‚by‚certain‚programs‚such‚as  tSupdup.‚The‚META‚modier‚may‚be‚used,‚and‚the‚CTRL‚modier‚is‚assumed  twhether‚ or‚ not‚ you‚ type‚ it.‚  ," ,TERMINAL C tComplements‚the‚inverse-video‚mode‚of‚the‚screen.‚With‚a‚numeric‚argument,  tcomplements‚the‚inverse-video‚mode‚of‚the‚mouse-documentation‚line‚just‚above  tthe‚ who-line.‚  ," ,TERMINAL CALL  tPuts‚you‚into‚a‚break‚read-eval-print‚loop,‚using‚the‚"cold-load-stream".‚This‚is  ta‚way‚of‚getting‚to‚a‚Lisp‚read-eval-print‚loop‚that‚completely‚bypasses‚the  twindow‚system,‚which‚can‚be‚very‚useful‚in‚debugging,‚since‚it‚does‚not‚interact  twith‚very‚much‚of‚the‚rest‚of‚the‚system.‚On‚the‚old‚keyboards,‚this‚command  tmay‚ be‚ given‚ as‚ ESC‚ CALL.‚  ," ,TERMINAL CLEAR-INPUT  tDiscards‚any‚typed-ahead‚keyboard‚input‚which‚has‚not‚yet‚been‚read‚by‚a  tprogram.‚On‚ the‚ old‚ keyboards,‚this‚ command‚ may‚ be‚ given‚ as‚ ESC‚ CLEAR.‚  ," ,TERMINAL CLEAR-SCREEN  tClears‚the‚screen‚and‚refreshes‚all‚the‚windows,‚including‚the‚who-line.‚Use‚this  twhen‚something‚has‚been‚clobbered,‚e.g.‚by‚use‚of‚the‚"cold-load-stream".‚On  tthe‚ old‚ keyboards,‚this‚ command‚ may‚ be‚ given‚ as‚ ESC‚ FORM.‚  ," ,TERMINAL (n) F  tDisplays‚a‚list‚of‚the‚users‚logged‚in‚to‚a‚machine.‚With‚no‚numeric‚argument,  tshows‚îthe‚îusers‚îlogged‚îin‚to‚AI.‚With‚a‚numeric‚argument‚of‚1,‚shows‚the‚users  ton‚Lisp‚machines‚and‚which‚Lisp‚machines‚are‚free.‚With‚an‚argument‚of‚2,  tshows‚îthe‚îusers‚îon‚îMC.‚With‚îan‚îargument‚îof‚î3,‚shows‚the‚users‚on‚AI‚and‚MC  tboth.‚With‚an‚argument‚of‚0,‚asks‚for‚a‚command‚line,‚similar‚to‚the‚jcl‚of‚the  t:FINGER‚command‚on‚ITS.‚This‚command‚goes‚over‚the‚network‚to‚gets‚its  tinformation,‚and‚ consequently‚ may‚ take‚ a‚ while‚ if‚ the‚ target‚ machine‚ is‚ slow.‚  ," ,TERMINAL H tDisplays‚ the‚ status‚ of‚ all‚ the‚ hosts‚ on‚ the‚ Chaosnet.‚  ," ,TERMINAL HELP  tDisplays‚documentation‚on‚all‚of‚the‚function‚keys,‚including‚the‚terminal‚escape  tcommands.‚ Type‚a‚space‚to‚return‚to‚your‚previous‚window.‚!On‚the‚old  tkeyboards,‚this‚ command‚ may‚ be‚ given‚ as‚ ESC‚ ?.‚  ," ,TERMINAL O tSelects‚the‚window‚which‚is‚exposed‚on‚some‚screen‚and‚was‚selected‚least  trecently.‚Thus‚repeating‚this‚command‚cycles‚through‚all‚the‚"selectable"‚exposed  twindows.‚This‚ is‚ a‚ lot‚ like‚ "CTRL/X‚ O"‚ in‚ the‚ editor.‚  ," ,TERMINAL (n) S  tSwitches‚you‚to‚another‚"selectable"‚window.‚The‚"(n)"‚represents‚an‚optional  tnumerical‚ argument.‚For‚ full‚ details,‚see‚ section‚ 2.3.5,‚page‚ 12.‚  ," ,TERMINAL (n) T  tControls‚the‚selected‚window's‚input‚and‚output‚notication‚characteristics.‚If‚an  tattempt‚is‚made‚to‚output‚to‚a‚window‚when‚it‚is‚not‚exposed,‚one‚of‚three  tthings‚can‚happen;‚the‚program‚can‚simply‚wait‚until‚the‚window‚is‚exposed,‚it "9 ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Index of Function Keys y38 *Operating the Lisp Machine "P ^can‚send‚a‚notication‚that‚it‚wants‚to‚type‚out‚and‚then‚wait,‚or‚it‚can‚quietly  ^type‚out‚"in‚the‚background";‚when‚the‚window‚is‚next‚exposed‚the‚output‚will  ^become‚visible.‚Similarly,‚if‚an‚attempt‚is‚made‚to‚read‚input‚from‚a‚window  ^which‚îis‚înot‚îselected‚î(and‚îhas‚îno‚îtyped-ahead‚îinput‚îin‚îit),‚the‚program‚can‚either  ^wait‚îfor‚îthe‚window‚to‚become‚selected,‚or‚send‚a‚notication‚that‚it‚wants‚input  ^and‚ then‚ wait.‚ "  ^The‚TERMINAL‚T‚command‚controls‚these‚characteristics‚based‚on‚its‚numeric  ^argument,‚as‚ follows:‚  B" BTERMINAL T  If‚output‚notication‚is‚o,‚turns‚input‚and‚output   notication‚!on.‚+Otherwise‚!turns‚"input‚"and‚"output   notication‚ o.‚This‚ essentially‚ toggles‚ the‚ current‚ state.‚  B" BTERMINAL 0 T   Turns‚ input‚ and‚ output‚ notication‚ o.‚  B" BTERMINAL 1 T   Turns‚ input‚ and‚ output‚ notication‚ on.‚  B" BTERMINAL 2 T   Turns‚ output‚ notication‚ on,‚and‚ input‚ notication‚ o.‚  B" BTERMINAL 3 T   Turns‚ output‚ notication‚ o,‚and‚ input‚ notication‚ on.‚  B" BTERMINAL 4 T   Allows‚output‚to‚proceed‚in‚the‚background,‚and‚turns   input‚ notication‚ on.‚  B" BTERMINAL 5 T   Allows‚output‚to‚proceed‚in‚the‚background,‚and‚turns   input‚ notication‚ o.‚ "  ^You‚aren't‚really‚expected‚to‚remember‚all‚of‚these‚magic‚numbers.‚As‚always,  ^typing‚ TERMINAL‚ HELP‚ will‚ print‚ a‚ brief‚ reminder‚ of‚ the‚ commands.‚  " TERMINAL W ^Controls‚the‚who-line.‚What‚happens‚depends‚on‚the‚number‚typed‚before‚the  ^"W".‚With‚no‚numeric‚argument,‚the‚who-line‚is‚redisplayed.‚The‚numeric  ^arguments‚ control‚ what‚ process‚ the‚ who-line‚ watches.‚The‚ options‚ are:‚  B" B0  Gives‚a‚menu‚of‚all‚processes,‚and‚freezes‚the‚who-line   on‚îthe‚îprocess‚îyou‚îselect.‚When‚îthe‚îwho-line‚îis‚frozen‚on   a‚process,‚the‚name‚of‚that‚process‚appears‚where‚your   user‚ID‚normally‚would‚(next‚to‚the‚date‚and‚time),‚and   the‚îwho-line‚îdoes‚înot‚change‚to‚another‚process‚when‚you   select‚ a‚ new‚ window.‚  B" B1  The‚who-line‚watches‚whatever‚process‚is‚talking‚to‚the   keyboard,‚and‚changes‚processes‚when‚you‚select‚a‚new   window.‚This‚ is‚ the‚ default‚ initial‚ state.‚  B" B2  Freezes‚the‚who-line‚on‚the‚process‚it‚is‚currently   watching.‚If‚îyou‚îselect‚îa‚new‚window‚the‚process‚will‚not   change.‚ "V DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 39 tIndex of Function Keys "P X3  Freezes‚the‚who-line‚on‚the‚next‚process‚in‚a‚certain   order.‚  X" X4  Freezes‚the‚who-line‚on‚the‚next‚process‚in‚the‚other   direction.‚ "  tThese‚numbers‚are‚the‚same‚as‚on‚AI‚TV‚terminals,‚except‚that‚there‚is‚no  t"system‚ who-line"‚ on‚ the‚ Lisp‚ machine.‚  ," ,TERMINAL HOLD-OUTPUT  tIf‚it‚says‚"Output‚Hold"‚in‚the‚who-line,‚indicating‚that‚the‚"current"‚process‚is  ttrying‚to‚display‚on‚a‚window‚which‚is‚not‚exposed,‚typing‚this‚command‚will  texpose‚that‚window.‚Otherwise‚typing‚this‚will‚beep.‚Use‚TERMINAL‚S‚to  treturn‚to‚the‚previously-selected‚window.‚!This‚function‚is‚unfortunately‚not  tavailable‚ on‚ old‚ keyboards.‚  ," ,TERMINAL CTRL/T  tDe-exposes‚all‚temporary‚windows.‚This‚is‚useful‚if‚the‚system‚seems‚to‚be‚hung  tbecause‚there‚is‚a‚temporary‚window‚on‚top‚of‚the‚window‚which‚is‚trying‚to  ttype‚ out‚ and‚ tell‚ you‚ what's‚ going‚ on.‚  ," ,TERMINAL CTRL/CLEAR-INPUT  tClears‚îthe‚îlocks‚îon‚îall‚the‚windows‚in‚the‚system,‚thus‚giving‚the‚window‚system  ta‚swift‚kick‚in‚the‚pants.‚This‚often‚works‚to‚unwedge‚a‚catatonic‚window  tsystem.‚This‚is‚a‚last‚resort,‚but‚not‚as‚drastic‚as‚warm‚booting.‚It‚should‚be  tused‚when‚none‚of‚the‚windows‚will‚talk‚to‚you,‚when‚you‚can't‚get‚a‚system  tmenu,‚etc.‚ "‡"‡"‡"‡"‡"‡"‡"H ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! Quick Summary of Mouse Functions y40 *Operating the Lisp Machine "P 10. Quick Summary of Mouse Functions "( HThese‚ are‚ some‚ of‚ the‚ more‚ common‚ mouse‚ cursors:‚ "  HA‚thin‚arrow‚pointing‚North‚by‚Northwest‚(up‚and‚to‚the‚left).‚This‚is‚the‚default‚mouse  cursor.‚It‚indicates‚that‚there‚no‚special‚commands‚on‚the‚mouse‚buttons.‚Clicking‚Left‚will  select‚ the‚ window‚ pointed-to.‚Clicking‚ Right‚ will‚ get‚ you‚ the‚ system‚ menu.‚ "  HA‚îthin‚îarrow‚îpointing‚îNorth‚îby‚Northeast‚(up‚and‚to‚the‚right).‚This‚means‚the‚mouse‚is‚in  an‚editor‚window.‚You‚have‚several‚editor‚commands‚on‚the‚mouse‚buttons.‚See‚section‚4.1,  page‚ 21.‚ "  HA‚thin‚arrow‚pointing‚North‚(straight‚up).‚The‚editor‚uses‚this‚to‚show‚that‚it‚is‚asking‚you  for‚the‚name‚of‚a‚function‚or‚for‚a‚symbol.‚If‚you‚point‚the‚mouse‚at‚a‚function‚name,‚and  stop‚ moving‚ it,‚the‚ name‚ will‚ light‚ up‚ and‚ you‚ can‚ click‚ to‚ select‚ it.‚ "  HA‚small‚X.‚This‚is‚used‚when‚the‚mouse‚cursor‚wants‚to‚be‚unobtrusive,‚for‚instance‚in  menus.‚  "@ 10.1 Scrolling "  HSome‚windows‚display‚a‚"contents"‚which‚may‚be‚too‚big‚to‚t‚entirely‚in‚the‚window.‚The  editor‚and‚the‚inspector‚are‚examples.‚When‚this‚is‚the‚case,‚you‚see‚only‚a‚portion‚of‚the  contents,‚and‚ you‚ can‚ scroll‚ it‚ up‚ and‚ down‚ using‚ the‚ mouse.‚ "  HThe‚ following‚ mouse‚ cursors‚ indicate‚ that‚ the‚ mouse‚ is‚ being‚ used‚ to‚ control‚ scrolling:‚ "  HA‚fat‚arrow,‚pointing‚up‚or‚down.‚This‚indicates‚you‚are‚in‚a‚scrolling‚zone.‚Moving‚the  mouse‚slowly‚in‚the‚direction‚of‚the‚arrow‚will‚scroll‚the‚window,‚revealing‚more‚of‚the‚text‚in  the‚ direction‚ the‚ arrow‚ points,‚while‚ moving‚ the‚ mouse‚ quickly‚ will‚ let‚ you‚ out‚ of‚ the‚ window.‚ "  HScrolling‚zones‚often‚say‚more‚above‚or‚more‚below‚in‚small‚italic‚letters.‚Clicking‚on‚one‚of  these‚legends‚will‚scroll‚the‚window‚up‚and‚down‚by‚its‚height,‚thus‚you‚will‚see‚the‚next‚or  previous‚windowfull.‚When‚the‚window‚is‚at‚the‚top‚or‚bottom‚of‚its‚contents,‚so‚that‚it‚is‚not  possible‚to‚scroll‚any‚farther‚in‚one‚direction,‚the‚legend‚in‚the‚scrolling‚zone‚will‚change‚to  indicate‚ this‚ fact.‚ "  HA‚îfat‚îdouble-headed‚îarrow.‚There‚îwill‚îbe‚îa‚îthin‚îblack‚îbar‚înearby,‚the‚"scroll‚bar".‚The‚size  of‚this‚bar‚relative‚to‚the‚edge‚of‚the‚window‚to‚which‚it‚is‚attached‚shows‚what‚portion‚of‚the  window's‚contents‚is‚visible.‚The‚vertical‚position‚of‚the‚bar‚within‚the‚edge‚shows‚the‚position  of‚the‚visible‚portion‚of‚the‚window's‚contents‚relative‚to‚the‚whole.‚The‚mouse‚commands‚in  this‚ case‚ are‚  " Left ^Move‚ the‚ line‚ next‚ to‚ the‚ mouse‚ to‚ the‚ top‚ of‚ the‚ window.‚  " Left Double ^Move‚ the‚ line‚ next‚ to‚ the‚ mouse‚ to‚ the‚ bottom‚ of‚ the‚ window.‚  " Right ^Move‚ the‚ top‚ line‚ to‚ where‚ the‚ mouse‚ is.‚  " Right Double ^Move‚the‚bottom‚line‚to‚where‚the‚mouse‚is.‚"Because‚of‚this‚command  ^denition,‚you‚cannot‚get‚to‚the‚system‚menu‚while‚the‚mouse‚is‚displaying‚a "0 DSK:LMWIND;OPERAT 45 s15-APR-81î "‡"! ,Operating the Lisp Machine 41 $Scrolling "P tdouble-headed‚ fat‚ arrow.‚  ," ,Middle tJump‚îto‚îa‚îplace‚îin‚the‚window‚contents‚as‚far,‚proportionally,‚from‚its‚beginning  tas‚ the‚ mouse‚ is‚ from‚ the‚ top‚ of‚ the‚ window.‚  ,"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"T ,DSK:LMWIND;OPERAT 45 15-APR-81î "‡"! ,Operating the Lisp Machine i 9Table of Contents "P ^Table of Contents "d ,1. The Console v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 1î"% , 1.1 The Screen v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 1î"$ , 1.2 The Keyboard &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 1î"% , 1.2.1 Modier Keys >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 2î"$ , 1.2.2 Function Keys >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 3î"% , 1.3 The Mouse v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 3î"$ , 1.4 Booting the Machine n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 4î"%" ,2. The Window System V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 5î"$ , 2.1 The Geography of the Display f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 5î"% , 2.1.1 Windows . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 5î"$ , 2.1.2 The Who-line and Run-lights }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 5î"% , 2.1.3 Blinkers and Cursors . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 6î"$ , 2.2 Using the Mouse >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 7î"% , 2.2.1 Pointing at Something with the Mouse ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 7î"% , 2.2.2 Clicking the Mouse . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 7î"$ , 2.3 Manipulating Windows . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 8î"% , 2.3.1 Menus ^. v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 8î"$ , 2.3.2 The System Menu n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. 9î"% , 2.3.3 Notication &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r11î"$ , 2.3.4 Selecting a Window . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r11î"% , 2.3.5 More Advanced Window Selection -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r12î"$ , 2.3.6 Creating New Windows 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r13î"% , 2.3.7 Selecting a System n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r13î"$ , 2.3.8 Splitting the Screen . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r14î"% , 2.3.9 Destroying a Window . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r16î"$ , 2.3.10 Frames v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r16î"% , 2.3.11 Invoking the Inspector 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r16î"$ , 2.3.12 The Screen Editor . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r16î"%" ,3. The Lisp Listener &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r19î"% , 3.1 The Editing Lisp Listener . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r19î"$" ,4. The Editor ^. v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r21î"% , 4.1 Using the Mouse in the Editor f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r21î"$ , 4.1.1 The Mouse and the Cursor N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r21î"% , 4.1.2 The Mouse and the Region f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r22î"$ , 4.1.3 The Editor Menu n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r22î"% , 4.1.4 Scrolling v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r24î"$ , 4.2 Ztop mode v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r25î"% , 4.2.1 The I-Beam &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r25î"$ , 4.2.2 Leaving Ztop >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r26î"%" ,5. The Inspector v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r27î"$" ,6. The Debugger . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r30î"% , 6.1 The Error-Handler V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r30î"$ , 6.2 The Window Error-Handler N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. T. l. . . 4. L. d. r30î"%": , 15-APR-81î "‡"! Table of Contents éi *Operating the Lisp Machine "P 7. Peek . . 7. O. g. ~. . .. F. ^. v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. \32î"$" 8. Network Programs .. F. ^. v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. \34î"%" 9. Index of Function Keys ^. v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. \35î"$" 10. Quick Summary of Mouse Functions . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. \40î"%  10.1 Scrolling O. g. ~. . .. F. ^. v. . &. >. V. n. . . 6. N. f. }. . -. E. ]. u. î. %. =. U. m. . . 5. M. e. |. . ,. D. \. t. . $. <. \40î"$"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"a  s15-APR-81î