============================================================================== RED CIENTIFICA PERUANA ============================================================================== Mail Handler FAQ ================ Subject: MH Frequently Asked Questions (FAQ) with Answers From: Bill Wohler Date: 8 Nov 92 22:21:54 -0200 Archive-name: mh-faq Last-modified: $Date: 1992/09/28 14:01:23 $ Version: $Revision: 92.10.1.1 $ This is a living list of frequently asked questions on the mailer user interface, Mail Handler, or MH. The point of this is to circulate existing information, and avoid rehashing old answers. Better to build on top than start again. Please read this document before ever posting to this newsgroup. This article is posted monthly. If it has already expired and you're not reading this, you can hope that you saved the last bit of question 3 so that you can get a copy yourself. Please do not post an answer when someone posts a frequently asked question, as I will always e-mail a reply. This ensures that everybody gets their question answered fully and eliminates unnecessary traffic in this newsgroup. Your comments, additions and fixes to this list are welcome: please send them to Bill Wohler . Subject: Table of Contents From: Preface Legend: + new, - deleted, ! changed Introductory 1. Why should I use MH? !2. Where can I get MH? !3. What references exist for MH? !4. What other MH software is available? !5. How can I print a MH manual? 6. How should I report bugs? 7. How can I convert from my mailer to MH? Building MH 10. What machines does MH run on? 11. How do I build MH? 12. What options should I use? 13. Fixing "post: problem initializing server; [BHST] no servers available" 14. Where can I get POP3? 15. What do I do if scan shows the wrong date? 16. Why slocal writes messages to system maildrop that from(1) can't read. 17. Why does repl add a "Re:" to a message that already has one? 18. Does MH support IMAP2 (RFC 1064)? Using MH 20. Where can I read about slocal and the format of the .maildelivery file? 21. How do I include messages in repl with or without ">"? 22. How can I eliminate duplicate copies of letters to myself? 23. How would one go about reading usenet with MH? 24. Can I append MH messages (ie. +inbox/1) to a unix mailbox format file? !25. How can I include my signature? 26. What to do with "Problems with edit - draft removed" messages. 27. How do I call my editor with arguments? 28. How do I debug my .maildelivery file? 29. How can I digestify the messages in a folder for mail to another user? 30. Can I run my message through a program (ie. ispell) before sending? 31. Can I append MH messages to a GNU Emacs rmail BABYL-format file? 32. Is there documentation for mh-e? +33. How can I change my return address? Xmh 40. How can I get xmh to use Emacs as the editor? 41. Does xmh support subfolders? 42. How do I precede included messages with ">" when replying in xmh? Subject: Viewing This Article From: Preface To skip to a particular question numbered xx, use "/^F.*xx" with most pagers. In GNU Emacs type "M-C-s ^F.*xx", (or C-r to search backwards), followed by ESC to end the search. "-xx" is often sufficient. To skip to new or changed questions, use "/^S.*[!+]" with most pagers and "M-C-s ^S.*[!+]" in GNU Emacs. This article is in digest format. Nn may have already broken this message into separate articles; if not, then type "G %". In rn, use ^G to skip sections. This article is treated as an outline when edited by GNU Emacs. Run "M-x describe-mode" to see available outline-mode commands. Useful commands are "C-c C-s" (show-subtree) and "M-x show-all" Contributer's E-Mail addresses can be found at the bottom of this article. Subject: Why should I use MH? From: Intro-1 The MH message handling system is a set of electronic mail programs in the public domain. If your computer runs UNIX, it can probably run MH. The big difference between MH and most other "mail user agents" is that you can use MH from a UNIX shell prompt. In MH, each command is a separate program, and the shell is used as an interpreter. So, all the power of UNIX shells (pipes, redirection, history, aliases, and so on) works with MH--you don't have to learn a new interface. other mail agents have their own command interpreter for their individual mail commands (although the mush mail agent simulates a UNIX shell). Because MH commands aren't part of a monolithic mail system, you can use them at any time; you don't have to start or quit the mail agent. Because you use them from a shell prompt, you can use all the power of the shell. If your shell has time-saving aliases or functions (and most do), you'll be able to use them with MH, of course. And because MH isn't a monolithic mail agent, you can use MH commands in UNIX shell scripts, or call them from programs in high-level languages like C. Unlike most mail agents, MH keeps each message in a separate file. The filename is the message number. To rearrange the messages, MH just changes the filenames. MH can use standard UNIX filesystem operations such as removing, copying and linking on it messages. The message files are grouped into one or more folders, which are actually UNIX directories. MH is free, powerful, flexible--and the basics are easy to learn. --Jerry Peek Subject: ! Where can I get MH? From: Intro-2 The current version of MH is 6.7.2. MH comes standard with: Control Data Corp. CDC4680-MP . . . EMH Version 1.4.2 (modified MH) DEC Ultrix 3.1 . . . . . . . . . . MH Version 6.5 DEC Ultrix 4.2A . . . . . . . . . . MH Version 6.7.1 Evans and Sutherland ES/OS 2.3 . . MH Version 6.6 IBM PS/2 AIX 1.2.x . . . . . . . . MH Version 6.4 IBM RISC System/6000 AIX 3.x . . . MH Version 6.6 MIPS RISC/OS 4.52 . . . . . . . . . MH Version 6.6 Tektronix UTek . . . . . . . . . . MH (Version Unknown) Table maintained by James R. Hamilton. via anonymous ftp: FTP Site: IP Address: Path/File Name: Size: ----------------------------------------------------------------- ftp.ics.uci.edu [128.195.1.1] mh/mh-6.7.tar.Z 1.6MB louie.udel.edu [128.175.1.3] portal/mh-6.7.tar.Z 1.6MB ftp.uu.net [137.39.1.9] mail/mh/tar/mh-6.7.tar.Z-split/ 256K*7 README, part01, ..., part07 via uucp: UUNET mirrors most of the files off of ftp.ics.uci.edu weekly. The following should queue up a copy for transfer: #!/bin/sh SRC=uunet!~/mail/mh/tar/mh-6.7.2.tar.Z-split DST=/usr/spool/uucppublic/uunet uucp -d -r $SRC/README $DST/README for f in '1 2 3 4 5 6 7' do uucp -d -r $SRC/part0$f $DST/part0$f done To access UUNET's archives using anonymous uucp: # Sample L.sys or Systems file lines... # Simple line. uunet Any ACU 19200 19004687727 CONNECT \d\r ogin:--ogin: uucp # # A Telebit /w PEP support uunet Any cua0 19200 cua0 \ "" ATX0S50=255S111=30DT19004687727\r CONNECT \d\r ogin: uucp Modify as appropriate for your site, of course, to deal with your local telephone system and uucp version. All modems on the 900 lines are Telebit T2500s. Note that these modems first answer with V.32, then at 2400, 1200, and last with PEP tones. The cost is 50 cents per minute (as of Feb 92) which will appear on your next phone bill. For more info about the 900 service, retrieve uunet!~/help or call 800-4UUNET4. -- Eric Ziegast via mail: Send a note to ftpmail@decwrl.dec.com whose body contains "help" on a line by itself get information on getting ftp sources by mail. Also include the lines "connect" and "dir /pub/mail/ua/mh" to see which files are available locally. Please do this as a last resort only. Please let me know if you know of any mail servers worldwide that have MH. via U.S. mail: Send a check for $75.00 drawn on U.S. funds made out to the "Regents of the University of California" to: Computing Support Group ATTN: MH Distribution Department of Information and Computer Science University of California, Irvine Irvine, CA 92717 714-856-7554 This covers the cost of a 6250 bpi 9-track magtape, handling, and shipping. In addition, you'll get a laser-printed hard-copy of the entire MH documentation set. Be sure to include your USPS address with your check. It's also a good idea (though not mandatory) to send a computer mail message to "Bug-MH@ics.uci.edu" when you send your check via usps to ensure minimal turn-around time. Sadly, if you just want the hard-copies of the documentation, you still have to pay the $75.00. The tar image has the documentation source (the manual is in roff format, but the rest are in tex format). Postscript formatted versions of the TeX papers are available, as are crude tty-conversions of those papers. Subject: ! What references exist for MH? From: Intro-3 Book: MH & xmh: E-mail for Users & Programmers. Second edition. Jerry Peek. ISBN 1-56592-027-9. $29.95. 728 pages. O'Reilly & Associates, Inc. Book Orders: US and Canada: 800-998-9938. Fax: 707-829-0104 References to "the MH book" in this document refer to the second edition of this book (section numbers for the first edition appear in parenthesis). To get a list of foreign distributors, send a note to nuts@ora.com or call +1-707-829-0515. Examples from this book are in: ftp.uu.net [137.39.1.9] published/oreilly/nutshell/MHxmh/MHxmh2.tar.Z 54KB Usenet: comp.mail.mh (gatewayed to MH-users) Mailing lists: General questions/discussion: MH-users@ics.uci.edu (gatewayed to comp.mail.mh). MH developers and maintainers: MH-workers@ics.uci.edu. Please use MH-users-request and MH-workers-request to request an addition or deletion. MH-users archives: ftp.ics.uci.edu [128.195.1.1] mh/mh-users/* The files are in packf(1) format, compressed with compress(1). To get them, use anonymous ftp and set "binary" transfer mode. Even though I stripped out "Received" lines and etc., some files are pretty big: mh-users.86.Z 8549 mh-users.87.Z 55449 mh-users.88.Z 182805 mh-users.89.Z 89151 mh-users.90.Z 402470 mh-users.91.Z 878763 mh-users.mbox current archive, uncompressed. There are directions in the README file. Basically, you can use either "msh" or the individual commands "inc -file" to get the messages into a folder, and then "scan", "pick", "show", and so on (or your favorite commands in xmh, mh-e, etc.). --Jerry Peek This document: via anonymous ftp: pit-manager.mit.edu [18.172.1.27] /pub/usenet/news.answers/mh-faq ftp.uu.net [137.39.1.9] /usenet/??? cnam.cnam.fr [192.33.159.6] /pub/FAQ/??? grasp1.univ-lyon1.fr [134.214.100.25] /pub/faq/??? archive.cs.ruu.nl [131.211.80.5] /pub/NEWS.ANSWERS/??? via mail: Each of the following addresses is following by commands which should be included as the body of the message. mail-server@pit-manager.mit.edu send usenet/comp.mail.mh/mh-faq mail-server@cs.ruu.nl listserv@grasp1.univ-lyon1.fr Subject: ! What other MH software is available? From: Intro-4 vmh Vmh is designed for people using the bulletin-board features of MH, where mail is stored in packed (single-file) folders. As a result, use of this program cannot be mixed with the use of normal MH commands. Vmh is a part of the official MH distribution. --James Perkins xmh Xmh is a X11 mouse-based MH browsing tool. It is very powerful and feature-filled and thus comes with a moderate learning curve. Its dependence on the X11 environment makes it very reconfigurable, but only by people well-versed in X applications programming. Its message reply built-in-editor interface is not always popular among those used to having MH bring up the editor of their choice. --James Perkins xmh is part of the standard X Window System distribution from MIT. Ultrix also ships dxmail which is similar. cs.utk.edu [128.169.201.1] pub/xmh.shar.Z 161KB olmh Sun's Open Windows 3 comes with a demo for OLIT (Open Look Interface Toolkit, the Open Look wrapper to Xt) named olmh that does handle 3rd and subsequent levels of nesting of folders. --Dale Carstensen Obtain the Open Windows 3 distribution CD/ROM from Sun (SPARC only). To do this, call 1-800-USA-4SUN and send tone "2" for telemarketing after it answers. The 4.1.2 CD/ROM may also have Open Windows 3. The list price for the 4.1.2 CD/ROM is $200. mh-e Mh-e is the GNU Emacs front end for MH. It offers all the functionality of MH, the visual orientation and simplicity of use of xmh, and full integration with Emacs, including thorough configurability. The command set is similar to that of rmail (the Emacs front end for BSD mail) and BSD mail itself. On-line help is available. Mh-e allows one to read and process mail very quickly: commands are single characters and completion and defaults are available for file and folder names. During a reply, the original message is displayed simultaneously in another window for easy reference where a mh-e command can quickly incorporate and format this text into your reply. With mh-e you compose outgoing messages in Emacs. This is a big plus for Emacs users, but it has been known for non-Emacs users to be able use mh-e after only learning the most basic cursor motion commands. Mh-e is easily configured via the Emacs edit-options menu, and people familiar with Emacs Lisp will be able to further reconfigure mh-e beyond recognition. --Stephen Gildea Mh-e is part of the standard GNU Emacs distribution. Note that mh-e got much faster in Emacs 18.56. primost.cs.wisc.edu [128.105.2.115] pub/mh-e.el.Z 36KB vmail Vmail is a curses-based, vi-like message browser which calls on MH programs to manipulate mail. It can be used on almost any terminal. It organizes mail folders into index pages, from which a message can be selected to be shown, replied-to, forwarded, refiled, deleted, and so on. The vi-like interface and command keystrokes are comfortable to less-experienced UNIX users, and it is a small, compact program, unlike the mh-e Emacs package. This version of vmail has been bugfixed and enhanced from the original vmail published on the net in 1987 by J. Zobel. --James Perkins ftp.uu.net [137.39.1.9] comp.sources.unix/volume12/vmail/part0*.Z 46KB ftp.ucs.ubc.ca [137.82.27.61] pub/mh/vmail[1-3]of3.Z 58KB or mail requests to James Perkins. vmailtool If you have a Sun workstation, vmailtool may be for you. It is a button gadget panel for the above-mentioned vmail program. It brings vmail into the windows era where people no longer need to memorize specific command keystrokes. It also provides a mail icon with the flag that pops up when new mail arrives. Again, this is a compact, simple tool, unlike the powerful xmh program. Still, it's a welcome alternative for many people who are running SunView or OpenWindows. --James Perkins ftp.ucs.ubc.ca [137.82.27.61] pub/mh/vmailtool.Z 18KB or mail requests to James Perkins. plum Plum is a highly configurable and extensible screen-oriented front-end for processing MH mail on ASCII terminals. Unlike mh-e, the extension language used in plum is perl, not LISP. Plum offers many of the advantages of xmh, but lacks several of xmh's disadvantages. The look&feel derives more from vi than from emacs. Key bindings and functions may be changed on the fly to suit the user's preference. It offers filename and word completion on folder, variables, and command names. Until it is included in the standard distribution (under miscellany), you can find a copy on: convex.com [130.168.1.1] pub/plum/plum* 55KB or mail requests to Tom Christiansen. mmh MMH, My Mail Handler, is a Motif interface for reading and sending mail. It uses the MH commands to actually handle sending a receiving messages. It does not support all the capabilities of MH, but offers a large enough subset to handle the majority of users. Its intended user is someone between "bumbling e-mail novice" and "sophisticated user". Hooks are provided to allow the user to customize and add new commands. ftp.eos.ncsu.edu [152.1.9.25] /pub/bill.tar.Z mime Mime is a multi-media MH package that implements the new IETF work on Multi-media 822 (MIME). This allows you to include things like audio, graphics, and the like, in your mail messages. The next distribution, MH 6.7.3, will be MIME-capable. --Marshall Rose [9.92] ftp.ics.uci.com [128.195.1.1] mrose/mh-mime/mh-mime.tar.Z metamail Metamail is a package that can be used to convert virtually ANY mail-reading program on UNIX into a multimedia mail-reading program. It is an extermely generic implementation of MIME (Multipurpose Internet Mail Extensions), the proposed standard for multimedia mail formats on the Internet. The implementation is extremely flexible and extensible, using a "mailcap" file mechanism for adding support for new data formats when sent through the mail. At a heterogeneous site where many mail readers are in use, the mailcap mechanism can be used to extend them all to support new types of multimedia mail by a single addition to a mailcap file. The metamail distribution comes complete with a small patch for each of over a dozen popular mail reading programs, including Berkeley mail, mh, Elm, Xmh, Xmail, Mailtool, Emacs Rmail, Emacs VM, Andrew, and others. thumper.bellcore.com [128.96.41.1] /pub/nsb/mm.tar.Z X.500 lookups If a name is enclosed in square brackets, when entering a destination address, ie: To: [Greg Wickham,CSIRO] a search will be made in the X.500 Directory for the individual's entry. If an address exists then it will be extracted and placed into the headers. Mail requests for the software to the author. --Andrew Waugh Kerberos for MH: I have made a set of diffs between his source tree and standard mh 6.7.1 available. If you don't have anonymous ftp access, you can get to the files by sending mail to archive-server@athena-dist.mit.edu. Send a message with "help" in the subject line and body for more information. The mh diffs are in the "misc" archive of the archive server. --Jonathan Kamens athena-dist.mit.edu [18.71.0.38] pub/misc/mh.kerberos.Z 69KB MacMH and PC/MH: These were available only for non-commercial degree-granting institutions from: Networking & Communication Systems 115 Pine Hall Stanford University Stanford, CA 94305-4122 Phone: +1 415-723-3909 --Jerry Peek The authorized distributor for PC/MH is: NEI, Inc. 210 Technology Drive, STE 210 Irvine, Ca 92718 Phone: +1 714-753-8588 FAX: +1 714-753-8593 Internet: info@netix.com --Shannon Yeh In addition, you might try Wollongong, to see if they have something you can get. Subject: ! How can I print a MH manual? From: Intro-5 To order a copy by mail, see the section on how to get MH by mail in "Where can I get MH?" Also, check "What references exist for MH?" To print your own copy, first obtain the MH sources ("Where can I get MH?") if you don't already have it, go into the "doc" directory and run "make guide" to create the administrators guide and "make manual" to create a user's manual which includes tutorials and man pages. If the doc directory is empty, you'll have to compile MH so that the documentation with correct local information is created. You can also ftp the ASCII or postscript versions: ftp.ics.uci.edu [128.195.1.1] mh/doc/tutorial.ps.Z 64KB mh/doc/ADMIN.ps.Z 57KB mh/doc/MH.ps.Z (man pages) 273KB ftp.uu.net [137.39.1.9] same files, but in dir mail/mh/doc [9.92] Subject: How should I report bugs? From: Intro-6 Mail them to Bug-MH@ics.uci.edu and be sure to include the output of the -help option as well as what hardware and operating system you are using. Subject: How can I convert from my mailer to MH? From: Intro-7 If you use one of a mail agent like 'mail', 'mailx', 'elm' or 'mush', converting to MH is easy. When you run the 'inc' command, it reads all new messages from the system mailbox into your 'inbox' folder. Those mail agents also have separate files or "folders" that hold messages in the same format as the system mailbox. You can read them with the 'inc -file' command. For example, to read the messages from your 'mbox' mail file into your MH 'inbox' folder, you'd type: % cd % cp mbox mbox.backup % inc -file mbox If you see the usual "Incorporating new mail into inbox..." message and a scan listing, the messages probably were converted. Read some or all of them (with the 'show' command) and be sure. The 'inc' won't remove your mbox unless you use '-truncate'. Section D.4 (C.4) of the MH book lists two scripts to convert mail files to MH folders: babyl2mh to convert from rmail's babyl format; vmsmail2mh to convert from VMS's mail (see "What references exist for MH" to see where the book's examples can be ftped from). --Jerry Peek Vivek Khera rewrote this in Perl since the original script doesn't work for some people. #!/usr/gnu/bin/perl # incorporate an RMAIL babyl file into an MH folder # # usage: babyl2mh +folder babyl-file # # V. Khera 17-JUL-1991 # where to find rcvstore $rcvstore = "/usr/local/lib/mh/rcvstore"; # # pull out command line args # die "usage: babyl2mh +folder babyl-file\n" unless @ARGV == 2; $folder = shift; # make sure folder name starts with a "+" (substr($folder,0,1) eq "+") || (substr($folder,0,0) = "+"); $bfname = shift; print "Incorporating RMAIL file $bfname into MH folder $folder\n"; # # read in babyl file. # $/ = "\037"; # this separates the records in a babyl file $* = 1; # records are multi-lines open(BABYL,$bfname) || die "Couldn't open $bfname\n"; $_ = ; # discard header. $msgnum = 0; while () { chop; # get rid of delimeter s/\f(.|\n)*\*\*\* EOOH \*\*\*\n//; # remove duplicate header information open(RCVSTORE,"|" . $rcvstore . " $folder"); print RCVSTORE $_; $msgnum++; print "Message $msgnum done.\n"; } Juergen Nickelsen provides yet another short script. He says, "You can remove the second to last second line ("> $input"), so that the script doesn't zero out your RMAIL file. "Another alternative is to replace this line with "inc -file $tmpmbox $folder && > $input", so that the RMAIL is only zeroed if inc successfully incorporated the mail. Finally one could add a switch -z, so that the RMAIL file is only zeroed if the switch is given. #!/bin/sh # Usage: inco [from [folder]] # "from" defaults to $HOME/Mail/outbound, "folder" to +inbox. lispfile=/tmp/inco.$$.el input=${1-$HOME/Mail/outbound} tmpmbox=/tmp/inc.$$.mbox folder=${2-+inbox} if [ $# -ge 3 ]; then echo Usage: `basename $0` [ from [ folder ]] exit 2 fi trap "rm -f $lispfile $tmpmbox ; exit 1" 1 2 15 touch $tmpmbox chmod 600 $tmpmbox echo '(rmail-input "'$input'") (rmail-last-message) (setq last (rmail-what-message)) (rmail-show-message 1) (while (not (equal (rmail-what-message) last)) (rmail-output "'$tmpmbox'") (rmail-delete-forward nil)) (rmail-output "'$tmpmbox'") (kill-buffer (current-buffer)) ' > $lispfile emacs -batch -l $lispfile inc -file $tmpmbox $folder > $input rm -f $lispfile $tmpmbox Use the following to convert a Babyl format file to Unix mail format. --Barry A. Warsaw. durer.cme.nist.gov [129.6.32.4] pub/gnu/rmailtovm.el See also MH book appendix D (appendix C). Subject: What machines does MH run on? From: Building MH-10 If you have a computer running UNIX, you can probably run MH. --Jerry Peek Subject: How do I build MH? From: Building MH-11 By carefully reading the READ-ME in the root of the source hierarchy, one should not have any trouble building MH. If building MH on IBM's AIX, obtain a set of patches and configuration file from Bill Wohler . Version 6.7.3 of MH, when available, should be able to compile on AIX out of the box. Subject: What options should I use? From: Building MH-12 BERK: Do NOT include the BERK option (in versions 6.7 or later)! BERK breaks the mh-format functions that take apart address lines, for example mbox, from, and friendly. This would really put a crimp on my replcomps file. LOCKF: if you have NFS, you need to lock your mailbox with lockf() so the lock will be honored by all machines on the local network. If you have the lockf() system call, include LOCKF. JQ Johnson makes the point that one should use this option carefully since it requires a roboust lockf() call. For example, this option caused serious problems on his SunOS 4.1.1. He suggested using LOK_BELL instead, and adding "lockstyle: 1" to mtstailor instead. ATZ: makes your timezones print like "EST" instead of "-0500". Much prettier. --Stephen Gildea However, Tony Landells replies: "Yes; very pretty. How unfortunate that timezone names are so ambiguous, so that EST can be interpreted, at a minimum, as (American) Eastern Standard Time, (Australian) Eastern Standard Time, or (Australian) Eastern Summer Time (and yes, I think it's dumb having the same acronym for both normal and Summer time, but that's a different problem). While the numeric timezones may not look as nice, they are, at least, reasonably unambiguous. I would urge anyone who ever intends/hopes/expects to use e-mail outside the U.S. to NOT use ATZ (sorry Stephen)." Subject: Fixing "post: problem initializing server; [BHST] no servers available" From: Building MH-13 The error message itself is essentially correct. However, what this really means is: MH's post cannot connect to a running sendmail over an SMTP port (MH configured with SMTP and SENDMTS). The potential problems: 1. Your local sendmail daemon is dying or not running for some reason. 2. You use BIND and your local nameserver is not responding. 3. Your mtstailor has its "servers:" pointing to a non-existant machine or a machine which is a) not reachable or b) not running the sendmail daemon. --Peter Marvit Subject: Where can I get POP3? From: Building MH-14 MH6.7 (and earlier versions too) include a server for version 3 of POP. Subject: What do I do if scan shows the wrong date? From: Building MH-15 Try adding the following lines to "lexedit.sed" in the zotnet subdirectory: /^# define YYTYPE unsigned short/c\ # define YYTYPE int /^unsigned char yymatch\[\] = {/c\ char yymatch[] = { /^unsigned char yyextra\[\] = {/c\ char yyextra[] = { On some systems, YYTYPE is actually just a short and so the first expression should be modified accordingly. --Todd Kaehler Subject: Why slocal writes messages to system maildrop that from(1) can't read. From: Building MH-16 Around line 500 or so of uip/slocal.c, change the #ifndef RPATHS to #ifdef RPATHS. With this fix, which only works if you use RPATHS, the ^A's will disappear. --Doug Acker Subject: Why does repl add a "Re:" to a message that already has one? From: Building MH-17 I carefully reconfigured and rebuilt MH from scratch and the problem went away. --Larry McVoy Subject: Does MH support IMAP2 (RFC 1064)? From: Building MH-18 No. MH only supports retrieving mail using POP3. POP3 is on the "standards track"--it is now an elective Internet Draft Standard (see RFC1280 for more details). At this point, IMAP[23] are "experimental, limited use" protocols; it is unlikely that MH will support them. --John Romine Subject: Where can I read about slocal and the format of the .maildelivery file? From: Using MH-20 In the distribution, this information is provided in the mhook man page. Wasn't this obvious? One can actually specify slocal or .maildelivery with IBM's AIX man. Here is brief example of a .maildelivery file that stores messages to babble in a folder and the system mailbox, stores mh-users in a folder but not the system mailbox, and puts the rest in the system mailbox. to mh-users | A "/usr/local/lib/mh/rcvstore -create +lists/mh-users" cc mh-users | A "/usr/local/lib/mh/rcvstore -create +lists/mh-users" to babble | R "/usr/local/lib/mh/rcvstore -create +lists/babble" cc babble | R "/usr/local/lib/mh/rcvstore -create +lists/babble" default - > ? /usr/spool/mail/wohler In addition, the following may be used to automatically send replies while on vacation. See vacation(1) to see how to set up vacation itself. The sed script removes the ">" that slocal added so that vacation knows where to send the reply. to wohler | R "sed -e '1s/>From /From /' | /usr/ucb/vacation wohler" cc wohler | R "sed -e '1s/>From /From /' | /usr/ucb/vacation wohler" Your .forward file may look like (quotes necessary): "| /usr/local/lib/mh/slocal -user your_login" In some implentations, the "-user your_login" is not needed. If not, manually running slocal with the flag will produce an error. See also MH book chapter 11. Alternatives to slocal include deliver and procmail. Subject: How do I include messages in repl with or without ">"? From: Using MH-21 When making a reply, specify a filter file on the command line: repl -filter repl.format This filter file must be in your MH mail directory (usually "Mail", in your home directory). Here are a couple of example repl.format files: overflowtext="",overflowoffset=0 message-id:nocomponent,formatfield=\ "In message %{text}you write:" body:component=">",overflowtext=">",overflowoffset=0 or overflowtext="",overflowoffset=0 date:component="Your message dated",formatfield=\ "%<(nodate{text})%{text}%|%(pretty{text})%>" body:component=">",overflowtext=">",overflowoffset=0 Setting overflowoffset to 0 keeps MH from doing anything to extra-long lines in the headers. In the body, however, this behavior is overridden so that long lines are automatically broken and a ">" is inserted before every line. You could put almost whatever you want between those quotes, although the "standard" ">" makes it easier to read notes that have been included several times. The examples differ with the descriptive text that is inserted before the included body. It is suggested not to use the "prompter" editor in this case, since it is likely that you'll not want to use all of the included message. Indeed, it is proper etiquette to edit out all unnecessary include verbiage so readers don't have to wade through the morass to read your pearls of wisdom. Also note that this might not work in versions prior to 6.7. --Alan Thew, Mike Schwager, James T Perkins See also MH book sections 6.7.4, 6.7.5, 9.4.1 (9.3.1). Subject: How can I eliminate duplicate copies of letters to myself? From: Using MH-22 Add these two lines to your MH profile file: Alternate-Mailboxes: user@host1, user@host2, ... repl: -nocc me To get one copy, you can either: - Take out the "-nocc me"... then you'll get exactly one copy of your replies (assuming all your addresses are listed in Alternate-Mailboxes), or - Add an "Fcc: foldername" to the headers of messages you send. That will drop a copy of the message in the folder "foldername". You can do this for *all* MH messages you send (not just with repl) by putting an "Fcc:" entry in your personal copy of the files "components", "replcomps", and "forwcomps" in your MH directory. (If you make a "distcomps" file, it needs "Resent-Fcc:".) For more info, see the man pages comp(1), repl(1), forw(1), dist(1) and mh-mail(5). --Jerry Peek The Alternate-Mailboxes also tells scan which messages are really from you so that it can place the recipient in the scan line instead of the sender. --Bill Wohler See also MH book sections 6.7.2, 8.6. This is also a convenient way to AVOID automatically cc-ing a mailing list when replying to a person who sent the message to the mailing-list, by listing the name of that mailing list in your alternate mailboxes. --Alec Wolman Subject: How would one go about reading Usenet with MH? From: Using MH-23 Although news readers are better, if one really wants to use MH, bbc will do the job. For example, "bbc comp.mail.mh" reads this newsgroup. To enable bbc, you have to specify "bboards" when you build MH. --Stephen Gildea You can save articles in the news readers for later perusal with MH. First, create a symbolic link from your mail directory (ie. usenet) to your news directory (ie. "ln -s ~/News ~/Mail/usenet"). You can then treat your news directory as a mail folder. Thus, to select a news group, use "folder +usenet/comp/mail/mh". To set the default save location correctly in rn, use: rn -M -/ or in your nn presentation sequence: news.announce. +$F/$N comp.mail.mh + . . See also MH book section 8.7. Subject: Can I append MH messages (ie. +inbox/1) to a UNIX mailbox format file? From: Using MH-24 #! /bin/sh # packmbox - pack an MH folder back into a UUCP-style mbox # # Defaults: # `+folder' defaults to current folder # `msgs' defaults to all # # Context: # Current-Folder # # for simplicity (and speed) we don't parse command-line args (much) case $#/$1 in 1/-h*) echo "syntax: packmbox [+folder] [msgs] [-help]" 1>&2; exit 0;; esac format="%(msg) From \ %<{return-path}%(putstr)%|\ %<(nonnull(mbox{from}))%(putstr)%|nobody%>@\ %<(nonnull(host{from}))%(putstr)%|nowhere%>%> \ %(day{date}) %(month{date}) %2(mday{date}) \ %02(hour{date}):%02(min{date}):%02(sec{date}) \ %(void(year{date}))%<(gt 100)%4(putnum)%|19%02(putnum)%>" trap 'rm -f /tmp/packm$$; exit 1' 1 2 3 15 scan -noclear -noheader -noreverse -width 256 \ -format "${format}" $* >/tmp/packm$$ # tricky -- you must do this "cd" after scan has updated the context cd `mhpath` exec /' < $m echo "" done exit Subject: ! How can I include my signature? From: Using MH-25 There are several ways. 1) The MH way. 1a) In your Mail directory, create files that include your signature into the format of the message. ~/Mail/components: To: cc: Subject: -------- -- Eric Ziegast ziegast@uunet.uu.net UUNET Technologies uunet!ziegast ~/Mail/replcomps body:component="> ",compwidth=2 :-- :Eric Ziegast ziegast@uunet.uu.net :UUNET Technologies uunet!ziegast To use the replcomps file, add the following to your ~/.mh_profile: repl: -filter replfmt When comp is used, your signature is already there along with my headers. When repl is used, the mhl program takes the body of the letter you're replying to, prepends '> ' to each line and then adds your signature at the end (available after version 6.7). 1b) Create an "editor" which can be called from whatnow to add the signature when desired or create a frontend to post (use the .mh_profile line "postproc: postproc" to call it) that always appends the .signature file before calling post to mail the message. David J. Fiander , David A. Truesdell and Tom Wilmore have sample scripts to do these. 2) Using your editor. If you use vi, you can use something like: map S :r ~/.signature to load your signature out of .signature every time you hit 'S'. 3) Use your windowing system. xterm, for example, can provide key and button mappings for the utterly lazy. 4) And if you use Emacs with mh-e, C-c C-s will append the signature. --Eric W. Ziegast & Hardy Mayer Tired of the same old signature? Want different signatures for different newsgroups? Here's a program to help you out. The way it works is to have .signature be a named pipe, so if you don't have named pipes, just say 'n'. The sigrand program then feeds stuff down the pipe everytime someone wants to read it. That way it works for more than just news, but for anything that wants to read your .signature, like a mailer. You have your choice of three kinds of signatures: 1) random (short) fortune from "fortune -s"; you get these if you don't have a global sig file. 2) random fortune from ~/News/SIGNATURES [global sig file] 3) random fortune form ~/News/(newsgroup)/SIGNATURES [local sig files] Ask Tom Christiansen for more details. Section 13.13 of the MH book lists mysend, a sendproc script to process a message after "What now? send" (see "What references exist for MH" to see where the book's examples can be ftped from). --Jerry Peek [9.92] See also MH book sections 8.9.6, 13.2 (12.2). Subject: What to do with "Problems with edit - draft removed" messages. From: Using MH-26 If your users are using an AT&T version of "vi", it's exiting with non-zero status (supposedly a count of the "errors" during the edit). Move "vi" to "broken_vi" and put it its place: #! /bin/sh /usr/ucb/broken_vi $* exit 0 Then complain to your vendor that "vi" is broken, and they should fix it. --John Romine Subject: How do I call my editor with arguments? From: Using MH-27 Set your editor (in .mh_profile) to the following shellscript: #/bin/sh $* exit 0 --John Romine You might find it useful to make $EDITOR, or to use different arguments depending on your EDITOR environment variable. --Ray Nickson Subject: How do I debug my .maildelivery file? From: Using MH-28 Put a message into a file and call slocal directly on it. slocal -user $USER [-verbose] [-debug] < test-msg Use the verbose or debug flags as necessary. See also MH book section 11.11. Subject: How can I digestify the messages in a folder for mail to another user? From: Using MH-29 How about: forw [-digest tmp] [-form forwcomps] [-filter mhl.digest] messages +folder These messages can be un-digestified :-) by the MH burst(1) program. --Jerry Peek and Bill Wohler See also MH book sections 6.8, 7.9. Subject: Can I run my message through a program (ie. ispell) before sending? From: Using MH-30 It's pretty simple. If your speller is called myspell, use: What now? edit myspell MH will actually execute: myspell /your-mail-draft-directory/draftfile and give the entire draft message to your speller. The header will probably be "misspelled," of course, though you might be able to tell the speller to ignore it--or you could hack up a little shell script to run the speller on just the message body, then tack the corrected body back onto the header before sending. You can automate this some more. For example, if you want your speller to run after your first edit with "prompter" and also after you leave the "vi" editor, add these lines to your MH profile: prompter-next: myspell vi-next: myspell Then, at the "What now?" prompt: What now? e your speller will run. For more info, see the mh-profile(5) man page or section 6.2.1 of the MH book. --Jerry Peek Subject: Can I append MH messages to a GNU Emacs rmail BABYL-format file? From: Using MH-31 To convert your MH folders to BABYL folders, first run the following script on your Mail directory. #!/bin/sh for f in Mail/*; do if [ -d $f ]; then touch msgbox folder=`basename $f` echo -n packing $folder ... packf +$folder echo done mv msgbox Mail-rmail/$folder fi done This assumes you don't have nested folders. Your rmail folders will be left in $HOME/Mail-rmail in MMDF format which rmail can read. Then run rmail-input for each folder, which converts each folder into BABYL format. Be sure not to append any messages before they are converted from MMDF to BABYL, since there may be really strange results. Subject: Is there documentation for mh-e? From: Using MH-32 Yes, sort of. Run "C-h m" (describe-mode) in both scan and letter modes to see which commands and variables are available. Browsing the code is also helpful. Subject: + How can I change my return address? From: Using MH-33 If you find that your mailer creates a From header that others have trouble replying to, you can add a Reply-To header to override the From header in replies. Copy /usr/local/lib/mh/components into your Mail directory and add a line like the following after the Subject header replacing my address with your address: Reply-To: wohler@sap-ag.de [9.92] Subject: How can I get xmh to use Emacs as the editor? From: Xmh-40 The modifications to xmh to support an external editor, annotations, and an append command can be found in the these places. --Bob Ellison export.lcs.mit.edu R5fixes/xmh.editor/* ftp.sei.cmu.edu pub/xmh As of R5, xmh has a new action proc called XmhShellCommand. A string parameter will be executed as a shell command with the currently selected messages as parameters (or the current message if there are no selected messages). Using this new action, a couple of shell scripts, a window version of emacs (e.g. xemacs) and some elisp code, xmh can use emacs as its editor instead of the built in Athena text widget editor. This doesn't require any source code changes to xmh. These are included in the appendix "Switching xmh's editor". --Andrew Wason Subject: Does xmh support subfolders? From: Xmh-41 Yes. Create one by invoking "Create Folder" as usual, and enter something like: existing-folder/new-sub-folder. You can then access the subfolder by popping up a menu over the "existing-folder" button item. --Steve Malowany But: The R5 version of xmh does *not* handle nested sub-folders. If you create a folder as 'grab/some/bandwidth', xmh displays this foldername for the remainder of the session where it was created, BUT if you later re-run xmh, the folder is no longer visible to xmh. --John Cooper See also MH book section 15.6.2 (14.6.2). Subject: How do I precede included messages with ">" when replying in xmh? From: Xmh-42 Include the following line in your ~/app-defaults/XMh file: Xmh*replyInsertFilter: "sed 's/^/> /'" --Len Makin or, Xmh.ReplyInsertFilter: /usr/local/lib/mh/mhl -form repl.filter Using this means that you can chose to insert the original by use of the "Insert" button in the Draft message pane. See "How do I include messages in repl with or without ">"?" to find examples of repl.filter. --Andy Linton See also MH book sections 15.1.4 (14.1.4), 16.3.3 (15.2.3). Subject: Glossary From: Appendix MH Mail Handler POP3 Post Office Protocol, RFC 1225 MMDF Subject: Acknowledgements From: Appendix I'd like to thank the following people for providing ideas on the layout of this article: Joe Wells Richard M. Stallman David Elliott Tom Christiansen Eugene N. Miya We are also grateful to the following individuals that have provided answers or other information to make this a better document. I regret that it is possible that some names have been accidently omitted. I would also like to thank all the readers of comp.mail.mh. John Cooper Jerry Peek James R. Hamilton. Alan Thew Mike Schwager Owen Rees Hardy Mayer Kim F. Storm Barry A. Warsaw Edward Vielmetti Andy Y.A. Kuo Vivek Khera Tom Christiansen Alec Wolman Todd Kaehler Len Makin Douglas L. Acker John Romine Marshall Rose JQ Johnson Eric W. Ziegast Tony Landells Peter Marvit Bob Ellison Dale Carstensen Andrew Wason Stephen Gildea Shannon Yeh Andy Linton Andrew Waugh Juergen Nickelsen Larry McVoy James Perkins Jonathan I. Kamens Steve Malowany Nathaniel Borenstein Subject: Warranty From: Appendix [The following statement epitomizes the ridiculous state of affairs in our country (I'm an American) and can be ignored outside the US...] No Warranty: Because this article is provided free of charge as a service to comp.mail.mh readers, we provide absolutely no warranty, to the extent permitted by applicable state law. This article is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Should the information prove defective, you assume the cost of all necessary servicing, repair or correction. Subject: Switching xmh's editor From: Appendix #! /bin/sh # This is a shell archive. Remove anything before this line, then unpack # it by saving it into a file and typing "sh file". To overwrite existing # files, type "sh file -c". You can also feed this as standard input via # unshar, or by typing "sh 'README' <<'END_OF_FILE' XThis is a short description of what to do with each of the enclosed files. X XXmh.ad X Merge this in with your xmh resources. If you already have X user defined buttons, then you may need to renumber the X buttons in this resource file. X Xxmh-command.el X Byte compile this file and put it in your GNU emacs load-path. X Xxmhcommand Xxmhemacs X Put these somewhere in your path. X X XOnce you have installed these, restart the R5 xmh with the new Xresources. When you press the repl, forw or comp buttons Xan xemacs window will come up with your draft message. X XOnce you have written your mail, save it and exit GNU emacs (C-xC-c). XYou will be prompted if you want to send the current message. XIf you enter 'y', the message will be sent and the output will Xbe displayed in an emacs window (in case you use -verbose or -snoop). XThen you will be prompted to exit emacs. Enter 'y' when you are ready. X XIf you answered 'n' when prompted to send the message, Xthen the draft message will be deleted and emacs will exit. X XYou can modify the Xmh.ad resources to add more buttons. XAny MH command which accepts "+folder msg" can be used X(e.g. a replx shell script which includes the body of the Xmessage being replied to can be bound to a replx button) X X XAndrew Wason Xaw@bae.bellcore.com END_OF_FILE if test 1269 -ne `wc -c <'README'`; then echo shar: \"'README'\" unpacked with wrong size! fi # end of 'README' fi if test -f 'Xmh.ad' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'Xmh.ad'\" else echo shar: Extracting \"'Xmh.ad'\" \(457 characters\) sed "s/^X//" >'Xmh.ad' <<'END_OF_FILE' XXmh*CommandButtonCount: 3 X XXmh*commandBox.button1.label: repl XXmh*commandBox.button1.translations:\ X #override\n\ X : XmhShellCommand(xmhcommand y repl) unset() X XXmh*commandBox.button2.label: forw XXmh*commandBox.button2.translations:\ X #override\n\ X : XmhShellCommand(xmhcommand y forw) unset() X XXmh*commandBox.button3.label: comp XXmh*commandBox.button3.translations:\ X #override\n\ X : XmhShellCommand(xmhcommand n comp) unset() END_OF_FILE if test 457 -ne `wc -c <'Xmh.ad'`; then echo shar: \"'Xmh.ad'\" unpacked with wrong size! fi # end of 'Xmh.ad' fi if test -f 'xmh-command.el' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'xmh-command.el'\" else echo shar: Extracting \"'xmh-command.el'\" \(1294 characters\) sed "s/^X//" >'xmh-command.el' <<'END_OF_FILE' X;;; These functions are for use with xemacs and xmh. X;;; The R5 xmh has a new action - XmhShellCommand which executes X;;; a shell command with the current msg as an arg. X;;; By executing something like: X;;; XmhShellCommand(xmhcommand repl) X;;; you can use xemacs as your editor with xmh. X;;; X;;; The following elisp functions perform the basic whatnowproc functionality X;;; (quitting and deleting, sending) X;;; X;;; Andrew Wason aw@bae.bellcore.com X X X;;; Override C-xC-c X(define-key indented-text-mode-map "\C-x\C-c" 'xmh-command-send-or-delete) X X X(setq mhdraft (getenv "mhdraft")) ; save the filename of the draft X X X(find-file mhdraft) ; load the draft letter X(indented-text-mode) X(setq draft-buffer (current-buffer)) ; save the buffer the draft is in X X X(defun xmh-command-send-or-delete () X "Prompt to send or delete letter, then quit." X (interactive) X (set-buffer draft-buffer) X (if (y-or-n-p "Send message? ") X (progn X (save-buffer) ; save the draft buffer X (message "Sending...") X (pop-to-buffer "MH mail delivery"); pop to a buffer for "send" output X (erase-buffer) X (call-process "send" nil t t mhdraft) ; call MH "send" X (if (y-or-n-p "Exit? ") X (kill-emacs))) ; exit emacs X (delete-file mhdraft) ; delete the draft letter X (kill-emacs))) ; exit emacs END_OF_FILE if test 1294 -ne `wc -c <'xmh-command.el'`; then echo shar: \"'xmh-command.el'\" unpacked with wrong size! fi # end of 'xmh-command.el' fi if test -f 'xmhcommand' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'xmhcommand'\" else echo shar: Extracting \"'xmhcommand'\" \(669 characters\) sed "s/^X//" >'xmhcommand' <<'END_OF_FILE' X#!/bin/sh X# This shell should be invoked by the xmh XmhShellCommand() action as X# XmhShellCommand(xmhcommand y repl) X# XmhShellCommand(xmhcommand n comp) etc. X# If the second arg is y, then the message list will be used. X X# We invoke the passed MH command on the identified message X# (we must strip the message number and folder from the pathname) X(if [ $1 = "y" ] Xthen X $2 -whatnowproc xmhemacs +`dirname \`echo $3 | \ X sed "s;\\\`mhpath +\\\`/;;"\`` `basename $3` X X# You can use this more readable version instead if you have ksh X# $2 -whatnowproc xmhemacs +$(dirname $(echo $3 | \ X# sed "s;$(mhpath +)/;;")) $(basename $3) X Xelse X $2 -whatnowproc xmhemacs Xfi)& END_OF_FILE if test 669 -ne `wc -c <'xmhcommand'`; then echo shar: \"'xmhcommand'\" unpacked with wrong size! fi chmod +x 'xmhcommand' # end of 'xmhcommand' fi if test -f 'xmhemacs' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'xmhemacs'\" else echo shar: Extracting \"'xmhemacs'\" \(116 characters\) sed "s/^X//" >'xmhemacs' <<'END_OF_FILE' X#!/bin/sh X# Invoke xemacs and load the xmh-command.el stuff. X# xmhemacs is used by xmhcommand Xxemacs -l xmh-command END_OF_FILE if test 116 -ne `wc -c <'xmhemacs'`; then echo shar: \"'xmhemacs'\" unpacked with wrong size! fi chmod +x 'xmhemacs' # end of 'xmhemacs' fi echo shar: End of shell archive. exit 0 Local Variables: mode: outline outline-regexp: "^Subject:" fill-prefix: " " eval: (progn (setq buffer-read-only nil) (hide-body)) End: Article: 257 of news.answers Xref: caracol.inf.ufrgs.br news.software.nn:52 news.answers:257 Path: caracol.inf.ufrgs.br!vortex.ufrgs.br!dcc.unicamp.br!nysernet.org!psinntp!p sinntp!uunet!snorkelwacker.mit.edu!bloom-picayune.mit.edu!news Newsgroups: news.software.nn,news.answers Subject: NN Frequently Asked Questions (FAQ) with Answers Message-ID: From: Bill Wohler Date: 8 Nov 92 22:22:16 -0200 Followup-To: poster Summary: This document answers Frequently Asked Questions about NN, a X-Last-Updated: 1992/09/28 Lines: 1211 menu-based, point and shoot, USENET news reader. It should be read by anyone who wishes to post to news.software.nn. Keywords: FAQ nn news question answer newsrc digest article nntp newsgroup cancel mail signature header netnews usenet kill Sender: news@athena.mit.edu (News system) Supersedes: Nntp-Posting-Host: pit-manager.mit.edu Reply-To: Bill Wohler Organization: SAP AG, Walldorf, Germany Date: Fri, 30 Oct 1992 06:01:27 GMT Approved: news-answers-request@MIT.Edu Expires: Sun, 13 Dec 1992 06:00:16 GMT Lines: 1199 Archive-name: nn-faq Last-modified: $Date: 1992/09/28 14:01:23 $ Version: $Revision: 92.10.1.2 $ This is a living list of frequently asked questions on the Usenet news reader NN (No News is Good News). The point of this is to circulate existing information, and avoid rehashing old answers. Better to build on top than start again. Please read this document before ever posting to this newsgroup. This article is posted monthly. If it has already expired and you're not reading this, you can hope that you saved the last bit of question 3 so that you can get a copy yourself. Please do not post an answer when someone posts a frequently asked question, as I will always e-mail a reply. This ensures that everybody gets their question answered fully and eliminates unnecessary traffic in this newsgroup. Your comments, additions and fixes to this list are welcome: please send them to Bill Wohler . Subject: Table of Contents From: Preface Legend: + new, - deleted, ! changed Introductory 1. Why should I use nn? !2. Where can I get nn? !3. What references exist for nn? !4. How should I report bugs? 5. How can I convert from rn to nn? !6. How can I make life simpler when starting nn for the first time? 7. Is there an X interface to nn? -8. Is Kim male or female? 8. What is the status of nn? Building nn 10. What machines does nn run on? 11. Is it possible to restrict the groups that users have access to? !12. Unofficial patches for various bugs Using nn 20. How do I save files that I can read later with MH, elm, Mail, ...? 21. How come nn doesn't show the Lines count? 22. How can I find all articles having to do with a certain topic? !23. How can I set a different Organization name? 24. Can all non-selected subjects be automatically placed in my kill file? 25. Can I automatically kill articles based on the Newsgroups header? 26. How can I select one article in a thread with auto-select-subject set? 27. Is there a library of macros and other nn features? 28. Can one search for patterns in the entire article from the menu? 29. How can I remove old articles from folders? 30. What's the best way to save multi-part articles? 31. When saving in +a/b/c keeps you from saving in +a/b. !32. Can I use my mailer to send mail? 33. How can I see the original article with the current subject? 34. Can I choose newsgroups as I do articles, ie. with a menu? 35. How can I post prewritten articles with nn? 36. How do I eliminate double signatures? 37. Can the signature come from a different file or program? !38. How can I make mail replies go to a different machine? 39. How come more articles get selected than I expect? 40. Any plans for trn-ish thread following? 41. Setting new-group-action to "ask before adding" doesn't work. !42. Why does nn crash when a letter one past the highest letter is selected? 43. Why do articles without a Lines header appear empty? +44. How do I save my posts and replies automatically? +45. How can I change how my real name appears? +46. How can I update my mail headers? nnmaster 50. Why does nnmaster stop collecting articles at the "junk" group? 51. How do I cope with "Incomplete MASTER file"? !52. Why isn't nnmaster working? +53. Why do I get ".../MASTER not found"? Subject: Viewing This Article From: Preface To skip to a particular question numbered xx, use "/^F.*xx" with most pagers. In GNU Emacs type "M-C-s ^F.*xx", (or C-r to search backwards), followed by ESC to end the search. "-xx" is often sufficient. To skip to new or changed questions, use "/^S.*[!+]" with most pagers and "M-C-s ^S.*[!+]" in GNU Emacs. This article is in digest format. Nn may have already broken this message into separate articles; if not, then type "G %". In rn, use ^G to skip sections. This article is treated as an outline when edited by GNU Emacs. Run "M-x describe-mode" to see available outline-mode commands. Useful commands are "C-c C-s" (show-subtree) and "M-x show-all" Contributer's E-Mail addresses can be found at the bottom of this article. Subject: Why should I use nn? From: Intro-1 nn is a menu based (point and shoot) netnews reader with a complete set of features to satisfy both the expert and the novice user. Since its first release in Denmark in 1984 (!), in Europe in 1988, and the global release in June 1989, it has replaced rn and other well-known news readers at many sites. Some of the key features of nn are: * Menu-based article selection prior to reading the articles with the articles sorted according to subject and posting time. This significantly reduces the time spent on news reading. No keystrokes are wasted on articles you don't want to read, and only the articles selected on the menu will be read. * Release 6.4 uses standard .newsrc, and can leave individual articles unread. * Digests are automatically split and presented as ordinary articles! You can transparently save and respond to individual subarticles. * Full folder support: read, save, and delete individual articles. * Online help and manual. * Built-in unshar and patch functions. * Built-in uudecode function which will automatically unpack, concatenate, and decode multi-part postings. * Easy remapping of keys with advanced macro definition features. * Automatic kill & selection of articles based on subject or author. * User specified presentation sequence of news groups based on the news group hierarchy. * Whole classes of news groups can easily be unsubscribed permanently, e.g. talk.all and all.politics * Related groups can be merged and presented as a single group, e.g. comp.emacs and all gnu.emacs groups. * Blindingly fast 'search for subject'. On my Texas S1500 system, nn uses less than 20 seconds to find all articles on a specific subject among 64000 articles in all groups! * News collection and presentation is extremely fast, because nn uses its own database on top of the standard news system. * In a distributed environment, the database can be shared among all hosts on the network. Only one daemon is needed on the news server for all hosts. This works in a heterogenous environment as well. * NNTP is also supported (using a local database for speed). Because of the database, nn starts almost equally fast (in a few seconds), no matter whether you have 100 or 10000 unread articles! The database takes up some disk space, but dramatically improves speed and functionality. The amount of disk space consumed is approx. 1Mb per 10000 articles. Subject: ! Where can I get nn? From: Intro-2 The current version of nn is 6.4.18. Note that tar files with the name of nn6.4.tar.Z (ie. not nn6.4.18.tar.Z) may *not* include the patches. Don't even think of compiling unless the PATCHLEVEL defined in patchlevel.h is 18. via anonymous ftp: dkuug.dk [129.142.96.41] pub/nn6.4/nn64.tarZa[a-f] ~90k each pub/nn6.4/nn6.4.patch[1-16].Z ~25k each munnari.oz.au [128.250.1.21] pub/news/nn sirius.ucs.adelaide.edu.au [129.127.40.3] pub/news/nn6.4/nn6.4.tar.Z 485k pub/news/nn6.4/nn6.4.patch[1-10].Z ~25k each cutmcvax.cs.curtin.edu.au [134.7.1.1] pub/nn-patches/patch[01-16].Z ~25k each aupair.cs.athabascau.ca pub/usenet/nn/nn6.4.patch18 mtecv2.mty.itesm.mx [131.178.1.5] pub/nn/nn6.4.16.tar.Z pub/nn/nn6.4/nn6.4.patch[1-16].Z pub/nn/NN_FAQ_with_Answers ghost.dsi.unimi.it [131.175.10.64] pub/nn.6.4.16.tar.Z 766k pub/nntp.1.15.11.tar.Z 284k ftp.uu.net [137.39.1.9] news/readers/nn/nn6.4.tar.Z 485k news/readers/nn/nn6.4.patch[1-16].Z <30k each uk.ac.soton.ecs (NIFTP) login ID "guest", password of your mail ID (must include an "@"): /nn6.4.16.tar.Z 621637 /nn6.4.patch[1-16].Z ~25000 /nntp-1.5.11.tar.Z 210319 via anonymous uucp: Anyone in the U.S. can get nn source and patches by anonymous uucp from uunet by using their 900 number which costs 40 cents/minute (you don't have to be a uunet subscriber). The number is 1-900-468-7727, login: uucp, no password. See uunet!~/help (~5k) for more info or get uunet!~/index/README (~4k) for a current full directory listing. --Gary Morris uunet!~/news/nn/nn6.4.tar.Z (~485k) uunet!~/news/nn/nn6.4.patch1.Z (~15k) ... uunet!~/news/nn/nn6.4.patch16.Z (~24k) via mail: Send a note to ftpmail@decwrl.dec.com whose body contains "help" on a line by itself get information on getting ftp sources by mail. Send a note to mail-server@nluug.nl with a body containing one or both of the following as desired: send news/nn6.4.16.tar.Z send news/nntp/nntp.1.5.11.tar.Z mini-inews: As well as bringing mini-inews up to date, modifications have been made to remove the need for MINI_INEWS_HEADERS when setting up nn. Mini-inews will now create whatever headers are required including if desired, a Lines header or an incremental Message-ID numbering capability. --Jim Jagielski jagubox.gsfc.nasa.gov [128.183.44.1] /pub/inews16.tar.Z 76K Subject: ! What references exist for nn? From: Intro-3 Usenet: news.software.nn Mailing list: NN mailing list archives: Papers: "Intro to nn" ux1.cso.uiuc.edu [128.174.5.59]:doc/net/nn. where is one from doc, ps, tex, jpn, and hqx. "A Short Guide to nn" unlinfo.unl.edu:pub/crc.docs/NN.doc/nn.manual.ascii This document: via anonymous ftp: pit-manager.mit.edu [18.172.1.27] /pub/usenet/news.answers/nn-faq ftp.uu.net [137.39.1.9] /archive/usenet/news.answers/nn-faq.Z cnam.cnam.fr [192.33.159.6] /pub/FAQ/??? grasp1.univ-lyon1.fr [134.214.100.25] /pub/faq/??? archive.cs.ruu.nl [131.211.80.5] /pub/NEWS.ANSWERS/??? ftp.uu.net via uucp: uunet!/archive/usenet/news.answers/nn-faq.Z via mail: Each of the following addresses is following by commands which should be included as the body of the message. mail-server@pit-manager.mit.edu send usenet/news.answers/nn-faq mail-server@cs.ruu.nl listserv@grasp1.univ-lyon1.fr Subject: ! How should I report bugs? From: Intro-4 Note: the maintenance of nn is being taken over by Peter Wemm. During this transitional period, he asks that bugs and suggestions be posted to news.software.nn. Soon, the following paragraph will be updated with correct information. [9.92] [Either mail them to nn-bugs@dkuug.dk and be sure to include the version number as well as what hardware and operating system you are using, or better yet, use the :bug command within nn.] Subject: How can I convert from rn to nn? From: Intro-5 Why bother? On our system some people use nn and some people use rn. In fact, since they both use the same .newsrc format, it is perfectly possible to use both. --Ian Taylor Subject: ! How can I make life simpler when starting nn for the first time? From: Intro-6 I think a nice way is to use the catch-up facility. Start nn -a0 and let nn catch up automatically. After some hours restart nn and unsubscribe to uninteresting groups having news articles. Restart nn the following day and continue unsubscribing. After one week, you have a nice .newsrc. --Joerg Napp Another method is to run nn, exit immediately with 'Q', edit ~/.newsrc and replace all occurrences of ':' with '!' and then replace the '!' with a ':' for those groups you're interested in. [9.92] Subject: Is there an X interface to nn? From: Intro-7 No. Subject: What is the status of nn? From: Intro-8 Note: the maintenance of nn is being taken over by Peter Wemm. During this transitional period, he asks that bugs and suggestions be posted to news.software.nn. Soon, I'm sure he'll have an update to this section. Subject: What machines does nn run on? From: Building nn-10 Note: the maintenance of nn is being taken over by Peter Wemm. During this transitional period, he asks that updates to this list be posted to news.software.nn. Soon, the following paragraph will be updated with correct information. [Updates to this list should be sent to nn-bugs@dkuug.dk, not the FAQ administrator.] Operating systems: 3b1 (unix-pc) with GCC SunOS 3 NeXT 1.0 SunOS 4.0 AIX 2.2.1 SunOS 4.1 SysV environment A/UX 1.1 System V 4.2 BSD and Ultrix systems Motorola System V/88 Release 3 4.3 BSD systems Texas Instruments System 1500 dnix 5.2 on DIAB DS90 NCR tower dnix 5.3 on DIAB DS90 ULTRIX systems (4.2 based) Dynix 3.0 on Symmetry Mips running riscos 4.0 or greater Fortune 32:16 Riscos 4.5 and later HPUX (series 300) Microport UNIX V.2 HPUX 2.1 (series 800) Amdahl UTS 2.0 HPUX 3.0 (series 800) SCO Xenix 2.2.1 (286) -- terminfo HPUX 6.5 or newer (series 300) SCO Xenix 286 -- termcap HPUX 7.0 Xenix386 [termcap version] Interactive UNIX on 386 Xenix386 2.3.2 w/development system Dynix/PTX on symmetry Tandy 68000/Xenix 3.2 Pyramid (and Targon 35) SCO UNIX V on 386 IRIX 3.1/3.2 Siemens SINIX Hardware platforms: 3b1 with GCC [no networking] MIPS processors Amdahl 5890 (big iron) Siemens MX300 AT&T 3b2 Pyramid (and Targon 35) Convex IBM 6150 DECstation 3100 Silicon Graphics 4D series Gould PN6000 SPARC processors HP9000 series 320 and 800 (at least) 80386 based SUNs [have network support] Intel 80286 [no networking] Sequent Symmetry Intel 80386 [no networking] VAX family Motorola 68000 family Motorola 88000 risc Subject: Is it possible to restrict the groups that users have access to? From: Building nn-11 Create a new group for the people who can read the special groups. Call it "privnews", for example. (In /etc/group put the userid of each person who's in that group on that group's line.) Then change the group of the spool directory which contains the restricted newsgroup to "privnews" (leaving the owner as news), and set the mode to 750. --Alexis Rosen Subject: ! Unofficial patches for various bugs From: Building nn-12 Several bugs have been reported and fixed and the patches are available here for those not patient enough to wait until the next release. Remember, these are *unofficial* patches so back them out before patching in the next release of nn. You do not have to strip the two leading spaces before these patches. In fact you can run "patch -s -N < this-entire-faq", within the newsreader even! The following patch fixes NN dateline parsing. Also, NN mishandles non-GMT time zones near short month boundaries due to NN's, er, somewhat unusual time stamp encoding. *** old/pack_date.c Wed Apr 17 01:32:40 1991 --- new/pack_date.c Thu Jun 4 20:03:02 1992 *************** *** 4,9 **** --- 4,11 ---- * Calculate an approximate "time_stamp" value for a date * string. The actual value is not at all critical, * as long as the "ordering" is ok. + * The current algorithm mishandles non-GMT time zones near + * short month boundaries, but this is rare in real news. * * The result is NOT a time_t value, i.e. ctime() will * not produce the original Date string. *************** *** 256,262 **** res *= 24 * 60; res += (hour * 60) + min; ! return res + tzone(date); } --- 258,264 ---- res *= 24 * 60; res += (hour * 60) + min; ! return res - tzone(date); } --Paul Eggert Subject: Can I set up nn securely? From: Building-13 Diffs are unfortunately not included, but this is what you can do: o Set shell-restrictions in the setup file. o Set and lock *every* variable which is used to execute commands. o Modify the source to avoid display/save/print files above the home-directory if shell-restrictions is set (mainly in save.c). o Modify the source to avoid changing directories if shell-restrictions is set. o Modify the source to avoid showing the contents of locked variables. In particular, the following variables should be locked: backup-folder-path, backup-suffix, bug-report-address, decode-header-file, editor, folder, inews, mail, mail-record, mailer, news-record, newsrc, pager, patch-command, printer, record, spell-checker, unshar-header-file Subject: How do I save files that I can read later with MH, elm, Mail, ...? From: Using nn-20 MH: Save your files with +$F/$N. For example, if you save message 10 in news.software.nn in this way, you will create a file called ~/News/news/software/nn/10. If you have a symbolic link from ~/Mail/news to ~/News, then you can look at your saved nn messages with "scan +news/news/software/nn". Mail Add "set mail-format" to your init file. Subject: How come nn doesn't show the Lines count? From: Using nn-21 Karl Kleinpaste writes: C News sites can turn on Lines: header creation (we do here), but the default has it turned off. I wish more would turn it on, as several newsreaders put it to use, and it's the most easily available metric of article size when showing the user a menu of available articles. Henry Spencer replies: We're unenthusiastic about Lines:, which is why it's off by default and little-documented. *The* most easily available metric of article size is not line count -- which is often slightly wrong, by the way -- but byte count, which is available without even parsing the headers. You can tell C News to add Lines: headers to articles *posted* locally, but C News has no provision for adding headers to traffic coming in from other sites. [Specifically, search for the string "uncomment" in inews, and uncomment those lines. --bw] But Paul Eggert and Luc Rooijakkers provide a solution: Remember, these are *unofficial* patches so back them out before patching in the next release of nn. You do not have to strip the two leading spaces before these patches. In fact you can run "patch -s -N < this-entire-faq", within the newsreader even! =================================================================== RCS file: news.c,v retrieving revision 1.1 diff -c2 -r1.1 news.c *** news.c 1990/10/23 21:37:38 1.1 --- news.c 1992/06/19 23:17:05 *************** *** 231,235 **** char *parse_header(); struct stat statb; ! int retry; FILE *f; #ifdef NNTP --- 231,235 ---- char *parse_header(); struct stat statb; ! int c, retry; FILE *f; #ifdef NNTP *************** *** 300,309 **** body = parse_header(f, art_hdr_field, modes, buffer1); - news.ng_lines = news.ng_xlines ? atoi(news.ng_xlines) : -1; if (news.ng_from == NULL) news.ng_from = news.ng_sender; ! if (modes & FILL_OFFSETS) { art->fpos = news.ng_fpos = ftell(f); fseek(f, (off_t)0, 2); news.ng_lpos = ftell(f); --- 300,328 ---- body = parse_header(f, art_hdr_field, modes, buffer1); if (news.ng_from == NULL) news.ng_from = news.ng_sender; ! if (modes & FILL_OFFSETS) art->fpos = news.ng_fpos = ftell(f); + if (news.ng_xlines) + news.ng_lines = atoi(news.ng_xlines); + else { + #ifdef NNTP + if (use_nntp && lazy) { + off_t fpos = ftell(f); + fclose(f); + f = nntp_get_article(art->a_number, 2); + if (f == NULL) return NULL; + lazy = 0; + fseek(f, fpos, 0); + } + #endif + news.ng_lines = 0; + while ((c = getc(f)) != EOF) + if (c == '\n') + news.ng_lines++; + } + + if (modes & FILL_OFFSETS) { fseek(f, (off_t)0, 2); news.ng_lpos = ftell(f); Subject: How can I find all articles having to do with a certain topic? From: Using nn-22 nngrab invokes nn on all articles whose subject or keyword fields contain a desired keyword. This shows one how important it is to use descriptive subjects and keywords when posting articles. For more information, read the manual page. Subject: ! How can I set a different Organization name? From: Using nn-23 See "How can I update my mail headers?" [9.92] Subject: Can all non-selected subjects be automatically placed in my kill file? From: Using nn-24 This is on the list of things to do. Subject: Can I automatically kill articles based on the Newsgroups header? From: Using nn-25 This is how one can automatically kill crossposted articles, etc. First, manually either add the following to your .newsrc to mark all articles read forever: alt.flame: 1-2147483647 or add the following to your .nn/kill file to kill all articles in the group: alt.flame:!s/:^ The former method may break down if you ever use nngoback to reset numbers in your .newsrc. The latter method could cause difficulty if you ever actually want to read articles in that group. Near the top of your sequence in your init file put !alt.flame. alt.flame This makes alt.flame, but not its subgroups, be included as the first thing in your sequence; so all articles in it are killed before they appear in any other groups. You might want to put NEW above this so you can see if new groups are getting off to a bad start with lots of alt.flame crossposting. Later in the sequence put % alt % This allows the rest of the alt hierarchy, including subgroups such as alt.flame.spelling (if you subscribe to it), to get included at that point in the sequence. Along with using the default settings of cross-filter-seq=true and cross-post=false, this works fine to nuke the crossposted articles. --Richard M. Mathews & Dave Shaver Subject: How can I select one article in a thread with auto-select-subject set? From: Using nn-26 Define the following macro to toggle auto-select-subject. --Steven Grady map menu A ( :local auto-select-subject :toggle auto-select-subject ?auto-select-subject=on echo "Auto-select on" ?auto-select-subject=off echo "Auto-select off" ) Use the '.' command. Subject: Is there a library of macros and other nn features? From: Using nn-27 When complete, it will be a companion posting to this one. If you have not mailed me your init file, or you have made substantial changes since the last time, please send it in. If anyone is handy in perl or awk and would like to write some scripts to reduce multiple init files to variable summaries (like the one I posted a while ago), macro definitions and presentation sequence tricks, I would like to talk to you. Subject: Can one search for patterns in the entire article from the menu? From: Using nn-28 No. Subject: How can I remove old articles from folders? From: Using nn-29 Just open the folder in the usual way and C(ancel) the articles you want to remove from the folder. When you leave the folder, nn will rewrite the folder with the "cancel"ed articles removed. --Kim Storm Subject: What's the best way to save multi-part articles? From: Using nn-30 All you have to do is to save the articles from the menu, e.g. W(rite) +file.* a b c d... where a b c d... are the articles on the menu you want to save. You can also save the selected articles on the menu with * (only on current page) or + (on all menu pages). --Kim Storm Subject: When saving in +a/b/c keeps you from saving in +a/b. From: Using nn-31 This happens when default-save-file is $F. Try changing default-save-file to $F/$N (my favorite) to get, for example, +news/software/nn/1022, or $G to put everything in +news.software.nn. Finally, if you really did want the behavior of +$F, a compromise would be to use +$F. (Andrew's favorite) instead (one can use anything other than '.'). --Bill Wohler & Andrew Swann Alternatively, use +$F/$L, to place articles for news.software.nn in the file +/news/software/nn/nn. This has two advantages: 1) You can later read through the folder "nn" and save some of the articles under new folder names having to do with the topic. For example, you might save auto-select topics under +$F/auto-sel, that is, +/news/software/nn/auto-sel. 2) If at a later date, a new newsgroup is added below nn, articles can still be saved under that subgroup since +/news/software/nn is already a directory, not a folder. --Harry Herman Subject: ! Can I use my mailer to send mail? From: Using nn-32 Yes. See the variables mail-alias-expander, mail-script, mailer, and mailer-pipe-input. The following show how you can have nn look up mail aliases, and use elm and MH to mail messages. [9.92] #!/bin/sh # # nn-expand-mail-alias -- expands aliases from ~/.mailrc file for nn. # # To use, put the following in your ~/.nn/init file: # # set mail-alias-expander nn-expand-mail-alias # and put this file somewhere in your path, making it executable. I use # set mail-alias-expander /usr/local/lib/nn-expand-mail-alias # but the choice is up to you. # # Written by Scott Hannahs, Bitter National Magnet Lab, MIT, August 1991 # Complaints, comments, ideas to sth@slipknot.mit.edu # Tested on Silicon Graphics, IRIX 3.3.1 # # Minor banging by to handle alias value fields # which contain doublequote characters, e.g. # # alias Foo "Foobar the Great " # # (the doublequotes are stripped in the expansion), and to handle multiple # spaces after the token "alias". # # Also added some error detection and signal traps; tested on SunOS 4.1.1. # # Exit codes: 0 -- normal termination # 1 -- parm error # 2 -- file does not exist # 3 -- trap # # Thanks to bug reports from # Andy Jacobs and others # if [ z$1 = z ]; then myname=`basename $0` echo "$myname: usage is $myname workfile" exit 1 fi if [ ! -f $1 ]; then myname=`basename $0` echo "$myname: $1 does not exist or is a directory" exit 2 fi TMP_DIR=/usr/tmp trap "rm -f ${TMP_DIR}/nn.alias.$$ ; exit 3" 0 1 2 3 15 ALIAS_LIST="" ADDRESS_LIST="`head -1 $1 | sed -e s/To://`" until [ "$ALIAS_LIST" = "$ADDRESS_LIST" ] ; do ALIAS_LIST="`echo "$ADDRESS_LIST"| sed -e 's/,/ /g' `" ADDRESS_LIST="" for ALIAS in $ALIAS_LIST ; do ADDRESS=`grep '^[ ]*alias[ ][ ]*'"$ALIAS"'[ ]' ${HOM E}/.mailrc |\ sed -e s/'^[ ]*alias[ ][ ]*'"$ALIAS"'[ ][ ]*'// |\ sed -e s/'"'//g` if [ "$ADDRESS" ] ; then ADDRESS_LIST="$ADDRESS_LIST $ADDRESS" else ADDRESS_LIST="$ADDRESS_LIST $ALIAS" # for elm alias expansion use the following line instead of the previous. # ADDRESS_LIST="$ADDRESS_LIST "`elm -c "$ALIAS" | cut -f3 -d\ ` fi done done echo "To:${ADDRESS_LIST}" > ${TMP_DIR}/nn.alias.$$ tail +2 $1 >> ${TMP_DIR}/nn.alias.$$ mv -f ${TMP_DIR}/nn.alias.$$ $1 exit 0 The original idea of using MH (namely, comp) to send mail from nn came from Jaap Vermeulen, but he wouldn't recognize what I did to it. I also used a suggestion from John Romine and Tom McCain. Add set mail-script nn-use-mh to your init file, where nn-use-mh is the following: #!/bin/sh # Obtain value of $WORK and $RECORD . ${HOME}/.nn/.param # Append Fcc: +folder to headers. The folder is specified in # mail-record. if [ "$RECORD" != "" ]; then awk ' { if ($0 == "" && !done) { print "Fcc: +'$RECORD'"; done = 1; } print; }' $WORK > /tmp/aux.$$ && mv /tmp/aux.$$ $WORK fi # Compose and send the mail comp -form $WORK In addition, you can contact Ray Davis for some scripts that sort of turn nn into a MH front end by providing macros to save, delete and refile articles in MH folders. Here is an example from Max Heffler for using elm to send the messages. Add the following to ~/.nn/init: set mailer nn_elm unset mailer-pipe-input Here is nn_elm: #/bin/sh # # nn_elm # # 07 Aug 91 V1.0 # # Massage a mail message from nn into a form that elm can use # (c) 1991 Phil Kernick Wizard Software # eval `awk ' BEGIN { FS = ":"; dq = sprintf("%c", 34); headers = 0; to = ""; subject = ""; } /^.*: / { headers++; if($1 == "To") to = dq substr($0, 5) dq; if($1 == "Subject") subject = dq substr($0, 10) dq; } /^$/ { printf("tail +%d %s | elm -s %s %s > /dev/null\n", headers+2, mail, subjec t, to); exit; }' mail=$1 $1` exit $? Subject: How can I see the original article with the current subject? From: Using nn-33 While reading an article, use "G RET RET RET". Subject: Can I choose newsgroups as I do articles, ie. with a menu? From: Using nn-34 No, not yet. Sorry. Subject: How can I post prewritten articles with nn? From: Using nn-35 nnpost will construct the header for the posted article, so it requires several arguments to be specified before the article is posted, e.g. a newsgroup name and a subject. If some arguments are missing, nnpost will prompt for the missing arguments. If your pre-written article includes a full header, then you should not use nnpost; instead you should feed the article to "inews -h" directly (which is what nnpost does after building the header from the arguments). --Kim Storm Subject: How do I eliminate double signatures? From: Using nn-36 Double signatures occur when both nn and inews append $HOME/.signature. If you want just inews to append your signature, use: unset append-signature-post This is actually the default, but you can unset this variable if your nn administrator has mistakenly turned it on. If you want just nn to append your signature, move your signature to some other place than $HOME/.signature. Then see, "Can the signature come from a different file or program?" Subject: Can the signature come from a different file or program? From: Using nn-37 If you want nn to append your .signature file, you can copy nn's aux file (ie. /usr/local/lib/nn/aux) to your .nn directory and set the mail-script and news-script variables to ~/.nn/aux. In your copy of the aux script, you can either specify a different place for your .signature file (like $HOME/.nn/signature) or you can get fancy: you can use specific .signatures for certain groups (saved in variable "G"), or use the output of a program. --Bill Wohler Tired of the same old signature? Want different signatures for different newsgroups? Here's a program to help you out. The way it works is to have .signature be a named pipe, so if you don't have named points, just say 'n'. The sigrand program then feeds stuff down the pipe everytime someone wants to read it. That way it works for more than just news, but for anything that wants to read your .signature, like a mailer. You have your choice of three kinds of signatures: 1) random (short) fortune from "fortune -s"; you get these if you don't have a global sig file. 2) random fortune from ~/News/SIGNATURES [global sig file] 3) random fortune form ~/News/(newsgroup)/SIGNATURES [local sig files] Ask Tom Christiansen for more details. Subject: ! How can I make mail replies go to a different machine? From: Using nn-38 See "How can I update my mail headers?" [9.92] Subject: How come more articles get selected than I expect? From: Using nn-39 Check the setting of subject-match-parts. If this is on, then your subjects are considered matched if they match up to the first digit. For example if subject-match-parts is on, the subjects: someprogram Part 1/5 someprogram Part 2/5 are considered matches. So are v12345: someprogram Part 1/5 v12346: anotherprogram Part 1/23 as the "v" is identical up to the first digit. If you want to use subject-match-parts in a "comp.sources" type group, set subject-match-offset (the character position that matches are started from) to be beyond any digits that might appear in the first part of the subject. --Dave Hayes Subject: Any plans for trn-ish thread following? From: Using nn-40 At the moment, no. Subject: Setting new-group-action to "ask before adding" doesn't work. From: Using nn-41 Take NEW out of your sequence--it's redundant. Subject: ! Why does nn crash when a letter one past the highest letter is select ed? From: Using nn-42 This is fixed in patch 17. [9.92] Your terminal modes will be screwed up after such an event, so you'll have to type ^J (or LINE-FEED) repeatedly until a prompt is seen, and then run stty -sane^J or reset Subject: Why do articles without a Lines header appear empty? From: Using nn-43 I discovered that this problem only shows up if you have header-lines set to a string that includes "L". I suspect having the line count patch sets something that makes nn think there is a Lines header and then the header-string is telling it to display the Lines header but there isn't one and things get messed up. --Gary Morris Subject: + How do I save my posts, followups and replies automatically? From: Using nn-44 In your nn init file, use the following lines: set news-record file set mail-record file to place posts and followups in one file and replies in another, or to put everything in a single file, use: set record file Replace "file" with the absolute path (~ == home directory ok) of your desired file. All files are saved in mailbox format. --Don Mullins [9.92] Subject: + How can I change how my real name appears? From: Using nn-45 On BSD Unix systems, you can run the command chfn(1) to change your real name. If you don't want to do this, or can't, please see "How can I update my mail headers?" [9.92] Subject: + How can I update my mail headers? From: Using nn-46 Headers can be modified or appended to by creating the variables mail-header (for replies) and news-header (for posts and followups) in the init file. You can include any headers that you want; separate multiple headers with semi-colons. For example: set mail-header From: Joe Smith ;Reply-To: js@cc.edu; Organization: CC University set news-header From: Joe Smith ;Reply-To: js@cc.edu; Organization: CC University Note that these lines are split for readability--the value of these variables must appear on a single line. In addition, do not insert a space between semi-colons and the next header. A Reply-To header is useful when your system generates either an unwanted or blatantly wrong return address for you. If this header is present, then mailers use it instead of the system generated From header. A From header is useful when you want to change how your real name appears to nn readers, but you don't want to change it (or can't) on your system. Warning: only do this if you're sure you can create a RFC 822 compliant From header. [9.92] Subject: Why does nnmaster stop collecting articles at the "junk" group? From: nnmaster-50 I guess that you access news via NNTP. Older nntp servers have a limitation of 4000 articles in a group, and junk may easily exceed this which makes the nntp server crash. To overcome the problem, edit the GROUPS file to add the X flag on the junk group, run nnmaster -G, and then nnmaster will ignore the junk group. --Kim Storm In nntp_dir/common/conf.h, you can either increase MAX_GROUPS (normally 4096) or you can set #define DYNAMIC_ART_ARRAY (normally #undefed). In either case, you obviously have to recompile nntp. But you can also add new groups on a regular basis, rather than letting junk build up to huge proportions. --Mark Rawling Subject: How do I cope with "Incomplete MASTER file"? From: nnmaster-51 See "Why isn't nnmaster working?" Subject: ! Why isn't nnmaster working? From: nnmaster-52 After the make, did you remember to: Run ./inst to install the files? Run ./inst INIT to initialize the database? Nnmaster mails error messages to the user who owns him (typically "news"). Check this mailbox for clues. If nnmaster -r or -D did not work, then neither did nnmaster -I (or ./inst INIT from the install directory). Once you fix the permissions (see Paul's answer below), you need to rerun the initialization step. --Stew Ellis If nnmaster dies and updates the Log file with "Incomplete MASTER file", it could be you're not running the latest version. --David R. Hieb If, when you start your nnmaster, it just exits quietly, it could be that your permissions are incorrect. Ensure that all directories in the nn library are owned by news (or the owner that you configured nn with). --Paul Bickerstaff Make sure that there is a 'news' entry in passwd and group since nnmaster is run setuid/setgid to news and the files and directories that nnmaster needs to access are owned and writable by news. --Jim Jagielski [9.92] Another problem could be in the way it is started. Two related solutions are presented. /etc/rc exits before the child has had the chance to setpgrp(). Putting "sleep 5" at the end of /etc/rc fixed it. --David B. Thomas I inserted a "sleep 10" at the beginning of my /etc/daemons/nnmaster.init file and this solved the problem! --Jeffery Small It could be you're not running the latest version. --David R. Hieb Subject: + Why do I get ".../MASTER not found"? From: nnmaster-53 The problem of the NN port to the Atari ST is, that you have to build an "active" file (NN format, not HERMES-like!!) in /usr/lib/news before running nnadmin -I. You can build this file by using the included "buildact.tos." Buildact.tos creates a UNIX-like /usr/lib/news/active from /usr/lib/hermes/active. --Unknown [9.92] Subject: Glossary From: Appendix NNTP Network News Transport Protocol (see RFC 977) Subject: Acknowledgements From: Appendix I'd like to thank the following people for providing ideas on the layout of this article: Joe Wells Richard M. Stallman David Elliott Tom Christiansen Eugene N. Miya We are also grateful to the following individuals that have provided answers or other information to make this a better document. I regret that it is possible that some names have been accidently omitted. I would also like to thank all the readers of news.software.nn. Jim Jagielski Don Mullins Mr. Kim F. Storm Ian Taylor Joerg Napp Steven Grady Harry Herman Max Heffler Dave Hayes Stew Ellis Josef Wolf Dave Shaver David B. Thomas Alexis Rosen Richard M. Mathews Luc Rooijakkers Richard Reiner Paul Eggert Tim Pierce Gary Morris Michael Rawdon Jeffery Small Steven M. List Andrew Swann F.F. Jacot Guillarmod Jaap Vermeulen Mark Rawling David R. Hieb Paul Bickerstaff Subject: Warranty From: Appendix [The following statement epitomizes the ridiculous state of affairs in our country (I'm an American) and can be ignored outside the US...] No Warranty: Because this article is provided free of charge as a service to news.software.nn readers, we provide absolutely no warranty, to the extent permitted by applicable state law. This article is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Should the information prove defective, you assume the cost of all necessary servicing, repair or correction. Local Variables: mode: outline outline-regexp: "^Subject:" fill-prefix: " " eval: (progn (setq buffer-read-only nil) (hide-body)) End: .