From: CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX" 30-JAN-1991 13:31:31.30 To: MRGATE::"ARISIA::EVERHART" CC: Subj: Re: What does DECW$MAIL.DAT mean? Received: by crdgw1.ge.com (5.57/GE 1.80) id AA22574; Wed, 30 Jan 91 13:10:53 EST Received: From UCBVAX.BERKELEY.EDU by CRVAX.SRI.COM with TCP; Wed, 30 JAN 91 08:04:22 PST Received: by ucbvax.Berkeley.EDU (5.63/1.42) id AA18243; Wed, 30 Jan 91 07:50:03 -0800 Received: from USENET by ucbvax.Berkeley.EDU with netnews for info-vax@kl.sri.com (info-vax@kl.sri.com) (contact usenet@ucbvax.Berkeley.EDU if you have questions) Date: 29 Jan 91 14:10:25 GMT From: agate!shelby!unixhub!linac!uwm.edu!rpi!julius.cs.uiuc.edu!usc!sdd.hp.com!caen!math.lsa.umich.edu!sharkey!nstar!inland!allebrandi@ucbvax.Berkeley.EDU (Tom Allebrandi) Organization: Inland Steel Research Labs; East Chicago, IN Subject: Re: What does DECW$MAIL.DAT mean? Message-Id: <507.27a58251@inland.com> References: <894@TALOS.UUCP> Sender: info-vax-request@kl.sri.com To: info-vax@kl.sri.com In article <894@TALOS.UUCP>, greg_a@TALOS.UUCP (Greg Askew) writes: > Does anyone have a list of parameters and their meanings for the > DECW$MAIL.DAT file that is usually located in SYS$LOGIN? Digital has > stated this file is intentionally undocumented, because they intend > for users to make changes in their profile via pull-down menus. Following is a note I posted locally and to DECUServe after going on archeological expedition a week or so ago. This is a partial answer to your question. --- Tom Tom Allebrandi | Mail guru - DECUS UUCP Development Team Inland Steel Research Labs | Chairperson - VMSnet Working Group, DECUS VAX SIG East Chicago, IN | Internet: allebrandi@inland.com 219 399 6306 | UUCP: ...!uunet!inland!allebrandi | DECUServe: allebrandi BIX: ta2 PLEASE NOTE: This information was determined by experiment on VMS 5.3-1 and a look into the source listings for VMS 5.3. I have no idea whether or not this will work with other versions! In the file DECW$MAIL.DAT, there are three resources that control the editor that is used when you send mail using the DECwindows Mail Utility. Mail.editor.defaultname: When you are NOT using the DECwindows text editor, the box that it uses for text entry gets the string "Using editor Mumble" where "Mumble" is the value for the resource. Mail.editor.defaultDCLcommand: If this string is non-null, and Mail.editor.defaultai is "no", then the string value is to contain a DCL command that is spawned to invoke the editor. Two "%s" are required as place holders for the input and output file names. I'm not sure exacly what goes here if .defaultai is "yes". Mail.editor.defaultai: A value of "no" says to spawn the .defaultDCLcommand. A value of "yes" says to invoke the editor via the Applications Interface Library, whatever that is. For example: Mail.editor.defaultname: MicroEmacs Mail.editor.defaultDCLcommand: @com:go_editor "%s" "%s" "Mail:Edit" "Mail:Edit" Mail.editor.defaultai: no This means that when I send a mail message using DECwindows mail, the normal edit box gets the string "Using editor MicroEmacs", and a subprocess is spawned with the command "@com:go_editor ...". go_editor is a command procedure that I use to invoke MicroEmacs. When the subprocess is created, it does not have a terminal attached to it. You do have a DECwindows display context which means that you could have a .defaultDCLcommand of: edit/tpu/display=decwindows %s /output=%s If you need a terminal, then you need to create/terminal one. Watch out here! Let's say that you create/terminal/noprocess edit/tpu/display=character %s /output=%s This won't work because the created DECterminal does not have SYS$INPUT or SYS$OUTPUT assigned to it. DEC's solution, which you will discover if you select "DECterm EVE" as your default editor, is to create another subprocess, as in: create/terminal/wait edit/tpu/display=character %s /output=%s My solution is to have the .defaultDCLcommand invoke a command procedure, the command procedure creates the DECterminal and assigns SYS$INPUT and SYS$OUTPUT to it. The command procedure follows. My example .defaultDCLcommand above uses this procedure. (Note that COM: is where I keep command procedures.) --- Tom $! GO_EDITOR.COM $! $! Invoke your favorite text editor in a DECterm window. $! $! Arguments: $! P1 = Input file $! P2 = Output file $! P3 = Window Title - "Editor" is the default $! P4 = Icon Title = "Editor" is the default $! $! Note - You will want to change the line marked "CHANGE ME FOR YOUR USE". $! I have a utility, call_editor, that invokes whatever editor $! MAIL$EDIT currently points at. That's how I invoke the editor $! I use. $! $! Tom Allebrandi Inland Steel Research Labs $! 219-399-6306 allebrandi@inland.com $! $ set noon $ if p3 .eqs. "" then p3 = "Editor" $ if p4 .eqs. "" then p4 = "Editor" $ create/terminal/define_logical=my_edit_terminal/noprocess- /window_attributes=(title="''p3'",icon_name="''p4'") $ allocate my_edit_terminal $ define/user tt my_edit_terminal: $ define/user sys$input my_edit_terminal: $ define/user sys$output my_edit_terminal: $ mcr exe:call_editor 'p1' 'p2' ! CHANGE ME FOR YOUR USE $ deallocate my_edit_terminal $ exit