1##---------------------------------------------------------------------------## 2## File: 3## $Id: mhusage.pl,v 2.28 2011/01/02 07:28:55 ehood Exp $ 4## Author: 5## Earl Hood mhonarc@mhonarc.org 6## Description: 7## Usage output. Just require the file to have usage info 8## printed to STDOUT. 9##---------------------------------------------------------------------------## 10## MHonArc -- Internet mail-to-HTML converter 11## Copyright (C) 1995-1999 Earl Hood, mhonarc@mhonarc.org 12## 13## This program is free software; you can redistribute it and/or modify 14## it under the terms of the GNU General Public License as published by 15## the Free Software Foundation; either version 2 of the License, or 16## (at your option) any later version. 17## 18## This program is distributed in the hope that it will be useful, 19## but WITHOUT ANY WARRANTY; without even the implied warranty of 20## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21## GNU General Public License for more details. 22## 23## You should have received a copy of the GNU General Public License 24## along with this program; if not, write to the Free Software 25## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 26## 02111-1307, USA 27##---------------------------------------------------------------------------## 28 29package mhonarc; 30 31sub mhusage { 32 my ($usefh, $close); 33 local (*PAGER); 34PAGERCHECK: { 35 if ( $UNIX 36 && (-t STDOUT) 37 && (($ENV{'PAGER'} && open(PAGER, "| $ENV{'PAGER'}")) 38 || (-e '/etc/alternatives/pager' 39 && open(PAGER, '| /etc/alternatives/pager')) 40 || (open(PAGER, '| more')) 41 ) 42 ) { 43 $usefh = \*PAGER; 44 $close = 1; 45 last PAGERCHECK; 46 } 47 $usefh = \*STDOUT; 48 $close = 0; 49 } 50 my ($curfh) = select($usefh); 51 52 print <<EndOfUsage; 53Usage: $PROG [<options>] <mailfolder> ... 54 $PROG -rmm [<options>] <msg> ... 55 $PROG -annotate [-notetext <text>] <msg> ... 56 57Description: 58 MHonArc is a highly customizable Perl program for converting mail, 59 encoded with MIME, into HTML archives. MHonArc supports the conversion 60 of UUCP-style mailbox files and MH style mail folders. The -single 61 option can be used to convert a single mail message to standard output. 62 63 Read the full documentation included with the distribution, or at 64 <http://www.mhonarc.org/>, for more complete usage information. 65 66Options: 67 Only command-line options are summarized here. See documentation 68 for information about resource file elements and environment variables. 69 70 -add : Add message(s) to archive 71 -afs : Skip archive directory permission check 72 -addressmodifycode <exp> : Perl expressions for modifying addresses 73 -annotate : Add an annotation to message(s) 74 -archive : Generate archive related files (the default) 75 -attachmentdir <path> : Location to write attachments to 76 -attachmenturl <url> : Web URL to location of attachments 77 -authsort : Sort messages by author 78 -checknoarchive : Check for "no archive" flags in messages 79 -conlen : Honor Content-Length fields 80 -datefields <list> : Fields to determine the date of a message 81 -decodeheads : Decode decode-only charset data when reading mail 82 -definevar <varlist> : Define custom resource variables 83 -dbfile <name> : Name of MHonArc database file 84 -dbfileperms <octal> : File permissions for database file 85 (def: "0660" -- UMASK is still applied) 86 -doc : Print link to doc at end of index page 87 -docurl <url> : URL to MHonArc documentation 88 (def: "http://www.mhonarc.org/") 89 -editidx : Edit/change index page(s) and messages, only 90 -expiredate <date> : Message cut-off date 91 -expireage <secs> : Time from current when messages expire 92 -fasttempfiles : Use non-random temporary filenames 93 -fileperms <octal> : File permissions for archive files 94 (def: "0666" -- UMASK is still applied) 95 -followsymlinks : Allow/follow symlinks 96 -folrefs : Print links to follow-ups/references 97 -force : Perform archive operations even if unable to lock 98 -fromfields <list> : Fields to detemine whom the message is from 99 -genidx : Output index to stdout based upon archive contents 100 -gmtdatefmt <fmt> : Format for GMT date 101 -gzipexe <file> : Pathname of Gzip executable 102 (def: "gzip") 103 -gzipfiles : Gzip files 104 -gziplinks : Add ".gz" to filenames in links 105 -help : This message 106 -htmlext <ext> : Filename extension for generated HTML files 107 (def: "html") 108 -iconurlprefix <url> : Prefix for icon URLs 109 (def: "") 110 -idxfname <name> : Name of index page 111 (def: "maillist.html") 112 -idxprefix <string> : Filename prefix for multi-page main index 113 (def: "mail") 114 -idxsize <#> : Maximum number of messages shown in indexes 115 -keeponrmm : Do not delete message files when message is 116 removed from archive. 117 -lang <locale> : Set locale/language. 118 -localdatefmt <fmt> : Format for local date 119 -lock : Do archive locking (default) 120 -lockdelay <#> : Time delay, in seconds, between lock tries 121 (def: "3") 122 -locktries <#> : Maximum number of tries in locking an archive 123 (def: "10") 124 -mailtourl <url> : URL to use for e-mail address hyperlinks 125 (def: "mailto:\$TO\$") 126 -main : Create a main index (the default) 127 -maxpgs <#> : Maximum number of index pages 128 -maxsize <#> : Maximum number of messages allowed in archive 129 -mhpattern <exp> : Perl expression for message files in a directory 130 (def: "^\\d+\$") 131 -modifybodyaddresses : ADDRESSMODIFYCODE applies to text entities 132 -modtime : Set modification time on files to message date 133 -months <list> : Month names 134 -monthsabr <list> : Abbreviated month names 135 -msgpgs : Create message pages (the default) 136 -msgprefix <prefix> : Filename prefix for message HTML files 137 (def: "msg") 138 -msgexcfilter <exp> : Perl expression(s) for selective message exclusion 139 -msgsep <exp> : Message separator (Perl) regex for mbox files 140 (def: "^From ") 141 -multipg : Generate multi-page indexes 142 -news : Add links to newsgroups (the default) 143 -newsurl <url> : URL to use for newsgroup hyperlinks 144 (def: "news:\$NEWSGROUP\$") 145 -noarchive : Do not generate archive related files 146 -noauthsort : Do not sort messages by author 147 -nochecknoarchive : Ignore "no archive" flags in messages 148 -noconlen : Ignore Content-Length fields (the default) 149 -nodecodeheads : Leave message headers "as is" when read 150 -nodoc : Do not print link to doc at end of index page 151 -nofasttempfiles : Use random temporary filenames (the default) 152 -nofollowsymlinks : Do not allow/follow symlinks (the default) 153 -nofolrefs : Do not print links to follow-ups/references 154 -nogzipfiles : Do not Gzip files (the default) 155 -nogziplinks : Do not add ".gz" to filenames in links 156 -nokeeponrmm : Delete message files when message is removed 157 from archive. 158 -nolock : Do not lock archive 159 -nomailto : Do not add in mailto links for e-mail addresses 160 -nomain : Do not create a main index 161 -nomodifybodyaddresses : ADDRESSMODIFYCODE does not apply to text entities 162 (the default) 163 -nomodtime : Do not set mod time on files to message date 164 -nomsgpgs : Do not create message pages 165 -nomultipg : Do not generate multi-page indexes 166 -nonews : Do not add links to newsgroups 167 -noposixstrftime : Do not use POSIX::strftime() to process time 168 format (the default) 169 -noprintxcomments : Do not print <!--X-...--> comments 170 -noreconvert : Do not reconvert existing messages (the default) 171 -noreverse : List messages in normal order (the default) 172 -nosaveresources : Do not save resource values in DB 173 -nosort : Do not sort messages 174 -nospammode : Do not obfuscate addresses (the default) 175 -nosubjectthreads : Do not check subjects for threads 176 -nosubjecttxt <text> : Text to use if message has no subject 177 -nosubsort : Do not sort messages by subject 178 -notetext <text> : Text data of annotation if -annotation specified 179 -nothread : Do not create threaded index 180 -notreverse : List threads in order (the default) 181 -notsort : List threads by ordered processed 182 -notsubsort : Do not list threads by subject 183 -nourl : Do not make URL hyperlinks 184 -otherindex <files> : Other rcfile for extra index 185 -outdir <path> : Destination/location of HTML mail archive 186 (def: ".") 187 -pagenum <page> : Output specified page if -genidx and -multipg 188 -perlinc <list> : List of paths to search for MIME filters 189 -posixstrftime : Use POSIX::strftime() to process time formats 190 -printxcomments : Print <!--X-...--> comments (the default) 191 -quiet : Suppress status messages during execution 192 -rcfile <file> : Resource file for MHonArc 193 -reconvert : Reconvert existing messages 194 -reverse : List messages in reverse order 195 -rmm : Remove messages from archive 196 -savemem : Write message data while processing 197 -saveresources : Save resource values in DB (the default) 198 -scan : List out archive contents to stdout 199 -single : Convert a single message to HTML (no archive ops) 200 -sort : Sort messages by date (the default) 201 -spammode : Obfuscate addresses 202 -stderr <file> : File to send stderr messages to 203 -stdin <file> : File to treat as standard input 204 -stdout <file> : File to send stdout messages to 205 -subjectarticlerxp <rxp> : Regex for leading articles in subjects 206 -subjectreplyrxp <rxp> : Regex for leading reply string in subjects 207 -subjectstripcode <exp> : Perl expressions for modifying subjects 208 -subjectthreads : Check subjects for threads 209 -subsort : Sort message by subject 210 -thread : Create threaded index (the default) 211 -tidxfname <name> : Filename of threaded index page 212 (def: "threads.html") 213 -tidxprefix <string> : Filename prefix for multi-page thread index 214 (def: "thrd") 215 -time : Print to stderr CPU time used to process mail 216 -title <string> : Title of main index page 217 (def: "Mail Index") 218 -tlevels <#> : Maximum # of nested lists in threaded index 219 (def: "3") 220 -treverse : List threads in reverse order 221 -tslice <#:#:#> : Set size of thread slice listing 222 -tslicelevels <#> : Maximum # of nested lists in thread slices 223 (def: TLEVELS resource value) 224 -tsort : List threads by date (the default) 225 -tsubsort : List threads by subject 226 -ttitle <string> : Title of thread index page 227 (def: "Mail Thread Index") 228 -umask <umask> : Umask of MHonArc process (Unix only) 229 -url : Make URL hyperlinks (the default) 230 -v : Print version information 231 -varregex <regex> : Perl regex matching resource variables 232 -weekdays <list> : Weekday names 233 -weekdaysabr <list> : Abbreviated weekday names 234 235 The following options can be specified multiple times: -definevar, 236 -notetext, -otherindex, -perlinc, -rcfile. 237 238Version: 239$VINFO 240EndOfUsage 241 242 close($usefh) if $close; 243 select($curfh); 244} 245 246##---------------------------------------------------------------------------## 2471; 248