This is a first try at creating a new-style info file for QMAIL ORDER. Now it's a second try. Make that a third try.  File: MAIL Node: Top Up: (DIR) Next: Keyboard MAIL is a program for sending mail to users on this machine, or any machine on the Arpa or Chaos nets. You can send mail to any known user, or to a "mailing list" of users, such as people responsible for maintaining a certain program. Here is the general format for mail: :mail user1@site, user2@site, usern@site ^C To aid TIP users, mail will accept a percent sign instead of an atsign in site descriptions. If the atsign and the site are not present, they are assumed to be the present site. The next node tells you about features of mail you'll use to type in your message text. * Menu: * Keyboard:: Notes on using MAIL from the keyboard. * Commands:: Escape to more advanced commands. * Edit:: How to escape into EMACS with your mail. * Syntax:: The exact syntax of mail recipients. * Internals:: A brief explanation of how the mailing system works behind the scenes. * Announcements: (SYSMSG) How to read and send system-wide messages, and the difference between system and bboard messages. * RMAIL: (RMAIL) RMAIL is a program for reading, editing, and replying to mail. * Babyl: (Babyl) Babyl is, like RMail, an EMACS mail subsystem. It differs from RMail in some respects. In particular, it will run on TENEX and TWENEX.  File: MAIL Node: BUG Up: (DIR) Next: Top How to complain about program bugs: :BUG program ^C BUG is really the same program as MAIL, except that instead of giving the name of a user, you give the name of a program. The message is sent to the maintainers of that program - that is, whoever has elected to receive complaints about it. Doing :BUG program is equivalent to doing :MAIL BUG-program . Here is an example: :bug info Msg: The description of what bug does is unclear. ^C If there is no mailing list on the current machine for the program you are sending a BUG about, your message will go to BUG-RANDOM-PROGRAM, a mailing list of people who are generally knowledgable about the system and who will try to fix your bug or redirect your problem to the appropriate person. The next node tells about the MAIL program in general. Most of what it says works for :BUG as well.  File: MAIL Node: QSEND Next: Top Up: (DIR) How to send a message to people logged in at other sites: :QSEND name1@site1, name2@site2,... ^C QSEND is really the same program as MAIL, but it is used to send messages to a person the way the DDT command :SEND does. The difference is that QSEND can send messages to users logged in at any site on the ARPAnet. If the person qsent to is not logged in at the time the message arrives at the site, the message is turned into mail for him or her. :S is short for :QSEND, not for :SEND. The next node tells about the MAIL program in general. Most of what it says works for :QSEND as well.  File: MAIL, Node: Keyboard, Previous: Top, Up: Top, Next: Commands After MAIL prints out "Msg:" you can just start typing the text you want to send. Use rubout to delete the charcter you just typed, ^W to delete the last word, and ^U to delete the last line. If you are on an AI Knight TV, you can type Meta-Rubout (just as in EMACS) to delete the last word. When you're through sending the message, type ^C. If you decide you didn't want to send the message anyway, you can type altmode Q, or ^Z and then :KILL. Here's a summary of what various control characters do in MAIL: ^G: stops typeout ^L: re-displays mailing list and text. ^Q: quote next character (altmode or control-character). ^R: redisplay current line. ^W: backward delete word. ^U: delete current line. ^D: same as altmode. CR: safe reply to most any input request. RUBOUT: is moderately clever. ALT-MODE: command invocation, echoes as a ">" prompt. (on AI TVs) META & TOP: will quote and TOPify, respectively. META-RUBOUT is the same as ^W. The next node describes other commands which you can execute after typing an altmode.  File: MAIL, Node: Commands, Previous: Keyboard, Up: Top, Next: Edit When you type an alt-mode to MAIL, it responds to a single-charactar command. Below is a list of the commands and a short description of what they do. For more information on a particular command, run the MAIL program and type ?. H Help , describes given command. T To , adds them to mailing list. C CC , just like "TO" except the recipients get listed with a CC: header. U Un-to , removes from mailing list. * works. S Subject for the mail, one line (null line deletes). F From . Unnecessary unless UNAME wrong. E Edit escape to EMACS. ^X^C returns to MAIL program. *Note Edit: Edit. N Name for recipient list, header shows this and not real list. L List the mailing list. W Write message text to . A Append to message text. I Insert (exactly like Append). Y Yank in, replacing message text. G Get from data as if typed from console. Starts reading data as if it came from the console; information in the file will simply be added to whatever already exists. can include commands. P Put to a GET-able description of message. Z Zaps message buffer, and gives you an empty one. Careful -- doesn't require confirmation. M Mode switching (mail, send, notification, etc). V Variant force, specify type of header to use. Default variety of message is ITS for solely intra-ITS mail, TENEX for mail with one or more non-ITS recipients. This command will force format to whichever you specify. (CR restores the default). R Receipt mode select - All, Queued, or Failed. Default (off) means you will be mailed a receipt for only those messages which could not be sent immediately. If enabled, receipts will always be given. This dates from days of unreliable service. / Slash switch complement (ON = case conversion like TECO). When on, characters will be converted to lowercase unless preceded by a slash, just as in TECO. Useful for entering lower case on terminals such as Datapoints. X (* msgs only) Xpiration date in days. 1 (* msgs only) 1st filename for .MSGS.; file. 2 (* msgs only) 2nd filename for .MSGS.; file. (For more information on system and bboard messages see *Note Announcements: (SYSMSG). ) Q Quit Asks for confirmation.  File: MAIL, Node: Edit, Previous: Commands, Up: Top, Next: Syntax Type altmode-E to MAIL to escape to EMACS. ^X^C returns to the MAIL program. An inferior EMACS is created, and the current message text loaded into it for editing. One may normally exit from EMACS, and have the current buffer loaded back as the new message text, by typing ^X ^C. (Executing FSEXIT or typing ^C in non-^R-mode will also return). ^K (valret) as a bare-TECO command will be completely ignored!! ^Z will safely interrupt MAIL.  File: MAIL, Node: Syntax, Previous: Edit, Up: Top, Next: Internals Syntax of a "name" or recipient The general format is , @, or %. (From TIPs, % is easier to type). All reasonable host nicknames (and unique fractions thereof) should be recognized. Complain to BUG-MAIL if your favorite names aren't there. Certain names are recognized specially by mail. They begin with an asterisk, and go the the "Bulletin Boards" of various systems. *Note Announcements: (SYSMSG). There is a special format of name referred to as "sticky site"; giving a host specification (i.e., "@site") alone will make that host apply to all subsequent names which have no host spec, but only until another host spec is found. If this is another sticky site, the default host is now this new sticky site, otherwise it reverts to the local site regardless of the unsticking host spec. The idea is to be able to specify a site and follow it with the names of all recipients at that site; e.g., mail addressed to @sail, foo1,foo2, foo3, bar@ml,friend goes to FOO1, FOO2, and FOO3 at Stanford, BAR at Mathlab, and FRIEND at the local host. When sending to a Comsat site (AI, ML, or MC), you may use special formats such as (BUG program-name) which reports a bug in a program, (FILE [dir;name1 name2]) which appends to the specified file, and (@FILE [dir;name1 name2]), which reads a mailing list from the file and mails to the people in it.  File: MAIL Node: Internals, Previous: Syntax Up: Top There is a job (disowned, variously named after some communications satellite or another) which does the actual mailing, and enables network mail to be "sent" irregardless of remote host status; the satellite simply waits until the destination comes alive. If this program is not running, MAIL will try to start it (a rare occurrence hopefully); in any case mail should be delivered within 10 seconds for local messages. What happens is that MAIL writes the message to a disk file and exits, and the alerted satellite gobbles it up for sending. Note that this scheme is painless for large messages, messages to many recipients, to dead foreign hosts, and to large mail files (such as SYS). If the satellite is not orbiting (or otherwise screwed) mail will take longer, i.e. until it is restarted or fixed, but will eventually arrive. (neither crash, glitch, nor parity error will stay this untiring....) For information on the internal operation of announcements (system and bulletin-board messages) see *Note Announcements:(SYSMSG). Send bugs, suggestions, etc. to BUG-MAIL@AI.