[0 +8+fq(+4)[1 0fo10f"g+q1' +fq()+4u1 fq1"l 0' ,q1:m(q1+4(]1]0)) {_bFt$H%/+&9 eS}31( [ `dbs7 =!'j%\QUjgH/K+WoVUi .I$/3"#1Q$B PhudX,y_sEpGs]_p^mRstr_ r0Ytn 1rs+Wrdptusz!ri/-e3uh`tsZ.f pi oX ao Bp ni _X i v px# Babyl C# Babyl M& Append to TNX Mail File& Babyl Add Recipient& Babyl Append& Babyl Delete Recipient& Babyl Process Init Vars& Complete TNX Header& DECnet Mail Buffer& Default Babyl Queuing Function& ITS Mail Buffer& Mail Message& Maybe Insert In-Reply-To& MMAILR Babyl Queuing Function& Process Recipient Field& Push To Buffer& Push To Edit Mail& Run Mail Subfork& Setup BABYLM Library& TNX Mail BufferEdit and Mail BufferGet Mail TemplateInsert Mail Template Into VARS/Init FileMail With TemplateNet MailProcess Babyl Init or Vars FileSet Mail Template^R Babyl Add Cc-Recipient^R Babyl Add Subject: Field^R Babyl Add To-Recipient^R Babyl Delete Recipient^R Babyl Yank~DIRECTORY~~DOC~ # Babyl C~DOC~ # Babyl M~DOC~ & Append to TNX Mail File~DOC~ & Babyl Add Recipient~DOC~ & Babyl Append~DOC~ & Babyl Delete Recipient~DOC~ & Babyl Process Init Vars~DOC~ & Complete TNX Header~DOC~ & DECnet Mail Buffer~DOC~ & Default Babyl Queuing Function~DOC~ & ITS Mail Buffer~DOC~ & Mail Message~DOC~ & Maybe Insert In-Reply-To~DOC~ & MMAILR Babyl Queuing Function~DOC~ & Process Recipient Field~DOC~ & Push To Buffer~DOC~ & Push To Edit Mail~DOC~ & Run Mail Subfork~DOC~ & Setup BABYLM Library~DOC~ & TNX Mail Buffer~DOC~ Edit and Mail Buffer~DOC~ Get Mail Template~DOC~ Insert Mail Template Into VARS/Init File~DOC~ Mail With Template~DOC~ Net Mail~DOC~ Process Babyl Init or Vars File~DOC~ Set Mail Template~DOC~ ^R Babyl Add Cc-Recipient~DOC~ ^R Babyl Add Subject: Field~DOC~ ^R Babyl Add To-Recipient~DOC~ ^R Babyl Delete Recipient~DOC~ ^R Babyl Yank~DOC~ ~FILENAME~~FILENAME~~INVERT~BABYLM[1 ff&2"e :i*To continue editing this message use the C command.( )[Abort Resumption Message' -2"'e,0m(m.m& Push To Edit Mail) qBabyl C Hookf"nu1 m1'w :m(m.mEdit and Mail Buffer):i*To resume, invoke the Send Mail command again with a numeric argument[Abort Resumption Message ff&1"n 1,:m(m.m# Babyl C)' 1,:m(m.m# Babyl M)ff&2"n 0fo..qBabyl Init/Vars Processed"n '' [1[2[3[4 f[DFile f[BBind e[fne] fsOSTecof"ew etDSK:EMACS;BABYL VARS' "#-1"ew etEMACS:BABYL.VARS' "#w etDSK:BABYL.VARS'' e?"e fsDFile m(m.m& Babyl Process Init Vars)' etDSK: fsHSNamefsDSNamew 0fsdvers etBABYL INIT 0u1 fsOSTeco-2"e 1:w' "# fsOSTeco"e et foo babini fs xuname fs dfn1' e?"e 1u1'' q1"n er @y m(hx*) 1m.vBabyl Init/Vars Processedw ' etBABYL VARS 0u1 fsOSTeco-2"e 1:w' "# fsOSTeco"e et foo bvars fs xuname fs dfn1' e?"e 1u1'' q1"e 1m.vBabyl Init/Vars Processedw ' fsDFile m(m.m& Babyl Process Init Vars) 1m.vBabyl Init/Vars Processedw F[DFILE FF&1"NFSDFILE' "#FSOSTECO"E ETFOO EVARS FSXUNAMEFSDFN1' "#ETEMACS.VARS' FSHSNAMEFSDSNAM' [1[3[4 Q..O[5F[BBINDQ..O[6 [..O 128*5,32:i*[2 *5:f2 / "*5:f2 |!'! 1:"L' <.-Z; @:F"EL!' 1AF  :"L@L!' .,(CS:.-2,.+1F=::"EC' ).-1X3 .u1@f l 1a-34"eq2[..d .+1,(@fll).-1x4 ]..d @:i4"4"!''!' "#.(:\u4)-."eq1-1j' @f  l :@f"n q1j:X4'' Q5U..O FQ3-2:G3F:"'L+( 0:G3-:"'E)"L M4U3' "#F=3*"EM4' "#Q4M.V3'' Q6U..O@L> :@i*|[1fsqpptr[2 m(m.mKill Variable)MM & Process Init Varsw :g(m.aAUX& Process Init Vars)u1 q2fsqpunwin f:m(q1(]1)) |m.vMM & Process Init Vars fsQPPtr[0 [1[2 ff&2"e :i*To continue editing this message use the C command.( )[Abort Resumption Message' -2"'e,1m(m.m& Push To Edit Mail) 0f[VB 0f[VZ fsModified"n ft Last message being composed seems to have been aborted. Continue editing aborted message?  m(m.m& Yes or No)"n q0fsQPUnwindw f@:m(m.m# Babyl C)'' qCurrent Babyl Template Nameu1 q1"n 0@fo..qBabyl Template 1u1' 0fsWindoww q1"n hk g1 j zu2 0,1a-["e d 8+2f[IBase \u2 f]IBase 0,1a-]"e 0k d'' q2:jw' "# hk iTo:  .-2( qBabyl CC Tof"nu1 icc:  g1 i  'w fsOSTeco"n qBabyl Fcc Tof"nu1 iFcc:  g1 i  ''w qBabyl Reply-To Fieldf"nu1 iReply-to:  g1 i  'w gBabyl Header/Text Separator i  )j' qBabyl M Hookf"nu1 m1'w :m(m.mEdit and Mail Buffer)w[Current Babyl Template Name fsQPPtr( :i*Babyl Template [CRL Prefix q..q[CRL List 8+2,f Template: uCurrent Babyl Template Name fqCurrent Babyl Template Name"e @:m(m.mMail With Template)' )fsQPUnwindw f:m(m.m# Babyl M)[1[2 "e hm(m.m& Save for Undo)Get Mail Template' :i*Babyl Template [CRL Prefix q..q[CRL List 8+2,f Template: u1 fq1"e 1,@:m(m.mGet Mail Template)'' qBabyl Template 1u1 hk g1 j zu2 0,1a-["e d 8+2f[IBase \u2 f]IBase 0,1a-]"e 0k d'' q2:jw [0[1[2 :i*Babyl Template [CRL Prefix q..q[CRL List 4[CRL Non-match Method 16+8+2,f Template: u0 fq0"e f@:m(m.mSet Mail Template)' .u1 hx2 fsQPPtr( f[BBind g2 j i[ 8+2[..e q1\ i] hx*m.vBabyl Template 0w )fsQPUnwindw ftDo you want to make the 0 template permanent, by putting it into an EMACS or Babyl init or vars file now?  m(m.m& Yes or No)"e 0u..h 0' f[DFile etDSK: fsHSNamefsDSNamew e?BABYL INIT"n e?BABYL VARS"n fsOSTeco"e fsXUName:f6u1 et1 EVARS'"# etEMACS.VARS' e?"n fsOSTeco"e et1 EMACS'"# etEMACS.INIT' e?"n etBABYL VARS'''' ftPlease specify which init or vars file to use:  [Previous Buffer qBuffer Nameu1 @fn|m(m.mSelect Buffer)1| @m(m.mFind File) 0u..h z"n fsOSTeco"e :i1C-M-C'"# :i1C-M-Z' :i*Please set point for template, then exit with 1[..j  ]..j' m(m.m& Set Mode Line) m(m.mInsert Mail Template Into VARS/Init File)0 @m(m.m^R Save File)w 0[0[1[2[3 :i*Babyl Template [CRL Prefix q..q[CRL List 8+2,f Template: u0 fq0"e f@:m(m.mInsert Mail Template Into VARS/Init File)' fsQPPtr( f[BBind 0fo..qBabyl Template 0f"ew :i*No template 0fsErr'u1 g1 0s j <:s; r i c> 0u2 0u3 0s"!'! j <:s; r i c %2w> !"!0s' j <:s; %3w> hx1 )fsQPUnwindw @ft Is this a VARS file (as opposed to an init file) 1m(m.m& Yes or No)"n 0l .,( i Create mail template 0: Babyl Template 0: "!'! g1 i"!'! i  ).f 0' 0l .,( i !* Create mail template 0: !  q2+1-q3"l i! q3-q2-1,"i!'! i! ' i:@i*" g1 i" m.vBabyl Template 0w!'! !'! q2+1-q3"g r !"!q2+1-q3,'i c' i  ).f 0n[2 qBabyl Edit Mail Hookf"nu2 m2' "#w mBabyl Default Edit Mail Hook' !Re-edit! 0u..h fsRGetty"e ft  qBabyl Header/Text Separatoru2 .( j s 2  -l )u2 q2-."l b,q2t ft..a q2,.t' "# b,.t' q2j f+' 0fsModifiedw 0fsXModifiedw  qBabyl Require Subjects"n j 0sSubjectReS 0u2 <:s; 12.,(fk)a-12."n !' r @f l 0,1a-:"e 1u2 1;'> q2"e 1,m(m.m& Read Line)Subject: u2 fq2"g j iSubject: 2 ''' z"e 0fsModifiedw 0fsXModifiedw ' 1@:< fsOSTeco"e m(m.m& ITS Mail Buffer)' "# m(m.m& TNX Mail Buffer)' >"n 1fs mode change oRe-edit' 0fsModifiedw 0fsXModifiedw qCurrent Babyl Template Name[1 fq1:"g ' f~1Standard Reply"n ' qFrom:u1 fq1"g j i  fnj2d :s In-reply-to:"l j ' zj iIn-reply-to: Msg of  f[vb f[vz .,.fsBound gDate: -2d bj< :s,;w -d > bj :sMondayTuesdayWednesdayThursdayFridaySaturdaySunday "N fkd ' bj :sJanuaryFebruaryMarchAprilJuneJulyAugustSeptemberOctoberNovemberDecember "N fk+3d ' bj :s "N r0k' zj -:s"N ck ' f]vz f]vb i from 1 -2f= "n i '' [0[1[2[3 -1"n fsTopLine"g f~Window 1 Buffer*Babyl*"e 1:<4@m(m.m^R One Window)>w''' fsQPPtr( qPre-*Mail* Buffer[..o 0f[VB 0f[VZ .u0 fnq0j :s"l r'"# zj' .u2 m(m.m& Bounds Of Header)u1j q1,q2x2 -16"n .,q1x1' "# m(m.m& Bounds Of Original Header)x1' )fsQPUnwindw qBabyl Header/Text Separatoru3 .u0 -:s3"e fnq0j zj' "# q0j' .:w .f[VB fsZ-.f[VZ g1 g2 -4"n j < .-z; 2 f=  "n 4,32i ' l > ' zj 0fsZw 0 f "g i  ' b,.f~Buffer Name*Mail*"n :i*Must be in *Mail* buffer fsErr' 1,m(m.m& Read Line)Subject: [.1 q.1"n fq.1"g .-z(bjl .,(iSubject: .1  ).f w)+zj '' 1[1[2 f~Buffer Name*Mail*"n :i*Must be in *Mail* buffer fsErr' 0f[VB z-.:\u1 fn z-1:j"e zj'  j i  "l :i1Un-To' "# -4"e :i1Cc' "# :i1To'' 1,m(m.m& Read Line)1: u2 q2"n fq2"g "l q2m(m.m& Babyl Delete Recipient)' "# q2,q1m(m.m& Babyl Add Recipient)''' j @f k 14:m(m.m^R Babyl Add To-Recipient)-1:m(m.m^R Babyl Add To-Recipient){[1[2 j :s 1:"l 0:l 0f+fq2-70"g -@f, k i,  ' "# i, '' "# bjl i1:  0:l' i2 u1 j < :s To: Cc: ; < < :fb1; 1af,M@ :"l fkc -@f l 0af:,  :"l .,(:fb,"e :l').k'' > l 1af "l 0:l 1;' > > wqPre-*Mail* Buffer"n :i*You are already in the process of sending mailfsErr' q..o[Pre-*Mail* Buffer "n 0fo..qWindow 2 Size"e qWindow 1 Size"N [Window 1 Size ' (fsHeight)-(fsEchoLines)-1/2-1uWindow 1 Size 1:< 4m(m.m^R Two Windows)f >w @fn|1:<@m(m.m^R One Window)f>w 0fsErrorw|'' m(m.m& Push to Buffer)*Mail* "n f~ModeText"n m(m.mText Mode)' 0uBuffer Filenames fsOSTeco"e !' "# etMAIL.TEMP'' m.m& Set Mode Linef[ModeMac qEditor Name[..j :i..j..j  1fsModeChangew :[Previous Buffer qBuffer Name[0 @:i*|m(m.mSelect Buffer)0|(]0)[..n m(m.mSelect Buffer) :[1[2[3[4[5 g(q..o(f[BBind)) -2f= "n i ' m.m& Process Recipient Field 0[Babyl Strip Local Host qBabyl Header/Text Separatoru2 j 1f[BothCase :s 2 "e :i*No text, just header fsErr' 0u4 -l fsZ-.fsVZw m(m.m& Maybe Insert In-Reply-To) q..ou3 f[BBind q..ou2 q3[..o fsMachine:f6,q2 mpORIG-TO fsMachine:f6,q2 mpORIG-CC q2[..o hk ]..o fsMachine:f6,q2 mpTO fq2"g 0l q2[..o j < .-z; :l 0f:fb@ :fx1 0l 1a-("n 1af"[!'!"l :fb "l 0l i" :l i"!''!'' 0l i( :l i)' 0l iRCPT: :lr i1 %4w l k > hfx1 ]..o g1' fsMachine:f6,q2 mpCC fq2"g 0l q2[..o j < .-z; :l 0f:fb@ :fx1 0l 1a-("n 1af"[!'!"l :fb "l 0l i" :l i"!''!'' 0l i( :l i)' 0l iRCPT: :lr i1 (R-OPTION CC) %4w l k > hfx1 ]..o g1' fsMachine:f6,q2 mpBCC fq2"g 0l q2[..o j < .-z; :l 0f:fb@ :fx1 0l 1a-("n 1af"[!'!"l :fb "l 0l i" :l i"!''!'' 0l i( :l i)' 0l iRCPT: :lr i1 (R-OPTION BCC) %4w l k > hfx1 ]..o g1' q4"e :i*No Recipients fsErr' j iFROM-PROGRAM:BABYL FROM-XUNAME: fsXUnamef6 i FROM-UNAME: fsUnamef6 i  j :s FROM:"e 3l iAUTHOR: fsXUnamef6 i '"#  AUTHOR:' j :s H:"l  HEADER-FORCE: @fc' "# 3l iHEADER-FORCE:RFC733 ' j :s S: Re:"l  SUBJECT:' j :s R:"l  REGISTERED: @fc' 0s: j < .-z; 1af :"l l !' :fb"l r -@f k 0x1 :fo..qCOMSAT 1 FIELD"l 0l iUSER-HEADER:' "# 0@fc' l !' 1a-15."e k !' :i*Garbage in message header fsErr > 0s USER-HEADER:ORIG-TO: USER-HEADER:ORIG-CC: j <:s; 8r 5d> 0s: j <.-z; 1af :"l -l fb ;  .[0 .-2-q0( q0-2j )u0 q0\ i. l q0c ]0 ' l > zj iTEXT;-1  0,(fsZ)fsBoundariesw k 0fo..qDebugging Babyl"n :i*Debugging Babyl[..j  ]..j' f[DFile etDSK:.MAIL.;MAIL > e\ fn e^ eihpef @ft(mail queued) 0fsEchoActivew f[DFile [1[2[3[4[5 0f[VB 0f[VZ qBabyl Parser Control Flags7[Babyl Parser Control Flags g(q..o( f[BBind )) zj -2f= "n i ' q..ou3 f[BBind q..ou4 q3[..o qBabyl Header/Text Separatoru1 j :s 1 "e :i*No text, just header fsErr' 0:l 0k z-.fsVZ q4m(m.m& Complete TNX Header) 0s Fcc j <:s; @f l 1a-:"e c :x2 l-k etDSK:FOO.TXT fsHSnamefsDSnamew et2 0f[VZ m(m.m& Append to TNX Mail File) f]VZ '> fsMachine:f6u2 m.m& Process Recipient Field 0[Babyl Strip Local Host q2,q4mpFrom q2,q4mpSender q2,q4mpOrig-To q2,q4mpOrig-Cc q4[..o hk ]..o q2,q4mpTo q2,q4mpcc q2,q4mpbcc 0s Orig-To: Orig-Cc: Orig-Fcc: j <:s; 0l 5d> 0s Bcc: j<:s; -4ck <@f @; k>> j < @f l 15.,1a-15."e 0lk'"# l' .-z; > 0,fsZfsBoundw 0fo..qDebugging Babyl"n :i*Debugging Babyl[..j  ]..j' qBabyl Queuing Functionu5 q4m(m.m5) e?EMACS:BABYL.USE-MMAILR"e f:m(m.m& MMAILR Babyl Queuing Function)' [2 q..o[3 [4 [5 q4u..o j etPS: :i5EMACS: fsOSTeco-2"e etDSK: :i5DSK:' 1,m.m& Immediate Mailf"nu2 e?emacs:immediate-mail.exe"e q3m2' z-b"e ''w e?XMAILR.FLAGS"n e?MAILER.FLAGS"n :i*No Mailer For Queued messagesfs err' etDSK: fsHSnamefsDSnamew < .-z; :x2 q3u..o et[--UNSENT-MAIL--].2 f[DFile et[TECO] OUTPUT 0fsDVersionw ei f]DFile hpef @ft(Mail to 2 queued) q4u..o 2l > -(@fz5QUEUE-MAIL.SAV)fz' "#  :f:fb@$  :l  2l  j :i2 <.-z; :f:fb@ d :f~2"e :k'"# :fx2 0l 14.i g2 i ' l k> f[dfile j <:s.ARPA ; fkc :k > <:s "@; !'! -2d i@ :l -d 0l c :x2 q2fsdfile 1:< 4,er >"e g(fs I File) -@f0123456789k -d :k' "# :i* Local File does not exist: 2 @fg'w > f]dfile zj 14.ii  g3 etDSK: fsHSnamefsDSnamew et[--NETWORK-MAIL--]..0 f[DFile et[TECO] OUTPUT 0fsDVersionw ei f]DFile hpef er 11.fs IF FDB&7777777777.,11.fs IF FDB EC m(m.m& Run Mail Subfork)5QUEUE-XMAIL.EXE' 0fsEchoActivew [2 q..o[3 [4 q4u..o j  :f:fb@$  :l  2l  j :i2 <.-z; :f:fb@ d :f~2"e :k'"# :fx2 0l 14.i g2 i ' l k> 14.ii  g3 fsXUName[d 8[..E fsDate:\ud ]..E etMAILQ:[--QUEUED-MAIL--].NEW-D-U-BABYL.0 f[DFile etDSK: fsHSnamefsDSname et[TECO] OUTPUT 0fsDVersionw ei f]DFile hpef @ft(mail  1:< -(@fzEMACS:WAKEMM.EXE)fz > @ftqueued) 0fsEchoActivew [0[1[3[4 j < :s ; -k 2r > m(m.m& Maybe Insert In-Reply-To) j 5f~Date:"n :s Date:"e iDate:  0:l .u1 212221000000.,fsDatefsFDConvertw .-z( 0,-3a--"e 4r di  r' -s  i  q1+3j 0,1a- "e i,' )+zj qBabyl Day of Week Flag"n .-z( 0l 6c .(s,r),.fx3 2d )+zj i (3)' '"# 0l fx1 bj g1' ' fsXUname:f6u0 fsMachine:f6u3 fq3"g :i00 at 3' j :s From:"e l iFrom:  2r .u1 qBabyl User Nameu3 fq3:"g q0u3' g3 qBabyl Personal Nameu3 fq3"g q1j g3 i < :l i>' q1j ' @f l .u1 :l .u3 -:s<"n .-q1:"l c .u1 :s>"'e + (.-q3"'g)"n :i*Unmatched < ... > found in From: field fsErr' r .u3'' q3j q1,.f~0"n fsXUName:f6u3 q1,.f~3"e i at  fsMachinef6' "# 0l .u4 j :s Sender:(q4j)"e iSender: 0 ''' j :s S: Re:"l 0k iSubject:' j :s Message-ID:"e l iMessage-ID: < fsXUNamef6 .i fsDate\ i.BABYL@ fsMachinef6 i> ' j < :s To: Cc: ; @f ,k i  <:fb,; @f k i > 0l <:fb, , ; ,  2r> 0l 4c 0,1a-15."e 0,3af "l 0lk 0:l'' > p[0[1[2[3[4[5[6[7[8[9[.0[.1[.2[.3 [..o qBabyl ..D[..d @fn|.-z(j 0,1a-15."e 2d')+z:j| j i  f[VB f[VZ qBabyl Strip Local Host"n fsMachine:f6u7 fsOSTeco"e :i7 at 7 at MIT-7 ' "# f~7MIT-OZ"e :i7 at OZ.AI.MIT.EDU%OZ.AI.MIT.EDU at MC.LCS.MIT.EDU%OZ.AI.MIT.EDU at XX.LCS.MIT.EDU at 7%7 at MIT-MC.ARPA%7 at MIT-MC%7 at MIT-XX.ARPA%7 at MIT-XX ' "# :i7 at 7 ''' "# 0u7 ' u8 q..ou9 0s  j <:s"e 0' @f l 0,1a-:@; > c @f k 5-(fsHPos)f"lw0',40.i .u0 < l 0,1af :; 0:k > 0:l .u1 < :s; @f l 0,1a-:"n ! ' c 0k < :l k 0,1af :; > 0fx2 q1j i, g2 .u1 > q0j .f[VB fsZ-q1f[VZ qBabyl Parser Control Flagsu0 < @f ,k .-z; .u1 i  .u.0 -1u6 0u2 0u.2 < @f f"gd i 'w .-z; 1au5 q5"b c :o5 r' q6:"g @flu4u3 q4j q3,q4f~at"e oAT' q3-b,q4-b(q8u..o)g9 i  q9u..o ! ' ! in recipientfsErr ! zj 0,fsZfsBoundw' >''' "# j @f l 0,1a-"!'!"e .u.0 zj -@f l 0,0a-"!'!"e .u.2 q.0+1j @f 0123456789!#$^&*-/=?`{}|~ ;:.[] ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzl .-q.2+1"e d q.0j d'''' hx.3 f]BBind r q1,.k g.3 c .u.0 0u.2 0u2 q8u..o 0k q9u..o %6"e ! ' :i*Extra < in recipientfsErr !>! q6"e .-1u6 ! ' :i*Extra > in recipientfsErr !,! r -@f k c 0; !AT! q0&1"n -3d i@ d' o@-AT !@! q0&1"e -d 0a-32"n i ' iat 1a-32"n i  r'' !@-AT! q2"n q0&1"n .-z(q2j -d i%)+zj q8u..o q.2j -d i% :l q9u..o'' .u2 q8u..o .u.2 0f"e q9u..o -2:@fll .u3 -@fll .-q1-1"n :i*Null recipientfsErr' .-b,q3-b(q2j q8u..o)g9' -@f k i@ q9u..o ! !(! fll > q8u..o -@f k q2"e 0f"e q9u..o .u2 -:@fll .u3 -@fll .-q1-1"n :i*Null recipientfsErr' .-b,q3-b(q2j q8u..o)g9' i@ g() q9u..o .-z(q6"g q6j'"# -@f, l' q0&1"e i at ' "# i@ q0&2"n i'' g() q0&3#3"e i' )+zj' "# q9u..o q0&3#3"e .-z( < ! l !(! 0a-)"e -@fll !' 1; > i q2j @f l i )+zj'' q8u..o :l -s@ @fc :l i  g(q9[..o q1+1,.x*(]..o)) 0a-,"e -d' i  q9u..o q7"n .-z( -@f,<>l .u3 -:s7"n fk+.-q3"e fkd '' )+zj' q0&5#5"e oFILL-BREAK' fsSHPos-70"g !FILL-BREAK! q1-b-4"g .(q1j i  )+7j'' > -@f, k j fsQPPtr( e[fne] f[BBind 1:w hf~BABYL OPTIONS: "e fsDFile[1 :i*Attempt to append TNX format mail to Babyl file 1fsErr' )fsQPUnwindw FF-1"E [0 '"# FS Date[0 ' j h(20000000.,Q0 fsFDConvert ,i)\ i;000000000000  j e?"e fsDFilem(m.m& Babyl Append)"n jk' z-.fsVZw er fsIFilefsDfilew @y zj 0fsVZw' f[DFile et[TECO] OUTPUT 0fsDVersionw ei f]DFile hpef b,.k k [1 e[e\fne^e] er1 fsIFLengthu1 q1/5*5-5fsIFAccessw j @fn|b,.k| fsZ-.f[VZ @y zj f]VZ 1:<@:ei>"n 0' fsOFLength-q1"n :i*File changed size??fsErr' q1/5*5-5fsOFAccessw hp :ef 10fo..qBABYLM Loaded-11688074704"n 0m.CBabyl C Hook0 or a Teco program to run after C sets up its template 0m.CCurrent Babyl Template Name0 or name of template in use 0m.CBabyl CC To* Automatic CC field in mail if non-0 0m.CBabyl Fcc To* Automatic Fcc field in Tenex or Tops-20 mail if non-0 0m.CBabyl Reply-To Field* Automatic Reply-To field in mail if non-0 @:i*|--Text follows this line--|m.CBabyl Header/Text Separator* 1 line that separates header and text in recursive mail edit 0m.CBabyl M Hook0 or a Teco program to run after M sets up its template 0m.CCRL Prefix 0m.CCRL List 2m.CCRL Non-match Method @:i*| m.m^R Babyl Yank[...Y 1,m.m^R Fill Indented Mail Region[...\ qParagraph Delimiteru2 fq2"g :i22-'"# :i2-' q2[Paragraph Delimiter|m.CBabyl Default Edit Mail HookDescribe Edit and Mail Buffer for details 0m.CBabyl Edit Mail Hook0 or a Teco program to run before recursive edit on mail to send 0m.CBabyl Require Subjects* If non-0 Babyl will require you to have a subject in outgoing mail 0m.CFrom:, 0m.CPre-*Mail* Buffer 0m.CWindow 1 Size 0m.CCOMSAT AUTHOR FIELD 0m.CCOMSAT RCPT FIELD 0m.CCOMSAT CLAIMED-FROM FIELD 0m.CCOMSAT FAKE-TO FIELD 0m.CCOMSAT FROM FIELD 0m.CCOMSAT FROM-PROGRAM FIELD 0m.CCOMSAT FROM-XUNAME FIELD 0m.CCOMSAT FROM-UNAME FIELD 0m.CCOMSAT TO FIELD 0m.CCOMSAT SUBJECT FIELD 0m.CCOMSAT HEADER-FORCE FIELD 0m.CCOMSAT REGISTERED FIELD 0m.CCOMSAT USER-HEADER FIELD @:i*|& Default Babyl Queuing Function|m.CBabyl Queuing FunctionName of the mailer-dependent function for queuing mail 0m.CBabyl Parser Control Flags 0m.CBabyl Day of Week Flag* (TNX only) If non-0 day of week is added to Date field of outgoing mail 0m.CBabyl Personal Name* (TNX only) A full name to use with user name as in Personal Name  0m.CBabyl User Name* (TNX only) A name to use in From field possibly overriding username 0m.CBabyl ..D 1m.CBabyl Strip Local Host* Non-zero removes local host from reformed headers 0m.CBabyl Setup HookIf non0, is run immediately after loading Babyl library 0m.CBabyl Mailer Subfork 0m.CBabyl Subfork ControlControls handling of QUEUE-XMAIL subfork. Non0 ==> Keep and read RSCAN; 0 ==> Dont keep and no RSCAN Note that a special QUEUE-XMAIL is needed if you set this  11688074704m.vBABYLM Loaded' 1,m(m.mProcess Babyl Init or Vars File) qBabyl ..D"e [1[2 128*5,40.:i1 40.u2 176.-40.<%2*5:f1AA> "*5:f1 | !'! \*5:f1 / (*5:f1 ( )*5:f1 ) @:i2| *5:f1 | m2 ,m2 @m2 q1uBabyl ..Dw' fsOSTeco"n f[DFile etPS: fsOSTeco-2"e etDSK:' e?XMAILR.FLAGS"e qBabyl Parser Control Flags6( )uBabyl Parser Control Flags'' qBabyl Setup Hookf"n[1 m1'w ne?SYSTEM:DECNET-MAILER.FLAGS"n :i*No Mailer For Queued messagesfs err'  :f:fb@$  :l  2l  j :i2 <.-z; :f:fb@ d :f~2"e 0l k'"# :fx2 0l g2 k' k> etDSK: fsHSnamefsDSnamew < .-z; :x2 q3u..o et[--DECNET-MAIL--].2 f[DFile et[TECO] OUTPUT 0fsDVersionw ei f]DFile hpef @ft(2: queued) q4u..o l > -(fz5QUEUE-DMAIL.EXE)fz e?SYSTEM:XMAILR.FLAGS"e -(fzSYS:XMAILR.EXE)fz' "# -(fzEMACS:EMAILER.EXE)fz'w [0 [1 qBabyl Subfork Controlf"euBabyl Mailer Subfork @ft Queuing... -(@fz)fz '"# @ft Sending... qBabyl Mailer Subfork"e @fzuBabyl Mailer Subfork'"# f*w qBabyl Mailer Subfork@fz' f[b bind < fs listen"E :i* ?Success unknown: ..o @fg ' fiu1 q1-177.@; q1-176."e j :s?:"n -(qBabyl Mailer Subfork)fz 0uBabyl Mailer Subfork sn: :x0 :i* Fatal error: 0; Abort & Reset...Done @fg ' :s?"n Error: ..o; Continuing... @fg ' j :x0 @ft[0]  hk qBabyl Mailer Subfork @fz' "# q1i' > w 'w @ftDone. Mail-sending part of the Babyl mail subsystem.C# Continue editing the last message sent or aborted. Describe Edit and Mail Buffer for details about message editing, and general hooks. If you give a numeric argument of 2 we will use 2 windows, with the current message in the top and the message being sent in the bottom one. Runs any Teco program in the variable Babyl C Hook after the message template has been set up.tS Edit and then send a message. To continue editing a message aborted earlier, provide a numeric argument.~C Find init or vars file and process it. Babyl init and vars files are similar to EMACS ones, though these should only be for customizing Babyl. If you only use Babyl from WITHIN EMACS, you can customize it with your EMACS init or vars file. You would then need no Babyl init or vars file. But if you want to use Babyl outside EMACS, i.e. :BABYL on ITS or BABYL.EXE on TNX, then you should put Babyl customizing in a Babyl init or vars file. Babyl checks your home directory for a Babyl init file, which should be Teco code: BABYL INIT (ITS) or BABYL.INIT (TNX). If no init file is found, it looks for a vars file: BABYL VARS (ITS) or BABYL.VARS (TNX). This file should be in the same format as an EMACS vars file. This processing is only done the first time Babyl is loaded, for reading or sending mail. If you edit your Babyl init or vars file after this first entry to Babyl, you can give the M-X Process Babyl Init or Vars File command manually so that Babyl takes notice of the changes. qSubDoc"n i A 1, numarg means called from Babyl, so only process once.'S Read the user's EVARS file of var settingsC# Edit and then send a message. Describe Edit and Mail Buffer for details about message editing and general hooks. If you give a numeric argument of 2 we will try to use 2 windows, the mail in the bottom window, the current message in the top one. To continue editing a message aborted earlier, use the C command. You may set the variable Babyl M Hook to a Teco program to run after the header is initialized.xC Edit and send mail, with template initialization. Describe Edit and Mail Buffer for details about message editing and the general hooks available. The message is initialized from a template, which may specify any header or text components. The template is a variable, containing a copy of what the mail editing buffer should be initialized to. It can optionally start with a value for point, within brackets, e.g. it might start: [35]To: String argument is a template name. The template variable name is formed from this name -- e.g. for a template named "Foo", the variable is named Babyl Template Foo. If you are using the Babyl V command the template name is read with completion. If you give a numeric argument of 2, we will try to use 2 windows, current message in top one, message being sent in bottom one. See the M-X Set Mail Template command for aid in creating templates. Runs the Teco program in the variable Babyl M Hook if one. This program can check the variable Current Babyl Template Name, 0 for normal mailing, if it wants to further process the template.C Template replaces current contents of *Mail* buffer. String argument is template name. If none, it will ask you for one, with completion. This command is like M-X Mail With Template, except it is for use after you are already in the recursive mail edit. The M-X Undo command will get the original *Mail* contents back again.C Create or reset a mail template from buffer contents. See the M-X Mail With Template or # Babyl V command for using templates. String argument is a template name. If null, will read it in echo area. The template is taken to be the entire contents of the buffer. The current point will be remembered in the template. This command is generally given while in a recursive mail edit level.C Insert template setup code. String argument is template name. After using Set Mail Template, you can visit your init- or vars-file and use this command to insert something that will save this template for permanent use. Asks which kind of code it should insert, VARS- or init-file. S Edit some mail to send in recursive edit level. All the Babyl mail-sending commands (C, F, M, R, V) invoke this one. To send the mail, exit the recursive edit level with ^R Exit. To abort, use Abort Recursive Edit. If you abort, you can continue editing the message later with the C command from Babyl or by giving Send Mail an argument. The ^R Babyl Yank command will insert a copy of the current Babyl message if there is one. (E.g. the one being replied to.) Paragraph Delimiter is temporarily set so lines starting with "-" won't be considered part of a paragraph. Thus the --Text... line won't get in the way of a ^R Fill Paragraph. If the variable Babyl Require Subjects is non-0, you will be asked to supply a subject line if you forgot to include it while editing. The variable Babyl Edit Mail Hook may be set to a Teco program to run just before entering the recursive edit level. If this variable is 0, we will connect C-M-Y to ^R Babyl Yank, C-M-\ to ^R Fill Indented Mail Region, and set the Paragraph Delimiter variable. This default action may be called by your hook, by: mBabyl Default Edit Mail HookS For both ITS and TNX, maybe adds field to header. Caller has bounds set to just header.^R Yank message being replied to and grow reply window. Message is indented 4 spaces, and MARK is left before, point after, message. Numeric argument of 4 (): Message is not indented. The original header is discarded; only the reformed one is yanked. Numeric argument of 16 (): Original header is used instead.^R Calls & Read Line for subject field.^R Calls & Read Line for new To-recipient. NUMARG of 4 means ^R Babyl Add Cc-Recipient. Negative NUMARG means ^R Babyl Delete Recipient.^R Add new name to Cc field.^R Delete To- or Cc-recipient.S NUMARGs: name,fieldName.S NUMARG is recipient name.S Set up *Mail* buffer and window for editing. Selects back when caller returns. Non-0 pre-comma numeric argument means use 2-window mode. Non-0 post-comma numeric argument means reset the buffer (no buffer filenames, default filename of *Mail* or MAIL.TEMP, Text Mode.S Push-select buffer STRARG. When caller returns, the original buffer will be re-selected.S Mail message as specified by buffer contents.S Write buffer out to unsent-mail file.S Numarg is recipient buffer.S Numarg is recipient buffer.S Make sure From and Date fields are there, etc. Numarg is recipient-list buffer.S Merge, reform and parse. See source for args.S Append buffer to default file, with headerS Append B,Z to NUMARG file. Returns non0 iff success.S Create some variables needed, do init/vars file. This object file was compressed on 4:59pm Saturday, 10 January 1987 by JAR on AI from the following source libraries: JAR; DSK: BABYLM 166, 01/10/87 16:56:49S Do DECnet stuffC Send off network mail in user directoryS Run Queue-Xmail to send our local mail, or queue network mail and set bits in SYSTEM:XMAILR.FLAGS. Note: if Babyl Subfork Control is non0, DONT dump after sending a message.# Babyl C & Mail Message Process Babyl Init or Vars File & Babyl Process Init Vars # Babyl M Mail With Template Get Mail Template Set Mail Template Insert Mail Template Into VARS/Init File Edit and Mail Buffer & Maybe Insert In-Reply-To ^R Babyl Yank ^R Babyl Add Subject: Field ^R Babyl Add To-Recipient ^R Babyl Add Cc-Recipient ^R Babyl Delete Recipient & Babyl Add Recipient & Babyl Delete Recipient & Push To Edit Mail & Push To Buffer & ITS Mail Buffer & TNX Mail Buffer & Default Babyl Queuing Function & MMAILR Babyl Queuing Function & Complete TNX Header & Process Recipient Field & Append to TNX Mail File & Babyl Append & Setup BABYLM Library & DECnet Mail Buffer Net Mail & Run Mail Subfork +8+fq(+4)[2 0[3 < %3,-q2f2u3 q3&1@; q3"l 0' > f[BBind q3-1*5,q3*5g2 q:..o(0)+q2