comparison FAQ @ 0:bce86c4163a3

Initial revision
author kono
date Mon, 18 Apr 2005 23:46:02 +0900
parents
children 441a2190cfae
comparison
equal deleted inserted replaced
-1:000000000000 0:bce86c4163a3
1 Archive-name: mh-faq
2 Last-modified: $Date$
3 Version: $Revision$
4
5 This is a living list of frequently asked questions on the mailer
6 user interface, Mail Handler, or MH. The point of this is to
7 circulate existing information, and avoid rehashing old answers.
8 Better to build on top than start again. Please read this document
9 before ever posting to this newsgroup.
10
11 This article is posted monthly. If it has already expired and
12 you're not reading this, you can hope that you saved the last bit of
13 question 3 so that you can get a copy yourself.
14
15 Please do not post an answer when someone posts a frequently asked
16 question, as I will always e-mail a reply. This ensures that
17 everybody gets their question answered fully and eliminates
18 unnecessary traffic in this newsgroup.
19
20 Your comments, additions and fixes to this list are welcome: please
21 send them to Bill Wohler <wohler@sap-ag.de>.
22
23
24 Subject: Table of Contents
25 From: Preface
26
27 Legend: + new, - deleted, ! changed
28
29 Introductory
30
31 1. Why should I use MH?
32 2. What is the current version/status of MH?
33 3. Where can I get MH?
34 4. What references exist for MH?
35 !5. What other MH software is available?
36 6. How can I print a MH manual?
37 7. How should I report bugs?
38 8. How can I convert from my mailer to MH?
39
40 Building MH
41
42 10. What machines does MH run on?
43 11. How do I build MH?
44 12. What options should I use?
45 13. Fixing "post: problem initializing server; [BHST] no servers available"
46 14. Where can I get POP3?
47 15. What do I do if scan shows the wrong date?
48 16. Why slocal writes messages to system maildrop that from(1) can't read.
49 17. Why does repl add a "Re:" to a message that already has one?
50 18. Does MH support IMAP2 (RFC 1064)?
51 19. Why does "mailgroup mail" only affect inc and not slocal?
52
53 Using MH
54
55 30. Where can I read about slocal and the format of the .maildelivery file?
56 31. How do I include messages in repl with or without ">"?
57 32. How can I eliminate duplicate copies of letters to myself?
58 33. How would one go about reading usenet with MH?
59 34. Can I append MH messages (ie. +inbox/1) to a UNIX mailbox format file?
60 35. How can I include my signature?
61 36. What to do with "Problems with edit - draft removed".
62 37. How do I call my editor with arguments?
63 !38. How do I debug my .maildelivery file?
64 39. How can I digestify the messages in a folder for mail to another user?
65 40. Can I run my message through a program (ie. ispell) before sending?
66 41. Can I append MH messages to a GNU Emacs rmail BABYL-format file?
67 42. Is there documentation for mh-e?
68 43. How can I change my return address?
69 44. How can I change my From header?
70 45. What to do with "bad address 'xxx' - no at-sign after local-part".
71 +46. How can I search through multiple folders?
72 +47. Why isn't slocal working?
73 +48. Fixing "post: problem initializing server; [RPLY] 503 Sender
74 already specified"
75
76 Xmh
77
78 50. How can I get xmh to use Emacs as the editor?
79 51. Does xmh support subfolders?
80 52. How do I precede included messages with ">" when replying in xmh?
81
82 Appendix
83
84 Glossary, Acknowledgements, Warranty
85 Switching xmh's editor
86 babyl2mh.pl
87 inco
88
89
90 Subject: Viewing This Article
91 From: Preface
92
93 To skip to a particular question numbered xx, use "/^F.*xx" with most
94 pagers. In GNU Emacs type "M-C-s ^F.*xx", (or C-r to search backwards),
95 followed by ESC to end the search. "-xx" is often sufficient.
96
97 To skip to new or changed questions, use "/^S.*[!+]" with most pagers and
98 "M-C-s ^S.*[!+]" in GNU Emacs.
99
100 This article is in digest format. Nn may have already broken this
101 message into separate articles; if not, then type "G %". In rn, use
102 ^G to skip sections.
103
104 This article is treated as an outline when edited by GNU Emacs.
105 Run "M-x describe-mode" to see available outline-mode commands.
106 Useful commands are "C-c C-s" (show-subtree) and "M-x show-all"
107
108 Numbers in square brackets denote the month and year of the last
109 update.
110
111
112 Subject: Why should I use MH?
113 From: Intro-1
114
115 The MH message handling system is a set of electronic mail programs
116 in the public domain. If your computer runs UNIX, it can probably
117 run MH.
118
119 The big difference between MH and most other "mail user agents" is
120 that you can use MH from a UNIX shell prompt. In MH, each command
121 is a separate program, and the shell is used as an interpreter. So,
122 all the power of UNIX shells (pipes, redirection, history, aliases,
123 and so on) works with MH--you don't have to learn a new interface.
124 Other mail agents have their own command interpreter for their
125 individual mail commands (although the mush mail agent simulates a
126 UNIX shell).
127
128 Because MH commands aren't part of a monolithic mail system, you can
129 use them at any time; you don't have to start or quit the mail
130 agent. Because you use them from a shell prompt, you can use all
131 the power of the shell.
132
133 If your shell has time-saving aliases or functions (and most do),
134 you'll be able to use them with MH, of course. And because MH isn't
135 a monolithic mail agent, you can use MH commands in UNIX shell
136 scripts, or call them from programs in high-level languages like C.
137
138 Unlike most mail agents, MH keeps each message in a separate file.
139 The filename is the message number. To rearrange the messages, MH
140 just changes the filenames. MH can use standard UNIX filesystem
141 operations such as removing, copying and linking messages. The
142 message files are grouped into one or more folders, which are
143 actually UNIX directories.
144
145 MH is free, powerful, flexible--and the basics are easy to learn.
146 --Jerry Peek <jerry@ora.com>
147
148
149 Subject: What is the current version/status of MH.
150 From: Intro-2
151
152 The current version of MH is 6.8.
153
154 This version includes MIME, a multi-media MH package that implements
155 the new IETF work on Multi-media 822 (MIME). This allows you to
156 include things like audio, graphics, and the like, in your mail
157 messages. --Marshall Rose <mrose@dbc.mtview.ca.us>
158
159 MH now works with Kerberos as well.
160
161 In addition, a new program called mhparam extracts arguments from
162 .mh_profile which is useful in shellscripts.
163
164 Please see the file CHANGES in the distribution for more details. [1.93]
165
166
167 Subject: Where can I get MH?
168 From: Intro-3
169
170 MH comes standard with:
171
172 Control Data Corp. CDC4680-MP . . . EMH Version 1.4.2 (modified MH)
173 DEC Ultrix 3.1 . . . . . . . . . . MH Version 6.5
174 DEC Ultrix 4.2A . . . . . . . . . . MH Version 6.7.1
175 Evans and Sutherland ES/OS 2.3 . . MH Version 6.6
176 IBM PS/2 AIX 1.2.x . . . . . . . . MH Version 6.4
177 IBM RISC System/6000 AIX 3.x . . . MH Version 6.6
178 MIPS RISC/OS 4.52 . . . . . . . . . MH Version 6.6
179 Tektronix UTek . . . . . . . . . . MH (version unknown)
180 Table maintained by James R. Hamilton <jrh@jrh.gts.org> [9.92].
181
182 via anonymous ftp: [1.93]
183 FTP Site: IP Address: Path/File Name: Size:
184 -----------------------------------------------------------------
185 ftp.ics.uci.edu [128.195.1.1] mh/mh-6.8.tar.Z 1.8MB
186 louie.udel.edu [128.175.1.3] portal/mh-6.8.tar.Z 1.8MB
187 ftp.uu.net [192.48.96.9] mail/mh/tar/mh-6.8.tar.Z-split/ 256K*7
188 README, part01, ..., part08
189
190 Or use archie to find a site near you. [12.92]
191
192 via uucp:
193 The following shell script is one example of how to queue jobs for
194 downloading the files from UUNET via UUCP:
195
196 #!/bin/sh
197 SRC=uunet!~/mail/mh/tar/mh-6.8.tar.Z-split
198 DST=/usr/spool/uucppublic/mh
199 uucp -d -r $SRC/README $DST/README
200 for f in 1 2 3 4 5 6 7 8
201 do
202 uucp -d -r $SRC/part0$f $DST/part0$f
203 done
204
205 UUNET subscribers would then call us normally using uucico. Others
206 can use UUNET's 900 number to access UUNET via anonymous uucp. The
207 number is 1-900-468-7727. The login name is "uucp" and there is no
208 password. The following is a sample Systems/L.sys entry:
209
210 uunet Any ACU 19200 19004687727 "" \d\r ogin:-\r-ogin: uucp
211
212 The modems on the 900 lines are Telebit WorldBlazers. These modems
213 negotiate V.32bis, V.32, 2400, 1200, and last with (Turbo)PEP tones.
214 The cost is 50 cents per minute (as of Jan 93) which will appear on
215 your next phone bill. For more information about the 900 service,
216 retrieve uunet!~/help or send e-mail to postmaster@uunet.uu.net
217 (uunet!postmaster). -- Eric Ziegast <ziegast@uunet.uu.net>
218
219 via mail:
220 Send a note to either mail-server@nluug.nl or
221 archive-server@germany.eu.net with a body containing the following:
222
223 send mail/mh/mh-6.8.tar.Z
224
225 UK users may be able to use ftpmail@doc.ic.ac.uk. Send a note
226 whose body contains "help" to this address. [12.92]
227
228 Send a note to ftpmail@decwrl.dec.com whose body contains "help"
229 on a line by itself get information on getting ftp sources by
230 mail. Also include the lines "connect" and "dir /pub/mail/ua/mh"
231 to see which files are available local to decwrl. Please do this
232 as a last resort only. [1.93]
233
234 via U.S. mail:
235 You can send $75 US to the address below. This covers
236 the cost of a 6250 BPI 9-track magtape, handling, and ship-
237 ping. In addition, you'll get a laser-printed hard-copy of
238 the entire MH documentation set. Be sure to include your
239 USPS address with your check. Checks must be drawn on U.S.
240 funds and should be made payable to:
241
242 Regents of the University of California
243
244 The distribution address is:
245
246 Univeristy of California at Irvine
247 Office of Academic Computing
248 360 Computer Science
249 Irvine, CA 92717 USA
250
251 +1 714 856 5153
252
253 Sadly, if you just want the hard-copies of the documenta-
254 tion, you still have to pay the $75. The tar image has the
255 documentation source (the manual is in roff format, but the
256 rest are in TeX format). Postscript formatted versions of
257 the TeX papers are available, as are crude tty-conversions
258 of those papers. [1.93]
259
260
261 Subject: What references exist for MH?
262 From: Intro-4
263
264 Book:
265 MH & xmh: E-mail for Users & Programmers. Second edition. Jerry Peek.
266 ISBN 1-56592-027-9. $29.95. 728 pages.
267 O'Reilly & Associates, Inc.
268 Book Orders:
269 US and Canada: 800-998-9938. Fax: 707-829-0104.
270
271 References to "the MH book" in this document refer to the second
272 edition of this book (section numbers for the first edition appear
273 in parenthesis).
274
275 To get a list of non-US distributors, send a note to
276 nuts@ora.com or call +1-707-829-0515.
277
278 Examples from this book are in:
279 ftp.uu.net [137.39.1.9]
280 published/oreilly/nutshell/MHxmh/MHxmh2.tar.Z 54KB
281
282 There is another book that contains a number of examples of
283 advanced mail handing using MH as the example message handler.
284 It's also quite a good reference on e-mail in general. [12.92]
285
286 The Internet Message. Marshall T. Rose
287 ISBN 0-13-092941-7. 396 pages.
288 P T R Prentice Hall
289
290 Usenet:
291 comp.mail.mh (gatewayed to MH-users)
292
293 Mailing lists:
294 General questions/discussion: MH-users@ics.uci.edu
295 (gatewayed to comp.mail.mh).
296 MH developers and maintainers: MH-workers@ics.uci.edu.
297 Please use MH-users-request and MH-workers-request to request
298 an addition or deletion.
299
300 MH-users archives:
301 ftp.ics.uci.edu [128.195.1.1] mh/mh-users/*
302
303 The files are in packf(1) format, compressed with compress(1). To
304 get them, use anonymous ftp and set "binary" transfer mode.
305
306 mh-users.86.Z 8549 mh-users.86.scan.Z 771
307 mh-users.87.Z 55449 mh-users.87.scan.Z 3679
308 mh-users.88.Z 182805 mh-users.88.scan.Z 11339
309 mh-users.89.Z 89151 mh-users.89.scan.Z 5522
310 mh-users.90.Z 402470 mh-users.90.scan.Z 21551
311 mh-users.91.Z 878763 mh-users.91.scan.Z 36992
312 mh-users.92.Z 1281585 mh-users.92.scan.Z 44975
313 mh-users.mbox: current archive, uncompressed.
314
315 There are directions in the README file. Basically, you can use
316 either "msh" or the individual commands "inc -file" to get the
317 messages into a folder, and then "scan", "pick", "show", and so on
318 (or your favorite commands in xmh, mh-e, etc.). --Jerry Peek
319 <jerry@ora.com>
320
321 This document:
322 via anonymous ftp:
323 pit-manager.mit.edu [18.172.1.27] /pub/usenet/news.answers/mh-faq.Z
324 ftp.uu.net [137.39.1.9] /archive/usenet/news.answers/mh-faq.Z
325 ftp.cs.ruu.nl [131.211.80.17] /pub/NEWS.ANSWERS/mh-faq
326
327 via mail:
328 Each of the following addresses is following by commands which
329 should be included as the body of the message.
330
331 mail-server@pit-manager.mit.edu
332 send usenet/comp.mail.mh/mh-faq
333
334 mail-server@cs.ruu.nl
335 send pub/NEWS.ANSWERS/mh-faq
336
337
338 Subject: ! What other MH software is available?
339 From: Intro-5
340
341 vmh
342 Vmh is designed for people using the bulletin-board features
343 of MH, where mail is stored in packed (single-file) folders. As
344 a result, use of this program cannot be mixed with the use of
345 normal MH commands. Vmh is a part of the official MH
346 distribution. --James Perkins <jamesp@sp-eug.com> [1.93]
347
348 xmh
349 Xmh is a X11 mouse-based MH browsing tool. It is very powerful
350 and feature-filled and thus comes with a moderate learning
351 curve. Its dependence on the X11 environment makes it very
352 reconfigurable, but only by people well-versed in X applications
353 programming. Its message reply built-in-editor interface is not
354 always popular among those used to having MH bring up the editor
355 of their choice. --James Perkins <jamesp@sp-eug.com>
356
357 xmh is part of the standard X Window System distribution from
358 MIT. Ultrix also ships dxmail which is similar.
359
360 cs.utk.edu [128.169.201.1] pub/xmh.shar.Z 161KB
361
362 Here's a version of xmh that includes MIME. --Harald Tveit
363 Alvestrand <hta@boheme.er.sintef.no> [1.93]
364
365 aun.uninett.no pub/unix/mixmh-0.2.tar.Z
366
367 olmh
368 Sun's Open Windows 3 comes with a demo for OLIT (Open Look
369 Interface Toolkit, the Open Look wrapper to Xt) named olmh that
370 does handle 3rd and subsequent levels of nesting of folders.
371 --Dale Carstensen <dlc@c3file.c3.lanl.gov>
372
373 Obtain the Open Windows 3 distribution CD/ROM from Sun (SPARC
374 only). To do this, call 1-800-USA-4SUN and send tone "2" for
375 telemarketing after it answers. The 4.1.2 CD/ROM may also have
376 Open Windows 3. The list price for the 4.1.2 CD/ROM is $200.
377
378 mh-e
379 Mh-e is the GNU Emacs front end for MH. It offers all the
380 functionality of MH, the visual orientation and simplicity of
381 use of xmh, and full integration with Emacs, including thorough
382 configurability. The command set is similar to that of rmail
383 (the Emacs front end for BSD mail) and BSD mail itself. On-line
384 help is available.
385
386 Mh-e allows one to read and process mail very quickly: commands
387 are single characters and completion and defaults are available
388 for file and folder names. During a reply, the original message
389 is displayed simultaneously in another window for easy reference
390 where a mh-e command can quickly incorporate and format this
391 text into your reply.
392
393 With mh-e you compose outgoing messages in Emacs. This is a big
394 plus for Emacs users, but it has been known for non-Emacs users
395 to be able use mh-e after only learning the most basic cursor
396 motion commands. Mh-e is easily configured via the Emacs
397 edit-options menu, and people familiar with Emacs Lisp will be
398 able to further reconfigure mh-e beyond recognition. --Stephen
399 Gildea <gildea@expo.lcs.mit.edu>
400
401 Mh-e is part of the standard GNU Emacs distribution. Note
402 that mh-e got much faster in Emacs 18.56.
403
404 primost.cs.wisc.edu [128.105.2.115] pub/mh-e.el.Z 36KB
405
406 mime-compose.el allows one to easily include MIME components into
407 a mh-e message. --Marc Andreessen <marca@ncsa.uiuc.edu> [1.93]
408
409 archive.cis.ohio-state.edu
410 pub/gnu/emacs/elisp-archive/misc/mime-compose.el.Z 19KB
411
412 vmail
413 Vmail is a curses-based, vi-like message browser which calls on
414 MH programs to manipulate mail. It can be used on almost any
415 terminal. It organizes mail folders into index pages, from
416 which a message can be selected to be shown, replied-to,
417 forwarded, refiled, deleted, and so on. The vi-like interface
418 and command keystrokes are comfortable to less-experienced UNIX
419 users, and it is a small, compact program, unlike the mh-e Emacs
420 package.
421
422 This version of vmail has been bugfixed and enhanced from the
423 original vmail published on the net in 1987 by J. Zobel.
424 --James Perkins <jamesp@sp-eug.com> [1.93]
425
426 ftp.uu.net [137.39.1.9]
427 comp.sources.unix/volume12/vmail/part0*.Z 46KB
428
429 ftp.ucs.ubc.ca [137.82.27.61] pub/mh/vmail[1-3]of3.Z 58KB
430 Or mail requests to James Perkins <jamesp@sp-eug.com>. [1.93]
431
432 vmailtool
433 If you have a Sun workstation, vmailtool may be for you. It is a
434 button gadget panel for the above-mentioned vmail program. It
435 brings vmail into the windows era where people no longer need to
436 memorize specific command keystrokes. It also provides a mail
437 icon with the flag that pops up when new mail arrives. Again,
438 this is a compact, simple tool, unlike the powerful xmh program.
439 Still, it's a welcome alternative for many people who are running
440 SunView or OpenWindows. --James Perkins <jamesp@sp-eug.com> [1.93]
441
442 ftp.ucs.ubc.ca [137.82.27.61] pub/mh/vmailtool.Z 18KB
443 or mail requests to James Perkins <jamesp@sp-eug.com>. [1.93]
444
445 plum
446 Plum is a highly configurable and extensible screen-oriented front-end
447 for processing MH mail on ASCII terminals. Unlike mh-e, the extension
448 language used in plum is perl, not LISP. Plum offers many of the
449 advantages of xmh, but lacks several of xmh's disadvantages. The
450 look&feel derives more from vi than from emacs. Key bindings and
451 functions may be changed on the fly to suit the user's preference. It
452 offers filename and word completion on folder, variables, and command
453 names.
454
455 Until it is included in the standard distribution (under miscellany),
456 you can find a copy on:
457
458 convex.com [130.168.1.1] pub/plum/plum* 55KB
459 or mail requests to Tom Christiansen <tchrist@convex.com>.
460
461 mmh
462 MMH, My Mail Handler, is a Motif interface for reading and sending mail.
463 It uses the MH commands to actually handle sending a receiving messages.
464 It does not support all the capabilities of MH, but offers a large
465 enough subset to handle the majority of users. Its intended user is
466 someone between "bumbling e-mail novice" and "sophisticated user".
467 Hooks are provided to allow the user to customize and add new commands.
468
469 ftp.eos.ncsu.edu [152.1.9.25] /pub/bill.tar.Z
470
471 metamail
472 Metamail is a package that can be used to convert virtually ANY
473 mail-reading program on UNIX into a multimedia mail-reading program.
474 It is an extremely generic implementation of MIME (Multipurpose
475 Internet Mail Extensions), the proposed standard for multimedia mail
476 formats on the Internet. The implementation is extremely flexible and
477 extensible, using a "mailcap" file mechanism for adding support for new
478 data formats when sent through the mail. At a heterogeneous site where
479 many mail readers are in use, the mailcap mechanism can be used to
480 extend them all to support new types of multimedia mail by a single
481 addition to a mailcap file.
482
483 The metamail distribution comes complete with a small patch for
484 each of over a dozen popular mail reading programs, including
485 Berkeley mail, mh, Elm, Xmh, Xmail, Mailtool, Emacs Rmail, Emacs
486 VM, Andrew, and others. Note that the MH patches are now integrated
487 into MH 6.8 --Nathaniel Borenstein <nsb@thumper.bellcore.com>
488
489 thumper.bellcore.com [128.96.41.1] /pub/nsb/mm.tar.Z
490
491 X.500 lookups
492 If a name is enclosed in square brackets, when entering a destination
493 address, ie:
494
495 To: [Greg Wickham,CSIRO]
496
497 a search will be made in the X.500 Directory for the individual's entry.
498 If an address exists then it will be extracted and placed into the
499 headers. Mail requests for the software to the author. --Andrew
500 Waugh <ajw@mel.dit.csiro.au>
501
502 QueueMH
503 QuemeMH is an e-mail based service request and tracking system
504 based on the Rand Mail Handler. --Barbara Dyker
505 <dyker@teal.csn.org> [1.93]
506
507 ftp.cs.colorado.edu pub/cs/sysadmin/utilities/queuemh.tar.Z
508
509 QMH:
510
511 Qmh is an MH-based group mail management tool. Written entirely in
512 perl, Qmh combines the best aspects of MH with group mail
513 heuristics and delivers a sensible package for all levels of UNIX
514 users. A limitless number of individual queues and associated
515 groups of permitted users can be established.
516
517 Specific functionality includes the following modes of operation;
518 checking header dates and sending reminder/deadline mail, editing
519 existing messages, help screens, creating new messages from
520 scratch or exiting messages, resolving messages, scanning queue
521 folders, and annotating with status both by editing and sending
522 mail.
523
524 Qmh is a single generic program in and of itself from which all
525 modes of operation are invoked. Additionally, each separate queue
526 may be accessed via a link to the single program. All system
527 configuration is maintained in a single file that is read upon
528 each invocation of Qmh. Formatting and template files are
529 provided in the system library, although individual users can
530 override the defaults simply by creating equivalent files in their
531 own MH mail directory.
532
533 Qmh provides a powerful database-like functionality by allowing
534 limitless per-queue X-Qmh-<$value> headers to be included in
535 messages. These "fields" then form the context of the queue
536 messages and provide a user-defined, but yet structured
537 environment for queries, reporting, and random information.
538
539 Qmh is designed to provide a complete solution for SA groups, help
540 desks, support organizations, or wherever two or more individuals
541 are trying to manage multiple mail requests.
542
543 Qmh is also compatible with versions of xmh that provide
544 user-level command buttons. Provided in the Qmh package is a
545 ~/.Xdefaults template file that's setup to harness the power of
546 Qmh.
547
548 For more info, write to <info@rootgroup.com>. [3.93]
549
550 MacMH and PC/MH:
551 These were available only for non-commercial degree-granting
552 institutions from:
553
554 Networking & Communication Systems
555 115 Pine Hall
556 Stanford University
557 Stanford, CA 94305-4122
558 Phone: +1 415-723-3909
559
560 --Jerry Peek <jerry@ora.com>
561
562 The authorized distributor for PC/MH is:
563
564 NEI, Inc.
565 210 Technology Drive, STE 210
566 Irvine, Ca 92718
567 Phone: +1 714-753-8588
568 FAX: +1 714-753-8593
569 Internet: info@netix.com
570
571 --Shannon Yeh <yeh@orion.oac.uci.edu>
572
573 In addition, you might try Wollongong, to see if they have something you
574 can get.
575
576
577 Subject: How can I print a MH manual?
578 From: Intro-6
579
580 To order a copy by mail, see the section on how to get MH by mail in
581 "Where can I get MH?" Also, check "What references exist for MH?"
582
583 To print your own copy, first obtain the MH sources ("Where can I
584 get MH?") if you don't already have it. Go into the "doc" directory
585 and run "make guide" to create the administrators guide and "make
586 manual" to create a user's manual which includes tutorials and man
587 pages. If the doc directory is empty or is missing the Makefile,
588 you'll have to run "mhconfig MH" in the conf directory so that the
589 documentation with correct local information is created.
590
591 For properly formatting the documentation (at least the manual
592 pages) you might even have to install MH, because a reference to a
593 tmac.h file in the MH lib directory is made in the manual pages.
594
595 You can also ftp the ASCII or postscript versions:
596
597 ftp.ics.uci.edu [128.195.1.1] mh/doc/tutorial.ps.Z 64KB
598 mh/doc/ADMIN.ps.Z 57KB
599 mh/doc/MH.ps.Z (man pages) 273KB
600 ftp.uu.net [137.39.1.9] same files, but in dir mail/mh/doc
601
602 Or, you can send a note to mail-server@nluug.nl with a body containing the
603 following:
604
605 send mail/mh/papers-ps/tutorial.ps.Z
606
607 --Bill Wohler and Jos Vos <jos@bull.nl> [1.93]
608
609
610 Subject: How should I report bugs?
611 From: Intro-7
612
613 Mail them to Bug-MH@ics.uci.edu and be sure to include the output of
614 the -help option as well as what hardware and operating system you
615 are using.
616
617
618 Subject: How can I convert from my mailer to MH?
619 From: Intro-8
620
621 If you use one of a mail agent like 'mail', 'mailx', 'elm' or
622 'mush', converting to MH is easy. When you run the 'inc' command,
623 it reads all new messages from the system mailbox into your 'inbox'
624 folder. Those mail agents also have separate files or "folders"
625 that hold messages in the same format as the system mailbox. You
626 can read them with the 'inc -file' command. For example, to read
627 the messages from your 'mbox' mail file into your MH 'inbox' folder,
628 you'd type:
629
630 % cd
631 % cp mbox mbox.backup
632 % inc -file mbox
633
634 If you see the usual "Incorporating new mail into inbox..." message
635 and a scan listing, the messages probably were converted. Read some
636 or all of them (with the 'show' command) and be sure. The 'inc'
637 won't remove your mbox unless you use '-truncate'.
638
639 Section D.4 (C.4) of the MH book lists two scripts to convert mail
640 files to MH folders: babyl2mh to convert from rmail's babyl format;
641 vmsmail2mh to convert from VMS's mail (see "What references exist
642 for MH" to see where the book's examples can be ftped from).
643 --Jerry Peek <jerry@ora.com>
644
645 Vivek Khera <khera@cs.duke.edu> rewrote this in Perl since the
646 original script doesn't work for some people. See appendix
647 "babyl2mh.pl." [1.93]
648
649 Juergen Nickelsen <nickel@cs.tu-berlin.de> provides yet another
650 short script. He says,
651
652 "You can remove the second to last second line ("> $input"), so
653 that the script doesn't zero out your RMAIL file.
654
655 "Another alternative is to replace this line with "inc -file $tmpmbox
656 $folder && > $input", so that the RMAIL is only zeroed if inc
657 successfully incorporated the mail. Finally one could add a switch
658 -z, so that the RMAIL file is only zeroed if the switch is given.
659 See appendix "inco." [1.93]
660
661 Use the following to convert a Babyl format file to UNIX mail format.
662 --Barry A. Warsaw <warsaw@nlm.nih.gov>.
663 durer.cme.nist.gov [129.6.32.4] pub/gnu/rmailtovm.el
664
665 See also MH book appendix D (appendix C).
666
667
668 Subject: What machines does MH run on?
669 From: Building MH-10
670
671 If you have a computer running UNIX, you can probably run MH.
672 --Jerry Peek <jerry@ora.com>
673
674
675 Subject: How do I build MH?
676 From: Building MH-11
677
678 By carefully reading the READ-ME in the root of the source
679 hierarchy, one should not have any trouble building MH.
680
681
682 Subject: What options should I use?
683 From: Building MH-12
684
685 BERK: Do NOT include the BERK option (in versions 6.7 or later)!
686 BERK breaks the mh-format functions that take apart address lines,
687 for example mbox, from, and friendly. This would really put a crimp
688 on my replcomps file.
689
690 LOCKF: if you have NFS, you need to lock your mailbox with lockf()
691 so the lock will be honored by all machines on the local network.
692 If you have the lockf() system call, include LOCKF.
693
694 JQ Johnson <jqj@duff.uoregon.edu> makes the point that one should
695 use this option carefully since it requires a roboust lockf() call.
696 For example, this option caused serious problems on his SunOS 4.1.1.
697 He suggested using LOK_BELL instead, and adding "lockstyle: 1" to
698 mtstailor.
699
700 ATZ: makes your timezones print like "EST" instead of "-0500". Much
701 prettier.
702
703 --Stephen Gildea <gildea@expo.lcs.mit.edu>
704
705 However, Tony Landells <ahl@technix.oz.au> replies: "Yes; very
706 pretty. How unfortunate that timezone names are so ambiguous, so
707 that EST can be interpreted, at a minimum, as (American) Eastern
708 Standard Time, (Australian) Eastern Standard Time, or (Australian)
709 Eastern Summer Time (and yes, I think it's dumb having the same
710 acronym for both normal and Summer time, but that's a different
711 problem). While the numeric timezones may not look as nice, they
712 are, at least, reasonably unambiguous. I would urge anyone who ever
713 intends/hopes/expects to use e-mail outside the U.S. to NOT use ATZ
714 (sorry Stephen)."
715
716 At any rate, the conf/examples directory has been updated and
717 contains many examples show you which options are required on your
718 platform and which are optional (in the upcoming version MH 6.8). At
719 any rate, it is recommended that you examine the options in the
720 example configuration files, and read about them in READ-ME.
721
722 RPATHS: a side-effect is that slocal writes messages to your system
723 maildrop without the MMDF C-A's that separate messages, so your BSD
724 tools like from work. [12.92]
725
726
727 Subject: Fixing "post: problem initializing server; [BHST] no servers available"
728 From: Building MH-13
729
730 The error message itself is essentially correct. However, what this
731 really means is: MH's post cannot connect to a running sendmail over
732 an SMTP port (MH configured with SMTP and SENDMTS).
733
734 The potential problems:
735
736 1. Your local sendmail daemon is dying or not running for some
737 reason.
738
739 2. You use BIND and your local nameserver is not responding.
740
741 3. Your mtstailor has its "servers:" pointing to a non-existant
742 machine or a machine which is a) not reachable or b) not running the
743 sendmail daemon. --Peter Marvit <marvit@hplabs.hpl.hp.com>
744
745
746 Subject: Where can I get POP3?
747 From: Building MH-14
748
749 MH6.7 (and earlier versions too) include a server for version 3 of POP.
750
751
752 Subject: What do I do if scan shows the wrong date?
753 From: Building MH-15
754
755 Upgrade to MH 6.8. [1.93]
756
757
758 Subject: Why slocal writes messages to system maildrop that from(1) can't read.
759 From: Building MH-16
760
761 Upgrade to MH 6.8 and set the RPATHS option. Better yet, use a more
762 MH-like command instead: "scan -file $MAIL". [1.93]
763
764
765 Subject: Why does repl add a "Re:" to a message that already has one?
766 From: Building MH-17
767
768 I carefully reconfigured and rebuilt MH from scratch and the problem
769 went away. --Larry McVoy <lm@slovax.Eng.Sun.COM>
770
771
772 Subject: Does MH support IMAP2 (RFC 1064)?
773 From: Building MH-18
774
775 No. MH only supports retrieving mail using POP3. POP3 is on the
776 "standards track"--it is now an elective Internet Draft Standard
777 (see RFC1280 for more details). At this point, IMAP[23] are
778 "experimental, limited use" protocols; it is unlikely that MH will
779 support them. --John Romine <jromine@ics.uci.edu>
780
781
782 Subject: Why does "mailgroup mail" only affect inc but not slocal?
783 From: Building MH-19
784
785 If "mailgroup" is set, inc is made set-group-id to this group name.
786 Some SYS5 systems want this to be set to "mail". Set this if
787 /usr/spool/mail (or /usr/mail) is not world-writeable. These
788 changes were contributed by Peter Marvit, and "inc" is very careful
789 about its use of the set-gid privilege.
790
791 Note that slocal doesn't know how to deal with this, and will not
792 work under these systems; just making it set-group-id will open a
793 security hole (since it doesn't know when to drop the set-gid
794 privileges). If you're using "mailgroup", you should remove slocal
795 (and its man page) from your system. --John Romine
796 <jromine@ics.uci.edu> [1.93]
797
798 Alternatives to slocal include deliver, procmail, and mailagent.
799 Archie can help you find where they are kept.
800
801
802 Subject: Where can I read about slocal and the format of the .maildelivery file?
803 From: Using MH-30
804
805 See the slocal man page.
806
807 Here is brief example of a .maildelivery file that stores messages
808 to babble in a folder and the system mailbox, stores mh-users in a
809 folder but not the system mailbox, and puts the rest in the system
810 mailbox.
811
812 to mh-users | A "/usr/local/lib/mh/rcvstore -create +lists/mh-users"
813 cc mh-users | A "/usr/local/lib/mh/rcvstore -create +lists/mh-users"
814 to babble | R "/usr/local/lib/mh/rcvstore -create +lists/babble"
815 cc babble | R "/usr/local/lib/mh/rcvstore -create +lists/babble"
816 default - > ? /usr/spool/mail/wohler
817
818 Your .forward file may look like (quotes necessary):
819
820 "| /usr/local/lib/mh/slocal -user your_login"
821
822 In some implentations, the "-user your_login" is not needed. If
823 not, manually running slocal with the flag will produce an error.
824
825 See also chapter 11 in the MH book.
826
827 Alternatives to slocal include deliver, procmail, and mailagent.
828 Archie can help you find where they are kept.
829
830
831 Subject: How do I include messages in repl with or without ">"?
832 From: Using MH-31
833
834 When making a reply, specify a filter file on the command line:
835
836 repl -filter repl.format
837
838 This filter file must be in your MH mail directory (usually "Mail",
839 in your home directory). Here are a couple of example repl.format
840 files:
841
842 overflowtext="",overflowoffset=0
843 message-id:nocomponent,formatfield=\
844 "In message %{text}you write:"
845 body:component=">",overflowtext=">",overflowoffset=0
846
847 or
848
849 overflowtext="",overflowoffset=0
850 date:component="Your message dated",formatfield=\
851 "%<(nodate{text})%{text}%|%(pretty{text})%>"
852 body:component=">",overflowtext=">",overflowoffset=0
853
854 Setting overflowoffset to 0 keeps MH from doing anything to
855 extra-long lines in the headers. In the body, however, this
856 behavior is overridden so that long lines are automatically broken
857 and a ">" is inserted before every line. You could put almost
858 whatever you want between those quotes, although the "standard" ">"
859 makes it easier to read notes that have been included several times.
860 The examples differ with the descriptive text that is inserted
861 before the included body.
862
863 It is suggested not to use the "prompter" editor in this case, since
864 it is likely that you'll not want to use all of the included
865 message. Indeed, it is proper etiquette to edit out all unnecessary
866 include verbiage so readers don't have to wade through the morass to
867 read your pearls of wisdom.
868
869 WARNING: the '>' appears on the first line ONLY in versions prior
870 to 6.7.2. Upgrade to MH 6.8.
871
872 --Alan Thew <qq11@liv.ac.uk>, Mike Schwager <schwager@cs.uiuc.edu>,
873 James T Perkins <jamesp@sp-eug.com> [1.93]
874
875 See also MH book sections 6.7.4, 6.7.5, 9.4.1 (9.3.1).
876
877
878 Subject: How can I eliminate duplicate copies of letters to myself?
879 From: Using MH-32
880
881 Add these two lines to your MH profile file:
882
883 Alternate-Mailboxes: user@host1, user@host2, ...
884 repl: -nocc me
885
886 To get one copy, you can either:
887
888 - Take out the "-nocc me"... then you'll get exactly one copy of
889 your replies (assuming all your addresses are listed in
890 Alternate-Mailboxes), or
891
892 - Add an "Fcc: foldername" to the headers of messages you send.
893 That will drop a copy of the message in the folder "foldername".
894 You can do this for *all* MH messages you send (not just with
895 repl) by putting an "Fcc:" entry in your personal copy of the
896 files "components", "replcomps", and "forwcomps" in your MH
897 directory. (If you make a "distcomps" file, it needs
898 "Resent-Fcc:".) For more info, see the man pages comp(1),
899 repl(1), forw(1), dist(1) and mh-mail(5). --Jerry Peek <jerry@ora.com>
900
901 The Alternate-Mailboxes also tells scan which messages are really
902 from you so that it can place the recipient in the scan line instead
903 of the sender. --Bill Wohler
904
905 See also MH book sections 6.7.2, 8.6.
906
907 This is also a convenient way to AVOID automatically cc-ing a
908 mailing list when replying to a person who sent the message to the
909 mailing-list, by listing the name of that mailing list in your
910 alternate mailboxes. --Alec Wolman <wolman@crl.dec.com>
911
912
913 Subject: How would one go about reading Usenet with MH?
914 From: Using MH-33
915
916 Although news readers are better, if one really wants to use
917 MH, bbc will do the job. For example, "bbc comp.mail.mh" reads this
918 newsgroup. To enable bbc, you have to specify "bboards" when you
919 build MH. --Stephen Gildea <gildea@expo.lcs.mit.edu>
920
921 You can save articles in the news readers for later perusal with MH.
922
923 First, create a symbolic link from your mail directory (ie. usenet) to
924 your news directory (ie. "ln -s ~/News ~/Mail/usenet"). You can then
925 treat your news directory as a mail folder. Thus, to select a news
926 group, use "folder +usenet/comp/mail/mh".
927
928 To set the default save location correctly in rn, use:
929
930 rn -M -/
931
932 or in your nn presentation sequence:
933
934 news.announce. +$F/$N
935 comp.mail.mh +
936 .
937 .
938
939 See also MH book section 8.7.
940
941
942 Subject: Can I append MH messages (ie. +inbox/1) to a UNIX mailbox format file?
943 From: Using MH-34
944
945 Yes, see support/general/packmbox.sh in the distribution. [1.93]
946
947
948 Subject: How can I include my signature?
949 From: Using MH-35
950
951 There are several ways.
952
953 1) The MH way.
954
955 1a) In your Mail directory, create files that
956 include your signature into the format of the message.
957
958 ~/Mail/components:
959 To:
960 cc:
961 Subject:
962 --------
963
964 --
965 Eric Ziegast ziegast@uunet.uu.net
966 UUNET Technologies uunet!ziegast
967
968 ~/Mail/replcomps
969 body:component="> ",compwidth=2
970 :--
971 :Eric Ziegast ziegast@uunet.uu.net
972 :UUNET Technologies uunet!ziegast
973
974 To use the replcomps file, add the following to your ~/.mh_profile:
975
976 repl: -filter replfmt
977
978 When comp is used, your signature is already there along with my
979 headers. When repl is used, the mhl program takes the body of
980 the letter you're replying to, prepends '> ' to each line and
981 then adds your signature at the end (available after version 6.7).
982
983 1b) Create an "editor" which can be called from whatnow to add the
984 signature when desired or create a frontend to post (use the
985 .mh_profile line "postproc: postproc" to call it) that always
986 appends the .signature file before calling post to mail the
987 message. David J. Fiander <david@golem.uucp>, David A.
988 Truesdell <truesdel@sun418.nas.nasa.gov> and Tom Wilmore
989 <sastjw@unx.sas.com> have sample scripts to do these.
990
991 1c) Section 13.13 of the MH book lists mysend, a sendproc script to
992 process a message after "What now? send" (see "What references
993 exist for MH" to see where the book's examples can be ftped from).
994 --Jerry Peek <jerry@ora.com> [9.92]
995
996 2) Using your editor. If you use vi, you can use something like:
997
998 map S :r ~/.signature
999
1000 to load your signature out of .signature every time you
1001 hit 'S'.
1002
1003 3) Use your windowing system. xterm, for example, can provide key
1004 and button mappings for the utterly lazy.
1005
1006 4) And if you use Emacs with mh-e, C-c C-s will append the signature.
1007
1008 --Eric W. Ziegast <ziegast@uunet.uu.net> & Hardy Mayer
1009 <hardy@golem.ps.uci.edu> except where noted.
1010
1011 Tired of the same old signature? Want different signatures for
1012 different newsgroups? Here's a program to help you out.
1013
1014 The way it works is to have .signature be a named pipe, so if you
1015 don't have named pipes, just say 'n'.
1016
1017 The sigrand program then feeds stuff down the pipe everytime someone
1018 wants to read it. That way it works for more than just news, but
1019 for anything that wants to read your .signature, like a mailer.
1020
1021 You have your choice of three kinds of signatures:
1022
1023 1) random (short) fortune from "fortune -s"; you get these if
1024 you don't have a global sig file.
1025 2) random fortune from ~/News/SIGNATURES [global sig file]
1026 3) random fortune form ~/News/(newsgroup)/SIGNATURES [local sig files]
1027
1028 Ask Tom Christiansen <tchrist@convex.com> for more details.
1029
1030
1031 Subject: What to do with "Problems with edit - draft removed".
1032 From: Using MH-36
1033
1034 If your users are using an AT&T version of "vi", it's exiting with
1035 non-zero status (supposedly a count of the "errors" during the edit).
1036 Move "vi" to "broken_vi" and put it its place:
1037
1038 #! /bin/sh
1039 /usr/ucb/broken_vi $*
1040 exit 0
1041
1042 Alternatively, compile MH with the ATTVIBUG option.
1043
1044 Then complain to your vendor that "vi" is broken, and they should
1045 fix it. --John Romine <jromine@ics.uci.edu>
1046
1047
1048 Subject: How do I call my editor with arguments?
1049 From: Using MH-37
1050
1051 Set your editor (in .mh_profile) to the following shellscript:
1052
1053 #/bin/sh
1054 <youreditor> <yourargs> $*
1055 exit 0
1056
1057 --John Romine <jromine@ics.uci.edu>
1058
1059 You might find it useful to make <youreditor> $EDITOR, or to use
1060 different arguments depending on your EDITOR environment variable.
1061 --Ray Nickson <Ray.Nickson@comp.vuw.ac.nz>
1062
1063
1064 Subject: ! How do I debug my .maildelivery file?
1065 From: Using MH-38
1066
1067 Use as many of the following as necessary.
1068
1069 Put a message into a file and call slocal directly on it.
1070
1071 /usr/local/lib/mh/slocal -user $USER -verbose -debug < test-msg
1072
1073 Modify your .forward to look like:
1074
1075 "|/bin/sh -c 'exec >> /tmp/out 2>&1; /usr/local/lib/mh/slocal
1076 -user $USER -verbose -debug'"
1077
1078 Or modify a rule in .maildelivery to look like this:
1079
1080 to foo | R "set -xv; exec >/tmp/out 2>&1;
1081 /usr/local/lib/mh/rcvstore +foo"
1082
1083 The previous examples are broken up for readability; the text must
1084 appear on one line.
1085
1086 See also MH book section 11.11. [3.93]
1087
1088
1089 Subject: How can I digestify the messages in a folder for mail to another user?
1090 From: Using MH-39
1091
1092 How about:
1093
1094 forw [-digest tmp] [-form forwcomps] [-filter mhl.digest]
1095 messages +folder
1096
1097 These messages can be un-digestified :-) by the MH burst(1) program.
1098 --Jerry Peek <jerry@ora.com> and Bill Wohler
1099
1100 See also MH book sections 6.8, 7.9.
1101
1102
1103 Subject: Can I run my message through a program (ie. ispell) before sending?
1104 From: Using MH-40
1105
1106 It's pretty simple. If your speller is called myspell, use:
1107
1108 What now? edit myspell
1109
1110 MH will actually execute:
1111
1112 myspell /your-mail-draft-directory/draftfile
1113
1114 and give the entire draft message to your speller. The header will
1115 probably be "misspelled," of course, though you might be able to
1116 tell the speller to ignore it--or you could hack up a little shell
1117 script to run the speller on just the message body, then tack the
1118 corrected body back onto the header before sending.
1119
1120 You can automate this some more. For example, if you want your
1121 speller to run after your first edit with "prompter" and also after
1122 you leave the "vi" editor, add these lines to your MH profile:
1123
1124 prompter-next: myspell
1125 vi-next: myspell
1126
1127 Then, at the "What now?" prompt:
1128
1129 What now? e
1130
1131 your speller will run. For more info, see the mh-profile(5) man
1132 page or section 6.2.1 of the MH book. --Jerry Peek <jerry@ora.com>
1133
1134
1135 Subject: Can I append MH messages to a GNU Emacs rmail BABYL-format file?
1136 From: Using MH-41
1137
1138 To convert your MH folders to BABYL folders, first run the following script
1139 on your Mail directory.
1140
1141 #!/bin/sh
1142
1143 for f in Mail/*; do
1144 if [ -d $f ]; then
1145 touch msgbox
1146 folder=`basename $f`
1147 echo -n packing $folder ...
1148 packf +$folder
1149 echo done
1150 mv msgbox Mail-rmail/$folder
1151 fi
1152 done
1153
1154 This assumes you don't have nested folders. Your rmail folders will be
1155 left in $HOME/Mail-rmail in MMDF format which rmail can read. Then run
1156 rmail-input for each folder, which converts each folder into BABYL format.
1157
1158 Be sure not to append any messages before they are converted from MMDF
1159 to BABYL, since there may be really strange results.
1160
1161
1162 Subject: Is there documentation for mh-e?
1163 From: Using MH-42
1164
1165 Yes, sort of. Run "C-h m" (describe-mode) in both scan and
1166 letter modes to see which commands and variables are available.
1167 Browsing the code is also helpful.
1168
1169
1170 Subject: How can I change my return address?
1171 From: Using MH-43
1172
1173 If you find that your mailer creates a From header that others have
1174 trouble replying to, you can add a Reply-To header to override the
1175 From header in replies.
1176
1177 Copy the components and replcomps files which are normally found in
1178 /usr/local/lib/mh into your Mail directory and add a line like the
1179 following after the Subject header replacing my address with your
1180 address:
1181
1182 Reply-To: wohler@sap-ag.de
1183
1184 [12.92]
1185
1186 Subject: How can I change my From header?
1187 From: Using MH-44
1188
1189 If you're just interested in changing the hostname, add a line to
1190 $LIB/mtstailor:
1191
1192 localname: desired_host_name
1193
1194 --Bill Wisner <wisner@netcom.com> [12.92]
1195
1196 Just put a "From:" header in your "components", "replcomps" and
1197 "forwcomps" files. MH will add a "Sender:" header with what it thinks
1198 is your real address, but (almost) no one cares about the "Sender:"
1199 header anyway. --Jerry Peek <jerry@ora.com> [12.92]
1200
1201
1202 Subject: What to do with "bad address 'xxx' - no at-sign after local-part".
1203 From: Using MH-45
1204
1205 You may find that post returns the following message:
1206
1207 post: bad address 'Mr. Foo Bar <fb@somewhere.edu>' - no at-sign
1208 after local-part (Bar), continuing...
1209
1210 The unquoted dot causes "Mr. Foo" to be parsed as the local part of
1211 the address. Either remove the dot, or rewrite the address as
1212 follows:
1213
1214 "Mr. Foo Bar" <fb@somewhere.edu>
1215 (Mr. Foo Bar) <fb@somewhere.edu>
1216 (Mr. Foo Bar) fb@somewhere.edu
1217
1218 --Owen Rees <rtor@ansa.co.uk> [1.93]
1219
1220
1221 Subject: + How can I search through multiple folders?
1222 From: Using MH-46
1223
1224 Recurse through the folders (in csh and sh):
1225
1226 % foreach f (`folders -f`) $ for f in `folders -f`
1227 ? pick [switches] +$f > pick [switches] +$f
1228 ? end > done
1229
1230 Or create a folder that contains links to all messages (in csh and sh):
1231
1232 % foreach f (`folders -f | grep -v -x ln`)
1233 ? refile -src +$f -link all +ln
1234 ? end
1235
1236 $ for f in `folders -f | grep -v -x ln`
1237 > do refile -src +$f -link all +ln
1238 > done
1239
1240 and in the future, refile messages with "refile +folder +ln". To
1241 find something, use:
1242
1243 % pick [switches] +ln
1244
1245 See MH book sections 7.2.9, 7.8.3. [3.93]
1246
1247
1248 Subject: + Why isn't slocal working?
1249 From: Using MH-47
1250
1251 If slocal doesn't appear to be doing anything, run the following
1252
1253 /usr/local/lib/mh/slocal -user your_login -verbose < file
1254
1255 where "file" is some message in a mail folder. If you get something
1256 like:
1257
1258 .maildelivery: ownership/modes bad (0, 154,154,0100666)
1259
1260 your .maildelivery is writable by too many people. Make it writable
1261 only by you by running "chmod 644 .maildelivery".
1262
1263 See also "How do I debug my .maildelivery file?" [3.93]
1264
1265
1266 Subject: + Fixing "post: problem initializing server; [RPLY] 503 Sender already specified"
1267 From: Using MH-48
1268
1269 The problem in sendmail is that the RSET after the ONEX does not
1270 reset all the state information. Normally sendmail fork()s after
1271 the Mail from: statement and a RSET causes that child to exit. This
1272 automatically cleans up. If the fork() is suppressed by ONEX, then
1273 the source must be modified to do the cleanup. See "srvrsmtp.c
1274 patch" in the Appendix. If you don't have the sources, modify your
1275 MH sources to not use the ONEX verb. --Paul Pomes
1276 <paul@uxc.cso.uiuc.edu> [3.93]
1277
1278
1279 Subject: How can I get xmh to use Emacs as the editor?
1280 From: Xmh-50
1281
1282 The modifications to xmh to support an external editor, annotations,
1283 and an append command can be found in the these places. --Bob
1284 Ellison <ellison@sei.cmu.edu>
1285
1286 export.lcs.mit.edu R5fixes/xmh.editor/*
1287 ftp.sei.cmu.edu pub/xmh
1288
1289 As of R5, xmh has a new action proc called XmhShellCommand. A
1290 string parameter will be executed as a shell command with the
1291 currently selected messages as parameters (or the current message if
1292 there are no selected messages).
1293
1294 Using this new action, a couple of shell scripts, a window version
1295 of emacs (e.g. xemacs) and some elisp code, xmh can use emacs as its
1296 editor instead of the built in Athena text widget editor. This
1297 doesn't require any source code changes to xmh. These are included
1298 in the appendix "Switching xmh's editor". --Andrew Wason
1299 <aw@bae.bellcore.com>
1300
1301
1302 Subject: Does xmh support subfolders?
1303 From: Xmh-51
1304
1305 Yes. Create one by invoking "Create Folder" as usual, and enter
1306 something like: existing-folder/new-sub-folder. You can then access
1307 the subfolder by popping up a menu over the "existing-folder" button
1308 item. --Steve Malowany <malowany@cenparmi.concordia.ca>
1309
1310 But:
1311
1312 The R5 version of xmh does *not* handle nested sub-folders. If you
1313 create a folder as 'grab/some/bandwidth', xmh displays this
1314 foldername for the remainder of the session where it was created,
1315 BUT if you later re-run xmh, the folder is no longer visible to xmh.
1316 --John Cooper <jsc@saxon.Eng.Sun.COM>
1317
1318 See also MH book section 15.6.2 (14.6.2).
1319
1320
1321 Subject: How do I precede included messages with ">" when replying in xmh?
1322 From: Xmh-52
1323
1324 Include the following line in your ~/app-defaults/XMh file:
1325
1326 Xmh*replyInsertFilter: "sed 's/^/> /'"
1327
1328 --Len Makin <len@mel.dit.csiro.au>
1329
1330 or,
1331
1332 Xmh.ReplyInsertFilter: /usr/local/lib/mh/mhl -form repl.filter
1333
1334 Using this means that you can chose to insert the original by use of
1335 the "Insert" button in the Draft message pane. See "How do I
1336 include messages in repl with or without ">"?" to find examples of
1337 repl.filter. --Andy Linton <andy.linton@comp.vuw.ac.nz>
1338
1339 See also MH book sections 15.1.4 (14.1.4), 16.3.3 (15.2.3).
1340
1341
1342 Subject: Glossary
1343 From: Appendix
1344
1345 MH Mail Handler
1346 POP3 Post Office Protocol, RFC 1225
1347 MMDF Multi-channel Memo Distribution Facility
1348 MIME Multipurpose Internet Mail Extensions
1349
1350
1351 Subject: Acknowledgements
1352 From: Appendix
1353
1354 I'd like to thank the following people for providing ideas on the
1355 layout of this article:
1356
1357 Joe Wells <jbw@bigbird.bu.edu> Richard M. Stallman <rms@gnu.ai.mit.edu>
1358 David Elliott <dce@smsc.sony.com> Tom Christiansen <tchrist@convex.com>
1359 Eugene N. Miya <eugene@nas.nasa.gov>
1360
1361
1362 We are also grateful to the individuals mentioned below and in the
1363 text of this document who have provided answers or other information
1364 to make this a better document. I regret that it is possible that
1365 some names have been accidently omitted. I would also like to thank
1366 all the readers of comp.mail.mh.
1367
1368 Kim F. Storm <storm@texas.dk> Edward Vielmetti <emv@ox.com>
1369
1370
1371 Subject: Warranty
1372 From: Appendix
1373
1374 [The following statement epitomizes the ridiculous state of affairs in
1375 our country (I'm an American) and can be ignored outside the US...]
1376
1377 No Warranty: Because this article is provided free of charge as a
1378 service to comp.mail.mh readers, we provide absolutely no warranty, to
1379 the extent permitted by applicable state law. This article is
1380 provided "as is" without warranty of any kind, either expressed or
1381 implied, including, but not limited to, the implied warranties of
1382 merchantability and fitness for a particular purpose. Should the
1383 information prove defective, you assume the cost of all necessary
1384 servicing, repair or correction.
1385
1386
1387 Subject: Switching xmh's editor
1388 From: Appendix
1389
1390 #! /bin/sh
1391 # This is a shell archive. Remove anything before this line, then unpack
1392 # it by saving it into a file and typing "sh file". To overwrite existing
1393 # files, type "sh file -c". You can also feed this as standard input via
1394 # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
1395 # will see the following message at the end:
1396 # "End of shell archive."
1397 # Contents: README Xmh.ad xmh-command.el xmhcommand xmhemacs
1398 # Wrapped by aw@jello on Fri Nov 15 17:10:34 1991
1399 PATH=/bin:/usr/bin:/usr/ucb ; export PATH
1400 if test -f 'README' -a "${1}" != "-c" ; then
1401 echo shar: Will not clobber existing file \"'README'\"
1402 else
1403 echo shar: Extracting \"'README'\" \(1269 characters\)
1404 sed "s/^X//" >'README' <<'END_OF_FILE'
1405 XThis is a short description of what to do with each of the enclosed files.
1406 X
1407 XXmh.ad
1408 X Merge this in with your xmh resources. If you already have
1409 X user defined buttons, then you may need to renumber the
1410 X buttons in this resource file.
1411 X
1412 Xxmh-command.el
1413 X Byte compile this file and put it in your GNU emacs load-path.
1414 X
1415 Xxmhcommand
1416 Xxmhemacs
1417 X Put these somewhere in your path.
1418 X
1419 X
1420 XOnce you have installed these, restart the R5 xmh with the new
1421 Xresources. When you press the repl, forw or comp buttons
1422 Xan xemacs window will come up with your draft message.
1423 X
1424 XOnce you have written your mail, save it and exit GNU emacs (C-xC-c).
1425 XYou will be prompted if you want to send the current message.
1426 XIf you enter 'y', the message will be sent and the output will
1427 Xbe displayed in an emacs window (in case you use -verbose or -snoop).
1428 XThen you will be prompted to exit emacs. Enter 'y' when you are ready.
1429 X
1430 XIf you answered 'n' when prompted to send the message,
1431 Xthen the draft message will be deleted and emacs will exit.
1432 X
1433 XYou can modify the Xmh.ad resources to add more buttons.
1434 XAny MH command which accepts "+folder msg" can be used
1435 X(e.g. a replx shell script which includes the body of the
1436 Xmessage being replied to can be bound to a replx button)
1437 X
1438 X
1439 XAndrew Wason
1440 Xaw@bae.bellcore.com
1441 END_OF_FILE
1442 if test 1269 -ne `wc -c <'README'`; then
1443 echo shar: \"'README'\" unpacked with wrong size!
1444 fi
1445 # end of 'README'
1446 fi
1447 if test -f 'Xmh.ad' -a "${1}" != "-c" ; then
1448 echo shar: Will not clobber existing file \"'Xmh.ad'\"
1449 else
1450 echo shar: Extracting \"'Xmh.ad'\" \(457 characters\)
1451 sed "s/^X//" >'Xmh.ad' <<'END_OF_FILE'
1452 XXmh*CommandButtonCount: 3
1453 X
1454 XXmh*commandBox.button1.label: repl
1455 XXmh*commandBox.button1.translations:\
1456 X #override\n\
1457 X <Btn1Up>: XmhShellCommand(xmhcommand y repl) unset()
1458 X
1459 XXmh*commandBox.button2.label: forw
1460 XXmh*commandBox.button2.translations:\
1461 X #override\n\
1462 X <Btn1Up>: XmhShellCommand(xmhcommand y forw) unset()
1463 X
1464 XXmh*commandBox.button3.label: comp
1465 XXmh*commandBox.button3.translations:\
1466 X #override\n\
1467 X <Btn1Up>: XmhShellCommand(xmhcommand n comp) unset()
1468 END_OF_FILE
1469 if test 457 -ne `wc -c <'Xmh.ad'`; then
1470 echo shar: \"'Xmh.ad'\" unpacked with wrong size!
1471 fi
1472 # end of 'Xmh.ad'
1473 fi
1474 if test -f 'xmh-command.el' -a "${1}" != "-c" ; then
1475 echo shar: Will not clobber existing file \"'xmh-command.el'\"
1476 else
1477 echo shar: Extracting \"'xmh-command.el'\" \(1294 characters\)
1478 sed "s/^X//" >'xmh-command.el' <<'END_OF_FILE'
1479 X;;; These functions are for use with xemacs and xmh.
1480 X;;; The R5 xmh has a new action - XmhShellCommand which executes
1481 X;;; a shell command with the current msg as an arg.
1482 X;;; By executing something like:
1483 X;;; XmhShellCommand(xmhcommand repl)
1484 X;;; you can use xemacs as your editor with xmh.
1485 X;;;
1486 X;;; The following elisp functions perform the basic whatnowproc functionality
1487 X;;; (quitting and deleting, sending)
1488 X;;;
1489 X;;; Andrew Wason aw@bae.bellcore.com
1490 X
1491 X
1492 X;;; Override C-xC-c
1493 X(define-key indented-text-mode-map "\C-x\C-c" 'xmh-command-send-or-delete)
1494 X
1495 X
1496 X(setq mhdraft (getenv "mhdraft")) ; save the filename of the draft
1497 X
1498 X
1499 X(find-file mhdraft) ; load the draft letter
1500 X(indented-text-mode)
1501 X(setq draft-buffer (current-buffer)) ; save the buffer the draft is in
1502 X
1503 X
1504 X(defun xmh-command-send-or-delete ()
1505 X "Prompt to send or delete letter, then quit."
1506 X (interactive)
1507 X (set-buffer draft-buffer)
1508 X (if (y-or-n-p "Send message? ")
1509 X (progn
1510 X (save-buffer) ; save the draft buffer
1511 X (message "Sending...")
1512 X (pop-to-buffer "MH mail delivery"); pop to a buffer for "send" output
1513 X (erase-buffer)
1514 X (call-process "send" nil t t mhdraft) ; call MH "send"
1515 X (if (y-or-n-p "Exit? ")
1516 X (kill-emacs))) ; exit emacs
1517 X (delete-file mhdraft) ; delete the draft letter
1518 X (kill-emacs))) ; exit emacs
1519 END_OF_FILE
1520 if test 1294 -ne `wc -c <'xmh-command.el'`; then
1521 echo shar: \"'xmh-command.el'\" unpacked with wrong size!
1522 fi
1523 # end of 'xmh-command.el'
1524 fi
1525 if test -f 'xmhcommand' -a "${1}" != "-c" ; then
1526 echo shar: Will not clobber existing file \"'xmhcommand'\"
1527 else
1528 echo shar: Extracting \"'xmhcommand'\" \(669 characters\)
1529 sed "s/^X//" >'xmhcommand' <<'END_OF_FILE'
1530 X#!/bin/sh
1531 X# This shell should be invoked by the xmh XmhShellCommand() action as
1532 X# XmhShellCommand(xmhcommand y repl)
1533 X# XmhShellCommand(xmhcommand n comp) etc.
1534 X# If the second arg is y, then the message list will be used.
1535 X
1536 X# We invoke the passed MH command on the identified message
1537 X# (we must strip the message number and folder from the pathname)
1538 X(if [ $1 = "y" ]
1539 Xthen
1540 X $2 -whatnowproc xmhemacs +`dirname \`echo $3 | \
1541 X sed "s;\\\`mhpath +\\\`/;;"\`` `basename $3`
1542 X
1543 X# You can use this more readable version instead if you have ksh
1544 X# $2 -whatnowproc xmhemacs +$(dirname $(echo $3 | \
1545 X# sed "s;$(mhpath +)/;;")) $(basename $3)
1546 X
1547 Xelse
1548 X $2 -whatnowproc xmhemacs
1549 Xfi)&
1550 END_OF_FILE
1551 if test 669 -ne `wc -c <'xmhcommand'`; then
1552 echo shar: \"'xmhcommand'\" unpacked with wrong size!
1553 fi
1554 chmod +x 'xmhcommand'
1555 # end of 'xmhcommand'
1556 fi
1557 if test -f 'xmhemacs' -a "${1}" != "-c" ; then
1558 echo shar: Will not clobber existing file \"'xmhemacs'\"
1559 else
1560 echo shar: Extracting \"'xmhemacs'\" \(116 characters\)
1561 sed "s/^X//" >'xmhemacs' <<'END_OF_FILE'
1562 X#!/bin/sh
1563 X# Invoke xemacs and load the xmh-command.el stuff.
1564 X# xmhemacs is used by xmhcommand
1565 Xxemacs -l xmh-command
1566 END_OF_FILE
1567 if test 116 -ne `wc -c <'xmhemacs'`; then
1568 echo shar: \"'xmhemacs'\" unpacked with wrong size!
1569 fi
1570 chmod +x 'xmhemacs'
1571 # end of 'xmhemacs'
1572 fi
1573 echo shar: End of shell archive.
1574 exit 0
1575
1576
1577 Subject: babyl2mh.pl
1578 From: Appendix
1579
1580 #!/usr/gnu/bin/perl
1581 # incorporate an RMAIL babyl file into an MH folder
1582 #
1583 # usage: babyl2mh +folder babyl-file
1584 #
1585 # V. Khera <khera@cs.duke.edu> 17-JUL-1991
1586
1587 # where to find rcvstore
1588 $rcvstore = "/usr/local/lib/mh/rcvstore";
1589
1590 #
1591 # pull out command line args
1592 #
1593 die "usage: babyl2mh +folder babyl-file\n" unless @ARGV == 2;
1594
1595 $folder = shift;
1596 # make sure folder name starts with a "+"
1597 (substr($folder,0,1) eq "+") || (substr($folder,0,0) = "+");
1598 $bfname = shift;
1599
1600 print "Incorporating RMAIL file $bfname into MH folder $folder\n";
1601
1602 #
1603 # read in babyl file.
1604 #
1605 $/ = "\037"; # this separates the records in a babyl file
1606 $* = 1; # records are multi-lines
1607
1608 open(BABYL,$bfname) || die "Couldn't open $bfname\n";
1609
1610 $_ = <BABYL>; # discard header.
1611
1612 $msgnum = 0;
1613
1614 while (<BABYL>) {
1615 chop; # get rid of delimeter
1616 s/\f(.|\n)*\*\*\* EOOH \*\*\*\n//; # remove duplicate header information
1617 open(RCVSTORE,"|" . $rcvstore . " $folder");
1618 print RCVSTORE $_;
1619 $msgnum++;
1620 print "Message $msgnum done.\n";
1621 }
1622
1623
1624 Subject: inco
1625 From: Appendix
1626
1627 #!/bin/sh
1628 # Usage: inco [from [folder]]
1629 # "from" defaults to $HOME/Mail/outbound, "folder" to +inbox.
1630
1631 lispfile=/tmp/inco.$$.el
1632 input=${1-$HOME/Mail/outbound}
1633 tmpmbox=/tmp/inc.$$.mbox
1634 folder=${2-+inbox}
1635
1636 if [ $# -ge 3 ]; then
1637 echo Usage: `basename $0` [ from [ folder ]]
1638 exit 2
1639 fi
1640
1641 trap "rm -f $lispfile $tmpmbox ; exit 1" 1 2 15
1642
1643 touch $tmpmbox
1644 chmod 600 $tmpmbox
1645
1646 echo '(rmail-input "'$input'")
1647 (rmail-last-message)
1648 (setq last (rmail-what-message))
1649 (rmail-show-message 1)
1650 (while (not (equal (rmail-what-message) last))
1651 (rmail-output "'$tmpmbox'")
1652 (rmail-delete-forward nil))
1653 (rmail-output "'$tmpmbox'")
1654 (kill-buffer (current-buffer))
1655 ' > $lispfile
1656
1657 emacs -batch -l $lispfile
1658 inc -file $tmpmbox $folder
1659
1660 > $input
1661 rm -f $lispfile $tmpmbox
1662
1663
1664 Subject: srvrsmtp.c patch
1665 From: Appendix
1666
1667 >From the 5.67 sources:
1668
1669 *** srvrsmtp.c- Mon Feb 22 12:25:54 1993
1670 --- srvrsmtp.c Mon Feb 22 12:29:09 1993
1671 ***************
1672 *** 384,389 ****
1673 --- 384,395 ----
1674 message("250", "Reset state");
1675 if (InChild)
1676 finis();
1677 +
1678 + /* clean up a bit if running in parent */
1679 + hasmail = FALSE;
1680 + dropenvelope(CurEnv);
1681 + CurEnv = newenvelope(CurEnv);
1682 + CurEnv->e_flags = BlankEnvelope.e_flags;
1683 break;
1684
1685 case CMDVRFY: /* vrfy -- verify address */
1686
1687
1688 Local Variables:
1689 mode: outline
1690 outline-regexp: "^Subject:"
1691 fill-prefix: " "
1692 eval: (progn (setq buffer-read-only nil) (hide-body))
1693 End:
1694
1695