[Prev][Next][TOC][Home]
MHonArc is known to run under Unix-based operating systems,
MS-DOS/Windows, WinNT, Win95/98, and OS/2. If Perl is available for
the system you are using, you can probably run MHonArc.
MHonArc has been coded to support MacPerl, and a couple of
users have reported that MHonArc will run under MacPerl. I
recommend trying it out, and if you have problems, send a message
to the MHonArc mailing list.
The following includes information from Walter F.J. Mueller,
W.F.J.Mueller@gsi.de:
* The -outdir argument must be specified UNIX style.
* Avoid any $ in a filename, some interpolation will certainly mess it up.
It ended up defining a few extra logicals like
$ define kp3_root kp3$root
to have $ free absolute pathnames in the usual $-prone VMS environment.
Also, you will need to use Perl 5.004_04 or later and MHonArc
v2.1.1 or later.
Perl 5, or later. Older versions of MHonArc are Perl 4 compatible.
So if you are under the unfortunate circumstances of only being able
to use Perl 4, you will need to grab an older version of MHonArc.
Perl 5 is required for MHonArc v2.3 or later. The last Perl 4
compatible release is v2.2.
The question is better stated as: "What mail message storage formats
MHonArc support?"
MHonArc can convert mail that is stored in UUCP mailbox
format (ie. all messages are in a single file), or in the format used
by the
Rand Message Handler
(MH) (messages are contained in separate
files within a directory). MHonArc is known to work with
the following MUAs: MH/nmh, mail, Mail,
Elm, Eudora, WinVN, Windows
Trumpet, and NUPop.
- NOTE
To support some MUA's, it may require redefining the
MSGSEP or MHPATTERN resource. Please consult the documentation
for more information about these resources.
Here is a couple messages from the
MHonArc mailing list:
- Subject: Re: Majordomo Digest -> MHonarc?
- From: "Christopher P. Lindsey" <lindsey@mallorn.com>
- Date: Sun, 4 Jan 1998 22:33:31 -0600 (CST)
- List-Name: mhonarc
> Hi...
>
> Has anyone come up with a relatively clean method of converting
> majordomo digests to a mailbox format that MHonarc can read?
>
> I was looking at it, and from what I can see its just a matter of
> changing the file so that there is a From <> line at the top of each
> message, so that something like:
If you have the procmail package, formail should do it for you.
formail -ds < digestfile >> newmailbox
It auto-generates the initial 'From ' header. Unfortunately, it
also leaves the original digest message (probably). If it's the
first message output, do this:
formail +1 -ds < digestfile >> newmailbox
This tells formail to skip the first message (the one that came from
list-digest-owner or whatever).
Chris
- Subject: Majordomo Digests to mbox format for MHonarc (perl script)
- From: The Hermit Hacker <scrappy@hub.org>
- Date: Sun, 4 Jan 1998 23:44:43 -0400 (AST)
- List-Name: mhonarc
Hi...
I've searched the archives for some brain dead simple way of bring in old
digests so that MHonarc can use them, and couldn't find anything but some
references to procmail and -msgsep...nothing which seemed to work "easily"...
So, here is my contribution...a simple, brain dead script that takes a
Majordomo digest and converts it to a format that can be used by MHonarc...
I don't guarantee it, but if anyone can suggest what is wrong with it, I'd
like to know and try to fix it
Just run it as: <scriptname> <infile> > <outfile>
Marc G. Fournier
Systems Administrator @ hub.org
primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org
#!/usr/local/bin/perl
$userid = getlogin();
$ii = 0;
while (<>) {
if($printline) {
$line{$ii} = $_;
$ii++;
}
if (/^----------------------------------------------------------------------/) {
$printline = 1;
$line{$ii} = "------------------------------";
$ii++;
}
}
for($jj = 0; $jj < $ii; $jj++) {
if(/^------------------------------/, $line{$jj}) {
if($line{$jj+2} =~ "^Date:") {
print "From $userid\n";
$jj += 2;
} else {
if($line{$jj+2} =~ "^End of") {
exit;
}
}
}
print $line{$jj};
}
![](monicon.png) |
|
An answer from a MHonArc user:
Here is a simple script I wrote to process the archives of my Listprocessor
lists.
#!/usr/local/bin/perl5
#
# mhonarch.pl - Process all Listprocessor archives using MHonArc
#
# Kevin McCann
#
#### Directory locations:
#
# Listproc, Majordomo, or Listserv top archives dir
$ARCHDIR = "/usr/server/archives";
#
# MhonArch web archives directory
$MONDIR = "/u/www/htdocs/listproc/mhonarc";
#
## Let's figure out what lists exist
opendir(DIR,"$ARCHDIR/") || die "Can't open directory";
@dirs = readdir(DIR);
@sorteddirs = sort @dirs;
closedir(DIR);
for (@sorteddirs) { # processing a list
$listname = $_;
opendir(DIR,"$ARCHDIR/$listname") || die "Can't open directory";
@logs = readdir(DIR);
@sortedlogs = sort @logs;
closedir(DIR);
for (@sortedlogs) {
if (/log/) { # processing files with name format
'logYYMM'
$log = $_;
system("/usr/local/bin/mhonarc -outdir $MONDIR/$listname/$log
$ARCHDIR/$listname/$log")
# modify the above command line as needed
}
}
}
} # end of script
I processed over 100 lists that go back to 1995 with this. It took about
one hour. There may be more elegant ways to do it, but this was just a
quick hack to get the job done. If you are using an RCFILE, don't forget to
include it in the long mhonarc command seen above. Oh, and don't forget to
change the first line that specifies your Perl location if you need to -
mine is set to /usr/local/bin/perl5.
Good luck!
- Kevin McCann
kmccann@idrc.ca
www.cruciverb.com
![](monicon.png) |
|
From what I read from the ezmlm(5) manpage, the following example
command will process all messages of list:
shell> mhonarc /list/archive/[0-9]*
Replace "/list/archive/" to what is appropriate for your
configuration.
Basically, each numeric subdirectory in the "archive" directory
follows the same format as MH mail directories.
If you are using a shell that cannot handle "[0-9]*", the following
should work:
shell> mhonarc `find /list/archive/ -type d -name '[0-9]*' -print`
Note, make sure to add any additional options to mhonarc as needed
to get the effects you desire.
For simplicity, let "MAILDIR" represent the pathname
to your qmail mail directory.
To have mhonarc process MAILDIR,
you pass "MAILDIR/cur" and/or
"MAILDIR/new" as the mail folder arguments.
Which subdirectory you choose to use depends on your needs.
Also, you will need to define the MHPATTERN resource to process
all non-dotfiles. Example:
shell> mhonarc -mhpattern '^[^\.]' MAILDIR/cur
If all you will ever do is process qmail maildir folders, it may be best
to set the M2H_MHPATTERN environment variable so you do not have
to respecify each time you invoke mhonarc. Examples:
- csh:
- setenv M2H_MHPATTERN '^[^\.]'
- sh:
- M2H_MHPATTERN='^[^\.]'; export M2H_MHPATTERN
Yes. Each Netscape Messenger folder has a corresponding mailbox file
that stores the raw mail messages for the folder. The location
of the mailbox file will be in your mail directory. Under Unix, this
is normally $HOME/nsmail. For Windows, this is
typically
C:\Program Files\Netscape\Users\<username>\Mail.
For each Netscape folder, there are two files:
<folder-name> and
<folder-name>.summary (or
<folder-name>.snm under Windows).
The .summary can be ignored with respect to MHonArc.
The other file contains the raw mail messages and can be passed
directly to MHonArc for processing. For example, to process all the
mail in your Inbox, do something like the following:
shell> mhonarc $HOME/nsmail/Inbox
Note, you may need to compress/compact folders in Netscape before
running MHonArc. If not, messages you have deleted from a folder may
show up in the archive create by MHonArc.
Yes. Each Evolution folder has a corresponding mailbox file
that stores the raw mail messages for the folder. The location
of the mailbox file will be in your mail directory which is
typically $HOME/evolution/local/folder-name.
In the directory is a file called mbox which contains
the raw messages that can be passed into MHonArc directly.
Here is a response from a user:
- Subject: Re: CompuServe --> html
- From: Steve Pacenka <sp17@cornell.edu>
- Date: Thu, 06 Mar 1997 09:09:00 -0500
At 11:38 AM 3/6/97 +0100, Bernard Frit wrote:
>Hi everybody,
>
>A friend of mine has a lot of archives in CompuServe
>thread and message format. He'd like to convert them
>in a convenient format (html or whatever) with thread
>indexing features as MHonArc is doing it for mail
>archives.
>
>At the first glance, I didn't find out how to configure
>MHonArc to do the job.
The Compuserve "file cabinet" format is too far from the basic SMTP message
format that MHonArc recognizes.
Your friend can find software on Compuserve to read the file cabinet format
and emit ascii text that is closer to SMTP message format that MHonArc can
use. A search of IBMFF using the keywords "cabinet" and "convert" yielded
several items including these two:
Forum Name: CSNAVSUPPORT Library: Member Uploads (6)
Accesses: 839 Size: 11368
File: THRDCO.ZIP Submitted: [72662,70] 26-Aug-94
This program converts forum message threads to a plain text file called
COLLECT.TXT. Your favorite word processor can then search for any message
on any topic that you have downloaded. It is public domain and was
created because I have so many forum thread messages which I can't search.
-----
Forum Name: PCEFORUM Library: Telecom/Reseaux (8)
Accesses: 32 Size: 30865
File: SHWCIM.ZIP Submitted: [72241,2132] 08-Nov-96
Une fois stockes dans le "Cabinet" CompuServe, les messages des forums et
les courriers sont codes dans des fichiers binaires que l'on ne peut pas
relire directement. Cet utilitaire a pour but de convertir n'importe quel
fichier de la base WinCIM en fichier ASCII pur. Freeware en anglais.
-- SP
![](monicon.png) |
|
The common technique is to convert the foreign format into
a format recognized by MHonArc: UUCP mailbox or MH mail folders. The
conversion can also rely on the usage of the MSGSEP and MHPATTERN
resources to make conversion potentially easier.
A potential source for help is
<http://mango.human.cornell.edu/kens/MoreFAQ.html#Convert>. The
URL is part of the Eudora FAQ. However, Eudora does uses UUCP-style
mailbox format to store its messagse. Hence, the information
provided from the URL can be applicable to MHonArc.
Yes. With MHonArc's page layout customizations features,
you can have MHonArc create pages in any language supported
by Web client software. Plus, messages containing non-English text
is supported during message conversion via the CHARSETCONVERTERS
resource.
- See also:
- Does MHonArc support Unicode?
Yes. You can actually create archives that have as many
indexes as you want in as many languages that you want. Through
the OTHERINDEXES resource can define any number of extra indexes
to create. For each index, you can redfine the index resources
to use whatever text (English or non-English) you desire.
- NOTE
There is no support for mulitple variations of message
pages in an archive. Therefore, a single language must be
chosen for message pages, or you can include redundant information
using multiple languages.
- NOTE
Actual message data will be in the language used in the
message. MHonArc has no built-in language translation.
- See also:
- Does MHonArc support Unicode?
Not directly, but it is possible to have MHonArc generate
UTF-8 HTML pages. See the utf-8.mrc example resource
file in the Appendix: Resource File Examples section
of the documentation for more information and caveats.
[Prev][Next][TOC][Home]
$Date: 2002/07/20 00:48:48 $
MHonArc
Copyright © 1997-1999, Earl Hood, mhonarc@mhonarc.org
|