HowToUseWalnutReleaseas[Indigo]Documentation>WalnutDoc.tioga,.pressCamefrom[Indigo]Documentation>WalnutDoc.tioga,.pressByWillie-SueHaugelandLasteditedByWillie-SueHaugelandonDecember13,19834:09pmJimDonahueonDecember8,19832:15pmMary-ClairevanLeunenonOctober5,19831:08pmAbstractWalnutisacomputermailsysteminterfacethatrunsinCedar.Itprovidesfacilitiestosendandretrievemail(usingtheGrapevinemailtransportsystem),andtodisplayandclassifypreviouslyretrievedmessages.Walnutisunderactivedevelopment.ThisdocumentdescribeshowtoobtainandusethelatestversionofWalnutreleasedontheCedardirectory.HowtoUseWalnut:Contents0.Introduction1.Databasestructure2.Userinterface3.Thelog4.Becomingauser5.Copingwithreleasesandcrashes6.Userprofileoptions7.Shortfallsandwishes[Ifyouarereadingthisdocumenton-line,tryusingtheTiogaLevelsandLinesmenus(ifyoucan)toinitiallybrowsethetopfewlevelsofitsstructurebeforereadingitstraightthrough.]XEROXXeroxCorporationPaloAltoResearchCenter3333CoyoteHillRoadPaloAlto,California94304p W~vq SorS-1q Q[ LrQ[14q OrO q N  rN  "5$]+w-14Len$%)O,J Z!#)+@.2q GnrGnT ]#(.1586<\=C E ?%t!(+27:A\Fu Y h(? %b().p1$59< CO X9 %* +1 9<AGg V b32%+y.1 9z<>_?E T  ITVm$HOWTOUSEWALNUT41.DatabaseStructureWebeginwithauser'smodelofWalnut'sdatabase.ThismodelsuppressesmanydetailswhoseunderstandingwouldberequiredinwritinganewapplicationonWalnut'sdatabase,butareirrelevantforaccessingthedatabasethroughWalnut'suserinterface.Walnut'sdatabasecontainstwoentitytypes:messageandmessageset.AmessageentitycorrespondstoamessageretrievedfromtheGrapevinemailtransportsystem.Likealldatabaseentitiesithasaname,consistingofthesender'sRNameconcatenatedwithauniquemessageIDprovidedbyGrapevine.Amessagealsohasseveralimmutableproperties:itssender,itssubject,andsoon.ItsunreadpropertyisaBOOLwhosevalueisTRUEwhenthemessageisfirststoredinthedatabase,andissettoFALSEwhenthemessageisfirstdisplayed.Amessageentityisalsoamemberofoneormoremessagesets.Amessagesetentityisnamedbyatextstringcontainingnoembeddedblanks.Therearetwodistinguishedmessagesets:ActiveandDeleted.Anewly-retrievedmessageismadeamemberofActive.AmessagethatisremovedfromallothermessagesetsisaddedtoDeleted.UsingtheActiveandDeletedmessagesetsinthiswayensuresthateachmessagebelongstoatleastonemessageset.EachuserwillgenerallyhaveoneprivateWalnutdatabaseforreadingmail(thisdatabaseistheonespecifiedintheuserprofileforthelogged-inuser).Additionally,therearepublicWalnutdatabases(residingonAlpineservers)thatanyWalnutusercanbrowse.(SwitchingfromprivatetopublicdatabasesisdescridedinSection4.)Youmayhaveeitherreadonlyorwriteaccesstoapublicdatabase;ifyouhavewriteaccess,thenitispossibletomovemessagesamongmessagesetsandtodeleteunwantedmessagesfromthedatabase(bydoinganExpunge,asdescribedbelow).w"g'x#&g'$g'%g'w'g'x(g')yg'w*g'x,g',g'rHDg's ^ w [YE !'.16+ =@Ea Y 52 %F&|)v 028z>yACf XE )p C% ( Uts $z( U)#Uw-GUz/U1U58w6U Se !"(r.c14;o>DR T!$%z%RR&Rw(rR)QR /1f39 >4 FtPvPO{%' 0B2%7:=BN zNTNw}NsNz hN Nw$bN%YN(+* -z/5N/Nw3N9; x2-46I8bx: M':M'w>+M'AD7K< I9p"<#&(a+1J46P;=ACGG+ "@),.25~8\ @FtzF:wF:zF:F:wF:=F:(j-/239?:?AwFDI{y!&&)9*.06:=@ADbB'v$'*005:68;>RC @b!^%*0a27}:=C-DF >:- &+z 37:>cCo =}eg$')/L 59F=?TCo ;l kk^1!H$(.e0=379:?<EdF 9 ^m!s#M'8-?17t:A=$>C8 8/)!r#o8$W8w)8)8+1TVm$ HOWTOUSEWALNUT52.UserInterfaceWalnutimplementsfourviewertypes:theWalnutcontrolviewer,themessagesetdisplayviewer,themessagedisplayviewer,andthemessagecompositionviewer.WhenWalnutisrunningthereisoneWalnutcontrolviewer,andanynumberofinstancesoftheotherviewertypes.TheiconicformoftheWalnutcontrolviewerisamailbox.AnythingthatcanbedonewithWalnutcanbedonebystartingfromthecontrolviewer(sometimesbycreatingotherviewers).Walnut'suserinterfaceattemptstobeconsistentwithconventionsusedelsewhereinCedar.ClickingLEFTonabuttonrepresentingaWalnutentity(amessageoramessageset)"selects"theentity(makesitanimpliedparametertootheroperations);clickingMIDDLEonsuchabuttonopenstheentity(displaysmoreinformationsomehow).ThisisanalogoustothebehavioroficonsinCedar.Unlessotherwisespecified,hereafter"click"means"clickwiththeLEFTmousebutton".2.1MessagesetsThemessagesetsinaWalnutdatabasearerepresentedbybuttonsintheWalnutcontrolviewer.TheActiveandDeletedmessagesetbuttonsalwaysappearfirst;othermessagesetbuttonsappearinalphabeticalorder.Theremaybeseveralrowsofthesebuttons.Tocreateanewmessageset(containingnomessages)typeitsnameintotheMessageSet:fieldofthecontrolviewer,thenclickCreate.Amessagesetbuttonwiththisnamewillappearandbeselected.TheremainingoperationsonmessagesetscanbeperformedbyusingmenuitemsonthesecondlineoftheWalnutcontrolwindow;theMessageSetOpsmenuiteminthefirstmenulinewill"open"thesecondlineupforuse.Allofthesebuttonsusetheselectedmessagessetsasimpliedargumentsfortheoperations.Todeleteoneormoreexistingmessagesets,selectthemessagesetsandclickDelete.NotethatyoucannotdeletetheDeletedmessagesetthisway;youmustclickExpungetodothat.Walnutrequestsconfirmationifanymessagesetcontainsanymessages.Ifyoudeleteamessagesetcontainingmessages,themessagesaredeletedfromtheset(asifclickingeachmessagewithCTRL-LEFTasdescribedbelow)beforethesetisdestroyed.Tofindouthowmanymessagesarecurrentlyintheselectedmessagesets,clickSizeOf;thesizesareprintedinthetypescriptatthebottomofthecontrolwindow.ClickingPrintwillprintthemessagesintheselectedmessagesets,loadingtheTSetterifnecessary(seesection6forprintingoptions).Tocreateamessagesetdisplayviewer,clickMIDDLEonthecorrespondingmessagesetbuttonofthecontrolviewer.Theiconicformofamessagesetdisplayerisastackofenvelopes.Themessagesetdisplayercontainsaone-linebuttonforeachmessageintheset.EachmessagebuttonlooksmuchlikealineinthetopwindowofLaurel:itshowsthedateofthemessage,thenameofthesender(orTo:fieldifthesenderisthecurrentuser),andthemessagesubject.Atmostoneofthemessagebuttonsinasetisselected(shownwithagreybackground).Toselectamessage,clickLEFTonit;toselectanddisplayamessage,clickMIDDLEonit.Todeleteamessagefromthemessageset,clickCTRL-LEFTonit;itsbuttonwilldisappear.(Notethatifthismessagebelongedtonoothermessageset,itisaddedtotheDeletedset,andhenceisstillaccessible.)Amessagesetdisplayeralsocontainsseveralcommandbuttonsthatoperateontheselectedmessage.Categorieslists(intheWalnutcontrolwindow)themessagesetsinwhichtheselectedmessageappears(amessagecansimultaneouslybeinseveralmessagesets).MoveToaddsthemessagefromthemessagesettoallofthemessagesetsselectedinthecontrolwindow,afterfirstdeletingitfromthemessageset.Displaydisplaystheselectedmessage.Deletedeletesthemessagefromthemessageset;ifitthusbecomesamemberofnoothermessagesets,thenitismovedtotheDeletedmessageset.w"g'x#&g'$g'%g'w'g'x(g')yg'w*g'x,g',g'rHDg's ^ w [ -G $'Z,Z1"58j=@ D Y HK %g -&2_6s;Z<AE{F XXT"$*z,8.2@6;"=BErG/ V"!%'J**,.2M5y:u=?BD U  Se !'/* R[< @!# ), 4j7=?TDq Pw 1P@q "&(-/06@8>@D O? 8 9 %dq*oO?+^O?w/O?14@5_9=@C M   q 'b)+p1!26b8 K(R f#8',03q5~K6&Kw8K=t G )w D~%( /168:@D Br B BwjBr7B4BwB&!Y&e*/|26<>8CDG A0  $#&(,. >Qp %'.1269r;>=> wD>G =  Er= = w <= != #(e*z.148L:?qB!D  ;f > !@#&e(R/1 48<5>8@E#G 9 ta.r99 w)9-125x8x<?`B4G/ 8y,:s  C%4'*/(579F>MDG/ 6p i6$),028-:=yr@6pA6pwD6pF6p 4 (4%-'U*-^0 3r6474w=4>@D 3!J t #(i+13X6:(;W@B 1zpC\"%'()G*/28'q;:1z<1zwA1zCd /aV P!f$D&)-V3!5c;0<?D7 .+ r$.+ .+w\.+[.+B"#&) ,w.0r5<69X> Dr ,w t, s%*X-Q2;49{:@CHZ * )k (a/B$q'(a((aw,|(a.x0 9?AEG/ & !&[(w.T/04\6 $>PI"$).0m39/:=v@D7 "ap! "(+).0!4169;X=CmE  }$"$u&+/2L4:?AEG H Ax;M!&)*- 68<]=|C!qFQHFHw   QX"q%n&\w*;,V.056P;?9AG q  w`1 9 '6+-/617=>@D7 R a #GU!%') 'ku>#G'.25:Cr  wC(s!%+.$36c84D7B~a (*,Y06Br SwhS/!#(+.,.03<8;a@BgDTg!#&g(.r wor wC *| #8(+,v-06\7<>@D7 )E7r"E )#C )w' )-  TVm$PHOWTOUSEWALNUT6AddToaddsthemessagestotheselectedsetswithoutfirstdoingthedeletion.Printprintsallthemessagesinthemessageset(seesection6foroptions).PrintSelectedprintstheoneselectedmessage(seesection6foroptions).Finally,theActivemessagesetincludesaNewMailbuttonthatreadsnewmailandaddsthemessagesreadtothismessageset.FortheMoveTo,Delete,andAddTobuttons,LEFT-clickingsimplyperformstheoperationdescribedabove,whileRIGHT-orMIDDLE-clickingperformstheoperationanddisplaysthenextmessageintheset.(Notethatifyouhavereadonlyaccesstoapublicdatabase,thentheMoveTo,DeleteandAddTobuttonswillnotappearinmessagesetdisplayers.)2.2MessagesAsdescribedabove,amessagecanbedisplayedbyclickingMIDDLEonamessagebuttonofamessagesetdisplayer.Thiscreatesamessagedisplayviewer,whoseiconicformisanenvelope(clickingSHIFT-MIDDLEonamessagebuttoncausesthecreatedviewertofilltheentirecolumn).Themessagewithinsuchaviewerisnoteditable.Thisviewerisassociatedwiththemessagesetthatcreatedit,soclickingMIDDLEonanothermessageofthesamemessagesetshowsthisnewmessageinthesamemessagedisplayer.Thisisdesignedtoavoidaproliferationofmessagedisplayers.Ofcourse,therearetimeswhenyoureallywanttocreateviewersonseveraldifferentmessagesinoneset.Clickingamessagedisplayer'sFreezebutton(whichthendisappears)permanentlybindsthemessagetothemessagedisplayer.Ifallmessagedisplayersforagivenmessagesetarefrozen,thenMIDDLEclickinginthemessagesetcreatesanewdisplayer.Afrozenmessagedisplayercannotbeunfrozen,butcanbedestroyed.Amessagedisplayerhasseveralotherbuttons.TheCategoriesbuttonisthesameasthatonmessagesetdisplayers.AnswerandForwardcreateaWalnutSendviewerinitializedeitherwithaproperheadingforananswertothemessageoracopyofthemessageforforwarding.ThePrintbuttonusestheTSettertoprintthemessage--itwillloadtheTSetterifnecessary.AndtheremainingSplit,PlacesandLevelsbuttonsarefromTioga.2.3SendingmailTocreateaWalnutSender,left-clickNewFormintheWalnutcontrolviewer,orusetheAnswerortheForwardbuttononamessageviewer,ortypeWalnutSendtotheUserExec.AWalnutSenderisaTiogaviewerfortypingintheheaderfieldsandbodyofamessageyouwanttosend.TheSendermenu:Sendiswellnamed.StopSending!popsupduringpartofthesendingprocess;clickingitgivesyoualast-minutechancetochangeyourmindaboutsendingamessage.Right-clickingSendmakestheWalnutSenderbecomeiconicaftersyntaxchecking.(IniconicformaWalnutSenderisthebackofanenvelope.)AWalnutSenderwillnotallowitselftobedestroyedwhilesendingisinprogress.GetissimilarTiogaGet--WillloadalocalorremotefileandallowedittingStoreislikeTiogaStore.SaveislikeTiogaSave.FormsshowstheFormsmenuline.AlltheitemsonthislineareguardedwhiletheSenderisdirty.NewFormmightbetterbecalledDefaultForm;itreplacesthecurrentSenderwiththedefault.(Youcanspecifyanon-standarddefaultinyourUser.profile.)w"g'x#&g'$g'%g'w'g'x(g')yg'w*g'x,g',g'rHDg' _/wv_/_/ &((-046r ]Aw5]A]A"qM"Z'),182m4r [S w[S[S#)I,014% YerYeYew/Yefb$r%Ye&Yew+Ye/2}58;>YAtCW: UB@rUBUBwUBriUBgUBwUBCUBrUBUBw#UBq(UB)mUBw+~UB+UB05K;=TCd S>qSSw]SRSqSSwBS7S"E(*p03A8o:=CDG Q#'%&d*04Nr6Q8 Qw<Qr=Q> QwAQrDQEQw PL7! t L )w I=!#)+gq0aI1PIw4I67=4AC)D7 H ] *#.(4-E169;=Dq F` wQF`w9$%&+014)6:A?D7 DC9?!w$)* 14C6<>NA.F G CqCCwCt!Y#' ,K.R2I47<>@D7 Aj ^$ "= *C,1 8;?CzE ? "%)/57U: =WBD7 > r>>w(>#A * 37&9?AD7 BDG 5p rP5B5w5r!5"~5w'5+-/2F5: AEHe 3[\. $%p'((F+-:/47 >rA3[B3[wE3[E3[ 1 \Ft!A"$%&),a1L2 9<?NrE1F1wH1r 0 w0 rj0 <0 w0 O t , )iw )o84F r#)o$)ow*)o,r.38=t?JArDC)oE5)ow 'r ' #'Ew'!)%'* 24g6:#>e?D &  X aHU#'*H-/068<= #.r !*w!*rh!*P!* w#!*&)-0w2849?DF Pf z"&%N(,128 rAB}wEV `"%*503C7U:<@EG/ 4 A!&)o+/3547=`A-F\G r wzkrKw #$().037Qr wr wVmrM wrO wq"%1'+"-/2[49=?DEro }w }: }r# } w, }- }.3F5:n?B0Do I #(N)-8  TVm$HOWTOUSEWALNUT7PrevMsgrestoresthelastmessagesuccessfullysentfromthecurrentSender.Andyoucanalsoaddyourownforms(seebelow).GetandStorechangethenameoftheSendertobethefilename.ClickingtheFormsitemswillcauseanybackingfileassociationfortheSendertobeclearedandthecaptionwillreverttoWalnutSender.NewcreatesanotherSender.SplitislikeTiogaSplit.PlacesislikeTiogaPlaces.LevelsislikeTiogaLevels.ThedefaultSenderformnowhasnodestructureandusesasmallboldfontfortheheaderfields.ButaddedheaderfieldsusestandardRoman;togetaddedfieldstousethesmallfont,includeinyourUser.profiletheline:WalnutSend.labelFont:"sb"Ifyouwanttochangethedefaultforms,youcancreateyourownandspecifytheminyourUser.profilewiththeentries:WalnutSend.DefaultForm:filenameWalnutSend.AnswerForm:filenameWalnutSend.ForwardForm:filenameTheanswerformmusthaveheaderlinesinthesameorderasthestandardformandprovideplaceholdersintheappropriateheaderpositions.Theforwardformmusthaveanodewiththecontents"ForwardedMessage";Forwardreplacesthisnodewiththemessagebeingforwarded.(SeeJimDonahueforfurtherdetails.)Theseprivatedefaultscanbelocalorremote.Ifyouneedadditionalsendingforms,youcanspecifytheminyourUser.profilewiththeentry:Walnut.MsgForms:{listoffilenames}Theseadditionalformswillthenappearinthepop-upFormsmenu.Likeprivatedefaults,theseadditionalformscanbelocalorremote.(Youmight,forinstance,wanttospecifyremoteformsfrom/Indigo/Cedar/Forms.)Onlytheshortnamepopsup;thedefaultextensionis.form,andonlynon-defaultextensionspopup.Atthemoment,thereisnowaytocreateadditionalanswerorforwardforms.AmessagetoapublicdistributionlistortomorethantwentyindividualsprobablyneedsaReply-to:field.Ifyourmessagedoesn'tcontainone,SendwillpopupamenuwiththeitemsSelf,All,andCancel.SelfmeansinserttheReply-to:fieldandfillinmyname;AllmeansdonotinsertaReply-to:field(repliesthengotothefulllist);Cancelmeanswhoops,don'tsendthemessageyet.TogetReply-to:senderwhenappropriate,withoutbeingasked,inserttheentryWalnut.ReplyToSelf:TRUEinyourUser.profile.(Withthisentry,ifatsomepointyouwantReply-to:allyouhavetoinsertitbyhand.)WatchtheWalnutcontrolwindowforerrorsintransmission.Ifthetransmissionissuccessful,themessageissavedandanewdefaultformappears.2.4Retrievingmailw"g'x#&g'$g'%g'w'g'x(g')yg'w*g'x,g',g'rHDg'o_/w_/_/k$ ,-/2w49o\@P #'z*GroZ8w=Z8rZ8Z8wZ8#%q',z.*02|49>rA^Z8B0Z8wEZ8oX"  ' )P+0f248;=BEoVr TnwTnTnr Qw QlQu rQ OwwuOwOwrlOw LwILL`r@LLwWL JIr"%+P.12R59<<7>@E H Br!&k(*i.2H36r8/ ;. 9! 5 .|g"$&d)-d.1@6:<A 4*   #{&,|0b4I89=ABD  2r22wm2"%#(~+-3 6 >@C 0 )vx$B&(,- .`/C $&)V-1|3*6e =ACt +o (3 !}$J&=(r-(.(w1N(2(7;Y@;F & phQ"#'T+-378={B0F( %FO!%;(d*,1~7t8<?3B% # \JE k#%`'f*>+/ 6f;<A !$#c 0 !#%W&*j-y1 8>BRCe |M^"%),}/u137:V<r@|A|wC'|rD.|E |wE|F|r w 1#Z&)?+e-/or23w569;>sB<Ce . 0sr..w$.%.(..147Walnut.segment).TheWalnutExpungecommandhasthesameeffectasRIGHT-clickingExpunge.WalnutDumpwritesonexpungedversionofthelogonthefile"Walnut.TempLog",butmakesnodatabasechanges.TheWalnutOldMailReaderw"g'x#&g'$g'%g'w'g'x(g')yg'w*g'x,g',g'rHDg'w _/v? % ,&-1P258;>=CF ] H( W$*-=2$6;5@iAFr [ Z\"l(\w Ye })!#|(+/r V.SU!!w(V*c-0`38eVr UBjh!,# w RArRRwRT#&)L+W0F16<=\AG Q  Fl7!'S)w-3m5e7:>ADm Oxn "%+0w2U7z9B;@BE@ Me r!'b,y.T14:1>@D?G/ L*@&#%A)@+/z037<9N@CE J ; r rJJw J%K' r){J*nJ.w4J ;B?aBG/ H F`bv %(+/-|04`5:<@BEG D(// Aj0 > kG$r)n,/ 6;">ACF @C8 :s!0r#:$:w):t 7} ) w 4.M D!|$+',/2g5y7x >rD"4.E4.w 2!%'-5 8A;? F 0 hq"Kr$0%0w*0r,0-0w2 03057=?>rCe /8 l "2#).1r2/83/8w7/88/8:?@Ce - ? MW "%*-p07q;&=@C +r++wO+ $'):-.36r<~+={+wBE+G )nh E!1E$' .2K39dr:)n;)nw@C)nCG/ ' %L} H!j$9%)(*I,^.367:3<?|BDG # s)M#&r)#**#w.%#1O4r75#8(#w<#=f#?EG/ !"WQ %'*/e2'4Z79=@C Vr V V wR V VrY VK Vw" V$H)H+13:.;><B Gr3w!&(a*/4g9=AG/ 3HfpM!'6)/5 6x;@D tIu5"%**/17 >1C  1 #)/25>69<>DBvE~H# =  8 $&%+/ 68;M |8&,/2)6% =?L@C. "D8!r%'w,-06C =}ArDEw tu#t `$&u)S-3 4:3>@iDEU ^#),.07Lr:|;? w % nqW-<)r>%@,% w ~_Xq ~P ~w! ~"q ~r' ~( ~w-G ~r/b ~0 ~w8= ~iD  QT#&`*,2386r; g'w'Wg'x(vg')g'w*Sg'x+g',g'rG~g's ^ 3w [x%+.o06P;=?QCgFHez Y"w\Y{E"e#&+/28#9rADEU ITKC, $':)+-2t5=9=`>ACF^ G BB "%&).1[2u49%<;?<DrDGEGw Fi3 !#%'+Z0588 ;>CrD"FE Fw D^/UZ2 A;%yo%*-3/7; r& E > A|"%*,2426 @D]H. 9 GL="x%+^.91`5;?\AEtG/ 7 De=$9&9*-=k@hD 6E q<6E6Ew6En6Er^6EE6Ew!k6E"6E%~'-Y24?6 <q@6EAX6EwD6EDy6E 4q d"W%( /:47;W=CF 2 : #(,,V/139Z<?BACz 1O I>h"|$+&1'[) .pD a#e%'+U.Y/159  ?QDG% +{ EP"'*.c/04m6;G<@RBTVm$yHOWTOUSEWALNUT114.BecomingaUserFirst,bringoverthelatestWalnutbytypingBringover/a/pTop>WalnuttotheExecutive;thiswillalsoretrieveWalnutSend,Cypress,AlpineUserImpls,andTSetter.TheselatterfileswillbealsoloadedbyWalnut.BeforeyoucanrunWalnut,youwillalsoneedanaccountontheAlpineserver"Luther.alpine"tostoreyourWalnutdatabase.ContactKarenKollingtoobtainanAlpineaccount.YoucanalsostoreyourlogonAlpinewhichreducesthecostofusingWalnutonapublicmachine(youcanjustretrieveyouruserprofilefromaserver,loginandtypeWalnut).IfyourlogistobestoredonAlpine,tellKarensothatitwillbebackedupforyou.EdityourpersonalprofiletocontainalloftheentriesspecifiedinWalnutDefault.profile(publicinWalnut.df).Theonlyprofileentrythatmostuserswillwanttoexperimentwithis"InitialActiveRight:TRUE";makingitFALSEcausestheActivemessagesetdisplayertocreateitselfintheleftviewercolumn,likeallothermessagesetdisplayers.TostartWalnut,typeWalnuttotheExecutive.Thiswillspendalongtimeloading,butfinallyaWalnutcontrolviewerwillappear.YoucanincludeWalnutinacheckpoint.Besurenottoclickcheckpointuntilthemessage"...Ready"appearsintheWalnutcontrolviewertypescript.MessageandMessagesetdisplayersgetupdatedaftereachrollback;ifadisplayedmessageormessagesethassincebeendeleted,theviewerwillbedestroyed.ToreadaLaurelorHardymailfile,orafilecreatedbyWalnut'sArchiveoperation,firstrunWalnutasjustdescribed.ThentypeWalnutOldMailReader{optionalmessagesetname}totheExecutive.Ifyoufailtospecifyamessagesetname,themessageswillbeplacedinActive.Ifthespecifiedmessagesetdoesnotexist,itwillbecreated.UsingWalnutOldMailReadertoreadaWalnutarchivelogwillputthemessagesbackintothemessagesetstheywereinwhenarchived.w!g'x"g'#g'%>g'w'Wg'x(vg')g'w*Sg'x+g',g'rG~g's ^ nw [Lo!#r Yqw V B gX#{ +1<?E T n RN Rc iH!#&)+025[9=G P Z=!q%*,027=@CTF2 O 1/GQ!$&U* .1 2A6<?OAD Mm a' #<r&7CET K ~p$6s IA|#%x'4). 35|C*G G H"&),S/1m 8;=;x Ew E ExEEwE_#(*02\6O9;9=?DB DK &~ A'r ?Aw <  !; #,&R+.2X38k=AD. :7 %'*q,.O1h 8B;g=B 8!" (T-06 8B >@FS 6 4D "C'),/d27:">xAB 4dO=1!$&(/*/17=? CF 2% ,r 07w007!$'L+17'9C -  ]-"#)6+b/17:<ABH  ,  nM[#%')/r4, 5, wCV, E(He *d~#Y&)x+1/36:1;?TVm$HOWTOUSEWALNUT125.CopingwithReleasesandCrashesWalnutsometimescrashesbecauseitsdatabasehasgottenintoabadstate.Also,anewreleaseofWalnutortheCedardatabasesystemwilloccasionallychangethedatabaseformatthatWalnutunderstands.FromWalnut'spointofviewthesecircumstancesareverysimilar.AWalnutdatabasecanalwaysbereconstructedbyreplayingaWalnutlogfile.IfWalnutisnotloaded,youcanreconstructtheWalnutdatabasebyexecutingthecommandWalnutScavenge;thiswillrebuildthedatabasefromthelogfile,andleaveWalnutrunningwhendone.EvenifWalnutisalreadyloaded,youcanscavengebytypingWalnutScavengetotheExecutive.Walnutwillalsoscavengeautomaticallyifthedatabasecannotbefound.w!g'x"g'#g'%>g'w'Wg'x(vg')g'w*Sg'x+g',g'rG~g's ^ jw [b)"S$6),X03|47o;?@PCGG Y>i1#& .36<AoD X< uJ!h$(- 0366E UPP "# *,24'9';?@EG Tf L"-')/2-r8T9T wCUTDJTF R]W!_$',u15T9=>rCVD Pr!>P"P w,P.1? 8=@C O _ 6"'TVm$CHOWTOUSEWALNUT136.UserprofileoptionsBelowisacompletelistofallofthecurrentWalnutuserprofileoptions(copiedfromUserProfileDoc.tioga):Walnut.ReplyToSelf:BOOL_FALSE;ifTRUE,causeswalnuttoautomaticallysupplyaReply-To:field,ifappropriate.Walnut.DestroyAfterSend:BOOL_FALSE;ifTRUE,causessendertobedestroyedafterasuccessfuldelivery,ifSendwasclickedwithRIGHTWalnut.AlwaysOpenSender:BOOL_FALSE;ifTRUE,thefirsttimeWalnutSendistypedtotheexec,thesenderwillbeopenedandgrabtheinputfocus.Walnut.InitialActiveRight:BOOL_TRUE;truesaystobringuptheactivemessagesetontherightcolumn,falseonleft.Walnut.InitialActiveOpen:BOOL_FALSE;truesaysopenamessagesetvieweronActive.Walnut.InitialActiveIconic:BOOL_FALSE;iftrueandInitialActiveOpen=TRUE,thentheActivemessagesetviewerisopenedasanicon.Walnut.AutoNewMail:BOOL_FALSE;ifTRUE,thenautomaticallyretrievesnewmailwhenthemailboxisnonempty.Walnut.MsgSetButtonBorders:BOOL_FALSE;ifTRUE,putsbordersaroundtheMsgSetbuttonsinthecontrolwindow.Walnut.EnableTailRewrite:BOOL_FALSE;ifTRUE,performs"tailrewrite"onExpunge.Walnut.WalnutSegmentFile:TOKEN_"[Luther.Alpine]Walnut.Segment";valueisthenameofthefiletobeusedforthewalnutdatabase.Walnut.WalnutLogFile:TOKEN_"Walnut.DBLog;Nameoflogfile.Walnut.AutoScrollMsgSets:BOOL_TRUE;ifTRUE,automaticallyscrollsamsgset(whenfirstdisplayed)tothefirstunreadmessage(ifany)ortotheend.Walnut.NewPageEveryMsg:BOOL_FALSE;ifTRUE,whenprintingamsgset,everymessagewillbeginonanewpage.Walnut.PrintSmallHeaders:BOOL_TRUE;ifTRUE,theheaderssectionsofmsgsgetprintedinasmallerfont.ThisisNOTusedfortheprintbuttononamessagedisplayer.Walnut.MsgForms:LISTOFTOKEN_"";w!g'x"g'#g'%>g'w'Wg'x(vg')g'w*Sg'x+g',g'rG~g's ^ w [bUu9 z"%1(-h26Y;Q@F( Yt U{UxUU{UxRU U{!UzT4xeT4T4zT4mT4 &*=+r15/6 t P{QPxOPP{Px!P"EP{%)PzO=xeO=O=zO=mO=sB%,(_) /56d98:?-ADHdt EO{GEOxDEOEO{EOx!EO":EO{$EOzCf/!&A(T*H,/48:t @X{1@Xx/@X@X{@Xx!k@X"$@X{% @Xz>5n#%t ;a{;ax;a`;a{ V;ax!;a";a{%;az9e5!&l)w+/5"76;Y<AOCDt 6j{6jx6j6j{6jxN6j 6j{"6jz4e-7 $'*.B036K7t 1s{1sx1s1s{"1sx$B1s$1s{'1sz/e- e"',k.0]4t ,|{,|x,|w,|{ m,|x!,|",|{%,|z*e-"#t '{'x'<'{"%'#*z%P8 "%'*1.1t "{"x"o"{Y" z t {OxM{ x"#B{%ze-  !&E*@- 3Y47J:>CEG?t {9x7{ x"s#,{&zPe-"&5+n.1347t { x { x"F"{%rzYe-yY ^"%T',*-/369;_>BD*,m` t b{ bx b b{! bx#* b# b{$D bBTVm$HOWTOUSEWALNUT14AlistoffilenamestobeusedasWalnutmessageforms(buttonsforeachfilelistedareaddedtoWalnutSendviewers).WalnutSend.DefaultForm:TOKEN_"";ThefilenameofthedefaultWalnutSendform(usedwhenNewFormisclickedinaSender).WalnutSend.ForwardForm:TOKEN_"";ThefilenameoftheforwardingWalnutSendform(usedwhenForwardisclickedinamessageviewer).WalnutSend.AnswerForm:TOKEN_"";ThefilenameoftheansweringWalnutSendform(usedwhenAnswerisclickedinamessageviewer).WalnutSend.LabelFont:TOKEN_"";Thefonttobeusedforthelabelsonmessagetheheadersofsentmessagesw!g'x"g'#g'%>g'w'Wg'x(vg')g'w*Sg'x+g',g'rG~g'z_,sd t"-',K0 5K7s:<@xBF] t [{E[xC[[{ [x"r["[{#[zZ&m8 '*@-1L78=?1@ft V{VxVvV{!_Vx"V#yV{$VzT&m ! )J,038:a>@AS;t O{%Ox"OO{ Ox"RO"O{#lOzN &m! (,/379T=?@Let H{HxHzH{dHx H!~H{" HzG6I)Q"g$Z)+02c55TVm$oHOWTOUSEWALNUT157.ShortfallsandWishesWhatfollowsisalistingofknowndeficienciesandcontemplatedextensionstoWalnut.Nobodyguaranteesthateverythinglistedbelowwillbeimplemented.Butthelistdoesindicatesomedirectionsforfuturework,andmayprovidecontextforyourownWalnutwishes.SendbothbugreportsandwishestoWalnutSupport^.7.1MessagesetsItwouldbenicetoallowselectionofmorethanonemessageinamessageset(perhapsevenspanningmessagesets).7.2RetrievingmailItseemsdesirabletomakemailretrievalacontinuousbackgroundactivity.ThiswouldtendtoinsulateusersfromtheresponsetimeofGrapevine.Oncemailretrievalisimplementedinthebackground,anaturalnextstepistoprovidesomemeansforauserproceduretoclassifyincomingmailaccordingtoitssignificance,fileitinsetsotherthanActive,lettheuserknowthestatusofhisnewmail("Youhaveimportantnewmail").TheprocedurethatstoresnewmailinthedatabaseshouldunderstandtheIn-Reply-Torelationship.Eventually,usersshouldbeabletowritequeriesorothercommandsthatexploitthisrelationship.7.3SendingmailItshouldbepossibletoforwardoranswermultiplemessages.Thisseemstorequiretheabilitytoselectmultiplemessages.Feedbackfrommailparseerrorscanbeimproved.Whendisplayingamessagecontainingaparseerrororbadarecipient,thepointoferrorinthemessageheadershouldbehighlighted.Whensendingasequenceofmessageswiththemessagecompositionviewer,youtendtoclickSend,waitforthefeedback"sending...",thenmaketheviewericonic(toreclaimthescreenarea)andfinallyclickNewFormtocreateanewviewer.Itwouldbesmoothertoreusethesamemessagecompositionviewer,butwithoutwaitingforthemessagetobesent(sincethiscantakequiteawhile).Sinceitisquiteunusualtohavetwomessagesintransit(ascontrastedwithtwomessagesbeingcomposed)atthesametime,thiscanbeachievedbypassingresponsibilityforthemessagefromthemessagecompositionviewertotheWalnutcontrolviewerwhenmessageparsingiscomplete,andclearingthecompositionviewerforreuse.Anyerrorsintransmissionwouldbereportedinthecontrolviewerratherthanthecompositionviewer.7.4GlobaloperationsWalnutneedsawaytomakequeries.(Thisiswhatdatabasesareallabout!)Forstarters,we'dliketohavesomethinganalogoustoLaurel'sSearchMailprogramforperformingtextpatternmatchinginthemessagesofamessageset.TheWalnutExpungeoperationcurrentlyrequiresmoreresources(suchasdiskspace)thanWalnutrequirestoperformotheroperationsonthesamedatabase.Thisisunfortunate,sinceitmeansthatausercangetstuckinasituationwherehemusthand-edithisWalnut.DBLoginordertorecover.w!g'x"g'#g'%>g'w'Wg'x(vg')g'w*Sg'x+g',g'rG~g's ^ Szw []&W*" *B- 5 :D3 Y  \ "$& /257E:z?CD XX Mg$'*t-28%;?&B F VFt Sb )w P]#%)p,/5@7&8>@kFI Nl t K ) w GKrj>!X&(0 /^ 7=@@DG F'F!" CAP "N#&E ./<369; <AEK B T yR:$m'./1 9@ t 8 )iw 5, "'E,36: DE / ^"  l  $6%(C-2"68 -Y[$('4). 6;-=@BE + )a*"&)-k1p38}:?BEK *  5#6$(*1 26q8EG/ % e|$e ,/ 1h6:CF  W#{ *0{2 :<AG 3 K' a m2 Z&6+/58:f=SAD Ly+ #%x)/24Q <>?A-EHe i qN&!#'1-gr/i0i w9ai;>@r RTVm$  LAUREL TIMESROMAN HELVETICA TIMESROMAN TIMESROMANLOGO HELVETICA TIMESROMAN TIMESROMANY HELVETICA HELVETICA HELVETICATl @ ' 0 =? 8HO{RZ] 6fj/igXa"Tuesday, December 13, 1983 4:12 pm