Annotation of 43BSD/contrib/mh/doc/mhl.me, revision 1.1.1.1

1.1       root        1: .\"    This file is automatically generated.  Do not edit!
                      2: .TH MHL 1 "April 22, 1986" MH [mh.6]
                      3: .UC 6
                      4: .SH NAME
                      5: mhl \- produce formatted listings of MH messages
                      6: .SH SYNOPSIS
                      7: .in +.5i
                      8: .ti -.5i
                      9: /usr/new/lib/mh/mhl
                     10: \%[\-bell] \%[\-nobell]
                     11: \%[\-clear] \%[\-noclear]
                     12: \%[\-folder\ +folder]
                     13: \%[\-form\ formfile]
                     14: \%[\-length\ lines] \%[\-width\ columns] 
                     15: \%[\-moreproc\ program] \%[\-nomoreproc]
                     16: \%[files\ ...]
                     17: \%[\-help] 
                     18: .in -.5i
                     19: .SH DESCRIPTION
                     20: \fIMhl\fR is a formatted message listing program.
                     21: It can be used as a replacement for \fImore\fR\0(1)
                     22: (the default \fIshowproc\fR\0).
                     23: As with \fImore\fR,
                     24: each of the messages specified as arguments (or the standard input) will be
                     25: output.
                     26: If more than one message file is specified,
                     27: the user will be prompted prior to each one,
                     28: and a <RETURN> or <EOT> will begin the output,
                     29: with <RETURN> clearing the screen (if appropriate),
                     30: and <EOT> (usually CTRL\-D) suppressing the screen clear.
                     31: An <INTERRUPT> (usually CTRL\-C) will abort the current message output,
                     32: prompting for the next message (if there is one),
                     33: and a <QUIT> (usually CTRL-\\) will terminate the program (without core dump).
                     34: 
                     35: The `\-bell' option tells \fImhl\fR to ring the terminal's bell at the end of each page,
                     36: while the `\-clear' option tells \fImhl\fR to clear the scree at the end of
                     37: each page (or output a formfeed after each message).
                     38: Both of these switches (and their inverse counterparts)
                     39: take effect only if the profile entry \fImoreproc\fR is defined but empty,
                     40: and \fImhl\fR is outputting to a terminal.
                     41: If the \fImoreproc\fR entry is defined and non-empty,
                     42: and \fImhl\fR is outputting to a terminal,
                     43: then \fImhl\fR will cause the \fImoreproc\fR to be placed between the
                     44: terminal and \fImhl\fR and the switches are ignored.
                     45: Furthermore,
                     46: if the `\-clear' switch is used and \fImhl's\fR output is directed to a
                     47: terminal,
                     48: then \fImhl\fR will consult the \fB$TERM\fR and \fB$TERMCAP\fR
                     49: envariables to determine the user's
                     50: terminal type in order to find out how to clear the screen.
                     51: If the `\-clear' switch is used and \fImhl's\fR output is not directed to
                     52: a terminal (e.g., a pipe or a file),
                     53: then \fImhl\fR will send a formfeed after each message.
                     54: 
                     55: To override the default \fImoreproc\fR and the profile entry,
                     56: use the `\-moreproc\ program' switch.
                     57: 
                     58: The `\-length\ length' and `\-width\ width' switches set the screen length and
                     59: width, respectively.
                     60: These default to the values indicated by \fB$TERMCAP\fR,
                     61: if appropriate,
                     62: otherwise they default to 40 and 80, respectively.
                     63: 
                     64: The default format file used by \fImhl\fR is called \fImhl.format\fR
                     65: (which is first searched for in the user's \fIMH\fR directory,
                     66: and then sought in the \fI/usr/new/lib/mh\fR directory),
                     67: this can be changed by using the `\-form\ formatfile' switch.
                     68: 
                     69: Finally,
                     70: the `\-folder\ +folder' switch sets the \fIMH\fR folder name,
                     71: which is used for the \*(lqmessagename:\*(rq field described below.
                     72: The envariable \fB$mhfolder\fR is consulted for the default value,
                     73: which \fIshow\fR, \fInext\fR, and \fIprev\fR initialize appropriately.
                     74: 
                     75: \fIMhl\fR operates in two phases:
                     76: 1) read and parse the format file,
                     77: and 2) process each message (file).
                     78: During phase 1,
                     79: an internal description of the format is produced as a structured list.
                     80: In phase 2,
                     81: this list is walked for each message,
                     82: outputting message information under the format constraints from the format
                     83: file.
                     84: 
                     85: The \*(lqmhl.format\*(rq form file contains information controlling
                     86: screen clearing, screen size, wrap\-around control, transparent text,
                     87: component ordering, and component formatting.
                     88: Also, a list of components to ignore may be specified,
                     89: and a couple of \*(lqspecial\*(rq components are defined to provide added
                     90: functionality.
                     91: Message output will be in the order specified by the order in the format file.
                     92: 
                     93: Each line of mhl.format has one of the formats:
                     94: 
                     95:      ;comment
                     96:      :cleartext
                     97:      variable[,variable...]
                     98:      component:[variable,...]
                     99: 
                    100: A line beginning with a `;' is a comment, and is ignored.
                    101: A line beginning with a `:' is clear text,
                    102: and is output exactly as is.
                    103: A line containing only a `:' produces a blank line in the output.
                    104: A line beginning with \*(lqcomponent:\*(rq defines the format for the specified
                    105: component,
                    106: and finally, remaining lines define the global environment.
                    107: 
                    108: For example, the line:
                    109: 
                    110: .ti +.5i
                    111: width=80,length=40,clearscreen,overflowtext="***",overflowoffset=5
                    112: 
                    113: defines the screen size to be 80 columns by 40 rows,
                    114: specifies that the screen should be cleared prior to each page,
                    115: that the overflow indentation is 5,
                    116: and that overflow text should be flagged with \*(lq***\*(rq.
                    117: 
                    118: Following are all of the current variables and their arguments.
                    119: If they follow a component,
                    120: they apply only to that component,
                    121: otherwise, their affect is global.
                    122: Since the whole format is parsed before any output processing,
                    123: the last global switch setting for a variable applies to the whole message
                    124: if that variable is used in a global context
                    125: (i.e., bell, clearscreen, width, length).
                    126: 
                    127: .nf
                    128: .in +.5i
                    129: .ta \w'noclearscreen  'u +\w'integer/G  'u
                    130: \fIvariable\fR \fItype\fR      \fIsemantics\fR
                    131: width  integer screen width or component width
                    132: length integer screen length or component length
                    133: offset integer positions to indent \*(lqcomponent: \*(rq
                    134: overflowtext   string  text to use at the beginning of an
                    135:                overflow line
                    136: overflowoffset integer positions to indent overflow lines
                    137: compwidth      integer positions to indent component text
                    138:                after the first line is output
                    139: uppercase      flag    output text of this component in all
                    140:                upper case
                    141: nouppercase    flag    don't uppercase
                    142: clearscreen    flag/G  clear the screen prior to each page
                    143: noclearscreen  flag/G  don't clearscreen
                    144: bell   flag/G  ring the bell at the end of each page
                    145: nobell flag/G  don't bell
                    146: component      string/L        name to use instead of \*(lqcomponent\*(rq for
                    147:                this component
                    148: nocomponent    flag    don't output \*(lqcomponent: \*(rq for this
                    149:                component
                    150: center flag    center component on line (works for
                    151:                one\-line components only)
                    152: nocenter       flag    don't center
                    153: leftadjust     flag    strip off leading whitespace on each
                    154:                line of text
                    155: noleftadjust   flag    don't leftadjust
                    156: compress       flag    change newlines in text to spaces
                    157: nocompress     flag    don't compress
                    158: formatfield    string  format string for this component
                    159: addrfield      flag    field contains addresses
                    160: datefield      flag    field contains dates
                    161: .re
                    162: .in -.5i
                    163: .fi
                    164: 
                    165: To specify the value of integer\-valued and string\-valued variables,
                    166: follow their name with an equals\-sign and the value.
                    167: Integer\-valued variables are given decimal values,
                    168: while string\-valued variables are given arbirtray text bracketed by
                    169: double\-quotes.
                    170: If a value is suffixed by \*(lq/G\*(rq or \*(lq/L\*(rq,
                    171: then its value is useful in a global\-only or local\-only context
                    172: (respectively).
                    173: 
                    174: A line of the form:
                    175: 
                    176:     ignores=component,...
                    177: 
                    178: specifies a list of components which are never output.
                    179: 
                    180: The component \*(lqMessageName\*(rq (case\-insensitive)
                    181: will output the actual message name (file name) preceded by
                    182: the folder name if one is specified or found in the environment.
                    183: The format is identical to that produced by the `\-header' option to
                    184: \fIshow\fR.
                    185: 
                    186: The component \*(lqExtras\*(rq will output all of the components of the message
                    187: which were not matched by explicit components,
                    188: or included in the ignore list.
                    189: If this component is not specified,
                    190: an ignore list is not needed since all non\-specified components will be
                    191: ignored.
                    192: 
                    193: If \*(lqnocomponent\*(rq is NOT specified, then the component name will be
                    194: output as it appears in the format file.
                    195: 
                    196: The default format is:
                    197: 
                    198: .nf
                    199: .in +.5i
                    200: .ne 15
                    201: .eo
                    202: .so /usr/new/lib/mh/mhl.format
                    203: .ec
                    204: .in -.5i
                    205: .fi
                    206: 
                    207: The variable \*(lqformatfield\*(rq specifies a format string
                    208: (see \fImh\-format\fR(5)).
                    209: The variables \*(lqaddrfield\*(rq and \*(lqdatefield\*(rq
                    210: (which are mutually exclusive),
                    211: control the interpretation of the escapes.
                    212: 
                    213: By default,
                    214: \fImhl\fR does not apply any formatting string to fields containing address or
                    215: dates (see \fImh\-mail\fR\0(5) for a list of these fields).
                    216: Note that this results in faster operation
                    217: since \fImhl\fR must parse both addresses and dates in order to apply a
                    218: format string to them.
                    219: If desired,
                    220: \fImhl\fR can be given a default format string for either address or date
                    221: fields (but not both).
                    222: To do this,
                    223: on a global line
                    224: specify either the variable addrfield or the variable datefield,
                    225: along with the variable formatfield.
                    226: .Fi
                    227: ^/usr/new/lib/mh/mhl.format~^The message template
                    228: ^or <mh\-dir>/mhl.format~^Rather than the standard template
                    229: ^$HOME/\&.mh\(ruprofile~^The user profile
                    230: .Pr
                    231: ^moreproc:~^Program to use as interactive front\-end
                    232: .Sa
                    233: show(1), ap(8), dp(8)
                    234: .De
                    235: `\-bell'
                    236: .Ds
                    237: `\-noclear'
                    238: .Ds
                    239: `\-length 40'
                    240: .Ds
                    241: `\-width 80'
                    242: .Co
                    243: None
                    244: .Bu
                    245: There should be some way to pass `bell' and `clear' information to the 
                    246: front\-end.
                    247: 
                    248: On hosts where \fIMH\fR was configured with the BERK option,
                    249: address parsing is not enabled.
                    250: .En

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.