1
2                             Alpine Technical Notes
3
4   Version 2.24.2, May 2021
5
6Table of Contents
7
8  Introduction
9
10     * Design Goals
11     * Alpine Components
12
13  Background Details
14
15     * Domain Names
16     * RFC 2822 Compliance
17     * SMTP and Sendmail
18     * Internet Message Access Protocol (IMAP)
19     * Multipurpose Internet Mail Extensions (MIME)
20     * Folder Collections
21
22  Building and Installation
23
24     * Compile-time Options
25     * Including LDAP Functionality
26     * Including Kerberos 5 Functionality
27     * Other Alpine Compile-time Options
28     * IMAPd Compile-time Options
29     * Building the Alpine Programs
30     * Installing Alpine and Pico on UNIX Platforms
31     * Installing PC-Alpine
32     * Installing IMAPd
33     * Support Files and Environment Variables: UNIX Alpine
34     * Support Files, Environment Variables, and Registry Values:
35       PC-Alpine
36
37  Command Line Arguments
38
39     * Alpine
40     * Pico
41     * Pilot
42
43  Configuration and Preferences
44
45     * Alpine Configuration
46     * General Configuration Variables
47     * Configuration Features
48     * Hidden Config Variables and Features
49     * Retired Variables
50     * Tokens for Index and Replying
51     * Conditional Inclusion of Text for Reply-Leadin, Signatures, and
52       Templates
53     * Per Server Directory Configuration
54     * Color Configuration
55     * Index Line Color Configuration
56     * Role Configuration
57     * Filtering Configuration
58     * Scoring Configuration
59     * Other Rules Configuration
60     * Search Rules Configuration
61     * Patterns
62     * Configuring News
63       Configuration Notes
64          + Alpine in Function Key Mode
65          + Domain Settings
66          + Syntax for Collections
67          + Syntax for Folder Names
68          + Server Name Syntax
69          + Folder Namespaces
70          + What is a Mail Drop?
71          + Sorting a Folder
72          + Alternate Editor
73          + Signatures and Signature Placement
74          + Feature List Variable
75          + Configuration Inheritance
76          + Using Environment Variables
77          + SMTP Servers
78          + MIME.Types file
79          + Color Details
80          + S/MIME Overview
81          + Additional Notes on PC-Alpine
82
83  Behind the Scenes
84
85     * Address Books
86     * Remote Configuration
87     * Checkpointing
88     * Debug Files
89     * INBOX and Special Folders
90     * Internal Help Files
91     * International Character Sets
92     * Interrupted and Postponed Messages
93     * Message Status
94     * MIME: Reading a Message
95     * MIME: Sending a Message
96     * New Mail Notification
97     * NFS
98     * Printers and Printing
99     * Save and Export
100     * Sent Mail
101     * Spell Checker
102     * Terminal Emulation and Key Mapping
103
104                                  Introduction
105
106Design Goals
107
108   Throughout _Alpine_ development, we have had to strike a balance
109   between the need to include features which advanced users require and
110   the need to keep things simple for beginning users. To strike this
111   balance, we have tried to adhere to these design principles:
112
113          - The model presented to the user has to be simple and clear.
114          Underlying system operation is hidden as much as possible.
115          - It's better to have a few easily understood commands that can
116          be repeated than to have some more sophisticated command that
117          will do the job all at once.
118          - Whenever the user has to select a command, file name, address,
119          etc., the user should be given (or can get) a menu from which to
120          make the selection. Menus need to be complete, small, organized
121          and well thought out.
122          - _Alpine_ must provide immediate feedback for the user with
123          each operation.
124          - _Alpine_ must be very tolerant of user errors. Any time a user
125          is about to perform an irreversible act (send a message, expunge
126          messages from a folder), _Alpine_ should ask for confirmation.
127          - Users should be able to learn by exploration without fear of
128          doing anything wrong. This is an important feature so the user
129          can get started quickly without reading any manuals and so fewer
130          manuals are required.
131          - The core set of _Alpine_ functions should be kept to a minimum
132          so new users don't feel "lost" in seemingly extraneous commands
133          and concepts.
134
135   Just as there were goals relating to the look and feel of _Alpine_,
136   there were equally important goals having to do with _Alpine_'s
137   structure-the things that users never see but still rely on every time
138   they use _Alpine_. While _Alpine_ can be used as a stand-alone mail
139   user agent, one of its strongest assets is its use of the Internet
140   Message Access Protocol (IMAP) for accessing remote email folders. In
141   addition, _Pine_ (the predecessor of _Alpine_) was one of the first
142   programs to support the Multipurpose Internet Mail Extensions (MIME)
143   specification. With MIME, _Alpine_ users can reliably send any binary
144   file to any other person on the Internet who uses a MIME compliant
145   email program.
146
147   The decision to use IMAP and MIME reflects the importance of
148   interoperability, standardization and robustness in _Alpine_. As you
149   work with _Alpine_ more, you will see other features which reflect the
150   same values. For example, _Alpine_ enforces strict compliance with RFC
151   2822, implements a strong mail folder locking mechanism and verifies a
152   process before overwriting any files (e.g. addressbook, expunging
153   messages).
154
155Alpine Components
156
157   If you have picked up the _Alpine_ distribution, then you already know
158   that _Alpine_ comes in a few different pieces. They are:
159
160   _Alpine_
161          The main code from which the _Alpine_ program is compiled.
162   _Pico_
163          _Pico_ is the name for the _Alpine_ composer. The _Pico_ code is
164          used in two ways: (1) it is compiled on its own to be a
165          stand-alone editor and, (2) it is compiled as a library for
166          _Alpine_ to support composition of messages within _Alpine_.
167          _Pico_ is _Alpine_'s internal editor invoked when users need to
168          fill in header lines or type the text of an email message.
169   _Imap_
170          An API for IMAP. Includes the C-Client library, which is
171          compiled into _Alpine_, and the IMAP server _IMAPd_. C-Client
172          implements the IMAP protocol and also negotiates all access
173          between _Alpine_ and the mail folders it operates on, even if
174          the folders are local. The C-Client routines are used for email
175          folder parsing and interpreting MIME messages. _IMAPd_ is a
176          separate server that handles IMAP connections from any
177          IMAP-compliant email program. When _Alpine_ accesses a remote
178          mailbox, the _Alpine_ program is the IMAP client and the _IMAPd_
179          program is the IMAP server. Of course, _Alpine_ can use any
180          IMAP-compliant IMAP server, not just _IMAPd_.
181
182                               Background Details
183
184Domain Names
185
186   Domain names are used to uniquely name each host on the Internet. A
187   domain name has a number of parts separated by periods. Each label
188   represents a level in the hierarchy. An example of a name is:
189
190     olive.cac.washington.edu
191
192   In this domain name the top-level label is _edu_, indicating it is at
193   an educational institution, the second-level label is _washington_,
194   indicating the University of Washington. _cac_ is a specific department
195   within the University of Washington, and _olive_ is the host name. The
196   top-level names are assigned by Internet organizations, and other names
197   are assigned at the appropriate level. The Domain Name Service, DNS, is
198   the distributed database used to look up these names.
199
200   _Alpine_ relies on domain names in multiple places. A domain name is
201   embedded into the message-id line generated for each piece of email. A
202   domain name is needed to contact an IMAP server to get access to remote
203   INBOXes and folders. Most importantly, domain names are needed to
204   construct the From: line of your outgoing messages so that people on
205   the Internet will be able to get email back to you.
206
207   On UNIX systems, you can set the domain via the user-domain variable in
208   the _Alpine_ configuration file, or rely on the file /etc/hosts which
209   usually sets the name of the local host. While _Alpine_ can often
210   deliver email without the domain name being properly configured, it is
211   best to have this set correctly. Problems can usually be solved by
212   adjusting the system's entry in the /etc/hosts file. The
213   fully-qualified name should be listed before any abbreviations. For
214   example,
215
216     128.95.112.99 olive.cac.washington.edu olive
217
218   is preferred over
219
220     128.95.112.99 olive olive.cac.washington.edu
221
222   On PCs, the task of configuring the domain name is a bit different.
223   Often times PCs do not have domain names-they have _IP addresses_. IP
224   addresses are the numbers which uniquely identify a computer on the
225   network. The way you configure your IP address depends on the
226   networking software which you use on the PC. You can refer to the
227   documentation which came with your networking software or see the PC
228   specific installation notes for help configuring the IP address with
229   your network software.
230
231   With PCs, it is vital that users set the variable user-domain in the
232   _Alpine_ configuration file (PINERC).
233
234   Details on configuring _Alpine_ with correct domain names can be found
235   in the Domain Settings section of this document.
236     __________________________________________________________________
237
238RFC 2822 Compliance
239
240   _Alpine_ tries to adhere to RFC 2822 fairly strictly.
241
242   As far as outgoing email is concerned, _Alpine_ fully-qualifies
243   addresses whenever possible. They are even displayed in fully-qualified
244   form on the terminal as the user composes a message. This makes
245   addresses more clear and gives a hint to the user that the network
246   extends beyond the local organization. _Alpine_ implements
247   fully-qualified domain names by tacking on the local domain to all
248   unqualified addresses which a user types in. Any address which does not
249   contain an "@" is considered unqualified.
250
251   The format for addresses allows for spaces and special characters in
252   the full name of an address. For this reason, commas are required to
253   separate addresses. If any special characters as defined in RFC 2822
254   appear in the full name, quotes are required around the address.
255   _Alpine_ will insert the quotes automatically if needed. The common
256   cases where this happens are with periods after initials and
257   parentheses.
258
259   _Alpine_ expects dates to be in the standard RFC 822 format which is
260   something like:
261        [www, ] dd mmm yy hh:mm[:ss] [timezone]
262
263   It will attempt to parse dates that are not in this format. When an
264   unparsable date is encountered it is shown as question marks in the
265   FOLDER INDEX screen.
266     __________________________________________________________________
267
268SMTP and Sendmail
269
270   _Alpine_ is a _user agent_ not a _message transfer agent_ (MTA). In
271   plain English, that means _Alpine_ does not know how to interact with
272   other computers on the Internet to deliver or receive email. What
273   _Alpine_ does know how to do is help users read, organize and create
274   email. The "dirty work" of delivering and accepting email is handled by
275   other programs.
276
277   All outgoing email is delivered to an SMTP server or to a mail transfer
278   agent. A common mail transfer agent is sendmail. The usual method of
279   delivery used by _Alpine_ is to use either a local or a remote SMTP
280   server.
281
282   The selection of which MTA to use depends on the settings of
283   smtp-server, sendmail-path, and compile-time options. The first MTA
284   specified in the following list is used:
285    1. _sendmail-path_ in /usr/local/lib/pine.conf.fixed
286    2. _smtp-server_ in /usr/local/pine.conf.fixed
287    3. _sendmail-path_ specified on the command line.
288    4. _smtp-server_ specified on the command line.
289    5. _sendmail-path_ in the user's .pinerc file.
290    6. _smtp-server_ in the user's .pinerc file.
291    7. _sendmail-path_ in /usr/local/lib/pine.conf
292    8. _smtp-server_ in /usr/local/pine.conf
293    9. DF_SENDMAIL_PATH defined at compile time.
294   10. SENDMAIL and SENDMAILFLAGS defined at compile time.
295
296   If the _sendmail-path_ form is used, a child process is forked, and the
297   specified command is executed with the message passed on standard
298   input. Standard output is then passed back and displayed for the user.
299   _NOTE: The program MUST read the message to be posted on standard input,
300   AND operate in the style of sendmail's "-t" option. This method is not
301   recommended unless there are special reasons you want to do this._
302
303   If an _smtp-server_ is specified, _Alpine_ operates as an SMTP client.
304   SMTP stands for _Simple Mail Transfer Protocol_; it specifies the rules
305   by which computers on the Internet pass email to one another. In this
306   case, _Alpine_ passes outgoing email messages to a designated SMTP
307   server instead of to a mail transfer program on the local machine. A
308   program on the server then takes care of delivering the message. To
309   make _Alpine_ operate as an SMTP client, the smtp-server variable must
310   be set to the IP address or host name of the SMTP server within your
311   organization. This variable accepts a comma separated list of servers,
312   so you can specify multiple alternate SMTP servers. _PC-Alpine_ only
313   runs as an SMTP client so the _smtp-server_ option is mandatory.
314
315   For UNIX _Alpine_, if neither _smtp-server_ or _sendmail-path_ is set,
316   the default sendmail program is invoked with the "-bs -odb -oem" flags,
317   and the message is sent using the SMTP protocol.
318     __________________________________________________________________
319
320Internet Message Access Protocol (IMAP)
321
322   IMAP is a remote access protocol for message stores. _Alpine_ uses IMAP
323   to get at messages and folders which reside on remote machines. With
324   IMAP, messages are kept on the server. An IMAP client (such as
325   _Alpine_) can request specific messages, headers, message structures,
326   message parts, etc. The client can also issue commands which delete
327   messages from folders on the server. IMAP's closest kin is POP, the
328   Post Office Protocol, which works by transferring an entire mailbox to
329   the client where all the mail is kept. For a comparison of IMAP and
330   POP, see the paper "Comparing Two Approaches to Remote Mailbox Access:
331   IMAP vs. POP" by Terry Gray. A more detailed exploration of message
332   access may be found in the paper " Message Access Paradigms and
333   Protocols."
334
335   IMAP Features:
336     * Allows access to mail folders from more than one client computer.
337     * Works well over low-bandwidth lines because information is sent in
338       small pieces as needed by the user. For example, only header
339       information is sent to build index lists, and if someone sends a
340       large audio file via MIME, you can choose when (or if) you want to
341       get that part of the message.
342     * Email can be delivered and stored on a well-maintained and reliable
343       server which is "always-up".
344     * Folders can be accessed and manipulated from anywhere on the
345       Internet.
346     * Users can get to messages stored in different folders within the
347       same _Alpine_ session.
348     * Allows use of IMAP server for searching and parsing.
349     * The latest revision of IMAP (IMAP4) also provides for disconnected
350       operation, including resynchronization of message state between
351       mail servers and message caches on clients. _Alpine_ does not
352       support this capability, however.
353
354   IMAP4rev1 is described in RFC 3501. Further information about IMAP may
355   be obtained from the University of Washington's IMAP Information
356   Center.
357
358   _Alpine_ is an IMAP4rev1 client.
359     __________________________________________________________________
360
361Multipurpose Internet Mail Extensions (MIME)
362
363   MIME is a way of encoding a multipart message structure into a standard
364   Internet email message. The parts may be nested and may be of seven
365   different types: Text, Audio, Image, Video, Message, Application and
366   Multipart (nested). The MIME specification allows email programs such
367   as _Alpine_ to reliably and simply exchange binary data (images,
368   spreadsheets, etc.). MIME includes support for international character
369   sets, tagging each part of a message with the character set it is
370   written in, and providing 7-bit encoding of 8-bit character sets.
371
372   The MIME standard was officially published in June of 1992 as RFC 1341
373   and subsequently revised in RFC 2045 when it became a full Internet
374   Standard. _Pine_ 3.0 was one of the first email programs to Implement
375   MIME. Now, there are dozens of commercial and freely available
376   MIME-capable email programs. In addition, MIME is being added to
377   newsreaders so MIME messages can be posted and read in USENET
378   newsgroups.
379
380   The MIME standard also includes support for non-ASCII text in message
381   headers through the extensions described in RFC 1342 and subsequently
382   revised in RFC 2047.
383
384   An actual MIME message looks something like this:
385Date: Tue, 12 Mar 1996 15:39:35 -0800 (PST)
386From: David L Miller <dlm@cac.washington.edu>
387To: David L Miller <dlm@cac.washington.edu>
388Subject: =?iso-8859-1?Q?Test_MIME_message_with_RFC-1522_headers_=28=E1?=    =?is
389o-8859-1?Q?=E2=E3=29?=
390Message-Id: <Pine.ULT.3.92.960312150851.21583I-101000@shiva2.cac.washington.edu>
391Mime-Version: 1.0
392Content-Type: MULTIPART/MIXED; BOUNDARY="0-1737669234-826673975=:21583"
393Content-Id: <Pine.ULT.3.92.960312153928.21583O@shiva2.cac.washington.edu>
394
395  This message is in MIME format.  The first part should be readable text,
396  while the remaining parts are likely unreadable without MIME-aware tools.
397  Send mail to mime@docserver.cac.washington.edu for more info.
398
399--0-1737669234-826673975=:21583
400Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
401Content-ID: <Pine.ULT.3.92.960312153104.21583L@shiva2.cac.washington.edu>
402
403The text of the message would go here. It is readable if
404one doesn't mind wading around a little bit of the MIME
405formatting. After this is a binary file in base 64
406encoding.
407
408|\ |  |\/|  David L. Miller    dlm@cac.washington.edu  (206) 685-6240
409|/ |_ |  |  Software Engineer, Pine Development Team   (206) 685-4045 (FAX)
410University of Washington, Networks & Distributed Computing, JE-20
4114545 15th Ave NE, Seattle WA 98105, USA
412
413--0-1737669234-826673975=:21583
414Content-Type: APPLICATION/ZIP; NAME="test.zip"
415Content-Transfer-Encoding: BASE64
416Content-ID: <Pine.ULT.3.92.960312153638.21583N@shiva2.cac.washington.edu>
417Content-Description: Test Attachment
418
419UEsDBBQAAAAIAGh8bCBbZKT4ygIAAHgFAAAEAAAAdGVzdIVUX2vbMBB/16c4
4209rSBNyjsYX1UHSUROLInycv2qNhKI5ZYxlLa5dvvpDRLw6CFgJF09/t3Rxo3
421WDBDD43rPJjJQpxMbw9m+h3AbyHuLLSDe7JTcPGUbtYm7NzwGP3wBYQnnT8c
4227NQ5s4djsC8t4QbmYE6wsfjpLTy7uPPHCOPk/ATPk4vRDmS008GF4PzwPich
423zY3m4LfxOQlPNy4GcEO3P/a2h2j/xGyp9ONpco+7CHf33+4/393ff4XNibzL
424c1UVfXJXQIdIBRx877b4TYy9C3Fym2NEyzsX/pNDet8dD3aIJiagLbo2wwnG
4254zT6cK66ZLK1NhH9J4tcZQEy7OxkNyd4nMwQbV9glP7JZb87E3O32fgnm7We
426XQ8+us4SM47WTCkgMPt9enc2ZAW5c+Pj7o32l0IXXk/r8pSRE3A4jqOfIqqF
427G+PFlSdRDOaQduXNESTwtDcYfJ8191gWXUjYmOJ43Oxdh11JTzRuSPcY37+B
428vNqmf0O5RB1G27mt64rLCp4X8pW1L6BvxunCeYHNk3F7s9lb+GAwyvAhOyNE
429Lxm0gv9gUnH9C+o5rKlacrHQtYAZV2VF+UoBrSp8kJIKzZkqgP1sJFMKagl8
4301VSczQqy5noJki2onIGuQS+5AlXPNfaxArgoq3aGwJDq6lZDxVdcU82RKMG/
4314JArTVKzYrJc4pE+8CoJpGIGc65FIp8jO4WGSs3LtqISmlY2tUKyVMUFETWw
432H0xoUMvE8KbXB4aC6EPFzrDiF6iGlZxWBeFixiUrdXJb1kKx7y2C4hPM6Iou
433WI4hdVyO6yXVqkZqiXmottLJ9lzWK1LVKttqk8oZ1TS1NrJGS5jqeslQI0aK
434ieCvzNlgNZJqiccCc5WafLxmKdii4gsmSvYpISkteamzkRwXJiG5SoUpcERK
4358xIE8QQ7o+eh5WAUy1qYRP8rioip/maI+OfyF1BLAQIUAxQAAAAIAGh8bCBb
436ZKT4ygIAAHgFAAAEAAAAAAAAAAEAAACkgQAAAAB0ZXN0UEsFBgAAAAABAAEA
437MgAAAOwCAAAAAA==
438--0-1737669234-826673975=:21583--
439
440
441   For details about _Alpine_'s implementation of MIME, see the two MIME
442   sections "MIME: Reading a Message" and "MIME: Sending a Message" later
443   in this document.
444     __________________________________________________________________
445
446Folder Collections
447
448   Folder Collections are _Alpine_'s way of dealing with more than a
449   single group of folders.
450
451   For a more complete description of Folder Collections, see the section
452   on "Syntax for Collections."
453
454   The _Alpine_ distribution is designed to require as little
455   configuration and effort at compile time as possible. Still, there are
456   some _Alpine_ behaviors which are set at the time you compile _Alpine_.
457   For each of these, there is a reasonable (our opinion) default built
458   into the code, so most systems administrators will have no need for
459   these steps.
460
461                           Building and Installation
462
463Compile-time Options
464
465   _Alpine_'s UNIX build environment is based on Autotools (the GNU Build
466   System). Once you've unpacked the source distribution find the file
467   configure in the top-level directory. You may look at the many options
468   available by typing
469
470                             ./configure --help
471
472   or you could just try building with the command
473
474                                 ./configure
475
476   followed by
477
478                                    make
479
480   Note, while the UW IMAP Toolkit (whose c-client library _Alpine_ uses
481   for mailbox access) build is not based on Autotools, _Alpine_'s
482   configure script should set an appropriate make target and compilation
483   options for most systems.
484
485   Some of the following can only be set when you build. Others, however,
486   can be overridden by command-line flags to _Alpine_ or settings in
487   _Alpine_'s user or system configuration files. Some of the options which
488   can be set when building:
489
490  Including LDAP Functionality
491
492   By default, the configure script will attempt to find the LDAP library
493   support for you. If you are having trouble with LDAP take a look at the
494   configure options
495   --with-ldap-dir=DIR
496          Specify the root of the LDAP lib/include path.
497   --with-ldap-include-dir=DIR
498          Specify the LDAP include path.
499   --with-ldap-lib-dir=DIR
500          Specify the LDAP library path.
501   --without-ldap
502          Disable LDAP support.
503
504   _Alpine_ uses LDAPv3 protocol. When using the LDAPv3 protocol, the
505   results are assumed to be in the UTF-8 character set, which _Alpine_
506   handles well. If the LDAP server returns non-ascii data which is not
507   encoded as UTF-8 you will probably run into problems.
508
509  Including Kerberos 5 Functionality
510
511   This works analogously to the LDAP build. By default, the configure
512   script will attempt to find the Kerberos library support for you. If
513   you are having trouble with Kerberos take a look at the configure
514   options
515   --with-krb5-dir=DIR
516          Specify the root of the Kerberos lib/include path.
517   --with-krb5-include-dir=DIR
518          Specify the Kerberos include path.
519   --with-krb5-lib-dir=DIR
520          Specify the Kerberos library path.
521   --without-krb5
522          Disable Kerberos support.
523
524  Other Alpine Compile-time Options
525
526   --disable-nls
527          Do not use Native Language Support. NLS refers to the use of GNU
528          gettext utilities to localize a program, in the sense that
529          English is translated to some other language. At the time this
530          was written the low-level support for NSL is included in _Alpine_
531          but no translations have been done. If there is no translation
532          available, that means that disabling NLS will make no
533          difference. If you have trouble building which is due to gettext
534          or libintl you could try this option, or one of the following.
535   --with-libintl-prefix[=DIR]
536   --without-libintl-prefix
537   --with-ssl-dir=DIR
538          Specify the root of the SSL lib/include path (OpenSSL).
539   --with-ssl-include-dir=DIR
540          Specify the SSL include path.
541   --with-ssl-lib-dir=DIR
542          Specify the SSL library path.
543   --with-ssl-certs-dir=DIR
544          Specify the path to the SSL certificates directory.
545   --without-ssl
546          Disable SSL support.
547   --without-pthread
548          Do not test for nor build with POSIX thread support, which is
549          used only for the Busy-Cue in the status line at this time.
550   --without-smime
551          Disable S/MIME support.
552   --disable-debug
553          Never create debug files.
554   --with-smtp-msa=PATH
555          Local Mail Submission Agent (sendmail, by default).
556   --with-smtp-msa-flags=FLAGS
557          MSA flags for SMTP on stdin/stdout (-bs -odb -oem).
558
559   There are many more options which you can see using the
560
561                             ./configure --help
562
563   command.
564
565  IMAPd Compile-time Options
566
567   There are no options or settings required for the version of _IMAPd_
568   distributed with _Alpine_. If you need to be doing more complex
569   modifications to IMAP, then you should pick up the IMAP development
570   package and work with that code. The developer's version of IMAP is
571   available for anonymous ftp from ftp.cac.washington.edu in the
572   directory mail. The file is called imap.tar.Z. Unless it has changed
573   since _Alpine_ was released, the directory imap in the _Alpine_
574   distribution is the IMAP development package.
575
576   The c-client library has not been converted to use the GNU Build
577   System's autotools. The _Alpine_ configure script will try to correctly
578   guess the arguments needed for the c-client make command and will build
579   the library, but if you need to change anything you should take a look
580   at imap/docs/BUILD for more detailed instructions.
581     __________________________________________________________________
582
583Building the Alpine Programs
584
585   You may have already compiled _Alpine_ and tried it out. If so, great!
586   If not, you should be able to do it without too much trouble by
587   following these step-by-step instructions:
588
589    1. Make sure you're in the root of the _Alpine_ source. When you type
590       ls you should see the following files and directories (or something
591       close to it):
592aclocal.m4    config.sub    imap        Makefile.am    packages  web
593alpine        configure     include     Makefile.in    pico
594build.bat     configure.ac  install-sh  mapi           pith
595build.cmd     contrib       LICENSE     missing        po
596config.guess  depcomp       ltmain.sh   mkinstalldirs  README
597config.rpath  doc           m4          NOTICE         VERSION
598
599    2. Give the command ./configure Configure should grind away for a few
600       minutes.
601    3. When configure is complete, give the command make. If make stops
602       and asks
603
604         Do you want to build with IPv6 anyway? Type y or n please:
605       you should answer with a 'y'. The compiler should grind away for a
606       few minutes. The _Alpine_ binary will end up in .../alpine/alpine
607       and the Pico and Pilot binaries in .../pico/pico and
608       .../pico/pilot. Other binaries you may be interested in are
609       .../alpine/rpdump and .../alpine/rpload and c-client binaries in
610       the directories .../imap/imapd, .../imap/ipopd, .../imap/mailutil,
611       and so on.
612    4. If you need to try again, make sure you're getting a clean start by
613       giving the command make clean.
614     __________________________________________________________________
615
616Installing Alpine and Pico on UNIX Platforms
617
618   Installing _Alpine_ and _Pico_ is simple. You take the program files
619   which you have just transferred or built and you move them to the
620   correct directory on your system. Most often the binaries go in
621   /usr/local/bin though sometimes they are placed in /usr/bin. All the
622   help text is compiled into _Alpine_ so there are no _required_
623   auxiliary files. Instead of copying the binaries manually, you may use
624   make install to install them.
625
626   There are three optional auxiliary files: /usr/local/lib/pine.info,
627   /usr/local/lib/pine.conf, and /usr/local/lib/pine.conf.fixed. The file
628   pine.info contains text on how to get further help on the local system.
629   It is part of the help text for the main menu and should probably refer
630   to the local help desk or the system administrator. If this file
631   doesn't exist a generic version which suggests ``talking to the
632   computer support staff at your site'' is shown. The file pine.conf is
633   used to set system-wide default configurations for _Alpine_. The file
634   pine.conf.fixed is also used to set system-wide default configurations
635   for _Alpine_. The difference between these two files is that
636   configuration variables set in the pine.conf.fixed file may not
637   normally be over-ridden by a user. See the section on Alpine
638   Configuration later in this document for details about the pine.conf
639   and pine.conf.fixed files.
640     __________________________________________________________________
641
642Installing PC-Alpine
643
644   The PC-Alpine distribution comes as a .zip file. To install, unzip the
645   files to a directory where you would like the program to reside. Modern
646   Windows versions come with the capability of unzipping .zip files.
647   Failing that, you can use one of the many .zip file extractors out
648   there. Following current Windows conventions, a common directory into
649   which the files could be extracted would be C:\Program
650   Files\PC-Alpine\.
651
652   Having extracted PC-Alpine's .zip file to the directory of choice, you
653   can now run that directory's alpine.exe, which is the actual PC-Alpine
654   program. For convenience, you could place shortcuts to it on the task
655   bar, start menu, etc.
656
657   Upon first running PC-Alpine, you may be asked where you would like to
658   access your Configuration file (called the _pinerc_). This is useful in
659   accessing already existing configuration files, and it does not matter
660   where this file gets created. If you are connecting to an IMAP server
661   to access your email, it is also possible to store this Configuration
662   data on that server, which facilitates accessing the same configuration
663   from multiple machines (in fact, your configuration may have already
664   been set up this way for use with other _Alpine_ programs).
665
666   After having established the location of the configuration file, it may
667   be necessary to specify a few configuration settings before reading or
668   sending mail. You may be prompted for the following (which may also be
669   edited from the (S)etup (C)onfig screen from the Main Menu):
670
671     Folder to open as inbox (or _inbox-path_) - This can be an inbox
672   residing on an IMAP or POP3 server, or one residing locally. An example
673   of an INBOX for an IMAP server is: {server.example.com}INBOX.
674
675     User-id, Personal name, and host/domain, which are to be used as your
676   email address.
677
678     SMTP server to forward message - You must enter your SMTP server
679   before you can send any messages.
680
681   At this point, you will be able to read and send email messages. There
682   are, however, many more preferences that you can set in the
683   Configuration screen.
684     __________________________________________________________________
685
686Installing IMAPd
687
688   When the _Alpine_ distribution is built on a UNIX system, the IMAP
689   server binary, imapd, is compiled. Installing imapd requires placing
690   the binary in the appropriate directory, usually /usr/etc, and adding
691   entries to /etc/services and /etc/inetd.conf or their counterparts.
692
693   Instead of including installation instructions here we'll just include
694   a pointer to detailed instructions in the c-client distribution. Please
695   take a look at the file imap/docs/BUILD in the source tree.
696     __________________________________________________________________
697
698Support Files and Environment Variables: UNIX Alpine
699
700   This section lists the various files which _Alpine_ uses which are not
701   email folders. All of these are the default names of files, they may
702   vary based on _Alpine_'s configuration.
703   /usr/local/lib/pine.conf
704          Pine's global configuration file.
705   /usr/local/lib/pine.conf.fixed
706          Non-overridable global configuration file.
707   /usr/local/lib/pine.info
708          Local pointer to system administrator.
709   ~/.pinerc
710          Personal configuration file for each user.
711   ~/.pinercex
712          Personal exceptions configuration file for each user.
713   ~/.addressbook
714          Personal addressbook
715   ~/.newsrc
716          Personal USENET subscription list. This is shared with other
717          newsreading programs.
718   ~/.pine-debugX
719          The files created for debugging _Alpine_ problems. By default,
720          there are 4 .pine-debug files kept at any time.
721   ~/.signature
722          A signature file which will be included in all outgoing email
723          messages.
724   ~/.pine-interrupted-mail
725          The text of a message which was interrupted by some unexpected
726          error which _Alpine_ detected.
727   ~/mail/postponed-msgs
728          A folder of messages which the user chose to postpone.
729   /etc/mailcap
730          System-wide mail capabilities file. Only used if $MAILCAPS not
731          set.
732   ~/.mailcap
733          Personal mail capabilities file. Combines with system-wide
734          mailcap. Only used if $MAILCAPS not set.
735
736   The location of the following support files may be controlled by
737   variables in the personal or global _Alpine_ configuration file:
738   signature, addressbook and its index file, postponed messages, and
739   newsrc.
740
741   Unix _Alpine_ uses the following environment variables:
742   TERM
743          Tells _Alpine_ what kind of terminal is being used.
744   DISPLAY
745          Determines if _Alpine_ will try to display IMAGE attachments.
746   TMPDIR, TMP, or TEMP
747          Specifies location of temporary storage area, first one set wins
748   SHELL
749          If not set, default is /bin/sh
750   MAILCAPS
751          A semicolon delimited list of path names to mailcap files.
752     __________________________________________________________________
753
754Support Files, Environment Variables, and Registry Settings: PC-Alpine
755
756   This section lists the various files which _PC-Alpine_ uses which are
757   not normal mail folders. All of these are the default names of files,
758   they may vary based on _Alpine_'s configuration.
759
760   $PINERC or <PineRC registry value> or $HOME\PINE\PINERC or <PINE.EXE
761          dir>\PINERC
762          Path to (required) personal configuration file.
763   $PINERCEX or $HOME\PINE\PINERCEX or <PINE.EXE dir>\PINERCEX
764          Path to personal exceptions configuration file.
765   $PINECONF
766          Path of optional global configuration file.
767   <PINERC directory>\ADDRBOOK
768          Personal addressbook
769   <PINERC directory>\PINEDEBG.TXT
770          Location of _Alpine_ debug file.
771   <PINERC directory>\MAILCAP and/or <PINE.EXE dir>\MAILCAP
772          These paths are only used if $MAILCAPS not set.
773   $HOME\NEWSRC or <PINERC directory>\NEWSRC
774          Personal USENET subscription list. This may be shared with other
775          newsreading programs.
776   $HOME\MAIL\INTRUPTD
777          The text of a message which was interrupted by some unexpected
778          error which _Alpine_ detected.
779   $HOME\MAIL\POSTPOND
780          A folder of messages which the user chose to postpone.
781
782   Registry Values:
783   HKEY_LOCAL_MACHINE\Software\University of Washington\Alpine\1.0
784          _Pinedir_: The directory that contains the _Alpine_ executable.
785          _PineEXE_: The name of the _Alpine_ executable (most commonly
786          "alpine.exe").
787   HKEY_CURRENT_USER\Software\University of Washington\Alpine\1.0
788          _PineRC_: The path that points to the default pinerc to use.
789   HKEY_LOCAL_MACHINE\Software\Clients\Mail\Alpine
790          _DLLPath_: The path that points to _Alpine_'s pmapi32.dll.
791   HKLM\Software\Clients\Mail\Alpine\shell\open\command
792          _(Default)_: When set as the default mailer, this is the command
793          that is run by external programs.
794   HKLM\Software\Clients\Mail\Alpine\Protocols\Mailto\DefaultIcon
795          _(Default)_: This points to the icon to display in relation to
796          _Alpine_'s mailto URL rendering.
797   HKLM\Software\Clients\Mail\Alpine\Protocols\Mailto\shell\open\command
798          _(Default)_: This value is the command that gets run by external
799          programs when a mailto URL is run with _PC-Alpine_ set as the
800          default mailer.
801   HKLM\Software\Clients\News\Alpine\shell\open\command
802          _(Default)_: When set as the default newsreader, this is the
803          command that is run by external programs.
804   HKLM\Software\Clients\News\Alpine\Protocols\news\DefaultIcon
805          _(Default)_: This points to the icon to display in relation to
806          _Alpine_'s news URL rendering.
807   HKLM\Software\Clients\News\Alpine\Protocols\news\shell\open\command
808          _(Default)_: This value is the command that gets run by external
809          programs when a news URL is run with _Alpine_ set as the default
810          newsreader.
811   HKLM\Software\Clients\News\Alpine\Protocols\nntp\DefaultIcon
812          _(Default)_: This points to the icon to display in relation to
813          _Alpine_'s nntp URL rendering.
814   HKLM\Software\Clients\News\Alpine\Protocols\nntp\shell\open\command
815          _(Default)_: This value is the command that gets run by external
816          programs when a nntp URL is run with _Alpine_ set as the default
817          newsreader.
818
819   _Alpine_'s personal configuration file may be in the same directory as
820   the executable, or if that is inconvenient because the executable is on
821   a shared or read-only drive, then it can be in a file named by the
822   $PINERC environment variable, or in $HOME\ALPINE\PINERC, where if not
823   set, $HOME defaults to the root of the current working drive.
824
825   Most of the other support files key off of the location of the PINERC
826   file. However, in the case of the NEWSRC file, the path $HOME\NEWSRC is
827   checked first. Also, the postponed messages and interrupted message
828   folders are placed in the default folder collection, normally in the
829   directory $HOME\MAIL.
830
831   The location of the following support files may be controlled by
832   variables in the personal or global _Alpine_ configuration file:
833   signature, addressbook (and its index file), postponed messages, and
834   newsrc.
835
836   _PC-Alpine_ uses the following environment variables:
837   PINERC
838          Overrides default path to pinerc file.
839   PINERCEX
840          Overrides default path to personal exceptions configuration
841          file.
842   PINECONF
843          Optional path to global _Alpine_ config file.
844   HOME
845          If not set, _Alpine_ uses the root of the current drive, e.g. C:
846   TMPDIR, TMP, or TEMP
847          Specifies location of temporary storage area, first one set wins
848   COMSPEC
849          Specifies shell for external commands.
850   MAILCAPS
851          A semicolon delimited list of path names to mailcap files.
852
853                             Command Line Arguments
854
855Alpine
856
857   _Alpine_ and _PC-Alpine_ can accept quite a few command-line arguments.
858   Many of these arguments overlap with variables in the _Alpine_
859   configuration file. If there is a difference, then a flag set in the
860   command line takes precedence. Both _Alpine_ and _PC-Alpine_ expect
861   command line arguments (other than addresses) to be preceded by the "-"
862   (dash) as normally used by UNIX programs.
863
864   _[addresses]_
865          Send-to: If you give _Alpine_ an argument or arguments which do
866          not begin with a dash, _Alpine_ treats them as email addresses.
867          _Alpine_ will startup in the composer with a message started to
868          the addresses specified. Once the message is sent, the _Alpine_
869          session closes. Standard input redirection is allowed. Separate
870          multiple addresses with a space between them. Addresses are
871          placed in the "To" field only.
872   < _file_
873          _Alpine_ will startup in the composer with _file_ read into the
874          body of the message. Once the message is sent, the _Alpine_
875          session closes.
876   -attach _file_
877          Go directly into composer with given file attached.
878   -attachlist _file-list_
879          Go directly into composer with given files attached. This must
880          be the last option on the command line.
881   -attach_and_delete _file_
882          Go directly into composer with given file attached, delete when
883          finished.
884   -aux _local_directory_
885          _PC-Alpine_ only. This tells _PC-Alpine_ the local directory to
886          use for storing auxiliary files, like debug files, address
887          books, and signature files. The pinerc may be local or remote.
888   -nosplash
889          _PC-Alpine_ only. This tells _PC-Alpine_ to not display the
890          splash screen upon startup. This may be helpful for certain
891          troubleshooting or terminal server scenarios.
892   -bail
893          If the personal configuration file doesn't already exist, exit.
894          This might be useful if the configuration file is accessed using
895          some remote filesystem protocol. If the remote mount is missing
896          this will cause _Alpine_ to quit instead of creating a new
897          pinerc.
898   -c _n_
899          When used with the -f option, apply the _n_th context. This is
900          used when there are multiple folder collections (contexts) and
901          you want to open a folder not in the primary collection.
902   -conf
903          Configuration: Prints a sample system configuration file to the
904          screen or standard output. To generate an initial system
905          configuration file, execute
906                alpine -conf > /usr/local/lib/pine.conf
907
908          To generate a system configuration file using settings from an
909          old system configuration file, execute
910                alpine -P old-pine.conf -conf > /usr/local/lib/pine.conf
911
912          A system configuration file is not required.
913   -convert_sigs _-p pinerc_
914          Convert signatures contained in signature files into literal
915          signatures.
916   -copy_abook _<local_abook_file> <remote_abook_folder>_
917          Copy an address book file to a remote address book folder. If
918          the remote folder doesn't exist, it will be created. If it
919          exists but the first message in the folder isn't a remote
920          address book header message, the copy will be aborted. This flag
921          will not usually be used by a user. Instead, the user will
922          create a remote address book from within _Alpine_ and copy
923          entries from the local address book by using aggregate Save in
924          the address book screen.
925   -copy_pinerc _<local_pinerc_file> <remote_pinerc_folder>_
926          Copy a pinerc configuration file to a remote pinerc folder. If
927          the remote folder doesn't exist, it will be created. If it
928          exists but the first message in the folder isn't a remote pinerc
929          header message, the copy will be aborted. This flag may be
930          useful to users who already have a local pinerc file and would
931          like to convert it to a remote pinerc folder and use that
932          instead. This gives a way to bootstrap that conversion without
933          having to manually reset all of the variables in the remote
934          pinerc folder.
935   -d _debug-level_
936          Debug Level: Sets the level of debugging information written by
937          _Alpine_. _Debug-level_ can be set to any integer 0-9. A debug
938          level of 0 turns off debugging for the session. (Actually there
939          are some levels higher than 9, but you probably don't want to
940          see them. Sensitive authentication information is hidden at
941          levels less than 10.)
942   -d _keywords_
943          You may use a more detailed version of the debugging flag to set
944          the debug level in separate parts of _Alpine_. The possibilities
945          are flush, timestamp, imap=0..4, tcp, numfiles=0..31, and
946          verbose=0..9. _Flush_ causes debugging information to be flushed
947          immediately to the debug file as it is written. _Verbose_ is the
948          general debugging verbosity level. _Timestamp_ causes timestamps
949          to be added to the debug file, which is useful when you are
950          trying to figure out what is responsible for delays. _Numfiles_
951          sets the number of debug files saved. _Imap_ sets the debug
952          level for the debugging statements related to the conversation
953          with the IMAP server, and more generally, for the debugging
954          related to _Alpine_'s interaction with the C-Client library. If
955          _imap_ is set higher than 4, sensitive authentication information
956          will be included in the debug file. _Tcp_ adds more TCP/IP
957          debugging information.
958   -f _folder_
959          Startup folder: _Alpine_ will open this folder in place of the
960          standard INBOX.
961   -F _file_
962          Open named text file for viewing and forwarding.
963   -h
964          Help: Prints the list of available command-line arguments to the
965          screen.
966   -i
967          _Alpine_ will start up in the FOLDER INDEX screen instead of the
968          MAIN MENU.
969          Configuration equivalent: _initial-keystroke-list=i_.
970   -I _a,b,c,..._
971          Initial Keystrokes: _Alpine_ will execute this comma-separated
972          sequence of commands upon startup. This allows users to get
973          _Alpine_ to start in any of its menus/screens. You cannot include
974          any input to the composer in the initial keystrokes. The key
975          <Return> is represented by a ``CR'' in the keystroke list; the
976          spacebar is designated by the letters ``SPACE''. Control keys
977          are two character sequences beginning with ``^'', such as
978          ``^I''. A tab character is ``TAB''. Function keys are ``F1'' -
979          ``F12'' and the arrow keys are ``UP'', ``DOWN'', ``LEFT'', and
980          ``RIGHT''. A restriction is that you can't mix function keys and
981          character keys in this list even though you can, in some cases,
982          mix them when running _Alpine_. A user can always use only
983          _character_ keys in the startup list even if he or she is using
984          _function_ keys normally, or vice versa. If an element in this
985          list is a string of characters surrounded by double quotes (")
986          then it will be expanded into the individual characters in the
987          string, excluding the double quotes.
988          Configuration equivalent: _initial-keystroke-list_
989   -install
990          For _PC-Alpine_ only, this option prompts for some basic setup
991          information, then exits.
992   -k
993          Function-Key Mode: When invoked in this way, _Alpine_ expects
994          the input of commands to be function-keys. Otherwise, commands
995          are linked to the regular character keys.
996          Configuration equivalent: _use-function-keys_ included in
997          _feature-list_.
998   -n _n_
999          Message-Number: When specified, _Alpine_ starts up in the FOLDER
1000          INDEX screen with the current message being the specified
1001          message number.
1002   -nowrite_password_cache
1003          This tells _Alpine_ to use the local password cache if there is
1004          one, but to never offer writing new passwords to the cache.
1005   -o _folder_
1006          Opens the INBOX (or a folder specified via the -f argument)
1007          ReadOnly.
1008   -p _pinerc_
1009          Uses the named file as the personal configuration file instead
1010          of _~/.pinerc_ or the default PINERC search sequence _PC-Alpine_
1011          uses. Pinerc may be either a local file or a remote
1012          configuration folder.
1013   -P _pinerc_
1014          Uses the named file as the system wide configuration file
1015          instead of _/usr/local/lib/pine.conf_ on UNIX, or nothing on
1016          _PC-Alpine_. Pinerc may be either a local file or a remote
1017          configuration folder.
1018   -passfile _passfile_
1019          This tells _Alpine_ what file should be used as the password
1020          file. This should be a fully-qualified filename.
1021   -pinerc _file_
1022          Output fresh pinerc configuration to _file_, preserving the
1023          settings of variables that the user has made. Use _file_ set to
1024          ``-'' to make output go to standard out.
1025   -r
1026          Restricted Mode: For UNIX _Alpine_ only. _Alpine_ in restricted
1027          mode can only send email to itself. Save and export are limited.
1028   -registry _cmd_
1029          For _PC-Alpine_ only, this option affects the values of
1030          _Alpine_'s registry entries. Possible values for _cmd_ are set,
1031          noset, clear, clearsilent, and dump. _Set_ will always reset
1032          _Alpine_'s registry entries according to its current settings.
1033          _NoSet_ will never set any values in the registry, but it will
1034          still use the values already set in the registry. _Clear_ will
1035          clear the registry values. _Clearsilent_ will silently clear the
1036          registry values. _Dump_ will display the values of current
1037          registry settings. Note that the dump command is currently
1038          disabled. Without the -registry option, _PC-Alpine_ will write
1039          values into the registry only if there currently aren't any
1040          values set.
1041   -sort _key_
1042          Sort-Key: Specifies the order messages will be displayed in for
1043          the FOLDER INDEX screen. _Key_ can have the following values:
1044          arrival, date, subject, orderedsubj, thread, from, size, score,
1045          to, cc, arrival/reverse, date/reverse, subject/reverse,
1046          orderedsubj/reverse, thread/reverse, from/reverse, size/reverse,
1047          score/reverse, to/reverse, and cc/reverse. The default value is
1048          "arrival". The _key_ value reverse is equivalent to
1049          arrival/reverse.
1050          Configuration equivalent: _sort-key_.
1051   -supported
1052          Some options may or may not be supported depending on how
1053          _Alpine_ was compiled. This is a way to determine which options
1054          are supported in the particular copy of _Alpine_ you are using.
1055   -install
1056          For _PC-Alpine_ only, this option removes references to Alpine
1057          in Windows settings. The registry settings are removed and the
1058          password cache is cleared.
1059   -url _url_
1060          Open the given URL.
1061   -v
1062          Version: Print version information to the screen.
1063   -version
1064          Version: Print version information to the screen.
1065   -x _exceptions_config_
1066          Configuration settings in the exceptions config override your
1067          normal default settings. _Exceptions_config_ may be either a
1068          local file or a remote pinerc folder.
1069   -z
1070          Enable Suspend: When run with this flag, the key sequence ctrl-z
1071          will suspend the _Alpine_ session.
1072          Configuration equivalent: _enable-suspend_ included in
1073          _feature-list_.
1074   -_option_=_value_
1075          Assign _value_ to the config option _option_. For example,
1076          _-signature-file=sig1_ or _-feature-list=signature-at-bottom_.
1077          (Note: feature-list values are additive and features may be
1078          preceded with no- to turn them off).
1079
1080Pico
1081
1082   The following command line options are supported in _Pico_:
1083
1084   +_n_
1085          Causes _Pico_ to be started with the cursor located _n_ lines
1086          into the file. (Note: no space between "+" sign and number)
1087
1088   -a
1089          Display all files and directories, including those beginning
1090          with a period (.).
1091
1092   -b
1093          Enable the option to Replace text matches found using the "Where
1094          is" command. This now does nothing. Instead, the option is
1095          always turned on (as if the -b flag had been specified).
1096
1097   -d
1098          Rebind the "delete" key so the character the cursor is on is
1099          rubbed out rather than the character to its left.
1100
1101   -e
1102          Enable file name completion.
1103
1104   -f
1105          Use function keys for commands. _This option supported only in
1106          conjunction with UW Enhanced NCSA telnet._
1107
1108   -g
1109          Enable "Show Cursor" mode in file browser. Cause cursor to be
1110          positioned before the current selection rather than placed at
1111          the lower left of the display.
1112
1113   -k
1114          Causes "Cut Text" command to remove characters from the cursor
1115          position to the end of the line rather than remove the entire
1116          line.
1117
1118   -m
1119          Enable mouse functionality. This only works when _Pico_ is run
1120          from within an X Window System "xterm" window.
1121
1122   -n_n_
1123          The -n_n_ option enables new mail notification. The _n_ argument
1124          is optional, and specifies how often, in seconds, your mailbox
1125          is checked for new mail. For example, -n60 causes _Pico_ to
1126          check for new mail once every minute. The default interval is
1127          180 seconds, while the minimum allowed is 30. (Note: no space
1128          between "n" and the number)
1129
1130   -o _dir_
1131          Sets operating directory. Only files within this directory are
1132          accessible. Likewise, the file browser is limited to the
1133          specified directory subtree.
1134
1135   -p
1136          Preserve the "start" and "stop" characters, typically Ctrl-Q and
1137          Ctrl-S, which are sometimes used in communications paths to
1138          control data flow between devices that operate at different
1139          speeds.
1140
1141   -q
1142          TermdefWins. Termcap or terminfo escape sequences are used in
1143          preference to default escape sequences.
1144
1145   -Q _quotestr_
1146          Set the quote string. Especially useful when composing email,
1147          setting this allows the quote string to be checked for when
1148          Justifying paragraphs. A common quote string is "> ".
1149
1150   -r_n_
1151          Sets column used to limit the "Justify" command's right margin.
1152
1153   -t
1154          Enable "tool" mode. Intended for when _Pico_ is used as the
1155          editor within other tools (e.g., Elm, Pnews). _Pico_ will not
1156          prompt for save on exit, and will not rename the buffer during
1157          the "Write Out" command.
1158
1159   -v
1160          View the file only, disallowing any editing.
1161
1162   -version
1163          Print version information.
1164
1165   -w
1166          Disable word wrap (thus allow editing of long lines).
1167
1168          _Note: Pico will break any lines over 255 characters when
1169          reading a file, regardless of word wrapping._
1170
1171   -x
1172          Disable keymenu at the bottom of the screen.
1173
1174   -z
1175          Enable ^Z suspension of _Pico_.
1176
1177Pilot
1178
1179   The following command line options are supported in _Pilot_:
1180
1181   -a
1182          Display all files including those beginning with a period (.).
1183
1184   -f
1185          Use function keys for commands. _This option supported only in
1186          conjunction with UW Enhanced NCSA telnet._
1187
1188   -g
1189          Enable "Show Cursor" mode. Cause cursor to be positioned before
1190          the current selection rather than placed at the lower left of
1191          the display.
1192
1193   -m
1194          Enable mouse functionality. This only works when _Pilot_ is run
1195          from within an X Window System "xterm" window.
1196
1197   -n_n_
1198          The -n_n_ option enables new mail notification. The _n_ argument
1199          is optional, and specifies how often, in seconds, your mailbox
1200          is checked for new mail. For example, -n60 causes _Pilot_ to
1201          check for new mail once every minute. The default interval is
1202          180 seconds, while the minimum allowed is 30. (Note: no space
1203          between "n" and the number)
1204
1205   -o _dir_
1206          Sets operating directory. Only files within the specified
1207          directory are accessible and browsing is limited to the
1208          specified directory subtree.
1209
1210   -v
1211          Enable single vertical column display.
1212
1213   -x
1214          Disable keymenu at the bottom of the screen.
1215
1216   -z
1217          Enable ^Z suspension of _Pilot_.
1218
1219                         Configuration and Preferences
1220
1221Alpine Configuration
1222
1223   There is very little in _Alpine_ which _requires_ compile-time
1224   configuration. In most cases, the compiled-in preferences will suit
1225   users and administrators just fine. When running _Alpine_ on a UNIX
1226   system, the default built-in configuration can be changed by setting
1227   variables in the system configuration files, /usr/local/lib/pine.conf
1228   or /usr/local/lib/pine.conf.fixed. (Actually, these files can be
1229   changed using the configure arguments --with-system-pinerc=VALUE or
1230   --with-system-fixed-pinerc=VALUE.) The location of the pine.conf file
1231   can be changed with the -P command line argument. Both _Alpine_ and
1232   _PC-Alpine_ also use personal (user-based) configuration files. On UNIX
1233   machines, the personal configuration file is the file ~/.pinerc. For
1234   _PC-Alpine_ systems, the personal configuration file is in $PINERC or
1235   <PineRC registry value> or ${HOME}\ALPINE\PINERC or <ALPINE.EXE
1236   dir>\PINERC. Or the personal configuration file can be specified with
1237   the -p command line argument.
1238
1239   All of these configuration files, other than the fixed system config
1240   pine.conf.fixed on UNIX systems, may optionally be remote configuration
1241   files instead of local files. This is discussed further in the
1242   following section and in Remote Configuration.
1243
1244   After the personal configuration, _Alpine_ may optionally use a
1245   personal exceptions configuration file which is specified with the
1246   command line option "-x exceptions_config". "Exceptions_config" may
1247   also be either a local file or a remote configuration folder. For Unix
1248   _Alpine_, if you don't have a "-x" command line option, _Alpine_ will
1249   look for the file ".pinercex" in the same local directory that the
1250   regular config file is located in. If the regular config file is remote
1251   then Unix _Alpine_ looks in the home directory for ".pinercex".
1252
1253   For _PC-Alpine_, if you don't have a "-x" command line option,
1254   _PC-Alpine_ will use the value of the environment variable $PINERCEX. If
1255   that is not set, _PC-Alpine_ will look for the local file "PINERCEX" in
1256   the same local directory that the regular config file is located in. If
1257   the regular config file is remote then _PC-Alpine_ looks in the local
1258   directory specified by the "-aux local_directory" command line
1259   argument, or the directory ${HOME}\ALPINE, or in <ALPINE.EXE
1260   directory>.
1261
1262   The syntax of a non-list configuration variable is this:
1263
1264     <variable> = <value>
1265
1266   If the value is absent then the variable is unset. To set a variable to
1267   the empty value two double quotes (""). This is equivalent to an absent
1268   value except that it overrides any system-wide default value that may
1269   be set. Quotes may be used around any value. All values are strings and
1270   end at the end of the line or the closing quote. Leading and trailing
1271   space is ignored unless it is included in the quotes. There is one
1272   variable, _use-only-domain-name_, for which the only appropriate values
1273   are _yes_ and _no_. That's because it is a variable from the early days
1274   of _Alpine_ before features existed.
1275
1276   There is also a second type of variable, lists. A list is a
1277   comma-separated list of values. The syntax for a list is:
1278
1279     <variable> = <value> [, <value> , ... ]
1280
1281   A list can be continued on subsequent lines by beginning the line with
1282   white-space. Both the per-user and global configuration files may
1283   contain comments which are lines beginning with a #.
1284
1285   For UNIX _Alpine_, there are five ways in which each variable can be
1286   set. In decreasing order of precedence they are:
1287    1. the system-wide _fixed_ configuration file
1288    2. a command line argument
1289    3. the personal exceptions file
1290    4. the personal configuration file
1291    5. the system-wide configuration file.
1292
1293   If the variable is not set in any of those places, there is a default
1294   setting in the source code.
1295
1296   So, system-wide fixed settings always take precedence over command line
1297   flags, which take precedence over per-user exception settings, which
1298   take precedence over per-user settings, which take precedence over
1299   system-wide configuration settings. _PC-Alpine_ has the same list,
1300   except that it does not use a system-wide _fixed_ configuration file.
1301   This can be modified slightly by using inheritance, which is covered
1302   below.
1303
1304   You may get a sample/fresh copy of the system configuration file by
1305   running _alpine -conf_. The result will be printed on the standard
1306   output with very short comments describing each variable. (The online
1307   help in the Setup screens provides much longer comments.) If you need
1308   to fix some of the configuration variables, you would use the same
1309   template for the fixed configuration file as for the regular
1310   system-wide configuration file. (If it isn't clear, the purpose of the
1311   fixed configuration file is to allow system administrators to restrict
1312   the configurability of _Alpine_. It is by no means a bullet-proof
1313   method.) _Alpine_ will automatically create the personal configuration
1314   file the first time it is run, so there is no need to generate a
1315   sample. _Alpine_ reads and writes the personal configuration file
1316   occasionally during normal operation. Users will not normally look at
1317   their personal configuration file, but will use the Setup screens from
1318   within _Alpine_ to set the values in this file. If a user does add
1319   additional comments to the personal configuration file they will be
1320   retained.
1321
1322   References to environment variables may be included in the _Alpine_
1323   configuration files. The format is $variable or ${variable}. The
1324   character ~ will be expanded to the $HOME environment variable. For a
1325   more complete explanation of how environment variables work, see the
1326   section Using Environment Variables.
1327
1328   When environment variables are used for _Alpine_ settings which take
1329   lists, you must have an environment variable set for each member of the
1330   list. That is, _Alpine_ won't properly recognize an environment
1331   variable which is set equal to a comma-delimited list. It is OK to
1332   reference unset environment variables in the _Alpine_ configuration
1333   file, which will expand to nothing.
1334
1335  Remote and Local Configuration
1336
1337   There are two types of storage for configuration information. _Local_
1338   configuration files are used by default. These are just regular files
1339   on the UNIX system or on the PC. _Remote_ configuration folders are
1340   stored on an IMAP server. The advantage of using a remote configuration
1341   is that the same information may be accessed from multiple platforms.
1342   For example, if you use one computer at work and another at home, the
1343   same configuration could be used from both places. A configuration
1344   change from one place would be seen in both places. Technical
1345   information about remote configuration is in Remote Configuration.
1346
1347  Generic and Exceptional Configuration
1348
1349   If you use _Alpine_ from more than one platform it may be convenient to
1350   split your configuration information into two pieces, a generic piece
1351   and exceptions which apply to a particular platform. For example,
1352   suppose you use _Alpine_ from home and from work. Most of your
1353   configuration settings are probably the same in both locations, so
1354   those settings belong in the generic settings configuration. However,
1355   you may use a different SMTP server and INBOX from home than you do
1356   from work. The "smtp-server" and "inbox-path" variables could be part
1357   of your exceptional configuration so that they could be different in
1358   the two places.
1359
1360   You can use the command line option "-x config" to split your
1361   configuration into generic and exceptional pieces. Config may be either
1362   local or remote.
1363
1364   For most people, splitting the configuration information into two
1365   pieces is only going to be useful if the generic information is
1366   accessed remotely. If you already have a local pinerc file with
1367   settings you like you may find that the command Setup/RemoteConfigSetup
1368   will be useful in helping you convert to a remote configuration. The
1369   command line flag copy_pinerc may also be useful.
1370
1371  Configuration Inheritance
1372
1373   Configuration inheritance is a power user feature. It is confusing and
1374   not completely supported by the configuration user interface.
1375
1376   For configuration variables which are lists, like "smtp-server" or
1377   "incoming-folders", the inheritance mechanism makes it possible to
1378   _combine_ the values of options from different configuration locations
1379   instead of _replacing_ the value. Configuration Inheritance has more
1380   information about how inheritance is used.
1381     __________________________________________________________________
1382
1383General Configuration Variables
1384
1385   The following is a list of all _Alpine_ configuration variables, in
1386   alphabetical order. Note that not all variables apply to all versions
1387   of _Alpine_ and that some variables are only applicable in a system
1388   configuration file and some are only applicable in a personal
1389   configuration file. These are configuration _variables_. Configuration
1390   Features are in a separate section.
1391
1392   _addrbook-sort-rule_
1393          This variable sets up the default address book sorting.
1394          Currently, _Alpine_ will accept the values _dont-sort_,
1395          _fullname-with-lists-last_, _fullname_,
1396          _nickname-with-lists-last_, and _nickname_. The default is to sort
1397          by fullname with lists last. If you use an address book from
1398          more than one computer and those computers sort the address book
1399          differently then the sort order will be the order where the last
1400          change to the address book was made. There are two reasons the
1401          sorting might be different on different systems. First, the
1402          addrbook-sort-rule may be set differently in the two places.
1403          Second, the collation rules on the two computers may be
1404          different. For example, one system might ignore special
1405          characters while the other doesn't or one may sort upper and
1406          lower case letters together while the other doesn't. In any
1407          case, the order you see is the order on the system where the
1408          last change was made, for example by an address book edit or a
1409          Take Address command.
1410          This option is displayed as "Addressbook Sort Rule".
1411   _address-book_
1412          A list of personal address books. Each entry in the list is an
1413          optional nickname followed by a pathname or file name relative
1414          to the home directory. The nickname is separated from the rest
1415          of the line with whitespace. Instead of a local pathname or file
1416          name, a remote folder name can be given. This causes the address
1417          book to be a Remote address book. Remote folder syntax is
1418          discussed in Syntax for Remote Folders. This list of address
1419          books will be combined with the global-address-book list to
1420          arrive at the complete set of address books.
1421   _addressbook-formats_
1422          This option specifies the format that address books are
1423          displayed in. By default, address books are displayed with the
1424          nicknames in the first column, the fullnames in the second
1425          column, and addresses in the third column. The system figures
1426          out reasonable defaults for the widths of the columns. An
1427          address book may be given a different format by listing special
1428          tokens in the order you want them to display. The possible
1429          tokens are NICKNAME, FULLNAME, ADDRESS, FCC, and COMMENT. More
1430          details are included in the online help for this variable.
1431   _alt-addresses_
1432          This option provides a place for you to list alternate email
1433          addresses you may have. Each address in the list should be the
1434          actual email address part of an address, without the full name
1435          field or the angle brackets. For example:
1436
1437                              user@example.com
1438          The matching is case-insensitive, so this would match any of
1439          User@example.com, user@Example.Com, or USER@EXAMPLE.COM as well.
1440          If set, the option affects the behavior of the Reply command and
1441          the "+" symbol in the MESSAGE INDEX, which denotes that a
1442          message has been addressed specifically to you.
1443          In the default INDEX display the personal name (or email
1444          address) of the person listed in the message's "From:" header
1445          field is usually displayed except when that address is yours or
1446          one of your alternate addresses. In that case you will usually
1447          see the name of the first person specified in the message's
1448          "To:" header field with the prefix "To: " prepended.
1449          With respect to Reply, the reply-to-all option will exclude
1450          addresses listed here.
1451          The feature copy-to-address-to-from-if-it-is-us is somewhat
1452          related to this option.
1453          In addition to a list of actual addresses, you may use regular
1454          expressions (as used with egrep with the ignore case flag) to
1455          describe the addresses you want to match. _Alpine_ will somewhat
1456          arbitrarily interpret your entry as a regular expression if it
1457          contains any of the characters *, |, +, ?, {, [, ^, $, or \.
1458          Otherwise, it will be treated literally. The feature
1459          disable-regular-expression-matching-for-alternate-addresses may
1460          be used to turn off regular expression processing regardless of
1461          whether or not special characters appear in the entry.
1462          A description of how regular expressions work is beyond the
1463          scope of this help text, but some examples follow.
1464          The entry
1465
1466                               .*@example.com
1467          in the alt-addresses list would mean that any address with a
1468          domain name of example.com (such as fred@example.com or
1469          wilma@example.com) will be considered one of your alternate
1470          addresses. Strictly speaking, the dot in example.com ought to be
1471          escaped with a backslash, as in example\.com, and a dollar sign
1472          anchor ought to come at the end of the expression to prevent a
1473          match of example.com.org. Complicating things further, the
1474          dollar sign is special in the _Alpine_ configuration (it
1475          signifies environment variable expansion) so the dollar sign
1476          should be doubled or backslash escaped for _Alpine_'s sake.
1477          Quotes around the whole expression will not escape the dollar
1478          sign successfully. So this example should look like
1479
1480                              .*@example\.com$$
1481          The entry
1482
1483                          ^fred[0-9]*@example.com$$
1484          would match fred3@example.com or fred17@example.com as well as
1485          fred@example.com.
1486          You could match all addresses that look like
1487          fred+stuff@example.com for any value of stuff with the entry
1488
1489                           ^fred\+.*@example.com$$
1490          Notice that you have to escape the plus sign with a backslash
1491          because plus is a special character in regular expressions. If
1492          you wanted to match plain fred as well as fred+stuff the
1493          expression
1494
1495                        ^fred(()|\+.*)@example.com$$
1496          would do it, but it would be easier to just add fred@example.com
1497          as a separate entry.
1498          One more example, a match of all first-level subdomains, is
1499          given by
1500
1501                    ^fred@[[:alnum:]_-]*\.example\.com$$
1502          Because the regular expression matching is based on an old
1503          library (hs_regex) the regular expressions might not work
1504          exactly as you expect, but they should be close.
1505          This option is displayed as "Alternate Addresses".
1506   _bugs-additional-data_
1507          System-wide configuration files only. Program/Script used by
1508          _Report Bug_ command. Output from the program/script is captured
1509          and attached to the bug report.
1510   _bugs-fullname_, _bugs-address_, _local-fullname_, _local-address_,
1511          _suggest-fullname_, and _suggest-address_
1512          System-wide configuration files only. These are used by the bug
1513          report commands which can be accessed from some of the Help
1514          screens.
1515   _busy-cue-rate_
1516          When _Alpine_ is delayed for some reason it usually shows that
1517          something is happening with a small animated display in the
1518          status message line near the bottom of the screen. This option
1519          sets how frequently the characters (for example, a spinning bar)
1520          in the active status message lines are updated. At most, it can
1521          be set to be updated 20 times per second.
1522          Setting this value to zero will prevent display of the
1523          animations altogether.
1524          The option busy-cue-spinner-only can be used to remove the
1525          randomness from this animated display.
1526   _character-set_
1527          This is now obsolete, replaced by three separate variables:
1528          _display-character-set_, _keyboard-character-set_, and
1529          _posting-character-set_. See the section on International
1530          Character Sets for more details.
1531   _color-style_
1532          UNIX _Alpine_ only (color is automatically on with _PC-Alpine_).
1533          If the terminal or terminal emulator you are using is capable of
1534          displaying colors, this variable controls whether or not color
1535          will be used in _Alpine_. If you turn color on and things are
1536          set up correctly, you should see color appear on the screen
1537          immediately. Modern terminal emulators are usually capable of
1538          displaying colors.
1539          This variable may be set to any of the following values:
1540
1541        no-color
1542                Don't use color.
1543
1544        use-termdef
1545                In order to decide if your terminal is capable of color,
1546                _Alpine_ looks in the terminal capabilities database,
1547                TERMINFO or TERMCAP, depending on how _Alpine_ was
1548                compiled. This is a good option to choose if you switch
1549                between a color and a non-color terminal with the same
1550                _Alpine_ configuration. _Alpine_ will know to use color on
1551                the color terminal because it is described in the termcap
1552                entry, and _Alpine_ will know to use black and white on
1553                the non-color terminal. Color Details has more information
1554                about configuring a termcap entry for color. This is
1555                usually something a system administrator does.
1556
1557        force-ansi-8color
1558                Because setting up a termcap entry is confusing and
1559                because the terminal capabilities database is often not
1560                correctly configured for color, this choice and the next
1561                may be easier for you to use. If your terminal emulator
1562                responds to ANSI color escape sequences, which many do,
1563                this option will cause _Alpine_ to believe your terminal
1564                will respond to the escape sequences which produce eight
1565                different foreground and background colors. The escape
1566                sequences used to set the foreground colors are
1567
1568                          ESC [ 3 <color_number> m
1569
1570                where the color_number is an ASCII digit between 0 and 7.
1571                The numbers 0 through 7 should correspond to the colors
1572                black, red, green, yellow, blue, magenta, cyan, and white.
1573                Some terminal emulators use a pre-ANSI scheme which swaps
1574                the colors blue and red and the colors yellow and cyan.
1575                This will cause the default colors to be different, but
1576                other than that things should work fine. There is also a
1577                9th color available, the last one shown, which is the
1578                default color from the terminal emulator. When used as a
1579                background color some people refer to this color as
1580                "transparent", which is why the letters "TRAN" are shown
1581                in the color swatch of the SETUP COLOR screen. The
1582                foreground transparent color is shown as the color of the
1583                "TRAN" text. (The transparent color will not work
1584                correctly in a PC-Alpine configuration.) The escape
1585                sequences used to set the background colors are the same
1586                as for the foreground colors except a "4" replaces the
1587                "3".
1588
1589                Note: With the Tera Term terminal emulator this setting
1590                works well. You should also have the Tera Term "Full
1591                color" option turned OFF. You may find the "Full color"
1592                option in Tera Term's "Setup" menu, in the "Window"
1593                submenu.
1594
1595        force-ansi-16color
1596                Many terminal emulators know about the same eight colors
1597                above plus eight more. This option attempts to use all 16
1598                colors. The same escape sequences as for the eight-color
1599                terminal are used for the first eight colors. The escape
1600                sequences used to set foreground colors 8-15 are the same
1601                as for 0-7 except the "3" is replaced with a "9". The
1602                background color sequences for colors 8-15 are the same as
1603                for 0-7 except the "4" is replaced with "10". You can tell
1604                if the 16 colors are working by turning on this option and
1605                then going into one of the color configuration screens,
1606                for example, the configuration screen for Normal Color. If
1607                you see 16 different colors to select from (plus a 17th
1608                for the transparent color), it's working.
1609
1610        force-xterm-256color
1611                Some versions of xterm (and some other terminal emulators)
1612                have support for 256 colors. The escape sequences used to
1613                set the foreground colors are
1614
1615                       ESC [ 38 ; 5 ; <color_number> m
1616
1617                where the color_number is an ASCII digit between 0 and
1618                255. Background colors are the same with the 38 replaced
1619                with a 48. The numbers 0 through 15 are probably similar
1620                to the 16 color version above, then comes a 6x6x6 color
1621                cube, followed by 24 colors of gray. The terminal default
1622                (transparent) color is the 257th color at the bottom. Some
1623                terminal emulators will misinterpret these escape
1624                sequences causing the terminal to blink or overstrike
1625                characters or to do something else undesirable.
1626
1627                The PuTTY terminal emulator has an option called "Allow
1628                terminal to use xterm 256-colour mode" which allows PuTTY
1629                to work well with this 256-color setting.
1630
1631          There are two other possible color values which may be useful in
1632          some situations. In the color configuration screens there will
1633          sometimes be a color which has the label "NORM" inside its color
1634          swatch. If this is selected the corresponding foreground or
1635          background Normal Color will be used. Another similar color is
1636          the one that has the label "NONE" inside its color swatch. The
1637          meaning of this setting is that no color changing will be done.
1638          This NONE color is only useful in contexts where _Alpine_ is
1639          already coloring the text some color other than the Normal
1640          Color. For example, if the Reverse Color is set then the current
1641          line in the MESSAGE INDEX will be colored. If one of the index
1642          symbols (for example, the Index-to-me Symbol) has the NONE color
1643          as its background then the symbol's foreground color will be
1644          used to draw the actual text but the background color will be
1645          the same as whatever the background color already was. The color
1646          values which end up in the configuration file for these special
1647          values are the 11-character words "norm-padded", "none-padded",
1648          and "transparent".
1649          The normal default is "no-color".
1650          Once you've turned on color you may set the colors of many
1651          objects on the screen individually. The Color Configuration
1652          section has more information, or you may just try it by running
1653          the "Setup" command and typing "K" for Kolor to enter the color
1654          configuration screen (Kolor instead of Color because C means
1655          Config). Most categories of color which _Alpine_ supports are
1656          configurable there. Index line color is configured separately.
1657   _composer-word-separators_
1658          This option affects how a "word" is defined in the composer. The
1659          definition of a word is used when using the Forward Word and
1660          Backward Word commands in the composer, as well as when using
1661          the spell checker. Whitespace is always considered a word
1662          separator. Punctuation (like question marks, periods, commas,
1663          and so on) is always a word separator if it comes at the end of
1664          a word. By default, a punctuation character which is in the
1665          middle of a word does not break up that word as long as the
1666          character before and the character after it are both
1667          alphanumeric. If you add a character to this option it will be
1668          considered a word separator even when it occurs in the middle of
1669          an alphanumeric word. For example, if you want to skip through
1670          each part of an address instead of skipping the whole address at
1671          once you might want to include"@" and "." in this list. If you
1672          want the word-skipper to stop on each part of a UNIX filename
1673          you could add "/" to the list. The equal sign and dash are other
1674          possibilities you might find helpful.
1675   _composer-wrap-column_
1676          This option specifies an aspect of _Alpine_'s Composer. This
1677          gives the maximum width that auto-wrapped lines will have. It's
1678          also the maximum width of lines justified using the ^J Justify
1679          command. The normal default is _74_. The largest allowed setting
1680          is normally _80_ in order to prevent very long lines from being
1681          sent in outgoing mail. When the mail is actually sent, trailing
1682          spaces will be stripped off of each line.
1683   _current-indexline-style_
1684          current-indexline-style.
1685   _customized-hdrs_
1686          You may add your own custom headers to outgoing messages. Each
1687          header you specify here must include the header tag (Reply-To:,
1688          Approved:, etc.) and may optionally include a value for that
1689          header. If you want to see these custom headers each time you
1690          compose a message, you must add them to your
1691          default-composer-hdrs list, otherwise they become part of the
1692          rich header set which you only see when you press the rich
1693          header command. (If you are looking for a way to change which
1694          headers are _displayed_ when you view a message, take a look at
1695          the viewer-hdrs option instead.) Here's an example which shows
1696          how you might set your From address
1697
1698                     From: Full Name <user@example.com>
1699          and another showing how you might set a Reply-To address
1700
1701                         Reply-To: user@example.com
1702          You may also set non-standard header values here. For example,
1703          you could add
1704
1705                     Organization: My Organization Name
1706          or even
1707
1708                     X-Favorite-Colors: Purple and Gold
1709          If you include a value after the colon then that header will be
1710          included in your outgoing messages unless you delete it before
1711          sending. If a header in the Customized-Headers list has only a
1712          tag but no value, then it will not be included in outgoing
1713          messages unless you edit a value in manually. For example, if
1714
1715                                  Reply-To:
1716          is in the list, then the Reply-To header will be available for
1717          editing but won't be included unless a value is added while in
1718          the composer.
1719          It's actually a little more complicated than that. The values of
1720          headers that you set with the Customized-Headers option are
1721          defaults. If the message you are about to compose already has a
1722          value for a header, that value is used instead of a value from
1723          your Customized-Headers. For example, if you are Replying to a
1724          message the Subject field will already be filled in. In that
1725          case, if the Customized-Headers list contains a Subject line,
1726          the custom subject will _NOT_ be used. The subject derived from
1727          the subject of the message you are Replying to will be used
1728          instead.
1729          It is also possible to make header setting even more complicated
1730          and more automatic by using Roles, but if all you want to do is
1731          set a default value for a header, you don't need to think about
1732          Roles.
1733          If you change your From address you may also find it useful to
1734          add the changed From address to the alt-addresses configuration
1735          option.
1736          Limitation: Because commas are used to separate the list of
1737          Customized-Headers, it is not possible to have the value of a
1738          header contain a comma. Nor is there currently an "escape"
1739          mechanism provided to make this work.
1740          This option is displayed as "Customized Headers".
1741   _dead-letter-files_
1742          This option affects _Alpine_'s behavior when you cancel a
1743          message being composed. _Alpine_'s usual behavior is to write
1744          the canceled message to a file named "dead.letter" in your home
1745          directory, or "DEADLETR" when using _PC-Alpine_, overwriting any
1746          previous message.
1747          If you set this option to a value higher than one, then that
1748          many copies of dead letter files will be saved. For example, if
1749          you set this option to "3" then you may have files named
1750          "DEADLETR", "DEADLETR2", and "DEADLETR3"; or "dead.letter",
1751          "dead.letter2", and "dead.letter3". In this example, the most
1752          recently cancelled message will be in "dead.letter", and the
1753          third most recently cancelled message will be in "dead.letter3".
1754          The fourth most recently cancelled message will no longer be
1755          saved.
1756          If you set this option to zero, then NO record of canceled
1757          messages is maintained.
1758          If the feature Quell-Dead-Letter-On-Cancel is set, that
1759          overrides whatever you set for this option. If this option had
1760          existed at the time, then the Quell feature would not have been
1761          added, but it is still there for backwards compatibility. So, in
1762          order for this option to have the desired effect, make sure the
1763          Quell feature is turned off.
1764   _default-composer-hdrs_
1765          You can control which headers you want visible when composing
1766          outgoing email using this option. You can specify any of the
1767          regular set, any Rich Header, or any Customized-Hdrs which you
1768          have already defined. If you use this setting at all, you must
1769          specify all the headers you want to see, you can't just add to
1770          the regular header set. The default set is To:, Cc:, Attchmnt:,
1771          and Subject:.
1772          Note that the "Newsgroups:" header will be abbreviated in the
1773          Composer display, but should be spelled out in full here.
1774          This option is displayed as "Default Composer Headers".
1775   _default-fcc_
1776          The name of the folder to which all outgoing mail goes is set
1777          here. The compiled-in default is _sent-mail_ (UNIX) or _sentmail_
1778          (PC). It can be set to "" (two double quotes with nothing
1779          between them) to turn off saving copies of outgoing mail. If
1780          _default-fcc_ is a relative file name, then it is relative to
1781          your default collection for saves (see folder-collections).
1782          This option is displayed as "Default Fcc (File carbon copy)".
1783   _default-saved-msg-folder_
1784          This option determines the default folder name for _Saves_... If
1785          this is not a path name, it will be in the default collection
1786          for saves. Any valid folder specification, local or IMAP, is
1787          allowed. This default folder only applies when the
1788          saved-msg-name-rule doesn't override it. Unix _Alpine_ default
1789          is normally _saved-messages_ in the default folder collection.
1790          _PC-Alpine_ default is _SAVEMAIL_ (normally stored as
1791          _SAVEMAIL.MTX_).
1792          This option is displayed as "Default Saved Message Folder".
1793   _disable-these-authenticators_
1794          This variable is a list of SASL (Simple Authentication and
1795          Security Layer) authenticators which will be disabled. SASL is a
1796          mechanism for authenticating to IMAP, POP3, SMTP, and other
1797          network servers.
1798          _Alpine_ matches its list of supported authenticators with the
1799          server to determine the most secure authenticator that is
1800          supported by both. If no matching authenticators are found,
1801          _Alpine_ will revert to plaintext login (or, in the case of SMTP,
1802          will be unable to authenticate at all).
1803          The candidates for disabling are listed below. There may be more
1804          if you compile _Alpine_ with additional authenticators and/or a
1805          newer version of the c-client library.
1806          + GSSAPI
1807          + CRAM-MD5
1808          + PLAIN
1809          + LOGIN
1810          Normally, you will not disable any authenticators. There are two
1811          exceptions:
1812         1. You use a broken server that advertises an authenticator, but
1813            does not actually implement it.
1814         2. You have a Kerberos-capable version of _Alpine_ and the server
1815            is also Kerberos-capable, but you can not obtain Kerberos
1816            credentials on the server machine, thus you desire to disable
1817            GSSAPI (which in turn disables _Alpine_'s Kerberos support).
1818          It is never necessary to disable authenticators, since _Alpine_
1819          will try other authenticators before giving up. However,
1820          disabling the relevant authenticator avoids annoying error
1821          messages.
1822   _disable-these-drivers_
1823          This variable is a list of mail drivers which will be disabled.
1824          The candidates for disabling are listed below. There may be more
1825          in the future if you compile _Alpine_ with a newer version of
1826          the c-client library.
1827          + mbox
1828          + mbx
1829          + mh
1830          + mix
1831          + mmdf
1832          + mtx
1833          + mx
1834          + news
1835          + phile
1836          + tenex
1837          + unix
1838          The _mbox_ driver enables the following behavior: if there is a
1839          file called mbox in your home directory, and if that file is
1840          either empty or in Unix mailbox format, then every time you open
1841          _INBOX_ the _mbox_ driver will automatically transfer mail from
1842          the system mail spool directory into the mbox file and delete it
1843          from the spool directory. If you disable the _mbox_ driver, this
1844          will not happen.
1845          It is not recommended to disable the driver which supports the
1846          system default mailbox format. On most non-SCO systems, that
1847          driver is the _unix_ driver. On most SCO systems, it is the
1848          _mmdf_ driver. The system default driver may be configured to
1849          something else on your system; check with your system manager
1850          for additional information.
1851          It is most likely not very useful for you to disable any of the
1852          drivers other than possibly _mbox_. You could disable some of
1853          the others if you know for certain that you don't need them but
1854          the performance gain in doing so is very modest.
1855   _display-character-set_
1856          See the discussion in International Character Sets for details.
1857   _display-filters_
1858          This option defines a list of text-filtering commands (programs
1859          or scripts) that may be used to filter text portions of received
1860          messages prior to their use (e.g., presentation in the "Message
1861          Text" display screen). For security reasons, the full path name
1862          of the filter command must be specified.
1863          Display filters do not work with _PC-Alpine_.
1864          The command is executed and the message is piped into its
1865          standard input. The standard output of the command is read back
1866          by _Alpine_. The __TMPFILE__ token (see below) overrides this
1867          default behavior.
1868          The filter's use is based on the configured _trigger_ string.
1869          The format of a filter definition is:
1870
1871                       <trigger> <command> <arguments>
1872          You can specify as many filters as you wish, separating them
1873          with a comma. Each filter can have only one trigger and command.
1874          Thus, two trigger strings which invoke the same command require
1875          separate filter specifications.
1876          The _trigger_ is simply text that, if found in the message, will
1877          invoke the associated command. If the trigger contains any space
1878          characters, it must be placed within quotes. Likewise, should
1879          you wish a filter to be invoked unconditionally, define the
1880          trigger as the null string, "" (two consecutive double-quote
1881          characters). If the trigger string is found anywhere in the text
1882          of the message the filter is invoked. Placing the trigger text
1883          within the tokens defined below changes where within the text
1884          the trigger must be before considering it a match.
1885          Trigger Modifying Tokens:
1886
1887        __CHARSET(string)__
1888                This token tells _Alpine_ to invoke the supplied command
1889                if the text is in a character set matching string (e.g.,
1890                ISO-8859-2 or ISO-2022-JP).
1891
1892        __LEADING(string)__
1893                This token tells _Alpine_ to invoke the supplied command
1894                if the enclosed string is found to be the first
1895                non-whitespace text.
1896                NOTE: Quotes are necessary if string contains the space
1897                character.
1898
1899        __BEGINNING(string)__
1900                This token tells _Alpine_ to invoke the supplied command
1901                if the enclosed string is found at the beginning of any
1902                line in the text.
1903                NOTE: Quotes are necessary if string contains the space
1904                character.
1905
1906          The "command" and "arguments" portion is simply the command line
1907          to be invoked if the trigger string is found. Below are tokens
1908          that _Alpine_ will recognize and replace with special values
1909          when the command is actually invoked.
1910          Command Modifying Tokens:
1911
1912        __TMPFILE__
1913                When the command is executed, this token is replaced with
1914                the path and name of the temporary file containing the
1915                text to be filtered. _Alpine_ expects the filter to
1916                replace this data with the filter's result. NOTE: Use of
1917                this token implies that the text to be filtered is not
1918                piped into standard input of the executed command and its
1919                standard output is ignored. _Alpine_ restores the tty
1920                modes before invoking the filter in case the filter
1921                interacts with the user via its own standard input and
1922                output.
1923
1924        __RESULTFILE__
1925                When the command is executed, this token is replaced with
1926                the path and name of a temporary file intended to contain
1927                a status message from the filter. _Alpine_ displays this
1928                in the message status field.
1929
1930        __DATAFILE__
1931                When the command is executed, this token is replaced with
1932                the path and name of a temporary file that _Alpine_
1933                creates once per session and deletes upon exit. The file
1934                is intended to be used by the filter to store state
1935                information between instances of the filter.
1936
1937        __PREPENDKEY__
1938                When the command is executed, this token indicates that a
1939                random number will be passed down the input stream before
1940                the message text. This number could be used as a session
1941                key. It does not appear as a command-line argument. It is
1942                sent in this way to improve security. The number is unique
1943                to the current _Alpine_ session and is only generated once
1944                per session.
1945
1946          The feature disable-terminal-reset-for-display-filters is
1947          related.
1948          Performance caveat/considerations:
1949          Testing for the trigger and invoking the filter doesn't come for
1950          free. There is overhead associated with searching for the
1951          trigger string, testing for the filter's existence and actually
1952          piping the text through the filter. The impact can be reduced if
1953          the Trigger Modifying Tokens above are employed.
1954          Limitation:
1955          If Header Colors are being used, the sequences of bytes which
1956          indicate color changes will be contained in the text which is
1957          passed to the display-filter. If this causes problems you'll
1958          need to turn off Header Colors. The thirteen bytes which
1959          indicate a color change are the character \377 followed by \010
1960          for a foreground color or \011 for a background color. Then
1961          comes eleven characters of RGB data which looks something like
1962          255,  0,255, depending on the particular color, of course.
1963   _download-command_
1964          This option affects the behavior of the _Export_ command. It
1965          specifies a Unix program name, and any necessary command line
1966          arguments, that _Alpine_ can use to transfer the exported
1967          message to your personal computer's disk.
1968   _download-command-prefix_
1969          This option is used in conjunction with the _download-command_
1970          option. It defines text to be written to the terminal emulator
1971          (via standard output) immediately prior to starting the download
1972          command. This is useful for integrated serial line file transfer
1973          agents that permit command passing (e.g., Kermit's APC method).
1974   _editor_
1975          UNIX _Alpine_ only. Sets the name of the alternate editor for
1976          composing mail (message text only, not headers). It will be
1977          invoked with the "^_" command or it will be invoked
1978          automatically if the enable-alternate-editor-implicitly feature
1979          is set.
1980   _empty-header-message_
1981          When sending, if both the To and Cc fields are empty and you are
1982          sending the message to a Bcc, _Alpine_ will put a special
1983          address in the To line. The default value is
1984          "undisclosed-recipients: ;". The reason for this is to avoid
1985          embarrassment caused by some Internet mail transfer software
1986          that interprets a "missing" To: header as an error and replaces
1987          it with an Apparently-to: header that may contain the addresses
1988          you entered on the Bcc: line, defeating the purpose of the Bcc.
1989          You may change the part of this message that comes before the ":
1990          ;" by setting the _empty-header-message_ variable to something
1991          else.
1992   _fcc-name-rule_
1993          Determines default folder name for fcc when composing.
1994          Currently, _Alpine_ will accept the values _default-fcc_,
1995          _by-recipient_, or _last-fcc-used_. If set to _default-fcc_, then
1996          _Alpine_ will use the value defined in the default-fcc variable
1997          (which itself has a default) for the Fcc header field. If set to
1998          _by-recipient_, then _Alpine_ will use the name of the recipient
1999          as a folder name for the fcc. The relevant recipient is the
2000          first address in the To field. If set to "last-fcc-used", then
2001          _Alpine_ will offer to Fcc to whatever folder you used
2002          previously. In all cases, the field can still be edited after it
2003          is initially assigned. If the fcc field in the address book is
2004          set for the first To address, that value over-rides any value
2005          derived from this rule.
2006   _feature-list_
2007          This is a list of the many features (options) which may be
2008          turned on or off. There is a separate section titled
2009          Configuration Features which explains each of the features.
2010          There is some additional explanation about the _feature-list_
2011          variable itself in Feature List Variable.
2012   _file-directory_
2013          _PC-Alpine_ only. This value affects the Composer's "^J Attach"
2014          command, the Attachment Index Screen's "S Save" command, and the
2015          Message Index's "E Export" command.
2016          Normally, when a filename is supplied that lacks a leading
2017          "path" component, _Alpine_ assumes the file exists in the user's
2018          home directory. Under Windows operating systems, this definition
2019          isn't always clear. This feature allows you to explicitly set
2020          where _Alpine_ should look for files without a leading path.
2021          NOTE: this feature's value is ignored if either use-current-dir
2022          feature is set or the PINERC has a value for the operating-dir
2023          variable.
2024   _folder-collections_
2025          This is a list of one or more collections where saved mail is
2026          stored. See the sections describing folder collections and
2027          collection syntax for more information. The first collection in
2028          this list is the default collection for _Save_s, including
2029          default-fcc's.
2030   _folder-extension_
2031          _PC-Alpine_ only. File extension used for local folder names.
2032          This is .MTX by default.
2033   _folder-reopen-rule_
2034          _Alpine_ normally checks for new mail in the currently open
2035          folder and in the INBOX every few minutes.
2036          There are some situations where automatic new-mail checking does
2037          not work. For example, if a mail folder is opened using the POP
2038          protocol or a newsgroup is being read using the NNTP protocol,
2039          then new-mail checking is disabled.
2040          It may be possible to check for new mail in these cases by
2041          reopening the folder. _Alpine_ does not do this for you
2042          automatically, but you may do the commands manually to cause
2043          this to happen. You reopen by going back to the folder list
2044          screen from the message index screen with the "<" command, and
2045          then going back into the message index screen with the ">"
2046          command. (Actually, any method you would normally use to open a
2047          folder will work the same as the "<" followed by ">" method. For
2048          example, the GoTo Folder command will work, or you may use L to
2049          go to the Folder List screen and Carriage Return to reopen the
2050          folder.)
2051          There are some cases where _Alpine_ knows that reopening the
2052          folder should be useful as a way to discover new mail. At the
2053          time of this writing, connections made using the POP protocol,
2054          news reading using the NNTP protocol, local news reading, and
2055          local ReadOnly folders which are in the traditional UNIX or the
2056          MMDF format all fall into this category. There are other cases
2057          where it _may_ be a way to discover new mail, but _Alpine_ has
2058          no way of knowing, so it might also just be an exercise in
2059          futility. All remote, ReadOnly folders other than those listed
2060          just above fall into this category. The setting of this option
2061          together with the type of folder controls how _Alpine_ will
2062          react to the apparent attempt to reopen a folder.
2063          If you don't reopen, then you will just be back in the message
2064          index with no change. You left the index and came back, but the
2065          folder remained "open" the whole time. However, if you do reopen
2066          the folder, the folder is closed and then reopened. In this
2067          case, the current state of the open folder is lost. The New
2068          status, Important and Answered flags, selected state, Zoom
2069          state, collapsed or expanded state of threads, current message
2070          number, and any other temporary state is all lost when the
2071          reopen happens. For POP folders (but not NNTP newsgroups) the
2072          Deleted flags are also lost.
2073          In the possibilities listed below, the text says "POP/NNTP" in
2074          several places. That really implies the case where _Alpine_
2075          knows it is a good way to discover new mail, which is more than
2076          just POP and NNTP, but POP and NNTP are the cases of most
2077          interest. This option probably has more possible values than it
2078          deserves. They are:
2079
2080        Always reopen
2081                _Alpine_ will not ask whether you want to reopen but will
2082                just do the reopen whenever you type a command that
2083                implies a reopen, regardless of the access method. In
2084                other words, it is assumed you would always answer Yes if
2085                asked about reopening.
2086
2087        Yes for POP/NNTP, Ask about other remote [Yes]
2088                _Alpine_ will assume a Yes answer if the access method is
2089                POP or NNTP, but will ask you whether to reopen other
2090                remote folders, with a default answer of Yes.
2091
2092        Yes for POP/NNTP, Ask about other remote [No]
2093                _Alpine_ will assume a Yes answer if the access method is
2094                POP or NNTP, but will ask you whether to reopen other
2095                remote folders, with a default answer of No.
2096
2097        Yes for POP/NNTP, No for other remote
2098                _Alpine_ will assume a Yes answer if the access method is
2099                POP or NNTP, and will assume a No answer for all other
2100                remote folders.
2101
2102        Always ask [Yes]
2103                _Alpine_ will not differentiate based on access method. It
2104                will always ask for all remote folders, with a default
2105                answer of Yes.
2106
2107        Always ask [No]
2108                _Alpine_ will not differentiate based on access method. It
2109                will always ask for all remote folders, with a default
2110                answer of No.
2111
2112        Ask about POP/NNTP [Yes], No for other remote
2113                _Alpine_ will ask if the access method is POP or NNTP,
2114                with a default answer of Yes. It will never attempt to
2115                reopen other remote folders.
2116
2117        Ask about POP/NNTP [No], No for other remote
2118                This is the default. _Alpine_ will ask if the access
2119                method is POP or NNTP, with a default answer of No. It
2120                will never attempt to reopen other remote folders.
2121
2122        Never reopen
2123                _Alpine_ will never attempt to reopen already open
2124                folders.
2125
2126          Remember, wherever it says POP or NNTP above it really means POP
2127          or NNTP or any of the other situations where it is likely that
2128          reopening is a good way to discover new mail.
2129          There is an alternative that may be of useful in some
2130          situations. Instead of manually checking for new mail you can
2131          set up a Mail Drop and automatically check for new mail.
2132   _folder-sort-rule_
2133          This option controls the order in which folder list entries will
2134          be presented in the FOLDER LIST screen. Choose one of the
2135          following:
2136
2137        _Alphabetical_
2138                sort by alphabetical name independent of type
2139
2140        _Alpha-with-dirs-last_
2141                sort by alphabetical name grouping directory entries to
2142                the end of the list
2143
2144        _Alpha-with-dirs-first_
2145                sort by alphabetical name grouping directory entries to
2146                the start of the list
2147
2148          The normal default is _Alphabetical_.
2149   _font-name_
2150          Winsock version of _PC-Alpine_ only.
2151   _font-size_
2152          Winsock version of _PC-Alpine_ only.
2153   _font-style_
2154          Winsock version of _PC-Alpine_ only.
2155   _forced-abook-entry_
2156          System-wide _Alpine_ configuration files only. Force these
2157          address book entries into all writable personal address books.
2158          This is a list variable. Each item in the list has the form:
2159
2160     Nickname | Fullname | Address
2161          with optional whitespace in all the obvious places.
2162   _form-letter-folder_
2163          A Form Letter Folder is a mail folder that is intended to
2164          contain messages that you have composed and that are intended to
2165          be sent in their original form repeatedly.
2166          Setting this variable will alter _Alpine_'s usual behavior when
2167          you execute the Compose command. Normally, _Alpine_ offers a
2168          chance to continue a postponed or interrupted message should one
2169          or the other exist. When this variable is set to a folder name
2170          that exists, _Alpine_ will also offer the chance to select a
2171          message from the folder to insert into the composer, much like
2172          when continuing a postponed message. The difference, however, is
2173          that _Alpine_ will not automatically delete the selected message
2174          from the Form Letter Folder.
2175          Setting this variable will also affect _Alpine_'s behavior when
2176          you Postpone a message from the composer. Normally, _Alpine_
2177          simply stashes the message away in your Postponed-Folder.
2178          Regardless of the specified folder's existence, _Alpine_ will
2179          ask which folder you intend the message to be stored in. Choose
2180          the "F" option to store the message in your Form Letter Folder.
2181          This is the most common way to add a message to the folder.
2182          Another method of adding messages to the folder is via the
2183          _Alpine_ composer's Fcc: field. If you are sending a message that
2184          you expect to send in the same form again, you can enter the
2185          Form Letter Folder's name in this field. _Alpine_, as usual,
2186          will copy the message as it's sent. Note, when you later select
2187          this message from your Form Letter Folder, it will have the same
2188          recipients as the original message.
2189          To delete a message from the Form Letter Folder, you can either
2190          select the folder from a suitable FOLDER LIST screen, or use the
2191          Delete command in the MESSAGE INDEX offered when selecting from
2192          the folder as part of the Compose command. You can delete a Form
2193          Letter Folder just as any other folder from a suitable FOLDER
2194          LIST screen.
2195          You may find that the Roles facility can be used to replace the
2196          Form Letter Folder.
2197   _global-address-book_
2198          A list of shared address books. Each entry in the list is an
2199          optional nickname followed by a pathname or file name relative
2200          to the home directory. A SPACE character separates the nickname
2201          from the rest of the line. Instead of a local pathname or file
2202          name, a remote folder name can be given. This causes the address
2203          book to be a Remote address book. Remote folder syntax is
2204          discussed in Syntax for Remote Folders. This list will be added
2205          to the address-book list to arrive at the complete set of
2206          address books. Global address books are defined to be ReadOnly.
2207   _goto-default-rule_
2208          This value affects _Alpine_'s behavior when using the _Goto_
2209          command. There are five possible values for this option:
2210
2211        _folder-in-first-collection_
2212                _Alpine_ will offer the most recently visited folder in
2213                the default collection found in the "Collection List"
2214                screen as the default.
2215
2216        _inbox-or-folder-in-first-collection_
2217                If the current folder is _INBOX_, _Alpine_ will offer the
2218                most recently visited folder in the default collection
2219                found in the "Collection List" screen. If the current
2220                folder is other than _INBOX_, _INBOX_ is offered as the
2221                default.
2222
2223        _inbox-or-folder-in-recent-collection_
2224                This is _Alpine_'s default behavior. If the current folder
2225                is _INBOX_, _Alpine_ will offer the last open folder as
2226                the default. If the current folder is other than _INBOX_,
2227                _INBOX_ is offered as the default.
2228
2229        _first-collection-with-inbox-default_
2230                Instead of offering the most recently visited folder in
2231                the default collection, the default collection is offered
2232                but with _INBOX_ as the default folder. If you type in a
2233                folder name it will be in the default collection. If you
2234                simply accept the default, however, your _INBOX_ will be
2235                opened.
2236
2237        _most-recent-folder_
2238                The last accepted value simply causes the most recently
2239                opened folder to be offered as the default regardless of
2240                the currently opened folder.
2241
2242          NOTE: The default while a newsgroup is open remains the same;
2243          the last open newsgroup.
2244   _header-general-background-color_
2245   _header-general-foreground-color_
2246          Header Colors.
2247   _image-viewer_
2248          This variable names the program to call for displaying parts of
2249          a MIME message that are of type IMAGE. If your system supports
2250          the _mailcap_ system, you don't need to set this variable.
2251   _inbox-path_
2252          This specifies the name of the folder to use for the _INBOX_. By
2253          default this is unset and the system's default is used. The most
2254          common reason for setting this is to open an IMAP mailbox for
2255          the _INBOX_. For example, _{imap5.u.example.edu}inbox_ will open
2256          the user's standard _INBOX_ on the mail server, _imap5_.
2257   _incoming-archive-folders_
2258          This is like read-message-folder, only more general. This is a
2259          list of folder pairs, with the first separated from the second
2260          in the pair by a space. The first folder in a pair is the folder
2261          you want to archive, and the second folder is the folder that
2262          read messages from the first should be moved to. Depending on
2263          how you define the auto-move-read-msgs feature, you may or may
2264          not be asked when you leave the first folder if you want read
2265          messages to be moved to the second folder. In either case,
2266          moving the messages means they will be deleted from the first
2267          folder.
2268          If these are not path names, they will be in the default
2269          collection for _Save_s. Any valid folder specification, local or
2270          remote (via IMAP), is allowed. There is no default.
2271   _incoming-check-interval_
2272          This option has no effect unless the feature
2273          enable-incoming-folders-checking is set, which in turn has no
2274          effect unless incoming-folders is set.
2275          This option specifies, in seconds, how often _Alpine_ will check
2276          for new mail and state changes in Incoming Folders when Incoming
2277          Folders Checking is turned on. The default is 3 minutes (180).
2278          This value applies only to folders that are local to the system
2279          that _Alpine_ is running on or that are accessed using the IMAP
2280          protocol. The similar option incoming-check-interval-secondary
2281          applies to all other monitored folders.
2282   _incoming-check-interval-secondary_
2283          This option has no effect unless the feature
2284          enable-incoming-folders-checking is set, which in turn has no
2285          effect unless incoming-folders is set.
2286          This option together with the option incoming-check-interval
2287          specifies, in seconds, how often _Alpine_ will check for new
2288          mail and state changes in Incoming Folders when Incoming Folders
2289          Checking is turned on. The default for this option is 3 minutes
2290          (180). For folders that are local to this system or that are
2291          accessed using the IMAP protocol the value of the option
2292          incoming-check-interval is used. For all other monitored
2293          folders, the value of this option is used.
2294          The reason there are two separate options is because it is
2295          usually less expensive to check local and IMAP folders than it
2296          is to check other types, like POP or NNTP folders. You may want
2297          to set this secondary value to a higher number than the primary
2298          check interval.
2299   _incoming-check-list_
2300          This option has no effect unless the feature
2301          enable-incoming-folders-checking is set, which in turn has no
2302          effect unless incoming-folders is set.
2303          When monitoring the Incoming Message Folders for Unseen messages
2304          Alpine will normally monitor all Incoming Folders. You may use
2305          this option to restrict the list of monitored folders to a
2306          subset of all Incoming Folders.
2307   _incoming-check-timeout_
2308          This option has no effect unless the feature
2309          enable-incoming-folders-checking is set, which in turn has no
2310          effect unless incoming-folders is set.
2311          Sets the time in seconds that Alpine will attempt to open a
2312          network connection used for monitoring for Unseen messages in
2313          Incoming Folders. The default is 5. If a connection has not
2314          completed within this many seconds Alpine will give up and
2315          consider it a failed connection.
2316   _incoming-folders_
2317          This is a list of one or more folders other than _INBOX_ that
2318          may receive new messages. This list is slightly special in that
2319          it is always expanded in the folder lister. In the future, it
2320          may become more special. For example, it would be nice if
2321          _Alpine_ would monitor the folders in this list for new mail.
2322   _incoming-startup-rule_
2323          This rule affects _Alpine_'s behavior when opening the _INBOX_
2324          or another folder from the "INCOMING MESSAGE FOLDERS". This rule
2325          tells _Alpine_ which message to make the current message when an
2326          incoming folder is opened. There are seven possible values for
2327          this option:
2328
2329        _first-unseen_
2330                The current message will be the first unseen message which
2331                has not been marked deleted, or the last message if all of
2332                the messages have been seen. This is the default setting.
2333
2334        _first-recent_
2335                This is similar to _first-unseen_. Instead of first unseen
2336                it is the first recent message. A message is considered to
2337                be recent if it arrived since the last time the folder was
2338                open (by any mail client, not just the current one). So
2339                this option causes the current message to be set to the
2340                first undeleted-recent message, or the last message if
2341                none is both undeleted and recent.
2342
2343        _first-important_
2344                This will result in the current message being set to the
2345                first message marked Important (but not Deleted). If no
2346                messages are marked Important, then it will be the last
2347                message.
2348
2349        _first-important-or-unseen_
2350                This selects the minimum of the first unseen and the first
2351                important messages.
2352
2353        _first-important-or-recent_
2354                This selects the first of the first recent and the first
2355                important messages.
2356
2357        _first_
2358                Set the current message to the first undeleted message
2359                unless all are deleted. In that case set it to the last
2360                message.
2361
2362        _last_
2363                Set the current message to the last undeleted message
2364                unless all are deleted. In that case set it to the last
2365                message.
2366
2367   _incoming-unseen-background-color_
2368   _incoming-unseen-foreground-color_
2369          Incoming Unseen Color.
2370   _index-answered-background-color_
2371   _index-answered-foreground-color_
2372   _index-arrow-background-color_
2373   _index-arrow-foreground-color_
2374   _index-deleted-background-color_
2375   _index-deleted-foreground-color_
2376   _index-from-background-color_
2377   _index-from-foreground-color_
2378   _index-highpriority-background-color_
2379   _index-highpriority-foreground-color_
2380   _index-important-background-color_
2381   _index-important-foreground-color_
2382   _index-lowpriority-background-color_
2383   _index-lowpriority-foreground-color_
2384   _index-new-background-color_
2385   _index-new-foreground-color_
2386   _index-opening-background-color_
2387   _index-opening-foreground-color_
2388   _index-recent-background-color_
2389   _index-recent-foreground-color_
2390   _index-subject-background-color_
2391   _index-subject-foreground-color_
2392   _index-to-me-background-color_
2393   _index-to-me-foreground-color_
2394   _index-unseen-background-color_
2395   _index-unseen-foreground-color_
2396          Index Colors.
2397   _index-format_
2398          This option is used to customize the content of lines in the
2399          MESSAGE INDEX screen. Each line is intended to convey some
2400          amount of immediately relevant information about each message in
2401          the current folder.
2402          _Alpine_ provides a pre-defined set of informational fields with
2403          reasonable column widths automatically computed. You can,
2404          however, replace this default set by listing special tokens in
2405          the order you want them displayed.
2406          The list of available tokens is here.
2407          Spaces are used to separate listed tokens. Additionally, you can
2408          specify how much of the screen's width the taken's associated
2409          data should occupy on the index line by appending the token with
2410          a pair of parentheses enclosing either a number or percentage.
2411          For example, "SUBJECT(13)" means to allocate 13 characters of
2412          space to the subject column, and "SUBJECT(20%)" means to
2413          allocate 20% of the available space to the subjects column,
2414          while plain "SUBJECT" means the system will attempt to figure
2415          out a reasonable amount of space.
2416          There is always one space between every pair of columns, so if
2417          you use fixed column widths (like 13) you should remember to
2418          take that into account. Several of the fields are virtually
2419          fixed-width, so it doesn't make much sense to specify the width
2420          for them. The fields STATUS, FULLSTATUS, IMAPSTATUS, MSGNO, the
2421          DATE fields, SIZE, and DESCRIPSIZE all fall into that category.
2422          You _may_ specify widths for those if you wish, but you're
2423          probably better off letting the system pick those widths.
2424          The default is equivalent to:
2425
2426   index-format=STATUS MSGNO SMARTDATETIME24 FROMORTO(33%) SIZENARROW SUBJ
2427                                  KEY(67%)
2428          This means that the four fields without percentages will be
2429          allocated first, and then 33% and 67% of the _remaining_ space
2430          will go to the from and subject fields. If one of those two
2431          fields is specified as a percentage and the other is left for
2432          the system to choose, then the percentage is taken as an
2433          absolute percentage of the screen, not of the space remaining
2434          after allocating the first four columns. It doesn't usually make
2435          sense to do it that way. If you leave off all the widths, then
2436          the subject and from fields (if both are present) are allocated
2437          space in a 2 to 1 ratio, which is almost exactly the same as the
2438          default.
2439          What you are most likely to do with this configuration option is
2440          to specify which fields appear at all, which order they appear
2441          in, and the percentage of screen that is used for the from and
2442          subject fields if you don't like the 2 to 1 default.
2443          If you want to retain the default format that _Pine_ 4.64 had,
2444          use
2445
2446       Index-Format=STATUS MSGNO DATE FROMORTO(33%) SIZE SUBJKEY(67%)
2447          _and_ set the feature Disable-Index-Locale-Dates.
2448   _initial-keystroke-list_
2449          This is a comma-separated list of keystrokes which _Alpine_
2450          executes on startup. Items in the list are usually just
2451          characters, but there are some special values. _SPACE,_ _TAB,_
2452          and _CR_ mean a space character, tab character, and a carriage
2453          return, respectively. _F1_ through _F12_ stand for the twelve
2454          function keys. _UP, DOWN, LEFT, _and_ RIGHT _stand for the arrow
2455          keys. Control characters are represented with _^<char>_. A
2456          restriction is that you can't mix function keys and character
2457          keys in this list even though you can, in some cases, mix them
2458          when running _Alpine_. A user can always use only _character_
2459          keys in the startup list even if he or she is using _function_
2460          keys normally, or vice versa. If an element in this list is a
2461          string surrounded by double quotes (") then it will be expanded
2462          into the individual characters in the string, excluding the
2463          double quotes.
2464   _kblock-passwd-count_
2465          System-wide _Alpine_ configuration files only. Number of times a
2466          user will have to enter a password when they run the keyboard
2467          lock command in the main menu.
2468   _keyboard-character-set_
2469          See the discussion in International Character Sets for details.
2470   _keylabel-background-color_
2471   _keylabel-foreground-color_
2472          KeyLabel Color.
2473   _keyname-background-color_
2474   _keyname-foreground-color_
2475          KeyName Color.
2476   _keywords_
2477          You may define your own set of keywords and optionally set them
2478          on a message by message basis. These are similar to the
2479          "Important" flag which the user may set using the Flag command.
2480          The difference is that the Important flag is always present for
2481          each folder. User-defined keywords are chosen by the user. You
2482          may set up the list of possible keywords here, or you may add
2483          keywords from the Flag Details screen that you can get to after
2484          typing the Flag (*) command. After the keywords have been
2485          defined, then you use the Flag command to set or clear the
2486          keywords in each message. The behavior of the flag command may
2487          be modified by using the Enable-Flag-Screen-Implicitly option or
2488          the Enable-Flag-Screen-Keyword-Shortcut option.
2489          Keywords may be used when Selecting messages (Select Keyword).
2490          Keywords may also be used in the Patterns of Rules (Filters,
2491          Indexcolors, etc). Filter rules may be used to set keywords
2492          automatically. Keywords may be displayed as part of the Subject
2493          of a message by using the SUBJKEY or SUBJKEYINIT tokens in the
2494          Index-Format option. The Keyword-Surrounding-Chars option may be
2495          used to modify the display of keywords using SUBJKEY and
2496          SUBJKEYINIT slightly. Keywords may also be displayed in a column
2497          of their own in the MESSAGE INDEX screen by using the KEY or
2498          KEYINIT tokens. It is also possible to color keywords in the
2499          index using the Setup/Kolor screen (Keyword Colors). Keywords
2500          are not supported by all mail servers.
2501          You may give keywords nicknames if you wish. If the keyword
2502          definition you type in contains a SPACE character, then the
2503          actual value of the keyword is everything after the last SPACE
2504          and the nickname for that keyword is everything before the last
2505          SPACE. For example, suppose you are trying to interoperate with
2506          another email program which uses a particular keyword with an
2507          unpleasant name. Maybe it uses a keyword called
2508
2509                         VendorName.SoftwareName.08
2510          but for you that keyword means that the message is work-related.
2511          You could define a keyword to have the value
2512
2513                       Work VendorName.SoftwareName.08
2514          and then you would use the name "Work" when dealing with that
2515          keyword in _Alpine_. If you defined it as
2516
2517                     My Work VendorName.SoftwareName.08
2518          the nickname would be everything before the last SPACE, that is
2519          the nickname would be "My Work".
2520          Some commonly used keywords begin with dollar signs. This
2521          presents a slight complication, because the dollar sign is
2522          normally used to signify environment variable expansion in the
2523          _Alpine_ configuration. In order to specify a keyword which
2524          begins with a dollar sign you must precede the dollar sign with
2525          a second dollar sign to escape its special meaning. For example,
2526          if you want to include the keyword
2527
2528                                   $Label1
2529          as one of your possible keywords, you must enter the text
2530
2531                                  $$Label1
2532          instead.
2533   _keyword-surrounding-chars_
2534          This option controls a minor aspect of _Alpine_'s MESSAGE INDEX
2535          and MESSAGE TEXT screens. If you have modified the Index-Format
2536          option so that either the "SUBJKEY" or "SUBJKEYINIT" tokens are
2537          used to display keywords or their initials along with the
2538          Subject; then this option may be used to modify the resulting
2539          display slightly. By default, the keywords or initials displayed
2540          for these tokens will be surrounded with curly braces ({ and })
2541          and a trailing space. For example, if keywords "Work" and "Now"
2542          are set for a message, the "SUBJKEY" token will normally look
2543          like
2544
2545                          {Work Now} actual subject
2546          and the SUBJKEYINIT token would look like
2547
2548                             {WN} actual subject
2549          The default character before the keywords is the left brace ({)
2550          and the default after the keywords is the right brace followed
2551          by a space (} ).
2552          This option allows you to change that. You should set it to two
2553          values separated by a space. The values may be quoted if they
2554          include space characters. So, for example, the default value
2555          could be specified explicitly by setting this option to
2556
2557                     Keyword-Surrounding-Chars="{" "} "
2558          The first part wouldn't need to be quoted (but it doesn't hurt).
2559          The second part does need the quotes because it includes a space
2560          character. If you wanted to change the braces to brackets you
2561          could use
2562
2563                     Keyword-Surrounding-Chars="[" "] "
2564          Inside the quotes you can use backslash quote to mean quote, so
2565
2566                    Keyword-Surrounding-Chars="\"" "\" "
2567          would produce
2568
2569                          "Work Now" actual subject
2570          It is also possible to color keywords in the index using the
2571          Setup/Kolor screen (Keyword Colors).
2572          It is not possible to change the fact that a space character is
2573          used to separate the keywords if more than one keyword is set
2574          for a message. It is also not possible to change the fact that
2575          there are no separators between the keyword initials if more
2576          than one keyword is set.
2577          This option is displayed as "Keyword Surrounding Characters".
2578   _last-time-prune-questioned_
2579          Personal configuration file only. This variable records the
2580          month the user was last asked if his or her _sent-mail_ folders
2581          should be pruned. The format is _yy.mm_. This is automatically
2582          updated by _Alpine_ when the the pruning is done or declined. If
2583          a user wanted to make _Alpine_ stop asking this question he or
2584          she could set this time to something far in the future. This may
2585          not be set in the system-wide configuration files. Note: The _yy_
2586          year is actually the number of years since 1900, so it will be
2587          equal to 101 in the year 2001.
2588   _last-version-used_
2589          Personal configuration file only. This is set automatically by
2590          _Alpine_. It is used to keep track of the last version of _Alpine_
2591          that was run by the user. Whenever the version number increases,
2592          a new version message is printed out. This may not be set in the
2593          system-wide configuration files.
2594   _ldap-servers_
2595          This is only available if _Alpine_ was linked with an LDAP
2596          library when it was compiled. This variable is normally managed
2597          by _Alpine_ though it can be set in the system-wide
2598          configuration files as well as the personal configuration. It is
2599          a list variable. Each item in the list contains quite a bit of
2600          extra information besides just the server name. To put this into
2601          a system-wide config file the easiest thing to do is to
2602          configure a personal _Alpine_ for the LDAP server then copy the
2603          configuration line into the system-wide config file. Each item
2604          in the list looks like:
2605
2606     server_name[:port] "quoted stuff"
2607          The server_name is just a hostname and it is followed by an
2608          optional colon and port number. The default port is 389.
2609          Following the server name is a single SPACE character followed
2610          by a bunch of characters inside double quotes. The part inside
2611          the quotes is a set of _tag_ = _value_ pairs. Each tag is
2612          preceded by a slash (/) and followed by an equal sign. The value
2613          for that tag is the text up to the next slash. An example of
2614          some quoted stuff is:
2615
2616     "/base=o=University of Washington, c=US/impl=0/.../nick=My Server"
2617          This would set the search base for this server to o=University
2618          of Washington, c=US, set the implicit bit to zero, and set the
2619          nickname for the server to My Server. All of the tags correspond
2620          directly to items in the Setup/Directory screen so experiment
2621          with that if you want to see what the possible tags and values
2622          are.
2623   _literal-signature_
2624          With this option your actual signature, as opposed to the name
2625          of a file containing your signature, is stored in the _Alpine_
2626          configuration file. If this is defined it takes precedence over
2627          the _signature-file_ option.
2628          This is simply a different way to store the signature data. The
2629          signature is stored inside your _Alpine_ configuration file
2630          instead of in a separate signature file. Tokens contained in the
2631          signature work the same way they do with the regular
2632          signature-file.
2633          The Setup/Signature command in _Alpine_'s Main Menu will edit
2634          the _literal-signature_ by default. However, if no
2635          _literal-signature_ is defined and the file named in the
2636          _signature-file_ option exists, then the latter will be used
2637          instead. Compose (Reply, Forward, ...) will default to using the
2638          _literal-signature_ if defined, otherwise it will use the
2639          contents of the file named in _signature-file_.
2640          The _Alpine_ composer is used to edit the literal-signature. The
2641          result of that edit is first converted to a C-style string
2642          before it is stored in the configuration file. In particular,
2643          the two character sequence \n (backslash followed by the
2644          character "n") will be used to signify a line-break in the
2645          signature. You don't have to enter the \n, but it will be
2646          visible in the SETUP CONFIGURATION window after you are done
2647          editing the signature.
2648   _mail-check-interval_
2649          This option specifies, in seconds, how often _Alpine_ will check
2650          for new mail. If set to zero, new-mail checking is disabled.
2651          (You can always manually force a new-mail check by typing ^L
2652          (Ctrl-L), which is also the command to refresh the screen, or by
2653          typing the Next command when the current message is the last
2654          message of the folder.) There is a minimum value for this
2655          option, normally 15 seconds. The default value is normally 150
2656          seconds. The higher you set this option, the easier it is on the
2657          server.
2658          There are some situations where automatic new-mail checking does
2659          not work. See the discussion about new-mail checking in
2660          folder-reopen-rule.
2661          The new-mail checking will not happen exactly at the frequency
2662          that you specify. For example, _Alpine_ may elect to defer a
2663          non-INBOX mail check if you are busy typing. Or, it may check
2664          more frequently than you have specified if that is thought to be
2665          necessary to keep the server from closing the connection to the
2666          folder due to inactivity. If _Alpine_ checks for new mail as a
2667          side effect of another command, it will reset the timer, so that
2668          new-mail checking may seem to happen irregularly instead of
2669          every X seconds like clockwork.
2670          If you are anxious to know about new mail as soon as possible,
2671          set the check interval low, and you'll know about the new mail
2672          by approximately that amount of time after it arrives. If you
2673          aren't so worried about knowing right away, set this option to a
2674          higher value. That will save the server some processing time and
2675          may save you some of the time you spend waiting for new-mail
2676          checks to happen if you are dealing with a slow server or slow
2677          network connection.
2678          If you suspect that new-mail checking is causing slow downs for
2679          you, you may want to look into the options
2680          Quell-Mailchecks-Composing-Except-Inbox,
2681          Quell-Mailchecks-Composing-Inbox and
2682          Mail-Check-Interval-Noncurrent, which refine when mail checking
2683          is done.
2684          If the mailbox being check uses a Mail Drop then there is a
2685          minimum time (maildrop-check-minimum) between new-mail checks.
2686          Because of this minimum you may notice that new mail does not
2687          appear promptly when you expect it. The reason for this is to
2688          protect the server from over-zealous opening and closing of the
2689          Mail Drop folder, since that is a costly operation.
2690          A side effect of disabling mail checking is that there will be
2691          situations in which the user's IMAP connection will be broken
2692          due to inactivity timers on the server. Another side effect is
2693          that the user-input-timeout option won't work.
2694   _mail-check-interval-noncurrent_
2695          This option is closely related to the Mail-Check-Interval
2696          option, as well as the Quell-Mailchecks-Composing-Except-Inbox
2697          and Quell-Mailchecks-Composing-Inbox options. If the
2698          "Mail-Check-Interval" option is set to zero, then automatic
2699          new-mail checking is disabled and this option will have no
2700          effect.
2701          Normally this option is set to zero, which means that the value
2702          used will be the same as the value for the
2703          "Mail-Check-Interval". If you set this option to a value
2704          different from zero (usually larger than the value for
2705          "Mail-Check-Interval") then that is the check interval that will
2706          be used for folders which are not the currently open folder or
2707          the INBOX. You may not even have any folders that are noncurrent
2708          and not the INBOX. If you do, it is likely that they are due to
2709          Stay-Open-Folders you have configured. This option also affects
2710          the rate of mail checking done on cached connections to folders
2711          you previously had open but are no longer actively using. You
2712          aren't expected to understand that last sentence, but if you are
2713          interested take a look at Max-Remote-Connections, and the
2714          related options.
2715   _mail-directory_
2716          This variable was more important in previous versions of
2717          _Alpine_. Now it is used only as the default for storing personal
2718          folders (and only if there are no folder-collections defined).
2719          The default value is _~/mail_ on UNIX and _${HOME}\MAIL_ on a
2720          PC.
2721   _mailcap-search-path_
2722          This variable is used to replace _Alpine_'s default mailcap file
2723          search path. It takes one or more file names (full paths must be
2724          specified) in which to look for mail capability data.
2725   _maildrop-check-minimum_
2726          New-mail checking for a Mail Drop is a little different from new
2727          mail checking for a regular folder. One of the differences is
2728          that the connection to the Mail Drop is not kept open and so the
2729          cost of checking (delay for you and additional load for the
2730          server) may be significant. Because of this additional cost we
2731          set a minimum time that must pass between checks. This minimum
2732          only applies to the automatic checking done by _Alpine_. If you
2733          force a check by typing ^L (Ctrl-L) or by typing the Next
2734          command when you are at the end of a folder index, then the
2735          check is done right away.
2736          This option specifies, in seconds, the _minimum_ time between
2737          Mail Drop new-mail checks. You may want to set this minimum high
2738          in order to avoid experiencing some of the delays associated
2739          with the checks. Note that the time between checks is still
2740          controlled by the regular Mail-Check-Interval option. When
2741          _Alpine_ is about to do an automatic check for new mail (because
2742          the Mail-Check-Interval has expired) then if the time since the
2743          last new-mail check of any open Mail Drops has been greater than
2744          the MailDrop-Check-Minimum, the Mail Drop is checked for new
2745          mail as well. Therefore, it is only useful to set this option to
2746          a value that is higher than the Mail-Check-Interval.
2747          If this option is set to zero, automatic Mail Drop new-mail
2748          checking is disabled. There is a minimum value, normally 60
2749          seconds. The default value is normally 60 seconds as well. This
2750          applies to the INBOX and to the currently open folder if that is
2751          different from the INBOX.
2752   _max-remote-connections_
2753          This option affects low-level behavior of _Alpine_. The default
2754          value for this option is _2_. If your INBOX is accessed using
2755          the IMAP protocol from an IMAP server, that connection is kept
2756          open throughout the duration of your _Alpine_ session,
2757          independent of the value of this option. The same is true of any
2758          Stay-Open-Folders you have defined. This option controls
2759          _Alpine_'s behavior when connecting to remote IMAP folders other
2760          than your INBOX or your Stay-Open-Folders. It specifies the
2761          maximum number of remote IMAP connections (other than those
2762          mentioned above) that _Alpine_ will use for accessing the rest
2763          of your folders. If you set this option to zero, you will turn
2764          off most remote connection re-use. It's difficult to understand
2765          exactly what this option does, and it is usually fine to leave
2766          it set to its default value. It is probably more likely that you
2767          will be interested in setting the Stay-Open-Folders option
2768          instead of changing the value of this option. A slightly longer
2769          explanation of what is going on with this option is given in the
2770          next paragraphs.
2771          There are some time costs involved in opening and closing remote
2772          IMAP folders, the main costs being the time you have to wait for
2773          the connection to the server and the time for the folder to
2774          open. Opening a folder may involve not only the time the server
2775          takes to do its processing but time that _Alpine_ uses to do
2776          filtering. These times can vary widely. They depend on how
2777          loaded the server is, how large the folder being opened is, and
2778          how you set up filtering, among other things. Once _Alpine_ has
2779          opened a connection to a particular folder, it will attempt to
2780          keep that connection open in case you use it again. In order to
2781          do this, _Alpine_ will attempt to use the Max-Remote-Connections
2782          (the value of this option) IMAP connections you have allotted
2783          for this purpose.
2784          For example, suppose the value of this option is set to "2". If
2785          your INBOX is accessed on a remote server using the IMAP
2786          protocol, that doesn't count as one of the remote connections
2787          but it is always kept open. If you then open another IMAP
2788          folder, that would be your first remote connection counted as
2789          one of the Max-Remote-Connections connections. If you open a
2790          third folder the second will be left open, in case you return to
2791          it. You won't be able to tell it has been left open. It will
2792          appear to be closed when you leave the folder but the connection
2793          will remain in the background. Now suppose you go back to the
2794          second folder (the first folder after the INBOX). A connection
2795          to that folder is still open so you won't have to wait for the
2796          startup time to open it. Meanwhile, the connection to the third
2797          folder will be left behind. Now, if you open a fourth folder,
2798          you will bump into the Max-Remote-Connections limit, because
2799          this will be the third folder other than INBOX and you have the
2800          option set to "2". The connection that is being used for the
2801          third folder will be re-used for this new fourth folder. If you
2802          go back to the third folder after this, it is no longer already
2803          connected when you get there. You'll still save some time since
2804          _Alpine_ will re-use the connection to the fourth folder and you
2805          have already logged in on that connection, but the folder will
2806          have to be re-opened from scratch.
2807          If a folder is large and the startup cost is dominated by the
2808          time it takes to open that folder or to run filters on it, then
2809          it will pay to make the value of this option large enough to
2810          keep it open. On the other hand, if you only revisit a handful
2811          of folders or if the folders are small, then it might make more
2812          sense to keep this number small so that the reconnect time (the
2813          time to start up a new connection and authenticate) is
2814          eliminated instead.
2815          You may also need to consider the impact on the server. On the
2816          surface, a larger number here may cause a larger impact on the
2817          server, since you will have more connections open to the server.
2818          On the other hand, not only will _you_ be avoiding the startup
2819          costs associated with reopening a folder, but the _server_ will
2820          be avoiding those costs as well.
2821          When twenty five minutes pass without any active use of an IMAP
2822          connection being saved for possible re-use, that connection will
2823          be shut down,
2824          This option is displayed as "Maximum Remote Connections".
2825   _meta-message-background-color_
2826   _meta-message-foreground-color_
2827          Meta-message Color.
2828   _mimetype-search-path_
2829          This variable is used to replace _Alpine_'s default mime.types
2830          file search path. It takes one or more file names (full paths
2831          must be specified) in which to look for file-name-extension to
2832          MIME type mapping data. See the Config Notes for details on
2833          _Alpine_'s usage of the MIME.Types File.
2834   _new-version-threshold_
2835          When a new version of _Alpine_ is run for the first time it
2836          offers a special explanatory screen to the user upon startup.
2837          This option helps control when and if that special screen
2838          appears for users that have previously run _Alpine_. It takes as
2839          its value a _Alpine_ version number. _Alpine_ versions less than
2840          the specified value will suppress this special screen while
2841          versions equal to or greater than that specified will behave
2842          normally.
2843   _newmail-fifo-path_
2844          This option is only available in UNIX _Alpine_. However, there
2845          is a very similar feature built in to _PC-Alpine_. In
2846          _PC-Alpine_'s Config menu at the top of the screen is an option
2847          called "New Mail Window".
2848          You may have _Alpine_ create a FIFO special file (also called a
2849          named pipe, see mkfifo(3) and fifo(4)) where it will send a
2850          one-line message each time a new message is received in the
2851          current folder, the INBOX, or any open Stay-Open-Folders. To
2852          protect against two different _Alpine_s both writing to the same
2853          FIFO, _Alpine_ will only create the FIFO and write to it if it
2854          doesn't already exist.
2855          A possible way to use this option would be to have a separate
2856          window on your screen running the command
2857
2858                                cat filename
2859          where "filename" is the name of the file given for this option.
2860          Because the file won't exist until after you start _Alpine_, you
2861          must _first_ start _Alpine_ and _then_ run the "cat" command.
2862          You may be tempted to use "tail -f filename" to view the new
2863          mail log. However, the common implementations of the tail
2864          command will not do what you are hoping.
2865          The width of the messages produced for the FIFO may be altered
2866          with the NewMail-Window-Width option.
2867          On some systems, fifos may only be created in a local
2868          filesystem. In other words, they may not be in NFS filesystems.
2869          This requirement is not universal. If the system you are using
2870          supports it, it should work. (It is often the case that your
2871          home directory is in an NFS filesystem. If that is the case, you
2872          might try using a file in the "/tmp" filesystem, which is
2873          usually a local filesystem.) Even when it is possible to use an
2874          NFS-mounted filesystem as a place to name the fifo (for example,
2875          your home directory), it will still be the case that the reader
2876          (probably the "cat" command) and the writer (_Alpine_) of the
2877          fifo must be running on the same system.
2878   _newmail-window-width_
2879          UNIX _Alpine_ only.
2880          This option is only useful if you have turned on the
2881          NewMail-FIFO-Path option. That option causes new mail messages
2882          to be sent to a fifo file. Those messages will be 80 characters
2883          wide by default. You can change the width of the messages by
2884          changing this option. For example, if you are reading those
2885          messages in another window you might want to set this width to
2886          the width of that other window.
2887          For UNIX _Alpine_, this option is only useful if you have turned
2888          on the NewMail-FIFO-Path option. That option causes new mail
2889          messages to be sent to a fifo file. Those messages will be 80
2890          characters wide by default. You can change the width of those
2891          messages by changing this option. For example, if you are
2892          reading those messages in another window you might want to set
2893          this width to the width of that other window.
2894          If you are using _PC-Alpine_, it has an option in the Config
2895          menu to turn on the "New Mail Window". The present option also
2896          controls the width of that window.
2897   _news-active-file-path_
2898          This option tells _Alpine_ where to look for the "active file"
2899          for newsgroups when accessing news locally, rather than via
2900          NNTP. The default path is usually /usr/lib/news/active.
2901   _news-collections_
2902          This is a list of collections where news folders are located.
2903          See the section describing collections for more information.
2904   _news-spool-directory_
2905          This option tells _Alpine_ where to look for the "news spool"
2906          for newsgroups when accessing news locally, rather than via
2907          NNTP. The default path is usually /usr/spool/news.
2908   _newsrc-path_
2909          This option overrides the default name _Alpine_ uses for your
2910          "newsrc" news status and subscription file. If set, _Alpine_
2911          will take this value as the full pathname for the desired newsrc
2912          file.
2913   _nntp-range_
2914          This option applies only to newsgroups accessed using the NNTP
2915          protocol. It does not, for example, apply to newsgroups accessed
2916          using an IMAP-to-NNTP proxy.
2917          When you open a connection to a News server using the NNTP
2918          protocol, you normally have access to all of the articles in
2919          each newsgroup. If a server keeps a large backlog of messages it
2920          may speed performance some to restrict attention to only the
2921          newer messages in a group. This option allows you to set how
2922          many article numbers should be checked when opening a newsgroup.
2923          You can think of "nntp-range" as specifying the maximum number
2924          of messages you ever want to see. For example, if you only ever
2925          wanted to look at the last 500 messages in each newsgroup you
2926          could set this option to 500. In actuality, it isn't quite that.
2927          Instead, for performance reasons, it specifies the range of
2928          article numbers to be checked, beginning with the highest
2929          numbered article and going backwards from there. If there are
2930          messages that have been canceled or deleted their article
2931          numbers are still counted as part of the range.
2932          So, more precisely, setting the "nntp-range" will cause article
2933          numbers
2934
2935      last_article_number - nntp-range + 1 through last_article_number
2936          to be considered when reading a newsgroup. The number of
2937          messages that show up in your index will be less than or equal
2938          to the value of "nntp-range".
2939          The purpose of this option is simply to speed up access when
2940          reading news. The speedup comes because _Alpine_ can ignore all
2941          but the last nntp-range article numbers, and can avoid
2942          downloading any information about the ignored articles. There is
2943          a cost you pay for this speedup. That cost is that there is no
2944          way for you to see those ignored articles. The articles that
2945          come before the range you specify are invisible to you and to
2946          _Alpine_, as if they did not exist at all. There is no way to see
2947          those messages using, for example, an unexclude command or
2948          something similar. The only way to see those articles is to set
2949          this option high enough (or set it to zero) and then to reopen
2950          the newsgroup.
2951          If this option is set to 0 (which is also the default), then the
2952          range is unlimited. This option applies globally to all NNTP
2953          servers and to all newsgroups on those servers. There is no way
2954          to set different values for different newsgroups or servers.
2955   _nntp-server_
2956          One or more NNTP servers (host name or IP address) which _Alpine_
2957          will use for reading and posting news. If you read and post news
2958          to and from a single NNTP server, you can get away with only
2959          setting the _nntp-server_ variable and leaving the
2960          _news-collections_ variable unset.
2961          When you define an NNTP server, _Alpine_ implicitly defines a
2962          news collection for you, assuming that server as the news server
2963          and assuming that you will use the NNTP protocol and a local
2964          newsrc configuration file for reading news. See also Configuring
2965          News.
2966          Your NNTP server may offer NNTP "AUTHINFO SASL" or "AUTHINFO
2967          USER" authentication. It may even require it. If your NNTP
2968          server does offer such authentication you may specify a user
2969          name parameter to cause _Alpine_ to attempt to authenticate. The
2970          same is true for the server name in a folder collection which
2971          uses NNTP. This parameter requires an associated value, the
2972          username identifier with which to establish the server
2973          connection. An example might be:
2974
2975                      nntpserver.example.com/user=katie
2976          If authentication is offered by the server, this will cause
2977          _Alpine_ to attempt to use it. If authentication is not offered
2978          by the server, this will cause _Alpine_ to fail with an error
2979          similar to:
2980
2981                  Error: NNTP authentication not available
2982          For more details about the server name possibilities see Server
2983          Name Syntax.
2984   _normal-background-color_
2985   _normal-foreground-color_
2986          Normal Color.
2987   _opening-text-separator-chars_
2988          This option controls a minor aspect of _Alpine_'s MESSAGE INDEX
2989          screen. With some setups the text of the subject is followed by
2990          the opening text of the message if there is any room available
2991          in the index line. If you have configured your Index-Format
2992          option to include one of the Subject tokens which causes this
2993          behavior (SUBJECTTEXT, SUBJKEYTEXT, or SUBJKEYINITTEXT), then
2994          this option may be used to modify what is displayed slightly. By
2995          default, the Subject is separated from the opening text of the
2996          message by the three characters space dash space;
2997
2998                                    " - "
2999          Use this option to set it to something different. The value must
3000          be quoted if it includes any space characters. For example, the
3001          default value could be specified explicitly by setting this
3002          option to
3003
3004                     Opening-Text-Separator-Chars=" - "
3005          This option is displayed as "Opening Text Separator Characters".
3006   _operating-dir_
3007          System-wide _Alpine_ configuration files only. This names the
3008          root of the tree to which the user is restricted when reading
3009          and writing folders and files. It is usually used in the _fixed_
3010          configuration file.
3011   _patterns-filters2_
3012          Matching patterns and their corresponding actions are stored in
3013          this variable. These patterns are used with Filtering. This
3014          variable is normally maintained through the Setup/Rules/Filters
3015          configuration screen. It is a list variable. Each member of the
3016          list is a single pattern/action pair, or it can be a file which
3017          contains zero or more lines of pattern/action pairs. The only
3018          way to create a filters file is to use the InsertFile command in
3019          the Setup/Rules/Filters screen with a filename which doesn't yet
3020          exist. Then use the Shuffle command to move existing filter
3021          patterns into the file. This isn't very convenient but it isn't
3022          thought that many users will need this functionality. The
3023          purpose of filter files is for sharing filters.
3024          This option is displayed as "Patterns Filters".
3025   _patterns-indexcolors_
3026          Matching patterns and their corresponding actions are stored in
3027          this variable. These patterns are used for Index Line Colors.
3028          This variable is normally maintained through the
3029          Setup/Rules/Indexcolor configuration screen. It is a list
3030          variable. Each member of the list is a single pattern/action
3031          pair, or it can be a file which contains zero or more lines of
3032          pattern/action pairs. The only way to create a indexcolor file
3033          is to use the InsertFile command in the Setup/Rules/Indexcolor
3034          screen with a filename which doesn't yet exist. Then use the
3035          Shuffle command to move existing patterns into the file. This
3036          isn't very convenient but it isn't thought that many users will
3037          need this functionality. The purpose of indexcolor files is for
3038          sharing indexcolors.
3039   _patterns-other_
3040          Matching patterns and their corresponding actions are stored in
3041          this variable. These patterns are used with Miscellaneous Rules
3042          configuration. This variable is normally maintained through the
3043          Setup/Rules/Other configuration screen. It is a list variable.
3044          Each member of the list is a single pattern/action pair, or it
3045          can be a file which contains zero or more lines of
3046          pattern/action pairs. The only way to create a rules file is to
3047          use the InsertFile command in the Setup/Rules/Other screen with
3048          a filename which doesn't yet exist. Then use the Shuffle command
3049          to move existing rules into the file. This isn't very convenient
3050          but it isn't thought that many users will need this
3051          functionality.
3052   _patterns-roles_
3053          Matching patterns and their corresponding actions are stored in
3054          this variable. These patterns are used with Roles. This variable
3055          is normally maintained through the Setup/Rules/Roles
3056          configuration screen. It is a list variable. Each member of the
3057          list is a single pattern/action pair, or it can be a file which
3058          contains zero or more lines of pattern/action pairs. The only
3059          way to create a roles file is to use the InsertFile command in
3060          the Setup/Rules/Roles screen with a filename which doesn't yet
3061          exist. Then use the Shuffle command to move existing roles into
3062          the file. This isn't very convenient but it isn't thought that
3063          many users will need this functionality. The purpose of role
3064          files is for sharing roles.
3065   _patterns-scores2_
3066          Matching patterns and their corresponding actions are stored in
3067          this variable. These patterns are used with Scoring. This
3068          variable is normally maintained through the
3069          Setup/Rules/SetScores configuration screen. It is a list
3070          variable. Each member of the list is a single pattern/action
3071          pair, or it can be a file which contains zero or more lines of
3072          pattern/action pairs. The only way to create a scores file is to
3073          use the InsertFile command in the Setup/Rules/SetScores screen
3074          with a filename which doesn't yet exist. Then use the Shuffle
3075          command to move existing scoring patterns into the file. This
3076          isn't very convenient but it isn't thought that many users will
3077          need this functionality. The purpose of scoring files is for
3078          sharing scoring rules.
3079          This option is displayed as "Patterns Scores".
3080   _patterns-search_
3081          Matching patterns for use with the Select command are stored in
3082          this variable. These patterns are used with Search Rules
3083          configuration. This variable is normally maintained through the
3084          Setup/Rules/searCh configuration screen. It is a list variable.
3085          Each member of the list is a single pattern, or it can be a file
3086          which contains zero or more lines of patterns. The only way to
3087          create a rules file is to use the InsertFile command in the
3088          Setup/Rules/searCh screen with a filename which doesn't yet
3089          exist. Then use the Shuffle command to move existing rules into
3090          the file. This isn't very convenient but it isn't thought that
3091          many users will need this functionality.
3092   _personal-name_
3093          Personal configuration file only. User's full personal name. On
3094          UNIX systems, the default is taken from the accounts data base
3095          (/etc/passwd). The easiest way to change the full From address
3096          is with the customized-hdrs variable.
3097   _personal-print-category_
3098          Personal configuration file only. This is the category that the
3099          default print command belongs to. There are three categories.
3100          Category 1 is an attached printer which uses the ANSI escape
3101          sequence, category 2 is the standard system print command, and
3102          category 3 is the set of custom printer commands defined by the
3103          user. This just helps _Alpine_ figure out where to put the
3104          cursor when the user runs the _Setup/Printer_ command. This is
3105          not used by _PC-Alpine_.
3106   _personal-print-command_
3107          Personal configuration file only. This corresponds to the third
3108          category in the printer menu, the personally selected print
3109          commands. This variable contains the list of custom commands
3110          that the user has entered in the _Setup/Printer_ screen. This is
3111          not used by _PC-Alpine_.
3112   _posting-character-set_
3113          See the discussion in International Character Sets for details.
3114   _postponed-folder_
3115          The folder where postponed messages are stored. The default is
3116          _postponed-msgs_ (Unix) or _POSTPOND_ (PC).
3117   _print-font-name_
3118          Winsock version of _PC-Alpine_ only.
3119   _print-font-size_
3120          Winsock version of _PC-Alpine_ only.
3121   _print-font-style_
3122          Winsock version of _PC-Alpine_ only.
3123   _printer_
3124          Personal configuration file only. This is the current setting
3125          for a user's printer. This variable is set from _Alpine_'s
3126          _Setup/Printer_ screen.
3127   _prompt-background-color_
3128   _prompt-foreground-color_
3129          Prompt Color.
3130   _pruned-folders_
3131          This variable allows you to define a list of one or more folders
3132          that _Alpine_ will offer to prune for you in the same way it
3133          automatically offers to prune your "sent-mail" folder each
3134          month. Each folder in this list must be a folder in your default
3135          folder collection (the first folder collection if you have more
3136          than one), and it is just the relative name of the folder in the
3137          collection, not the fully-qualified name. It is similar to
3138          sent-mail. Instead of something like
3139
3140                   pruned-folders={servername}mail/folder
3141          the correct value to use would be
3142
3143                                   folder
3144          There is an assumption here that your first collection is the
3145          folders in
3146
3147                              {servername}mail
3148          Once a month, for each folder listed, _Alpine_ will offer to
3149          move the contents of the folder to a new folder of the same name
3150          but with the previous month's date appended. _Alpine_ will then
3151          look for any such date-appended folder names created for a
3152          previous month, and offer each one it finds for deletion.
3153          If you decline the first offer, no mail is moved and no new
3154          folder is created.
3155          The new folders will be created in your default folder
3156          collection.
3157   _pruning-rule_
3158          By default, _Alpine_ will ask at the beginning of each month
3159          whether or not you want to rename your sent-mail folder to a
3160          name like sent-mail-month-year. (See the feature
3161          prune-uses-yyyy-mm to change the format of the folder to
3162          sent-mail-yyyy-mm.) It will also ask whether you would like to
3163          delete old sent-mail folders. If you have defined
3164          read-message-folder or pruned-folders _Alpine_ will also ask
3165          about pruning those folders. With this option you may provide an
3166          automatic answer to the rename questions and you may tell
3167          _Alpine_ to not ask about deleting old folders.
3168   _quote1-background-color_
3169   _quote1-foreground-color_
3170   _quote2-background-color_
3171   _quote2-foreground-color_
3172   _quote3-background-color_
3173   _quote3-foreground-color_
3174          Quote Colors.
3175   _quote-replace-string_
3176          This option specifies what string to use as a quote when
3177          _viewing_ a message. The standard way of quoting messages when
3178          replying is the string "> " (quote space). With this variable
3179          set, viewing a message will replace occurrences of "> " with the
3180          replacement string. This setting works best when
3181          Reply-Indent-String or the equivalent setting in your
3182          correspondents' mail programs is set to the default "> ", but it
3183          will also work fine with the Reply-Indent-String set to ">".
3184          Enable the feature Quote-Replace-Nonflowed to also have
3185          quote-replacement performed on non-flowed messages.
3186          Setting this option will replace ">" and "> " with the new
3187          setting. This string may include trailing spaces. To preserve
3188          those spaces enclose the full string in double quotes.
3189          No padding to separate the text of the message from the quote
3190          string is added. This means that if you do not add trailing
3191          spaces to the value of this variable, text will be displayed
3192          right next to the quote string, which may be undesirable. This
3193          can be avoided by adding a new string separated by a space from
3194          your selection of quote string replacement. This last string
3195          will be used for padding. For example, setting this variable to
3196          ">" " " has the effect of setting ">" as the
3197          quote-replace-string, with the text padded by a space from the
3198          last quote string to make it more readable.
3199          One possible setting for this variable could be "    " (four
3200          spaces wrapped in quotes), which would have the effect of
3201          indenting each level of quoting four spaces and removing the
3202          ">"'s. Different levels of quoting could be made more
3203          discernible by setting colors for quoted text.
3204          Replying to or forwarding the viewed message will preserve the
3205          original formatting of the message, so quote-replacement will
3206          not be performed on messages that are being composed.
3207   _quote-suppression-threshold_
3208          This option should be used with care. It will cause some of the
3209          quoted text to be eliminated from the display when viewing a
3210          message in the MESSAGE TEXT screen. For example, if you set the
3211          Quote-Suppression-Threshold to the value "5", this will cause
3212          quoted text that is longer than five lines to be truncated.
3213          Quoted text of five or fewer consecutive lines will be displayed
3214          in its entirety. Quoted text of more than six lines will have
3215          the first five lines displayed followed by a line that looks
3216          something like
3217
3218                [ 12 lines of quoted text hidden from view ]
3219          As a special case, if exactly one line of quoted text would be
3220          hidden, the entire quote will be shown instead. So for the above
3221          example, quoted text which is exactly six lines long will will
3222          be shown in its entirety. (In other words, instead of hiding a
3223          single line and adding a line that announces that one line was
3224          hidden, the line is just shown.)
3225          If the sender of a message has carefully chosen the quotes that
3226          he or she includes, hiding those quotes may change the meaning
3227          of the message. For that reason, _Alpine_ requires that when you
3228          want to set the value of this variable to something less than
3229          four lines, you actually have to set it to the negative of that
3230          number. So if you want to set this option to "3", you actually
3231          have to set it to "-3". The only purpose of this is to get you
3232          to think about whether or not you really want to do this! If you
3233          want to delete all quoted text you set the value of this option
3234          to the special value "-10".
3235          The legal values for this option are
3236
3237               0      Default, don't hide anything
3238           -1,-2,-3   Suppress quote lines past 1, 2, or 3 lines
3239           4,5,6,...  Suppress if more than that many lines
3240             -10      Suppress all quoted lines
3241          If you set this option to a non-default value you may sometimes
3242          wish to view the quoted text that is not shown. When this is the
3243          case, the HdrMode (Header Mode) command may be used to show the
3244          hidden text. Typing the "H" command once will show the hidden
3245          text. Typing a second "H" will also turn on Full Header mode.
3246          The presence or absence of the HdrMode command is determined by
3247          the "Enable-Full-Header-Cmd" Feature-List option in your _Alpine_
3248          configuration, so you will want to be sure that is turned on if
3249          you use quote suppression.
3250          For the purposes of this option, a quote is a line that begins
3251          with the character ">".
3252          Quotes are only suppressed when displaying a message on the
3253          screen. The entire quote will be left intact when printing or
3254          forwarding or something similar.
3255   _read-message-folder_
3256          If set, mail in the _INBOX_ that has been read but not deleted
3257          is moved here, or rather, the user is asked whether or not he or
3258          she wants to move it here upon quitting _Alpine_.
3259   _remote-abook-history_
3260          Sets how many extra copies of remote address book data will be
3261          kept in each remote address book folder. The default is three.
3262          These extra copies are simply old versions of the data. Each
3263          time a change is made a new copy of the address book data is
3264          appended to the folder. Old copies are trimmed, if possible,
3265          when _Alpine_ exits. An old copy can be put back into use by
3266          deleting and expunging newer versions of the data from the
3267          folder. Don't delete the first message from the folder. It is a
3268          special header message for the remote address book and it must
3269          be there. This is to prevent regular folders from being used as
3270          remote address book folders and having their data destroyed.
3271   _remote-abook-metafile_
3272          Personal configuration file only. This is usually set by _Alpine_
3273          and is the name of a file that contains data about remote
3274          address books and remote configuration files.
3275   _remote-abook-validity_
3276          Sets the minimum number of minutes that a remote address book
3277          will be considered up to date. Whenever an entry contained in a
3278          remote address book is used, if more than this many minutes have
3279          passed since the last check the remote server will be queried to
3280          see if the address book has changed. If it has changed, the
3281          local copy is updated. The default value is five minutes. The
3282          special value of -1 means never check. The special value of zero
3283          means only check when the address book is first opened.
3284          No matter what the value, the validity check is always done when
3285          the address book is about to be changed by the user. The check
3286          can be initiated manually by typing _^L_ (Ctrl-L) while in the
3287          address book maintenance screen for the remote address book.
3288   _reply-indent-string_
3289          This variable specifies an aspect of _Alpine_'s _Reply_ command.
3290          When a message is replied to and the text of the message is
3291          included, the included text usually has the string "> "
3292          prepended to each line indicating it is quoted text.
3293          This option specifies a different value for that string. If you
3294          wish to use a string which begins or ends with a space, enclose
3295          the string in double quotes.
3296          Besides simple text, the prepended string can be based on the
3297          message being replied to. The following tokens are substituted
3298          for the message's corresponding value:
3299
3300        _FROM_
3301                This token gets replaced with the message sender's
3302                "username". At most six characters are used.
3303
3304        _NICK_
3305                This token gets replaced with the nickname of the message
3306                sender's address as found in your addressbook. If no
3307                addressbook entry is found, Pine replaces the characters
3308                "_NICK_" with nothing. At most six characters are used.
3309
3310        _INIT_
3311                This token gets replaced with the initials of the sender
3312                of the message.
3313
3314          When the enable-reply-indent-string-editing feature is enabled,
3315          you are given the opportunity to edit the string, whether it is
3316          the default or one automatically generated using the above
3317          tokens.
3318   _reply-leadin_
3319          This option is used to customize the content of the introduction
3320          line that is included when replying to a message and including
3321          the original message in the reply. The normal default (what you
3322          will get if you delete this variable) looks something like:
3323
3324                 On Sat, 24 Oct 1998, Fred Flintstone wrote:
3325          where the day of the week is only included if it is available in
3326          the original message. You can replace this default with text of
3327          your own. The text may contain tokens that are replaced with
3328          text that depends on the message you are replying to. For
3329          example, the default is equivalent to:
3330
3331                         On _DAYDATE_, _FROM_ wrote:
3332          Since this variable includes regular text mixed with special
3333          tokens the tokens have to be surrounded by underscore
3334          characters. For example, to use the token "PREFDATE" you would
3335          need to use "_PREFDATE_", not "PREFDATE".
3336          The list of available tokens is here.
3337          By default, the text is all on a single line and is followed by
3338          a blank line. If your _Reply-Leadin_ turns out to be longer than
3339          80 characters when replying to a particular message, it is
3340          shortened. However, if you use the token
3341
3342                                  _NEWLINE_
3343          anywhere in the value, no end of line or blank line is appended,
3344          and no shortening is done. The _NEWLINE_ token may be used to
3345          get rid of the blank line following the text, to add more blank
3346          lines, or to form a multi-line _Reply-Leadin_. To clarify how
3347          _NEWLINE_ works recall that the default value is:
3348
3349                         On _DAYDATE_, _FROM_ wrote:
3350          That is equivalent to
3351
3352                On _DAYDATE_, _FROM_ wrote:_NEWLINE__NEWLINE_
3353          In the former case, two newlines are added automatically because
3354          no _NEWLINE_ token appears in the value of the option (for
3355          backwards compatibility). In the latter case, the newlines are
3356          explicit. If you want to remove the blank line that follows the
3357          _Reply-Leadin_ text use a single _NEWLINE_ token like
3358
3359                    On _DAYDATE_, _FROM_ wrote:_NEWLINE_
3360          Because of the backwards compatibility problem, it is not
3361          possible to remove all of the ends of lines, because then there
3362          will be no _NEWLINE_ tokens and that will cause the automatic
3363          adding of two newlines! If you want, you may embed newlines in
3364          the middle of the text, as well, producing a multi-line
3365          _Reply-Leadin_.
3366          By default, no attempt is made to localize the date. If you
3367          prefer a localized form you may find that one of the tokens
3368          _PREFDATE_ or _PREFDATETIME_ is a satisfactory substitute. If
3369          you want more control one of the many other date tokens, such as
3370          _DATEISO_, might be better.
3371          For the adventurous, there is a way to conditionally include
3372          text based on whether or not a token would result in specific
3373          replacement text. For example, you could include some text based
3374          on whether or not the _NEWS_ token would result in any
3375          newsgroups if it was used. It's explained in detail here.
3376          In the very unlikely event that you want to include a literal
3377          token in the introduction line you must precede it with a
3378          backslash character. For example,
3379
3380                           \_DAYDATE_ = _DAYDATE_
3381          would produce something like
3382
3383                        _DAYDATE_ = Sat, 24 Oct 1998
3384          It is not possible to have a literal backslash followed by an
3385          expanded token.
3386   _reverse-background-color_
3387   _reverse-foreground-color_
3388          Reverse Color.
3389   _rsh-command_
3390          Sets the format of the command used to open a UNIX remote shell
3391          connection. The default is "%s %s -l %s exec /etc/r%sd". All
3392          four "%s" entries MUST exist in the provided command. The first
3393          is for the command's pathname, the second is for the host to
3394          connect to, the third is for the user to connect as, and the
3395          fourth is for the connection method (typically imap).
3396   _rsh-open-timeout_
3397          Sets the time in seconds that _Alpine_ will attempt to open a
3398          UNIX remote shell connection. The default is 15, the minimum
3399          non-zero value is 5, and the maximum is unlimited. If this is
3400          set to zero rsh connections will be completely disabled.
3401   _rsh-path_
3402          Sets the name of the command used to open a UNIX remote shell
3403          connection. The default is typically /usr/ucb/rsh.
3404   _saved-msg-name-rule_
3405          Determines default folder name when _Sav_ing. If set to
3406          _default-folder_ (which is the default setting), then _Alpine_
3407          will offer the folder "saved-messages" (UNIX) or "SAVEMAIL" (PC)
3408          for _Sav_ing messages. The default folder offered in this way
3409          may be changed by using the configuration variable
3410          default-saved-msg-folder.
3411          If this rule is set to _last-folder-used_, _Alpine_ offers to
3412          _Save_ to the folder you last successfully _Saved_ a message to
3413          (this session). The first time you _Save_ a message in a
3414          session, _Alpine_ offers to _Save_ the message to the default
3415          folder.
3416          Choosing any of the _by-_ options causes _Alpine_ to attempt to
3417          get the chosen option's value for the message being _Saved_ (or
3418          for the first message being Saved if using an aggregate Save).
3419          For example, if _by-from_ is chosen, _Alpine_ attempts to get
3420          the value of who the message came from (i.e. the from address).
3421          _Alpine_ then attempts to _Save_ the message to a folder matching
3422          that value. If _by-from_ is chosen and no value is obtained,
3423          _Alpine_ uses _by-sender_. The opposite is also true. If
3424          _by-recipient_ was chosen and the message was posted to a
3425          newsgroup, _Alpine_ will use the newsgroup name. If _by-replyto_
3426          is chosen and no value is obtained, _Alpine_ uses _by-from_.
3427          If any of the "by-realname" options are chosen, _Alpine_ will
3428          attempt to use the personal name part of the address instead of
3429          the mailbox part. If any of the "by-nick" options are chosen,
3430          the address is looked up in your address book and if found, the
3431          nickname for that entry is used. Only simple address book
3432          entries are checked, not distribution lists. Similarly, if any
3433          of the "by-fcc" options are chosen, the fcc from the
3434          corresponding address book entry is used. If by-realname, or the
3435          by-nick or by-fcc lookups result in no value, then if the chosen
3436          option ends with the "then-from", "then-sender", "then-replyto",
3437          or "then-recip" suffix, _Alpine_ reverts to the same behavior as
3438          "by-from", "by-sender", "by-replyto", or "by-recip" depending on
3439          which option was specified. If the chosen option doesn't end
3440          with one of the "then-" suffixes, then _Alpine_ reverts to the
3441          default folder when no match is found in the address book.
3442          Here is an example to make some of the options clearer. If the
3443          message is From
3444
3445                     Fred Flintstone <flint@bedrock.org>
3446          and this rule is set to "by-from", then the default folder
3447          offered in the save dialog would be "flint".
3448          If this rule is set to "by-realname-of-from" then the default
3449          would be "Fred Flintstone".
3450          If this rule is set to "by-nick-of-from" then _Alpine_ will
3451          search for the address "flint@bedrock.org" in your address book.
3452          If an entry is found and it has a nickname associated with it,
3453          that nickname will be offered as the default folder. If not, the
3454          default saved message folder will be offered as the default.
3455          If this rule is set to "by-fcc-of-from" then _Alpine_ will
3456          search for the address "flint@bedrock.org" in your address book.
3457          If an entry is found and it has an Fcc associated with it, that
3458          Fcc will be offered as the default folder. If not, the default
3459          saved message folder will be offered as the default.
3460          If this rule is set to "by-nick-of-from-then-from" then _Alpine_
3461          will search for the address "flint@bedrock.org" in your address
3462          book. If an entry is found and it has a nickname associated with
3463          it, that nickname will be offered as the default folder. If it
3464          is not found (or has no nickname) then the default offered will
3465          be the same as it would be for the "by-from" rule. That is, it
3466          would be "flint"
3467          This option is displayed as "Saved Message Name Rule".
3468   _scroll-margin_
3469          This option controls when _Alpine_'s line-by-line scrolling
3470          occurs. Typically, when a selected item is at the top or bottom
3471          screen edge and the UP or DOWN (and Ctrl-P or Ctrl-N) keys are
3472          pressed, the displayed items are scrolled down or up by a single
3473          line.
3474          This option allows you to tell _Alpine_ the number of lines from
3475          the top and bottom screen edge that line-by-line scrolling
3476          should occur. For example, setting this value to one (1) will
3477          cause _Alpine_ to scroll the display when you move to select an
3478          item on the display's top or bottom edge (instead of moving when
3479          you move off the edge of the screen).
3480          By default, this variable is zero (0), indicating that scrolling
3481          happens when you move up or down to select an item immediately
3482          off the display's top or bottom edge.
3483   _selectable-item-background-color_
3484   _selectable-item-foreground-color_
3485          Selectable-item Color.
3486   _sending-filters_
3487          This option defines a list of text-filtering commands (programs
3488          and scripts) that may be selectively invoked to process a
3489          message just before it is sent. If set, the Composer's _^X Send_
3490          command will allow you to select which filter (or none) to apply
3491          to the message before it is sent. For security reasons, the full
3492          path of the filter program must be specified.
3493          Sending filters do not work with _PC-Alpine_ and sending filters
3494          are not used if the feature send-without-confirm is set.
3495          Command Modifying Tokens:
3496
3497        __RECIPIENTS__
3498                When the command is executed, this token is replaced with
3499                the space delimited list of recipients of the message
3500                being sent.
3501
3502        __TMPFILE__
3503                When the command is executed, this token is replaced with
3504                the path and name of the temporary file containing the
3505                text to be filtered. _Alpine_ expects the filter to
3506                replace this data with the filter's result. NOTE: Use of
3507                this token implies that the text to be filtered is not
3508                piped into standard input of the executed command and its
3509                standard output is ignored. _Alpine_ restores the tty
3510                modes before invoking the filter in case the filter
3511                interacts with the user via its own standard input and
3512                output.
3513
3514        __RESULTFILE__
3515                When the command is executed, this token is replaced with
3516                the path and name of a temporary file intended to contain
3517                a status message from the filter. _Alpine_ displays this
3518                in the message status field.
3519
3520        __DATAFILE__
3521                When the command is executed, this token is replaced in
3522                the command line with the path and name of a temporary
3523                file that _Alpine_ creates once per session and deletes
3524                upon exit. The file is intended to be used by the filter
3525                to store state information between instances of the
3526                filter.
3527
3528        __PREPENDKEY__
3529                When the command is executed, this token indicates that a
3530                random number will be passed down the input stream before
3531                the message text. It is not included as a command-line
3532                argument. This number could be used as a session key. It
3533                is sent in this way to improve security. The number is
3534                unique to the current _Alpine_ session and is only
3535                generated once per session.
3536
3537        __INCLUDEALLHDRS__
3538                When the command is executed, this token indicates that
3539                the headers of the message will be passed down the input
3540                stream before the message text. It is not included as a
3541                command-line argument. The filter should, of course,
3542                remove the headers before returning control to _Alpine_.
3543
3544        __MIMETYPE__
3545                When the command is executed, this token is replaced in
3546                the command name with a temporary file name used to accept
3547                any new MIME Content-Type information necessitated by the
3548                output of the filter. Upon the filter's exit, if the file
3549                contains new MIME type information, _Alpine_ verifies its
3550                format and replaces the outgoing message's MIME type
3551                information with that contained in the file. This is
3552                basically a cheap way of sending something other than
3553                Text/Plain.
3554
3555   _sendmail-path_
3556          This names the path to an alternative program, and any necessary
3557          arguments, to be used in posting mail messages. See the section
3558          on SMTP and Sendmail for more details.
3559   _signature-file_
3560          This is the name of a file which will be automatically inserted
3561          into outgoing messages. It typically contains information such
3562          as your name, email address and organizational affiliation.
3563          _Alpine_ adds the signature into the message as soon as you enter
3564          the composer so you can choose to remove it or edit it on a
3565          message by message basis. Signature file placement in message
3566          replies is controlled by the signature-at-bottom setting in the
3567          feature list.
3568          This defaults to ~/.signature on UNIX and <PINERC
3569          directory>\PINE.SIG on a PC.
3570          To create or edit your signature file choose Setup from the Main
3571          Menu and then select S for Signature (Main/Setup/Signature).
3572          This puts you into the Signature Editor where you can enter a
3573          _few_ lines of text containing your identity and affiliation.
3574          If the filename is followed by a vertical bar (|) then instead
3575          of reading the contents of the file the file is assumed to be a
3576          program which will produce the text to be used on its standard
3577          output. The program can't have any arguments and doesn't receive
3578          any input from _Alpine_, but the rest of the processing works as
3579          if the contents came from a file.
3580          Instead of storing the data in a local file, the signature data
3581          may be stored remotely in an IMAP folder. In order to do this,
3582          you must use a remote name for the file. A remote signature-file
3583          name might look like:
3584
3585                {myimaphost.myschool.k12.wa.us}mail/signature
3586          or, if you have an SSL-capable version of _Alpine_, you might
3587          try
3588
3589      {myimaphost.myschool.k12.wa.us/user=loginname/ssl}mail/signature
3590          The syntax used here is the same as the syntax used for remote
3591          configuration files from the command line. Note that you may not
3592          access an existing signature file remotely, you have to create a
3593          new _folder_ which contains the signature data. If the name you
3594          use here for the signature file is a remote name, then when you
3595          edit the file from the Setup/Signature command the data will be
3596          stored remotely in the folder. You aren't required to do
3597          anything special to create the folder, it gets created
3598          automatically if you use a remote name.
3599          Besides regular text, the signature file may also contain (or a
3600          signature program may produce) tokens which are replaced with
3601          text which usually depends on the message you are replying to or
3602          forwarding. For example, if the signature file contains the
3603          token
3604
3605                                   _DATE_
3606          anywhere in the text, then that token is replaced by the date
3607          the message you are replying to or forwarding was sent. If it
3608          contains
3609
3610                                  _CURDATE_
3611          that is replaced with the current date. The first is an example
3612          of a token which depends on the message you are replying to (or
3613          forwarding) and the second is an example which doesn't depend on
3614          anything other than the current date. You have to be a little
3615          careful with this facility since tokens which depend on the
3616          message you are replying to or forwarding will be replaced by
3617          nothing in the case where you are composing a new message from
3618          scratch. The use of roles may help you in this respect. It
3619          allows you to use different signature files in different cases.
3620          The list of tokens available for use in the signature file is
3621          here.
3622          Instead of, or along with the use of _roles_ to give you
3623          different signature files in different situations, there is also
3624          a way to conditionally include text based on whether or not a
3625          token would result in specific replacement text. For example,
3626          you could include some text based on whether or not the _NEWS_
3627          token would result in any newsgroups if it was used. This is
3628          explained in detail here. This isn't for the faint of heart.
3629          In the very unlikely event that you want to include a literal
3630          token in the signature you must precede it with a backslash
3631          character. For example,
3632
3633                           \_DAYDATE_ = _DAYDATE_
3634          would produce something like
3635
3636                        _DAYDATE_ = Sat, 24 Oct 1998
3637          It is not possible to have a literal backslash followed by an
3638          expanded token.
3639   _signature-background-color_
3640   _signature-foreground-color_
3641          Signature Color.
3642   _smime-public-cert-directory_
3643          UNIX _Alpine_ only.
3644          If the option smime-public-cert-container is set then this
3645          option will have no effect.
3646          Normally, Public Certificates for use with S/MIME will be stored
3647          in the directory which is the value of this option. Those
3648          certificates will be stored in PEM format, one certificate per
3649          file. The name of the file for the certificate corresponding to
3650
3651                                emailaddress
3652          should be
3653
3654                              emailaddress.crt
3655          For example, a file for user@example.com would be in the file
3656
3657                            user@example.com.crt
3658          in this directory.
3659          Use the Setup/SMIME screen to modify this variable.
3660          Typically, the public certificates that you have will come from
3661          S/MIME signed messages that are sent to you. _Alpine_ will
3662          extract the public certificate from the signed message and store
3663          it in the certificates directory. These PEM format public
3664          certificates look something like:
3665-----BEGIN CERTIFICATE-----
3666MIIFvTCCBKWgAwIBAgIQD4fYFHVI8T20yN4nus097DANBgkqhkiG9w0BAQUFADCB
3667rjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug
3668Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho
3669...
36702b9KGqDyMWW/rjNnmpjzjT2ObGM7lRA8lke4FLOLajhrz4ogO3b4DFfAAM1VSZH8
3671D6sOwOLJZkLY8FRsfk63K+2EMzA2+qAzMKupgeTLqXIf
3672-----END CERTIFICATE-----
3673
3674          + General S/MIME Overview
3675          This option is displayed as "S/MIME - Public Cert Directory".
3676   _smime-public-cert-container_
3677          UNIX _Alpine_ only.
3678          If this option is set it will be used instead of
3679          smime-public-cert-directory
3680          This option gives you a way to store certificates remotely on an
3681          IMAP server instead of storing the certificates one per file
3682          locally. In order to do that you just give this option a remote
3683          folder name for a folder which does not yet exist. The name is
3684          similar to the name you might use for a remote configuration
3685          file. A remote folder name might look something like:
3686
3687               {myimaphost.myschool.k12.wa.us}mail/publiccerts
3688          Use the Setup/SMIME screen to modify this variable.
3689          + General S/MIME Overview
3690          This option is displayed as "S/MIME - Public Cert Container".
3691   _smime-private-key-directory_
3692          UNIX _Alpine_ only.
3693          In order to sign outgoing S/MIME messages you will need a
3694          personal digital ID certificate. You will usually get such a
3695          certificate from a certificate authority such as Thawte or
3696          CAcert. (In order to encrypt outgoing messages you don't need a
3697          personal digital ID, you need the public certificate of the
3698          recipient instead.) If the option smime-private-key-container is
3699          set then this option will have no effect.
3700          Normally, Private Keys for use with S/MIME will be stored in the
3701          directory which is the value of this option. Those certificates
3702          will be stored in PEM format, one certificate per file. The name
3703          of the file for the certificate corresponding to your
3704
3705                                emailaddress
3706          should be
3707
3708                              emailaddress.key
3709          For example, if your address is user@example.com the name of the
3710          file would be
3711
3712                            user@example.com.key
3713          in this directory.
3714          Use the Setup/SMIME screen to modify this variable.
3715          Typically, the private key that you have will come from a
3716          Certificate Authority. The private key should be stored in a PEM
3717          format file that looks something like:
3718-----BEGIN RSA PRIVATE KEY-----
3719Proc-Type: 4,ENCRYPTED
3720DEK-Info: DES-EDE3-CBC,2CBD328FD84CF5C6
3721
3722YBEXYLgLU9NJoc1V+vJ6UvcF08RX54S6jXsmgL0b5HGkudG6fhnmHkH7+UCvM5NI
3723SXO/F8iuZDfs1VGG0NyitkFZ0Zn2vfaGovBvm15gx24b2xnZDLRB7/bNZkurnK5k
3724VjAjZ2xXn2hFp2GJwqRdmxYNqsKGu52B99oti5HUWuZ2GFRaWjn5hYOqeApZE2uA
3725...
3726oSRqfI51UdSRt0tmGhHeTvybUVrHm9eKft8TTGf+qSBqzSc55CsmoVbRzw4Nfhix
3727m+4TJybNGNfAgOctSkEyY/OCb49fRRQTCBZVIhzLGGmpYmkO55HbIA==
3728-----END RSA PRIVATE KEY-----
3729
3730          + General S/MIME Overview
3731          This option is displayed as "S/MIME - Private Key Directory".
3732   _smime-private-key-container_
3733          UNIX _Alpine_ only.
3734          If this option is set it will be used instead of
3735          smime-private-key-directory.
3736          This option gives you a way to store keys remotely on an IMAP
3737          server instead of storing the keys one per file locally. In
3738          order to do that you just give this option a remote folder name
3739          for a folder which does not yet exist. The name is similar to
3740          the name you might use for a remote configuration file. A remote
3741          folder name might look something like:
3742
3743               {myimaphost.myschool.k12.wa.us}mail/privatekeys
3744          Use the Setup/SMIME screen to modify this variable.
3745          + General S/MIME Overview
3746          This option is displayed as "S/MIME - Private Key Container".
3747   _smime-cacert-directory_
3748          UNIX _Alpine_ only.
3749          If the option smime-cacert-container is set then this option
3750          will have no effect.
3751          CACert is a shorthand name for certification authority
3752          certificate. Normally _Alpine_ will use the CACerts that are
3753          located in the standard system location for CACerts. It may be
3754          the case that one of your correspondents has a Digital ID which
3755          has been signed by a certificate authority that is not in the
3756          regular set of system certificate authorities. You may
3757          supplement the system list by adding further certificates of
3758          your own. These should be stored in the directory which is the
3759          value of this option. The certificates will be stored in PEM
3760          format, one certificate per file. The names of the files can be
3761          anything ending in ".crt".
3762          Use the Setup/SMIME screen to modify this variable.
3763          These PEM format CA certificates look very similar to your
3764          public certificates for particular email addresses
3765          (smime-public-cert-directory).
3766          + General S/MIME Overview
3767          This option is displayed as "S/MIME - Cert Authority Directory".
3768   _smime-cacert-container_
3769          UNIX _Alpine_ only.
3770          If this option is set it will be used instead of
3771          smime-cacert-directory.
3772          This option gives you a way to store certificates remotely on an
3773          IMAP server instead of storing the certificates one per file
3774          locally. In order to do that you just give this option a remote
3775          folder name for a folder which does not yet exist. The name is
3776          similar to the name you might use for a remote configuration
3777          file. A remote folder name might look something like:
3778
3779                 {myimaphost.myschool.k12.wa.us}mail/cacerts
3780          Use the Setup/SMIME screen to modify this variable.
3781          + General S/MIME Overview
3782          This option is displayed as "S/MIME - Cert Authority Container".
3783   _smtp-server_
3784          One or more SMTP servers (host name or IP address) which _Alpine_
3785          will use for outgoing mail. If not set, _Alpine_ passes outgoing
3786          email to the _sendmail_ program on the local machine. _PC-Alpine_
3787          users must have this variable set in order to send mail as they
3788          have no _sendmail_ program.
3789          Your SMTP server may offer SMTP AUTH authentication. It may even
3790          require it. If your SMTP server offers SMTP AUTH authentication
3791          you may specify a "user" name parameter to cause _Alpine_ to
3792          attempt to authenticate. This parameter requires an associated
3793          value, the username identifier with which to establish the
3794          server connection. An example might be:
3795
3796                      smtpserver.example.com/user=katie
3797          If AUTH authentication is offered by the server, this will cause
3798          _Alpine_ to attempt to use it. If AUTH authentication is not
3799          offered by the server, this will cause _Alpine_ to fail sending
3800          with an error similar to:
3801
3802                  Error: SMTP authentication not available
3803          Another type of authentication that is used by some ISPs is
3804          called "POP before SMTP" or "IMAP before SMTP", which means that
3805          you have to authenticate yourself to the POP or IMAP server by
3806          opening a mailbox before you can send mail. To do this, you
3807          usually only have to open your INBOX.
3808          You may tell _Alpine_ to use the Message Submission port (587)
3809          instead of the SMTP port (25) by including the "submit"
3810          parameter in this option. At this time "/submit" is simply
3811          equivalent to specifying port 587, though it may imply more than
3812          that at some point in the future. Some ISPs are blocking port 25
3813          in order to reduce the amount of spam being sent to their users.
3814          You may find that the submit option allows you to get around
3815          such a block.
3816
3817                        smtpserver.example.com/submit
3818          To specify any non-standard port number on the SMTP server you
3819          may follow the hostname with a colon followed by the portnumber.
3820
3821                        smtpserver.example.com:12345
3822          Normally, when a connection is made to the Smtp-Server _Alpine_
3823          will attempt to negotiate a secure (encrypted) session using
3824          Transport Layer Security (TLS). If that fails then a
3825          non-encrypted connection will be attempted instead. You may
3826          specify that a TLS connection is required if you wish. If you
3827          append "/tls" to the name then the connection will fail instead
3828          of falling back to a non-secure connection.
3829
3830                         smtpserver.example.com/tls
3831          See the SMTP Servers section or the Server Name Syntax section
3832          for some more details.
3833          This option is displayed as "SMTP Server (for sending)".
3834   _sort-key_
3835          This variable sets up the default Message Index sorting. The
3836          default is to sort by arrival order (the order the messages
3837          arrived in the folder). It has the same functionality as the
3838          _-sort_ command line argument and the _$_ command in the "Folder
3839          Index". If a _sort-key_ is set, then all folders open during the
3840          session will have that as the default sort order.
3841   _speller_
3842          UNIX _Alpine_ only.
3843          For _PC-Alpine_, you must install the aspell library code that
3844          you may get from http://aspell.net/win32/.
3845          This option affects the behavior of the _^T_ (spell check)
3846          command in the Composer. It specifies the program invoked by _^T_
3847          in the Composer. By default, _Alpine_ uses the system's "spell"
3848          command. _Alpine_ will use the command defined by this option
3849          (if any) instead. When invoking the spell-checking program,
3850          _Alpine_ appends a tempfile name (where the message is passed) to
3851          the command line. _Alpine_ expects the speller to correct the
3852          spelling in that file. When you exit from the speller program
3853          _Alpine_ will read the tmpfile back into the composer.
3854          For Unix _Alpine_ the program _ispell_ works well as an
3855          alternate spell checker. If your Unix system has _ispell_ it is
3856          probably reasonable to make it the default speller by
3857          configuring it as the default in the system configuration file,
3858          /usr/local/lib/pine.conf.
3859          If this option is not set, then the system's _spell_ command is
3860          used. The spell command does not work the same as the alternate
3861          speller. It produces a list of misspelled words on its standard
3862          output, instead, and doesn't take a tempfile as an argument.
3863          Don't set this speller option to the standard Unix spell
3864          command. That won't work. If you want to use the standard Unix
3865          spell command, set the speller option to nothing.
3866   _ssh-command_
3867          Sets the format of the command used to open a UNIX secure shell
3868          connection. The default is "%s %s -l %s exec /etc/r%sd". All
3869          four "%s" entries MUST exist in the provided command. The first
3870          is for the command's pathname, the second is for the host to
3871          connect to, the third is for the user to connect as, and the
3872          fourth is for the connection method (typically imap).
3873   _ssh-open-timeout_
3874          Sets the time in seconds that _Alpine_ will attempt to open a
3875          UNIX secure shell connection. The default is 15, the minimum
3876          non-zero value is 5, and the maximum is unlimited. If this is
3877          set to zero ssh connections will be completely disabled.
3878   _ssh-path_
3879          Sets the name of the command used to open a UNIX secure shell
3880          connection. The default is typically /usr/bin/ssh.
3881   _standard-printer_
3882          System-wide configuration file only. Specifies a list of
3883          commands for category 2 of the _Setup/Printer_ screen, the
3884          standard print command section. This is not used by _PC-Alpine_.
3885   _status-background-color_
3886   _status-foreground-color_
3887          Status Color.
3888   _status-message-delay_
3889          This option has evolved over time, causing the possible values
3890          to be counter-intuitive. Read carefully before you set this
3891          option. First we explain what the option does, then there is a
3892          longer discussion following that.
3893          If this is set to zero, the default value, it has _no_ effect.
3894          Positive and negative values serve two similar, but different
3895          purposes.
3896          If it is set to a positive number, it causes the cursor to move
3897          to the status line whenever a status message is printed and
3898          pause there for this many seconds. It will probably only be
3899          useful if the show-cursor feature is also turned on. Setting
3900          this option to a positive number can only be used to _increase_
3901          the status message delay. This may be useful for Braille
3902          displays, or other non-traditional displays.
3903          If it is set to a negative number the interpretation is a bit
3904          complicated. Negative numbers are used to _decrease_ the amount
3905          of delay _Alpine_ uses to allow you to read important status
3906          messages. Of course, this may cause you to miss some important
3907          messages. If you see a message flash by but miss what it says
3908          you can use the Journal command from the Main menu to read it.
3909          If you set this option to a negative value, the delay will be no
3910          more than one second less than the absolute value of the value
3911          you set. So if you set it to -1, the delay will be no more than
3912          zero seconds, no delay at all. If you set it to -2, the delay
3913          will be no more than 1 second. And so on, -3 is 2 seconds, -4 is
3914          3 seconds, ... If the delay that _Alpine_ would have used by
3915          default is less than this delay, then the smaller delay set by
3916          _Alpine_ will be used. Setting this option to a negative value
3917          can only reduce the amount of delay, never increase it.
3918          Here is a more detailed explanation. Status messages are the
3919          messages which show up spontaneously in the status message line,
3920          the third line from the bottom of the screen. By default,
3921          _Alpine_ assigns each status message it produces a minimum
3922          display time. Some status messages have a minimum display time
3923          of zero. You can see an example of such a message by paging up
3924          in this help text until you reach the top of the screen. If you
3925          try to page past the top you will see the message
3926
3927                       [Already at start of help text]
3928          in the status line. If there is another more important use of
3929          the status message line this message might be replaced quickly,
3930          or it even might not be shown at all. However, if there is no
3931          reason to get rid of the message, it might stay there for
3932          several seconds while you read the help. An example where it is
3933          replaced immediately happens when you page up in the help text
3934          past the top of the screen, but then type the "WhereIs" command
3935          right after paging up. The message will disappear immediately
3936          without causing a delay (unless you have set this option to a
3937          positive value) to allow you to type input for the "WhereIs"
3938          command. Since it isn't a very important message, _Alpine_ has
3939          set its minimum display time to zero seconds.
3940          Other messages have minimum display times of three or more
3941          seconds. These are usually error messages that _Alpine_ thinks
3942          you ought to see. For example, it might be a message about a
3943          failed Save or a failed folder open. It is often the case that
3944          this minimum display time won't delay you in any way because the
3945          status message line is not needed for another reason. However,
3946          there are times when _Alpine_ has to delay what it is doing in
3947          order to display a status message for the minimum display time.
3948          This happens when a message is being displayed and _Alpine_
3949          wants to ask for input from the keyboard. For example, when you
3950          Save a message you use the status message line. You get a prompt
3951          there asking for the name of the folder to save to. If there is
3952          a status message being displayed that has not yet displayed for
3953          its minimum time _Alpine_ will display that status message
3954          surrounded with the characters > and < to show you that it is
3955          delaying. That might happen, for example, if you tried to save
3956          to a folder that caused an error, then followed that immediately
3957          with another Save command. You might find yourself waiting for a
3958          status message like
3959
3960          [>Can't get write access to mailbox, access is readonly<]
3961          to finish displaying for three seconds. If that is something you
3962          find happening to you frequently, you may use negative values of
3963          this option to decrease or eliminate that delay, at the risk of
3964          missing the message.
3965   _stay-open-folders_
3966          This option affects low-level behavior of _Alpine_. There is no
3967          default value for this option. It is related to the options
3968          Preopen-Stayopen-Folders, Max-Remote-Connections, and
3969          offer-expunge-of-Stayopen-Folders.
3970          Note: changes made to this list take effect the next time you
3971          open a folder in the list.
3972          This is a list of folders that will be permanently kept open
3973          once they are first opened. The names in this list may be either
3974          the nickname of an Incoming folder or the full technical
3975          specification of a folder. The folders in this list need not be
3976          remote IMAP folders, they could usefully be local folders, as
3977          well. If a folder in the list is a newsgroup or is not accessed
3978          either locally or via IMAP, then the entry will be ignored. For
3979          example, folders accessed via NNTP or POP3 will not be kept
3980          open, since the way that new mail is found with those protocols
3981          involves closing and reopening the connection.
3982          Once a Stay Open folder has been opened, new-mail checking will
3983          continue to happen on that folder for the rest of the _Alpine_
3984          session. Your INBOX is always implicitly included in this
3985          Stay-Open list and doesn't need to be added explicitly.
3986          Another difference that you may notice between a Stay Open
3987          folder and a non-Stay Open folder is which message is selected
3988          as the current message when you enter the folder index.
3989          Normally, the starting position for an incoming folder (which
3990          most Stay Open folders will likely be) is controlled by the
3991          Incoming-Startup-Rule. However, if a folder is a Stay Open
3992          folder, when you re-enter the folder after the first time the
3993          current message will be the same as it was when you left the
3994          folder. An exception is made if you use the TAB command to get
3995          to the folder. In that case, the message number will be
3996          incremented by one from what it was when you left the folder.
3997          The above special behavior is thought to be useful. However, it
3998          is special and different from what you might at first expect.
3999          The feature Use-Regular-Startup-Rule-for-Stayopen-Folders may be
4000          used to turn off this special treatment.
4001          If the message that was current when you left the folder no
4002          longer exists, then the regular startup rule will be used
4003          instead.
4004          This option is displayed as "Stayopen Folders".
4005   _tcp-open-timeout_
4006          Sets the time in seconds that _Alpine_ will attempt to open a
4007          network connection. The default is 30, the minimum is 5, and the
4008          maximum is system defined (typically 75). If a connection has
4009          not completed within this many seconds _Alpine_ will give up and
4010          consider it a failed connection.
4011   _tcp-query-timeout_
4012          When _Alpine_ times out a network read or write it will normally
4013          just display a message saying "Still waiting". However, if
4014          enough time has elapsed since it started waiting it will offer
4015          to let you break the connection. That amount of time is set by
4016          this option, which defaults to 60 seconds, has a minimum of 5
4017          seconds, and a maximum of 1000 seconds.
4018   _tcp-read-warning-timeout_
4019          Sets the time in seconds that _Alpine_ will wait for a network
4020          read before warning you that things are moving slowly and
4021          possibly giving you the option to break the connection. The
4022          default is 15 seconds. The minimum is 5 seconds and the maximumn
4023          is 1000 seconds.
4024   _tcp-write-warning-timeout_
4025          Sets the time in seconds that _Alpine_ will wait for a network
4026          write before warning you that things are moving slowly and
4027          possibly giving you the option to break the connection. The
4028          default is 0 which means it is unset. If set to a non-zero
4029          value, the minimum is 5 and the maximum is 1000.
4030   _threading-display-style_
4031          When a folder is sorted by Threads or OrderedSubject, this
4032          option will affect the MESSAGE INDEX display. By default,
4033          _Alpine_ will display the MESSAGE INDEX in the
4034          "show-thread-structure" style if a folder is sorted by Threads
4035          or OrderedSubject. The possible values are:
4036
4037        _none_
4038                Regular index display. The same index line as would be
4039                displayed without threading is used. The only difference
4040                will be in the order of the messages.
4041
4042        _show-thread-structure_
4043                Threaded Subjects will be indented and vertical bars and
4044                horizontal lines will be added to make it easier to see
4045                the relationships among the messages in a thread (a
4046                conversation).
4047
4048        _mutt-like_
4049                This is the same as the option above except that the
4050                Subject is suppressed (is blank) if it matches the
4051                previous Subject in the thread. The name comes from the
4052                email client Mutt. Here is an example of what a mutt-like
4053                index might look like. In this example, the first column
4054                represents the message number, the threading-index-style
4055                is set to "regular-index-with-expanded-threads", and the
4056                Threading-Lastreply-Character is set to a backslash:
4057
4058    1    Some topic
4059    2  . Subject           original message in thread
4060    3    |->               reply to 2
4061    4  . |->               another reply to 2
4062    5  . | \->             reply to 4
4063    6  . |   \->           reply to 5
4064    7    |     \->         reply to 6
4065    8    |->               another reply to 2
4066    9  . |->New subject    another reply to 2 but with a New subject
4067   10    | |->             reply to 9
4068   11    | \->             another reply to 9
4069   12    |   \->           reply to 11
4070   13    \->               final reply to 2
4071   14    Next topic
4072
4073        _indent-subject-1_
4074                Threaded Subjects will be indented one space per level of
4075                the conversation. The bars and lines that show up in the
4076                show-thread-structure display will not be there with this
4077                style.
4078
4079        _indent-subject-2_
4080                Same as above but indent two spaces per level instead of
4081                one space.
4082
4083        _indent-from-1_
4084                Similar to indent-subject-1, except that instead of
4085                indenting the Subject field one space the From field of a
4086                thread will be indented one space per level of the
4087                conversation.
4088
4089        _indent-from-2_
4090                Same as above but indent two spaces per level instead of
4091                one space.
4092
4093        _show-structure-in-from_
4094                The structure of the thread is illustrated with indenting,
4095                vertical bars, and horizontal lines just like with the
4096                show-thread-structure option, but the From field is used
4097                to show the relationships instead of the Subject field.
4098
4099   _threading-expanded-character_
4100          The Threading-Expanded-Character option has a small effect on
4101          the MESSAGE INDEX display when using a threading-display-style
4102          other than _none_. The value of this option is a single
4103          character. This character is used to indicate that part of a
4104          thread has been expanded and could be collapsed if desired with
4105          the "/" Collapse/Expand command. By default, the value of this
4106          option is a dot (.).
4107          If this option is set to the Empty Value, then the column (and
4108          the following blank column) will be deleted from the display.
4109          This option is closely related to the
4110          threading-indicator-character option. Another similar option
4111          which affects the thread display is the
4112          threading-lastreply-character option.
4113   _threading-index-style_
4114          When a folder is sorted by Threads or OrderedSubject, this
4115          option will affect the INDEX displays. The possible values are:
4116
4117        _regular-index-with-expanded-threads_
4118                This is the default display. If the configuration option
4119                threading-display-style is set to something other than
4120                "none", then this setting will cause _Alpine_ to start off
4121                with a MESSAGE INDEX with all of the threads expanded.
4122                That is, each message will have a line in the MESSAGE
4123                INDEX display. The Collapse/Expand command (/) may be used
4124                to manually collapse or expand a thread or subthread (see
4125                also slash-collapses-entire-thread).
4126
4127                This setting affects the display when the folder is first
4128                threaded. The collapsed state may also be re-initialized
4129                by re-sorting the folder manually using the SortIndex
4130                command ($). After re-sorting the threads will once again
4131                all be expanded, even if you have previously collapsed
4132                some of them.
4133
4134                If "threading-display-style" is set to "none", then the
4135                display will be the regular default _Alpine_ MESSAGE
4136                INDEX, but sorted in a different order.
4137
4138        _regular-index-with-collapsed-threads_
4139                If the configuration option threading-display-style is set
4140                to something other than "none", then this setting will
4141                cause _Alpine_ to start out with all of the threads
4142                collapsed instead of starting out with all of the threads
4143                expanded. The Collapse/Expand command (/) may be used to
4144                manually collapse or expand a thread or subthread (see
4145                also slash-collapses-entire-thread).
4146
4147                This setting affects the display when the folder is first
4148                threaded. The collapsed state may also be re-initialized
4149                by re-sorting the folder manually using the SortIndex
4150                command ($). After re-sorting the threads will once again
4151                all be collapsed, even if you have previously expanded
4152                some of them.
4153
4154        _separate-index-screen-always_
4155                With this setting and the next, you will see an index of
4156                threads instead of an index of messages, provided you have
4157                sorted by Threads or OrderedSubject.
4158
4159                The THREAD INDEX contains a '*' in the first column if any
4160                message in the thread is marked Important. If not, it
4161                contains a '+' if any message in the thread is to you. The
4162                second column is blank. The third column contains a 'D' if
4163                all of the messages in the thread are deleted. Otherwise,
4164                it contains an 'N' if any of the messages in the thread
4165                are New.
4166
4167                When you view a particular thread from the THREAD INDEX
4168                you will be in the MESSAGE INDEX display but the index
4169                will only contain messages from the thread you are
4170                viewing.
4171
4172        _separate-index-screen-except-for-single-messages_
4173                This is very similar to the option above. When you are in
4174                the THREAD INDEX, one of the available commands is
4175                "ViewThd". With the setting "separate-index-screen-always"
4176                (the option above) when you view a particular thread you
4177                will be in the MESSAGE INDEX display and the index will
4178                only contain messages from the thread you are viewing. If
4179                the thread you are viewing consists of a single message,
4180                the MESSAGE INDEX will be an index with only one message
4181                in it. If you use this
4182                "separate-index-screen-except-for-single-messages" setting
4183                instead, then that index which contains a single message
4184                will be skipped and you will go directly from the THREAD
4185                INDEX into the MESSAGE TEXT screen.
4186
4187   _threading-indicator-character_
4188          The Threading-Indicator-Character option has a small effect on
4189          the MESSAGE INDEX display when using a threading-display-style
4190          other than _none_ and sorting by Threads or OrderedSubject. The
4191          value of this option is a single character. This character is
4192          used to indicate that part of a thread (a conversation) is
4193          hidden beneath a message. The message could be expanded if
4194          desired with the "/" Collapse/Expand command. By default, the
4195          value of this option is the greater than sign (>).
4196          If this option is set to the Empty Value, then the column (and
4197          the following blank column) will be deleted from the display.
4198          This option is closely related to the
4199          threading-expanded-character option. Another similar option
4200          which affects the thread display is the
4201          threading-lastreply-character option.
4202   _threading-lastreply-character_
4203          The Threading-Lastreply-Character option has a small effect on
4204          the MESSAGE INDEX display when using a threading-display-style
4205          of _show-thread-structure_, _mutt-like_, or
4206          _show-structure-in-from_; and sorting by Threads or
4207          OrderedSubject. The value of this option is a single character.
4208          This character is used instead of the vertical line character
4209          when there are no more replies directly to the parent of the
4210          current message. It can be used to "round-off" the bottom of the
4211          vertical line by setting it to a character such as a backslash
4212          (\) or a backquote (`). The default value of this option is the
4213          backslash character (\). This option may not be set to the Empty
4214          Value. In that case, the default will be used instead.
4215          This option is displayed as "Threading Last Reply Character".
4216   _title-background-color_
4217   _title-foreground-color_
4218          Title Color.
4219   _title-closed-background-color_
4220   _title-closed-foreground-color_
4221          Title-closed Color.
4222   _titlebar-color-style_
4223          titlebar-color-style.
4224   _unknown-character-set_
4225          A text message should either be made up of all US-ASCII
4226          characters or it should contain a charset label which tells the
4227          software which character set encoding to use to interpret the
4228          message. Sometimes a malformed message may be unlabeled but
4229          contain non-ascii text. This message is outside of the standards
4230          so any attempt to read it could fail. When _Alpine_ attempts to
4231          read such a message it will try to interpret the text in the
4232          character set you specify here. For example, if you have
4233          correspondents who send you unlabeled messages that are usually
4234          made up of characters from the WINDOWS-1251 character set,
4235          setting this unknown-character-set to WINDOWS-1251 will allow
4236          you to read those messages. Of course, if the unlabeled message
4237          is actually in some other character set, then you may see
4238          garbage on your screen.
4239          In the Setup/Config screen you may choose from a list of all the
4240          character sets _Alpine_ knows about by using the "T" ToCharsets
4241          command.
4242   _upload-command_
4243          This option affects the behavior of the Composer's _^R_ (Read
4244          File) and _^J_ (Attach File, in the header) commands. It
4245          specifies a Unix program name, and any necessary command line
4246          arguments, that _Alpine_ can use to transfer files from your
4247          personal computer into messages that you are composing.
4248   _upload-command-prefix_
4249          This option is used in conjunction with the _upload-command_
4250          option. It defines text to be written to the terminal emulator
4251          (via standard output) immediately prior to starting the upload
4252          command. This is useful for integrated serial line file transfer
4253          agents that permit command passing (e.g., Kermit's APC method).
4254   _url-viewers_
4255          List of programs to use to open Internet URLs. This value
4256          affects _Alpine_'s handling of URLs that are found in the text
4257          of messages you read. Normally, only URLs _Alpine_ can handle
4258          directly are automatically offered for selection in the "Message
4259          Text" screen. When one or more comma delimited Web browsers
4260          capable of deciphering URLs on their command line are added
4261          here, _Alpine_ will choose the first available browser to
4262          display URLs it doesn't recognize.
4263          Additionally, to support various connection methods and
4264          browsers, each entry in this list can begin with the special
4265          token _TEST(test-string)_. The test-string is a shell command
4266          that _Alpine_ will run and which must exit with a status of zero
4267          for _Alpine_ to consider that browser for use (the other
4268          criteria is that the browser must exist as a full path or a path
4269          relative to your home directory).
4270          Now for an example:
4271
4272     url-viewers=_TEST("test -n '${DISPLAY}'")_ /usr/local/bin/netscape,
4273     /usr/local/bin/lynx, C:\BIN\NETSCAPE.BAT
4274          This example shows that for the first browser in the list to be
4275          used the environment variable DISPLAY must be defined. If it is,
4276          then the file /usr/local/bin/netscape must exist. If either
4277          condition is not met, then the file /usr/local/bin/lynx must
4278          exist. If it doesn't, then the final path and file must exist.
4279          Note that the last entry is a DOS/Windows path. This is one way
4280          to support _Alpine_ running on more than one architecture with
4281          the same configuration file.
4282   _use-only-domain-name_
4283          Can be set to _yes_ or _no._ Anything but _yes_ means _no._ If
4284          set to _yes_ the first label in the host name will be lopped off
4285          to get the domain name and the domain name will be used for
4286          outgoing mail and such. That is, if the host name is
4287          _carson.u.example.edu_ and this variable is set to _yes,_ then
4288          _u.example.edu_ will be used on outgoing mail. Only meaningful if
4289          user-domain is NOT set.
4290   _user-domain_
4291          Sets the domain or host name for the user, overriding the system
4292          host or domain name. See the domain name section. The easiest
4293          way to change the full From address is with the customized-hdrs
4294          variable.
4295   _user-id_
4296          _PC-Alpine_ only and personal configuration file only. Sets the
4297          username that is placed on all outgoing messages. The username
4298          is the part of the address that comes before the "@". The
4299          easiest way to change the full From address is with the
4300          customized-hdrs variable.
4301   _user-input-timeout_
4302          If this is set to an integer greater than zero, then this is the
4303          number of _hours_ to wait for user input before _Alpine_ times
4304          out. If _Alpine_ is in the midst of composing a message or is
4305          waiting for user response to a question, then it will not
4306          timeout. However, if _Alpine_ is sitting idle waiting for the
4307          user to tell it what to do next and the user does not give any
4308          input for this many hours, _Alpine_ will exit. No expunging or
4309          moving of read messages will take place. It will exit similarly
4310          to the way it would exit if it received a hangup signal. This
4311          may be useful for cleaning up unused _Alpine_ sessions which
4312          have been forgotten by their owners. The _Alpine_ developers
4313          envision system administrators setting this to a value of
4314          several hours (24?) so that it won't surprise a user who didn't
4315          want to be disconnected.
4316   _viewer-hdr-colors_
4317          This variable holds the optional Header Colors and patterns
4318          which have been defined by the user. This is usually modified by
4319          using the Header Colors section of the Setup Color screen.
4320   _viewer-hdrs_
4321          You may change the default list of headers that are viewed by
4322          listing the headers you want to view here. If the headers in
4323          your _viewer-hdrs_ list are present in the message, then they
4324          will be shown. The order of the headers you list will also be
4325          honored. If the special value _all-except_ is included as the
4326          first header in the _viewer-hdrs_ list, then all headers in the
4327          message except those in the list will be shown. The values are
4328          all case insensitive.
4329          This option is displayed as "Viewer Headers".
4330   _viewer-margin-left_
4331          This variable controls the left-hand vertical margin's width in
4332          _Alpine_'s Message Viewing screen. Its value is the number of
4333          space characters preceding each displayed line. For consistency
4334          with Viewer-Margin-Right, you may specify the column number to
4335          start in (column numbering begins with number 1) instead of the
4336          width of the margin by appending a lower case letter "c" to the
4337          number. For example, a value of "2c" means to start the text in
4338          column two, which is entirely equivalent to a value of "1",
4339          which means to leave a margin of 1 space.
4340          The default is a left margin of 0 (zero). Misconfigurations (for
4341          example, negative values or values with starting left columns
4342          greater than the ending right column) are silently ignored. If
4343          the number of columns for text between the Viewer-Margin-Left
4344          and the Viewer-Margin-Right is fewer than 8, then margins of
4345          zero will be used instead.
4346   _viewer-margin-right_
4347          This variable controls the right-hand vertical margin's width in
4348          _Alpine_'s Message Viewing screen. Its value is the number of
4349          space characters following each displayed line. You may specify
4350          the column number to end the text in (column numbering begins
4351          with number 1) instead of the width of the margin by appending a
4352          lower case letter "c" to the number. For example, a value of
4353          "76c" means to end the text in column 76. If the screen is 80
4354          characters wide, this is equivalent to a value of "4", which
4355          means to leave a margin of 4 spaces. However, if you use
4356          different size screens at different times, then these two values
4357          are not equivalent.
4358          The default right margin is 4. Misconfigurations (for example,
4359          negative values or values with starting left columns greater
4360          than the ending right column) are silently ignored. If the
4361          number of columns for text between the Viewer-Margin-Left and
4362          the Viewer-Margin-Right is fewer than 8, then margins of zero
4363          will be used instead.
4364   _viewer-overlap_
4365          This option specifies an aspect of _Alpine_'s Message Viewing
4366          screen. When the space bar is used to page forward in a message,
4367          the number of lines specified by the _viewer-overlap_ variable
4368          will be repeated from the bottom of the screen. That is, if this
4369          was set to two lines, then the bottom two lines of the screen
4370          would be repeated on the top of the next screen. The normal
4371          default value is "2".
4372   _window-position_
4373          Winsock version of _PC-Alpine_ only. Window position in the
4374          format: CxR+X+Yn Where C and R are the window size in characters
4375          and X and Y are the screen position of the top left corner of
4376          the window.
4377     __________________________________________________________________
4378
4379Configuration Features
4380
4381   There are several features (options) which may be turned off or on. The
4382   configuration variable feature-list is a list of all the features that
4383   are turned on or off. If the name of a feature is in the list it will
4384   be turned on. If the name of a feature with the characters no-
4385   prepended is in the list, it will turn the feature off. This is useful
4386   for overriding system-wide defaults. This is because, unlike all the
4387   other configuration variables, the _feature-list_ is additive. That is,
4388   first the system-wide _feature-list_ is read and then the user's
4389   _feature-list_ is read. This makes it possible for the system manager to
4390   turn some of the features on by default while still allowing the user
4391   to cancel that default. For example, if the system manager has turned
4392   on the _allow-talk_ feature by default then a user may turn it back off
4393   by including the feature _no-allow-talk_ in his or her personal
4394   configuration file. Of course, these details are usually handled by
4395   _Alpine_ when the user turns an option on or off from inside the
4396   _Setup/Config_ screen.
4397
4398   System managers should take some care when turning on features by
4399   default. Some of the documentation assumes that all of the features are
4400   off by default, so it could be confusing for a user if some are on by
4401   default instead. Feature names are case-independent.
4402
4403   Here is an alphabetical list of possible features.
4404   _allow-changing-from_
4405          Prior to _Pine_ 4.00 there was a _compile_-time option called
4406          ALLOW_CHANGING_FROM. That has been replaced by a _runtime_
4407          feature. If this feature is turned on then the From line can be
4408          changed just like all the other header fields that can be
4409          changed. See the configuration variables customized-hdrs and
4410          default-composer-hdrs for more information on editing headers.
4411          The default value for this feature is ON, so that editing of
4412          From headers is allowed by default.
4413   _allow-talk_
4414          Unix _Alpine_ only. By default, permission for others to _talk_
4415          to your terminal is turned off when you are running _Alpine_.
4416          When this feature is set, permission is instead turned on.
4417          Note: The _talk_ program has nothing to do with _Alpine_ or
4418          email. The _talk_ daemon on your system will attempt to print a
4419          message on your screen when someone else is trying to contact
4420          you. If you wish to see these messages while you are running
4421          _Alpine_, you should enable this feature.
4422          If you do enable this feature and see a _talk_ message, you must
4423          suspend or quit _Alpine_ before you can respond.
4424   _alternate-compose-menu_
4425          This feature controls the menu that is displayed when Compose is
4426          selected. If set, a list of options will be presented, with each
4427          option representing the type of composition that could be used.
4428          This feature is most useful for users who want to avoid being
4429          prompted with each option separately, or who want to avoid the
4430          checking of remote postponed or form letter folders. The
4431          possible types of composition are:
4432          New, for starting a new composition. Note that if New is
4433          selected and roles are set, roles are checked for matches and
4434          applied according to the setting of the matching role.
4435          Interrupted, for continuing an interrupted composition. This
4436          option is only offered if an interrupted message folder is
4437          detected.
4438          Postponed, for continuing postponed compositions. This option is
4439          offered if a postponed-folder is set in the config _REGARDLESS
4440          OF_ whether or not the postponed folder actually exists. This
4441          option is especially handy for avoiding having to check for the
4442          existence of a remote postponed folder.
4443          Form, for using form letters. This option is offered if the
4444          form-letter-folder is set in the config, and is not checked for
4445          existence for reasons similar to those explained by the
4446          postponed option.
4447          setRole, for selecting a role to apply to a composition.
4448   _alternate-role-menu_
4449          Normally the Role Command allows you to choose a role and
4450          compose a new message using that role. When this feature is set,
4451          the role command will first ask whether you want to Compose a
4452          new message, Forward the current message, Reply to the current
4453          message, or Bounce the current message. If you are not in the
4454          MESSAGE INDEX and are not viewing a message, then there is no
4455          current message and the question will be skipped. After you have
4456          chosen to Compose, Forward, Reply or Bounce you will then choose
4457          the role to be used.
4458          When Bouncing the "Set From" address is used for the Resent-From
4459          header, the "Set Fcc" value is used for the Fcc provided that
4460          the option "Fcc-On-Bounce" is turned on, and the "Use SMTP
4461          Server" value is used for the SMTP server, if set. Other actions
4462          of the role are ignored when Bouncing.
4463          This feature is displayed as "Alternate Role (#) Menu".
4464   _assume-slow-link_
4465          UNIX _Alpine_ only.
4466          This feature affects _Alpine_'s display routines. If set, the
4467          normal inverse-video cursor (used to highlight the current item
4468          in a list) will be replaced by an _arrow_ cursor and other
4469          screen update optimizations for low-speed links (e.g. 2400 bps
4470          dialup connections) will be activated. One of the optimizations
4471          is that colored index lines (set up with Indexcolor Rules) will
4472          not be colored. This might be useful if _you_ know you have a
4473          slow speed link but for some reason _Alpine_ doesn't know.
4474   _auto-move-read-msgs_
4475          This feature controls an aspect of _Alpine_'s behavior upon
4476          quitting. If set, and the read-message-folder variable is also
4477          set, then _Alpine_ will automatically transfer all read messages
4478          from the _INBOX_ to the designated folder and mark them as
4479          deleted in the _INBOX_. Messages in the _INBOX_ marked with an
4480          _N_ (meaning New, or unseen) are not affected.
4481          This feature is displayed as "Auto Move Read Messages".
4482   _auto-open-next-unread_
4483          This feature controls the behavior of the TAB key when
4484          traversing folders in the optional incoming-folders collection
4485          or in optional news-collections.
4486          When the TAB (Next New) key is pressed, and there are no more
4487          unseen messages in the current (incoming message or news)
4488          folder, _Alpine_ will search the list of folders in the current
4489          collection for one containing New or Recent (new since the last
4490          time the folder was opened) messages. This behavior may be
4491          modified slightly with the Tab-Uses-Unseen-For-Next-Folder
4492          feature which causes _Alpine_ to look for Unseen messages
4493          instead of Recent messages. By default, when such a folder is
4494          found, _Alpine_ will ask whether you wish to open the folder. If
4495          this feature is set, _Alpine_ will automatically open the folder
4496          without prompting.
4497   _auto-unselect-after-apply_
4498          This feature affects the behavior of the Apply command. If set,
4499          the Apply command will do the operation you specify, but then
4500          will implicitly do an "UnSelect All", so that you will
4501          automatically be back in the normal Index view after the Apply.
4502   _auto-unzoom-after-apply_
4503          If set, and if you are currently looking at a Zoomed Index view
4504          of selected messages, the _Apply_ command will do the operation
4505          you specify, but then will implicitly do an _UnZoom_, so that
4506          you will automatically be back in the normal Index view after
4507          the _Apply_. This feature is set by default.
4508   _auto-zoom-after-select_
4509          If set, the _; select_ command will automatically perform a
4510          _Zoom_ after the _select_ is complete. This feature is set by
4511          default.
4512   _busy-cue-spinner-only_
4513          When _Alpine_ is delayed for some reason it usually shows that
4514          something is happening with a small animated display in the
4515          status message line near the bottom of the screen. Setting this
4516          feature will cause that animation to be the same each time
4517          instead of having _Alpine_ choose a random animation. You may
4518          turn the animation off altogether by setting the busy-cue-rate
4519          option to zero.
4520   _check-newmail-when-quitting_
4521          If set, _Alpine_ will check for new mail after you give the Quit
4522          command. If new mail has arrived since the previous check, you
4523          will be notified and given the choice of quitting or not
4524          quitting.
4525   _combined-addrbook-display_
4526          This feature affects the address book display screens. Normally,
4527          expanding an address book from the ADDRESS BOOK LIST screen will
4528          cause the remaining address books and directory servers to
4529          disappear from the screen, leaving only the entries of the
4530          expanded address book. If this feature is set, then the other
4531          address books will remain on the screen, so that all of the
4532          address books can be present at once.
4533          The way that commands work won't be changed. For example, the
4534          Select All command will select all of the entries in the current
4535          address book, not all of the entries in all of the address
4536          books. The WhereIs command will change a little. It will search
4537          through all of the text on the screen plus all of the entries
4538          from expanded address books.
4539          When this feature is set, the setting of the feature
4540          expanded-view-of-addressbooks has an effect.
4541          This feature is displayed as "Combined Addressbook Display".
4542   _combined-folder-display_
4543          This feature affects the folder list display screens. Normally,
4544          each folder list is viewed within its collection only. This
4545          command allows folder lists to be viewed within a single screen
4546          that combines the contents of all collections.
4547          The way that commands work won't be changed. For example, the
4548          Select All command will select all of the folders in the current
4549          collection, not all of the entries in all of the collections.
4550          The WhereIs command will change a little. It will search through
4551          all of the folders in the current collection as well as all the
4552          folder in any other expanded collection.
4553          When this feature is set, the setting of the feature
4554          expanded-view-of-folders has an effect.
4555   _combined-subdirectory-display_
4556          This feature affects the Folder List screen when the
4557          combined-folder-display feature is enabled. Normally, selecting
4558          a directory from the Folder List takes you into a new screen
4559          displaying only the contents of that directory.
4560          Enabling this feature will cause the contents of the selected
4561          directory to be displayed within the boundaries of the
4562          Collection it is a part of. All previously displayed collections
4563          will remain in the screen.
4564          The way that commands work won't be changed. For example, the
4565          Select All command will select all of the folders in the
4566          directory, as opposed to all of the entries in all of the
4567          collections. The WhereIs command will change a little. It will
4568          search through all of the folders in the current collection as
4569          well as all the folder in any other expanded collection.
4570   _compose-cancel-confirm-uses-yes_
4571          This feature affects what happens when you type ^C to cancel a
4572          composition. By default, if you attempt to cancel a composition
4573          by typing ^C, you will be asked to confirm the cancellation by
4574          typing a "C" for _C_onfirm. It logically ought to be a "Y" for
4575          _Y_es, but that is risky because the "^C Y" needed to cancel a
4576          message is close (on the keyboard) to the "^X Y" needed to send
4577          a message.
4578          If this feature is set the confirmation asked for will be a
4579          "_Y_es" instead of a "_C_onfirm" response.
4580   _compose-cut-from-cursor_
4581          If set, the _^K_ command in the composer will cut from the
4582          current cursor position to the end of the line, rather than
4583          cutting the entire line.
4584          This feature is displayed as "Ctrl-K Cuts From Cursor".
4585   _compose-maps-delete-key-to-ctrl-d_
4586          If set, Delete will be equivalent to ^D, and delete the current
4587          character. Normally _Alpine_ defines the Delete key to be
4588          equivalent to ^H, which deletes the _previous_ character.
4589          This feature is displayed as "Delete Key Maps to Ctrl-D".
4590   _compose-rejects-unqualified-addrs_
4591          If set, unqualified names entered as addresses will be treated
4592          as errors unless they match an addressbook nickname or are
4593          looked up successfully on an LDAP server. _Alpine_ will not
4594          attempt to turn them into complete addresses by adding your
4595          local domain (which _Alpine_ normally does by default).
4596          A complete (fully-qualified) address is one containing a
4597          username followed by an _@_ symbol, followed by a host or domain
4598          name (e.g. _jsmith@example.com_). An unqualified name is one
4599          without the _@_ symbol and host or domain name (e.g. _jsmith_).
4600          This feature is displayed as "Compose Rejects Unqualified
4601          Addresses".
4602   _compose-send-offers-first-filter_
4603          If you have sending-filters configured, setting this feature
4604          will cause the first filter in the _sending-filters_ list to be
4605          offered as the default instead of _unfiltered_, the usual
4606          default.
4607   _compose-sets-newsgroup-without-confirm_
4608          If you enter the composer while reading a newsgroup, you will
4609          normally be prompted to determine whether you intend the new
4610          message to be posted to the current newsgroup or not. If this
4611          feature is set, _Alpine_ will not prompt you in this situation,
4612          and will assume that you do indeed wish to post to the newsgroup
4613          you are reading.
4614          This feature is displayed as "Compose Sets Newsgroup Without
4615          Confirming".
4616   _confirm-role-even-for-default_
4617          If you have roles, when you Reply to or Forward a message, or
4618          Compose a new message, _Alpine_ will search through your roles
4619          for one which matches. Normally, if no matches are found you
4620          will be placed into the composer with no opportunity to select a
4621          role. If this feature is set, then you will be asked to confirm
4622          that you don't want a role. This will give you the opportunity
4623          to select a role (with the ^T command). If you confirm no role
4624          with a Return, you will be placed in the composer with no role.
4625          You may also confirm with either an "N" or a "Y". These behave
4626          the same as if you pressed the Return. (The "N" and "Y" answers
4627          are available because they match what you might type if there
4628          was a role match.)
4629          If you are using the alternate form of the Compose command
4630          called "Role", then all of your roles will be available to you,
4631          independent of the value of this feature and of the values set
4632          for all of Reply Use, Forward Use, and Compose Use.
4633   _continue-tab-without-confirm_
4634          Normally, when you use the TAB NextNew command and there is a
4635          problem checking a folder, you are asked whether you want to
4636          continue with the search in the following folder or not. This
4637          gives you a chance to stop the NextNew processing.
4638          If this feature is set you will not be asked. It will be assumed
4639          that you want to continue.
4640          This feature is displayed as "Continue NextNew Without
4641          Confirming".
4642   _convert-dates-to-localtime_
4643          Normally, the message dates that you see in the MESSAGE INDEX
4644          and MESSAGE VIEW are displayed in the timezone they were sent
4645          from. For example, if a message was sent to you from a few
4646          timezones to the east it might appear that it was sent from the
4647          future; or if it was sent from somewhere to the west it might
4648          appear as if it is from yesterday even though it was sent only a
4649          few minutes ago. If this feature is set an attempt will be made
4650          to convert the dates to your local timezone to be displayed.
4651          Note that this does not affect the results of Select by Date or
4652          of anything else other than these displayed dates. When viewing
4653          the message you may look at the original unconverted value of
4654          the Date header by using the HdrMode Command.
4655   _copy-to-address-to-from-if-it-is-us_
4656          This feature affects the From address used when Replying to a
4657          message. It is probably only useful if you have some
4658          alt-addresses defined. When enabled, it checks to see if any of
4659          the addresses in the To or Cc fields of the message you are
4660          replying to is one of your addresses. If it is, and there is
4661          only one of them, then that address is used as the From address
4662          in the message you are composing. In other words, you will be
4663          using a From address that is the same as the To address that was
4664          used to get the mail to you in the first place.
4665          If a role is being used and it has a From address defined, that
4666          From address will be used rather than the one derived from this
4667          feature.
4668   _delete-skips-deleted_
4669          If set, this feature will cause the _Delete_ command to advance
4670          past other messages that are marked deleted. In other words,
4671          pressing _D_ will both mark the current message deleted and
4672          advance to the next message that is not marked deleted. This
4673          feature is set by default.
4674   _disable-config-cmd_
4675          If set, the configuration screen _Setup/Config_ will not be
4676          available at all.
4677   _disable-save-input-history_
4678          Many of the prompts that ask for input in the status line near
4679          the bottom of the screen will respond to Up Arrow and Down Arrow
4680          with the history of previous entries. For example, in the
4681          MESSAGE INDEX screen when you use the WhereIs command the text
4682          you entered will be remembered and can be recalled by using the
4683          Up Arrow key. Another example, when saving a message the folders
4684          saved to will be remembered and can be recalled using the arrow
4685          keys.
4686          In the Save prompt, some users prefer that the Up and Down arrow
4687          keys be used for the Previous Collection and Next Collection
4688          commands instead of for a history of previous saves. If this
4689          option is set the Up and Down arrow keys will become synonyms
4690          for the Previous Collection and Next Collection (^P and ^N)
4691          commands in the prompt for the name of a folder to Save to or in
4692          the prompt for the name of a folder to GoTo. When this feature
4693          is not set (the default), ^P and ^N will change the collection
4694          and the arrow keys will show the history.
4695   _disable-keyboard-lock-cmd_
4696          In the Main _Alpine_ menu there is a Keyboard locking command
4697          (_KBLock_). If this feature is set, that command won't be
4698          available to the user.
4699   _disable-keymenu_
4700          If set, the command key menu that normally appears on the bottom
4701          two lines of the screen will not usually be there. Asking for
4702          help with _^G_ or _?_ will cause the key menu to appear instead
4703          of causing the help message to come up. If you want to actually
4704          see the help text, another _^G_ or _?_ will show it to you.
4705          After the key menu has popped up with the help key it will
4706          remain there for an _O Other_ command but will disappear if any
4707          other command is typed.
4708   _disable-password-caching_
4709          Normally, loginname/password combinations are cached in _Alpine_
4710          so that the user does not have to enter the same password more
4711          than once in a session. A disadvantage to this approach is that
4712          the password must be stored in the memory image of the running
4713          _Alpine_ in order that it can be reused. In the event that
4714          _Alpine_ crashes and produces a core dump, and that core dump is
4715          readable by others, the loginname and password could possibly be
4716          read from the core dump.
4717          If this feature is set, then the passwords will not be cached
4718          and the user will have to retype the password whenever _Alpine_
4719          needs it. Even with this feature set there is still some chance
4720          that the core file will contain a password, so care should be
4721          taken to make the core files unreadable.
4722          NOTE: If PASSFILE caching is enabled, this does not disable it.
4723          That is a separate and independent feature.
4724   _disable-password-cmd_
4725          If set the _Newpassword_ command usually available under the
4726          _Setup_ command will not be available.
4727   _disable-pipes-in-sigs_
4728          If set it will be an error to append a vertical bar (|) to the
4729          name of a signature file. Appending a vertical bar normally
4730          causes the signature file to be executed to produce the
4731          signature.
4732   _disable-pipes-in-templates_
4733          If set it will be an error to append a vertical bar (|) to the
4734          name of a template file. Appending a vertical bar normally
4735          causes the signature file to be executed to produce the
4736          signature.
4737   _disable-regular-expression-matching-for-alternate-addresses_
4738          Normally, the alt-addresses option is interpreted as a regular
4739          expression. One type of address that might cause trouble is an
4740          address that contains a plus sign. If you want to have an
4741          address with a plus as one of your alternate addresses and you
4742          don't want to use regular expressions, then setting this feature
4743          will cause _Alpine_ to treat the addresses you list literally
4744          instead.
4745   _disable-roles-setup-cmd_
4746          If set the _Roles_ command usually available under the _Setup_
4747          command will not be available.
4748   _disable-roles-sig-edit_
4749          If set the roles editor in the _Setup/Roles_ command will not
4750          allow editing of signature files with the F subcommand.
4751   _disable-roles-template-edit_
4752          If set the roles editor in the _Setup/Roles_ command will not
4753          allow editing of template files with the F subcommand.
4754   _disable-sender_
4755          If set, _Alpine_ will not generate a "Sender:" or "X-X-Sender"
4756          header. This may be desirable on a system which is virtually
4757          hosting many domains, and the sysadmin has other methods
4758          available for tracking a message to its originator.
4759          This feature is displayed as "Do Not Generate Sender Header".
4760   _disable-setlocale-collate_
4761          This is a hard to understand feature that should only be used in
4762          rare cases. Normally, the C function call
4763
4764                          setlocale(LC_COLLATE, "")
4765          is used by _Alpine_. If you want to try turning it off, setting
4766          this feature will turn it off. This part of the locale has to do
4767          with the sort order of characters in your locale.
4768   _disable-shared-namespaces_
4769          If this hidden feature is set the automatic search for
4770          namespaces "ftp", "imapshared", and "imappublic" by the
4771          underlying library will be disabled. The reason this feature
4772          exists is because there are some implementations of system
4773          password lookup routines which are very slow when presented with
4774          a long loginname which does not exist. This feature could be set
4775          to prevent the delay at startup time when the names above are
4776          searched for in the password file.
4777   _disable-signature-edit-cmd_
4778          If set the _Signature_ editing command usually available under
4779          the _Setup_ command will not be available.
4780   _disable-take-fullname-in-addresses_
4781          Normally, when TakeAddr is used to copy an address or addresses
4782          from a message into an address book entry, _Alpine_ will try to
4783          preserve the full name associated with each address in the list
4784          of addresses. The reason for this is so that if the entry is a
4785          list or later becomes a list, then information about the
4786          individual addresses in the list is preserved. If you would
4787          rather just have the simple addresses in the list of addresses,
4788          set this feature. For example, with the default setting you
4789          might see something like this in the ADDRESS BOOK editor after
4790          you type TakeAddr
4791 Nickname  : nick
4792 Fullname  : Bedrock Elders
4793 Fcc       :
4794 Comment   :
4795 Addresses : Fred Flintstone <flint@bedrock.org>,
4796             Barney Rubble <rubble@bedrock.org>
4797
4798          but with this feature set it would look like
4799 Nickname  : nick
4800 Fullname  : Bedrock Elders
4801 Fcc       :
4802 Comment   :
4803 Addresses : flint@bedrock.org,
4804             rubble@bedrock.org
4805
4806          instead. Note the difference in the Addresses field.
4807   _disable-take-last-comma-first_
4808          Normally, when _TakeAddr_ is used to copy an address from a
4809          message into an address book, _Alpine_ will attempt to rewrite
4810          the full name of the address in the form:
4811
4812     Last, First
4813          instead of
4814
4815     First Last
4816          It does this because many people find it useful to sort by Last
4817          name instead of First name. If this feature is set, then the
4818          _TakeAddr_ command will not attempt to reverse the name in this
4819          manner.
4820   _disable-terminal-reset-for-display-filters_
4821          UNIX _Alpine_ only.
4822          This feature affects _Alpine_'s behavior when using
4823          Display-Filters. Normally, before the display filter is run, the
4824          terminal mode is reset to what it was before you started
4825          _Alpine_. This may be necessary if the filter requires the use of
4826          the terminal. For example, it may need to interact with you. If
4827          you set this feature, then the terminal mode will not be reset.
4828          One thing that turning on this feature should fix is the
4829          coloring of quoted text in the message view, which breaks
4830          because the terminal reset resets the color state of the
4831          terminal (Color Configuration).
4832   _downgrade-multipart-to-text_
4833          This feature affects _Alpine_'s behavior when sending mail.
4834          Internet standards require _Alpine_ to translate all non-ASCII
4835          characters in messages that it sends using MIME encoding. This
4836          encoding can be ostensibly broken for recipients if any agent
4837          between _Alpine_ and the recipient, such as an email list
4838          expander, appends text to the message, such as list information
4839          or advertising. When sending such messages _Alpine_ attempts to
4840          protect such encoding by placing extra MIME boundaries around
4841          the message text.
4842          These extra boundaries are invisible to recipients that use
4843          MIME-aware email programs (the vast majority). However, if you
4844          correspond with users of email programs that are not MIME-aware,
4845          or do not handle the extra boundaries gracefully, you can use
4846          this feature to prevent _Alpine_ from including the extra MIME
4847          information. Of course, it will increase the likelihood that
4848          non-ASCII text you send may appear corrupt to the recipient.
4849   _enable-8bit-esmtp-negotiation_
4850          This feature affects _Alpine_'s behavior when sending mail. By
4851          default, this feature is set. Internet standards require that
4852          all electronic mail messages traversing the global Internet
4853          consist of 7bit ASCII characters unless a pair of cooperating
4854          mail transfer agents explicitly agree to allow 8bit messages. In
4855          general, then, exchanging messages in non-ASCII characters
4856          requires MIME encoding.
4857          However, there are now Internet standards that allow for
4858          unencoded 8bit exchange of messages between cooperating systems.
4859          When this feature is set _Alpine_ will try to negotiate
4860          unencoded 8bit transmission during the sending process. Should
4861          the negotiation fail, _Alpine_ will fall back to its ordinary
4862          encoding rules.
4863          Note, this feature relies on your system's mail transport agent
4864          or configured smtp-server having the negotiation mechanism
4865          introduced in "Extended SMTP" (ESMTP) and the specific extension
4866          called _8BITMIME_.
4867   _enable-8bit-nntp-posting_
4868          The Internet standard for exchanging USENET news messages
4869          (RFC-1036) specifies that USENET messages should conform to
4870          Internet mail standards and contain only 7bit characters, but
4871          much of the news transport software in use today is capable of
4872          successfully sending messages containing 8bit characters. Hence,
4873          many people believe that it is appropriate to send 8bit news
4874          messages without any MIME encoding.
4875          Moreover, there is no Internet standard for explicitly
4876          negotiating 8bit transfer, as there is for Internet email.
4877          Therefore, _Alpine_ provides the option of posting unencoded
4878          8bit news messages, though not as the default. Setting this
4879          feature will turn OFF _Alpine_'s MIME encoding of newsgroup
4880          postings that contain 8bit characters.
4881          Note, articles may cross a path or pass through news transport
4882          software that is unsafe or even hostile to 8bit characters. At
4883          best this will only cause the posting to become garbled. The
4884          safest way to transmit 8bit characters is to leave _Alpine_'s
4885          MIME encoding turned on, but recipients who lack MIME-aware
4886          tools are often annoyed when they receive MIME-encoded messages.
4887   _enable-aggregate-command-set_
4888          When this feature is set you may use the commands and
4889          subcommands that relate to performing operations on more than
4890          one message at a time. We call these "aggregate operations". In
4891          particular, the _; Select_, _A Apply_, and _Z Zoom_ commands are
4892          enabled by this feature. _Select_ is used to _tag_ one or more
4893          messages meeting the specified criteria. _Apply_ can then be
4894          used to apply any message command to all of the selected/tagged
4895          messages. Further, the _Zoom_ command allows you to toggle the
4896          "Folder Index" view between just those Selected and all messages
4897          in the folder.
4898          This feature also enables the _^X_ subcommand in the "Folder
4899          Index" _WhereIs_ command which causes all messages matching the
4900          _WhereIs_ argument to become selected.
4901          You may also use aggregate operations in the address book
4902          screens where you are operating on address book entries instead
4903          of on messages.
4904   _enable-alternate-editor-cmd_
4905          If this feature is set (the default), and the editor variable is
4906          not set, entering the _^__ (Control-underscore) key while
4907          composing a message will prompt you for the name of the editor
4908          you would like to use.
4909          If the environment variable $EDITOR is set, this value will be
4910          offered as a default. If the _editor_ variable is set, the _^__
4911          key will activate the specified editor without prompting, in
4912          which case it is not necessary to set the
4913          _enable-alternate-editor-cmd_ feature. This feature is not
4914          available in _PC-Alpine_.
4915          This feature is displayed as "Enable Alternate Editor Command".
4916   _enable-alternate-editor-implicitly_
4917          If this feature and the editor variable are both set, _Alpine_
4918          will automatically activate the specified editor when the cursor
4919          is moved from the header of the message being composed into the
4920          message text. For replies, the alternate editor will be
4921          activated immediately. If this feature is set but the _editor_
4922          variable is not set, then _Alpine_ will automatically ask for
4923          the name of an alternate editor when the cursor is moved out of
4924          the headers, or if a reply is being done. This feature is not
4925          available in _PC-Alpine_.
4926   _enable-arrow-navigation_
4927          This feature controls the behavior of the left and right arrow
4928          keys. If set, the left and right arrow keys will operate like
4929          the usual navigation keys _<_ and _>_. This feature is set by
4930          default.
4931          If you set this feature, and do not like the changed behavior of
4932          the up/down arrow keys when navigating through the FOLDER LIST
4933          screen -- _first_ from column to column, if more than one folder
4934          is displayed per row, and _then_ from row to row -- you may
4935          either also wish to set the feature
4936          enable-arrow-navigation-relaxed, single-column-folder-list, or
4937          use the ^P/^N (instead of up/down arrow) keys to move up/down
4938          the list of folders in each column.
4939   _enable-arrow-navigation-relaxed_
4940          This feature controls the behavior of the left and right arrow
4941          keys in the FOLDER LIST screen when the enable-arrow-navigation
4942          feature is set. This feature is set by default.
4943          When this feature is set, the left and right arrow keys in the
4944          FOLDER LIST screen move the highlight bar to the left or right,
4945          and the up and down arrows move it up or down.
4946          When the "Enable-Arrow-Navigation" feature is set and this
4947          feature is not set; the left and right arrow keys in the Folder
4948          List screen strictly track the commands bound to the '<' and '>'
4949          keys, and the up and down arrow keys move the highlight bar to
4950          the previous and next folder or directory name.
4951   _enable-background-sending_
4952          If set, this feature enables a subcommand in the composer's
4953          _Send?_ confirmation prompt. The subcommand allows you to tell
4954          _Alpine_ to handle the actual posting in the background. While
4955          this feature usually allows posting to appear to happen very
4956          fast, it has no affect on the actual delivery time it takes a
4957          message to arrive at its destination.
4958          This feature isn't supported on all systems. All DOS and
4959          Windows, as well as several Unix ports, do not recognize this
4960          feature. It is not possible to use background sending if the
4961          feature send-without-confirm is set.
4962          Error handling is significantly different when this feature is
4963          enabled. Any message posting failure results in the message
4964          being appended to your _Interrupted_ mail folder. When you type
4965          the _Compose_ command, _Alpine_ will notice this folder and
4966          offer to extract any messages contained. Upon continuing a
4967          failed message, _Alpine_ will display the nature of the failure
4968          in the status message line.
4969          Under extreme conditions, it is possible for message data to get
4970          lost. Do not enable this feature if you typically run close to
4971          any sort of disk-space limits or quotas.
4972   _enable-bounce-cmd_
4973          Setting this feature enables the _B Bounce_ command, which will
4974          prompt for an address and _remail_ the message to the new
4975          recipient. This command is used to re-direct messages that you
4976          have received in error, or need to be redirected for some other
4977          reason (e.g. list moderation). The final recipient will see a
4978          header indicating that you have Resent the msg, but the
4979          message's From: header will show the original author of the
4980          message, and replies to it will go back to that author, and not
4981          to you.
4982          This feature is displayed as "Enable Bounce Command".
4983   _enable-cruise-mode_
4984          This feature affects _Alpine_'s behavior when you hit the "Space
4985          Bar" at the end of a displayed message. Typically, _Alpine_
4986          complains that the end of the text has already been reached.
4987          Setting this feature causes such keystrokes to be interpreted as
4988          if the _Tab_ key had been hit, thus taking you to the next
4989          _interesting_ message, or scanning ahead to the next incoming
4990          folder with _interesting_ messages.
4991   _enable-cruise-mode-delete_
4992          This feature modifies the behavior of _Alpine_'s
4993          _enable-cruise-mode_ feature. Setting this feature causes _Alpine_
4994          to implicitly delete read messages when it moves on to display
4995          the next _interesting_ message.
4996          NOTE: Beware when enabling this feature _and_ the
4997          expunge-without-confirm feature.
4998          This feature is displayed as "Enable Cruise Mode With Deleting".
4999   _enable-delivery-status-notification_
5000          If set, this feature enables a subcommand in the composer's
5001          "Send?" confirmation prompt. The subcommand allows you to tell
5002          _Alpine_ to request the type of Delivery Status Notification
5003          (DSN) which you would like. Most users will be happy with the
5004          default, and need not enable this feature. See the online help
5005          for more details.
5006          It is not possible to use delivery status notifications if the
5007          feature send-without-confirm is set.
5008          Note that this is not a method to request _READ_ receipts, which
5009          tells the sender when the receiver has read the message. In this
5010          case we're talking about notification of delivery to the
5011          mailbox, not notification that the message has been seen.
5012   _enable-dot-files_
5013          If set, files beginning with dot (".") will be visible in the
5014          file browser. For example, you'll be able to select them when
5015          using the browser to add an attachment to a message.
5016   _enable-dot-folders_
5017          If set, folders beginning with dot (".") may be added and
5018          viewed. This feature is displayed as "Enable Hidden Folders".
5019   _enable-exit-via-lessthan-command_
5020          If set, then on screens where there is an _Exit_ command but no
5021          _<_ command, the _<_ key will perform the same function as the
5022          _Exit_ command. This feature is set by default.
5023   _enable-fast-recent-test_
5024          This feature controls the behavior of the TAB key when
5025          traversing folders in the optional Incoming-Folders collection
5026          or in optional News-Collections.
5027          When the TAB (NextNew) key is pressed, the default behavior is
5028          to explicitly examine the status of the folder for the number of
5029          recent messages (messages delivered since the last time it was
5030          viewed). Depending on the size and number of messages in the
5031          folder, this test can be time consuming.
5032          Enabling this feature will cause _Alpine_ to only test for the
5033          existence of any recent messages rather than to obtain the
5034          count. This is much faster in many cases. The downside is that
5035          you're not given the number of recent messages when prompted to
5036          view the next folder. If the feature
5037          Tab-Uses-Unseen-For-Next-Folder is turned on, then the present
5038          feature will have no effect.
5039   _enable-flag-cmd_
5040          Setting this feature enables the _* Flag_ command, which allows
5041          you to manipulate the status flags associated with a message. By
5042          default, _Flag_ will set the _Important_ flag, which results in
5043          an asterisk being displayed in column one of the "Folder Index"
5044          for such messages.
5045          This feature is displayed as "Enable Flag Command".
5046   _enable-flag-screen-implicitly_
5047          This feature modifies the behavior of the _* Flag_ command
5048          (provided it too is enabled). By default, when the _* Flag_
5049          command is selected, _Alpine_ offers a prompt to set one of
5050          several flags and also offers the option of entering the
5051          detailed flag manipulation screen via the _^T_ key. Enabling
5052          this feature causes _Alpine_ to immediately enter the detailed
5053          flag screen rather than first offer the simple prompt. The
5054          Enable-Flag-Screen-Keyword-Shortcut option offers a slightly
5055          different way of setting keywords.
5056   _enable-flag-screen-keyword-shortcut_
5057          This feature modifies the behavior of the Flag command and the
5058          Select command. By default, when the "* Flag" command is
5059          selected, _Alpine_ offers a prompt to set one of several flags
5060          and also offers the option of entering the detailed flag
5061          manipulation screen via the "^T" key. If you have keywords
5062          defined, then enabling this feature adds a shortcut way to set
5063          or unset keywords. You use "*" followed by the first letter of a
5064          keyword (or the nickname of a keyword if you've given it a
5065          nickname) and that will set the keyword.
5066          An example is easier to understand than the explanation. The
5067          flag command can always be used to set the system flags. For
5068          example, to set the Answered flag you would type
5069
5070                                     * A
5071          Now suppose you have defined a keyword "Work" using the Keywords
5072          option in the Config screen. By default, to set a keyword like
5073          "Work" you would usually have to go to the Flag Details screen
5074          using the "^T To Flag Details" command. Instead, if you have
5075          enabled this feature, you may type
5076
5077                                     * W
5078          to set the Work flag, or
5079
5080                                    * ! W
5081          to unset it. Just like for the other flag setting commands, the
5082          case of the letter does not matter, so "w" or "W" both set the
5083          "Work" keyword.
5084          Notice that you can only use this trick for one keyword that
5085          begins with "W". If you happen to have a "Work" keyword and
5086          another keyword that is "WIFI" the "* W" command will set the
5087          first one in your list of keywords. Also, there are five letters
5088          which are reserved for system flags and the NOT command. If you
5089          type "* A" it will always set the Answered flag, not your
5090          "Aardvark" keyword. In order to set the "Aardvark" keyword
5091          you'll still have to use the Flag Details screen.
5092          Because enabling the Enable-Flag-Screen-Implicitly option causes
5093          _Alpine_ to skip directly to the Flag Details screen when the
5094          Flag command is used, setting it will cause this feature to have
5095          no effect at all.
5096          Similarly, when Selecting by Keyword, setting this option will
5097          allow you to use Keyword initials instead of full keywords.
5098   _enable-full-header-cmd_
5099          This feature enables the _H Full Headers_ command which toggles
5100          between the display of all headers in the message and the normal
5101          edited view of headers. The _Full Header_ command also controls
5102          which headers are included for _Export_, _Pipe_, _Print_,
5103          _Forward_, and _Reply_ functions. (For _Reply_, the _Full Header_
5104          mode will respect the _include-headers-in-reply_ feature
5105          setting.)
5106          If Full Header mode is turned on and you Forward a message, you
5107          will be asked if you'd like to forward the message as an
5108          attachment, as opposed to including the text of the message in
5109          the body of your new message.
5110          If you have also turned on the "Quote Suppression" option then
5111          the Full Headers command actually rotates through three states
5112          instead of just two. The first is the normal view with long
5113          quotes suppressed. The second is the normal view but with the
5114          long quotes included. The last enables the display of all
5115          headers in the message. When using Export, Pipe, Print, Forward,
5116          or Reply the quotes are never suppressed, so the first two
5117          states are identical.
5118          Normally, the Header Mode will reset to the default behavior
5119          when moving to a new message. The mode can be made to persist
5120          from message to message by setting the feature
5121          Quell-Full-Header-Auto-Reset.
5122          This feature is displayed as "Enable Full Header Command".
5123   _enable-full-header-and-text_
5124          This feature affects how the _H Full Headers_ command displays
5125          message text. If set, the raw message text will be displayed.
5126          This especially affects MIME formatted email, where the entire
5127          MIME format will be displayed. This feature similarly affects
5128          how messages are included for the _Export_, _Pipe_, _Print_,
5129          _Forward_, and _Reply_ functions.
5130   _enable-goto-in-file-browser_
5131          Setting this causes _Alpine_ to offer the _G Goto_ command in
5132          the file browser. The Goto command allows you to explicitly type
5133          in the desired directory. That is the default.
5134   _enable-incoming-folders_
5135          If set, this feature defines a pseudo-folder collection called
5136          _INCOMING MESSAGE FOLDERS_. Initially, the only folder included
5137          in this collection will be your _INBOX_, which will no longer
5138          show up in your default saved-message folder collection.
5139          This feature is displayed as "Enable Incoming Folders
5140          Collection".
5141   _enable-incoming-folders-checking_
5142          This feature is only operational if you have enabled the
5143          optional incoming-folders If you do have Incoming Message
5144          Folders and you also set this feature, then the number of Unseen
5145          messages in each folder will be displayed in the FOLDER LIST
5146          screen for the Incoming Message Folders. The number of Unseen
5147          messages in a folder will be displayed in parentheses to the
5148          right of the name of each folder. If there are no Unseen
5149          messages in a folder then only the name is displayed, not a set
5150          of parentheses with zero inside them. A redraw command, Ctrl-L,
5151          can be used in the FOLDER LIST screen for the Incoming Message
5152          Folders to cause an immediate update.
5153          If a check for Unseen messages fails for a particular folder
5154          then Alpine will no longer attempt to check that folder for the
5155          duration of the session and this will be indicated by a question
5156          mark inside the parentheses.
5157          The features incoming-checking-includes-total,
5158          incoming-checking-uses-recent, incoming-check-list,
5159          incoming-check-interval, incoming-check-interval-secondary, and
5160          incoming-check-timeout all affect how this feature behaves.
5161   _Disable-Index-Locale-Dates_
5162          This feature affects the display of dates in the MESSAGE INDEX.
5163          Normally an attempt is made to localize the dates used in the
5164          MESSAGE INDEX display to your locale. This is controlled with
5165          the LC_TIME locale setting on a UNIX system. On Windows the
5166          Regional Options control panel may be used to set the date
5167          format. At the programming level, _Alpine_ is using the strftime
5168          routine to print the parts of a date.
5169          If this feature is set, dates are displayed in English and with
5170          the conventions of the United States.
5171   _enable-jump-shortcut_
5172          When this feature is set you may enter a number (followed by
5173          RETURN) and jump to that message number, when in the MESSAGE
5174          INDEX or MESSAGE TEXT screens. In other words, it obviates the
5175          need for typing the _J_ for the _Jump_ command.
5176   _enable-lame-list-mode_
5177          This feature modifies the method _Alpine_ uses to ask your IMAP
5178          server for folder names to display in the the FOLDER LIST
5179          screen. It is intended to compensate for a small set of IMAP
5180          servers that are programmed to ignore a part of the request, and
5181          thus respond to _Alpine_'s query with nonsensical results.
5182          If you find that _Alpine_ is erroneously displaying blank folder
5183          lists, try enabling this feature.
5184          NOTE: Enabling this feature has consequences for the Goto and
5185          Save commands. Many servers allow access to folders outside the
5186          area reserved for your personal folders via some reserved
5187          character, typically '#' (sharp), '~' (tilde) or '/' (slash).
5188          This mechanism allows, at the Goto and Save prompts, quick
5189          access to folders outside your personal folder collection
5190          without requiring a specific collection definition. This
5191          behavior will generally not be available when this feature is
5192          enabled.
5193          This feature is displayed as "Compensate for Deficient IMAP
5194          servers".
5195   _enable-mail-check-cue_
5196          If set, this will cause an asterisk to appear in the upper
5197          left-hand corner of the screen whenever _Alpine_ checks for new
5198          mail, and two asterisks whenever _Alpine_ saves (checkpoints)
5199          the state of the current mailbox to disk.
5200   _enable-mailcap-param-substitution_
5201          If set, this will allow mailcap named parameter substitution to
5202          occur in mailcap entries. By default, this is turned off to
5203          prevent security problems which may occur with some incorrect
5204          mailcap configurations. For more information, RFC1524 and look
5205          for "named parameters" in the text of the RFC.
5206          This feature is displayed as "Enable Mailcap Parameter
5207          Substitution".
5208   _enable-mouse-in-xterm_
5209          This feature controls whether or not an X terminal mouse can be
5210          used with _Alpine_. If set, and the $DISPLAY variable indicates
5211          that an X terminal is being used, the left mouse button on the
5212          mouse can be used to select text or commands. Clicking on a
5213          command at the bottom of the screen will behave as if you had
5214          typed that command. Clicking on an index line will move the
5215          current message highlight to that line. Double-clicking on an
5216          index line will view the message. Double-clicking on a link will
5217          view the link.
5218          This type of mouse support will also work in some terminal
5219          emulators which are not actually X terminals, but which have
5220          extra code to support the xterm style mouse. For those emulators
5221          you not only need to turn this feature on but you also have to
5222          set the $DISPLAY environment variable even though it isn't
5223          needed for your terminal. That will cause _Alpine_ to think that
5224          it is an xterm and to properly interpret the escape sequences
5225          sent by the mouse.
5226          Note: if this feature is set, the behavior of X terminal
5227          cut-and-paste is also modified. It is sometimes possible to hold
5228          the shift key down while clicking left or middle mouse buttons
5229          for the normal xterm cut/paste operations. There is also an
5230          _Alpine_ command to toggle this mode on or off. The command is
5231          Ctrl-\ (Control-backslash).
5232   _enable-msg-view-addresses_
5233          This feature modifies the behavior of _Alpine_'s "Message Text"
5234          screen. Setting this feature causes _Alpine_ to select possible
5235          email addresses from the displayed text and display them in
5236          boldface for selection.
5237          The first available email address is displayed in inverse. This
5238          is the "selected" address. Pressing _RETURN_ will cause _Alpine_
5239          to enter the message composition screen with the To field filled
5240          in with the selected address.
5241          Use the up and down arrow keys to change which of the addresses
5242          displayed in boldface is the current selection.
5243          This feature is displayed as "Enable Message View Address
5244          Links".
5245   _enable-msg-view-attachments_
5246          This feature modifies the behavior of _Alpine_'s "Message Text"
5247          screen. Setting this feature causes _Alpine_ to present
5248          attachments in boldface. The first available attachment is
5249          displayed in inverse. This is the "selected" attachment.
5250          Pressing _RETURN_ will cause _Alpine_ to display the selected
5251          attachment. Use the up and down arrow keys to change which of
5252          the attachments displayed in boldface is the current selection.
5253          Speaking of arrow keys, the Up and Down Arrows will select the
5254          next and previous attachments if one is available on the screen
5255          for selection. Otherwise, they will simply adjust the viewed
5256          text one line up or down.
5257          Similarly, when selectable items are present in a message, the
5258          Ctrl-F key can be used to select the next item in the message
5259          independent of which portion of the viewed message is currently
5260          displayed. The Ctrl-B key can be used to select the previous
5261          item in the same way.
5262          This feature is displayed as "Enable Message View Attachment
5263          Links".
5264   _enable-msg-view-forced-arrows_
5265          This feature modifies Up and Down arrow key behavior in
5266          _Alpine_'s "Message Text" screen when selectable Attachments,
5267          URL's, or web-hostnames are presented. _Alpine_'s usual behavior
5268          is to move to the next or previous selectable item if currently
5269          displayed or simply to adjust the screen view by one line if the
5270          next selectable line is off the screen.
5271          Setting this feature causes the Up and Down arrow keys to behave
5272          as if no selectable items were present in the message.
5273          Note, the _Ctrl-F_ (next selectable item) and _Ctrl-B_ (previous
5274          selectable item) functionality is unchanged.
5275          This feature is displayed as "Enable Message View Forced
5276          Arrows".
5277   _enable-msg-view-urls_
5278          This feature modifies the behavior of _Alpine_'s "Message Text"
5279          screen. When this feature is set (the default) _Alpine_ will
5280          select possible URLs from the displayed text and display them in
5281          boldface for selection.
5282          The first available URL is displayed in inverse. This is the
5283          "selected" URL. Pressing _RETURN_ will cause _Alpine_ to display
5284          the selected URL via either built-in means as with mailto:,
5285          imap:, news:, and nntp:, or via an external application as
5286          defined by the url-viewers variable.
5287          Use the up and down arrow keys to change which of the URLs
5288          displayed in boldface is the current selection.
5289          This feature is displayed as "Enable Message View URL Links".
5290   _enable-msg-view-web-hostnames_
5291          This feature modifies the behavior of _Alpine_'s "Message Text"
5292          screen. When this feature is set (the default) _Alpine_ will
5293          select possible web hostnames from the displayed text and
5294          display them in boldface for selection.
5295          The first available hostname is displayed in inverse. This is
5296          the "selected" hostname. Pressing _RETURN_ will cause _Alpine_
5297          to display the selected hostname via an external application as
5298          defined by the url-viewers variable.
5299          Use the up and down arrow keys to change which of the hostnames
5300          displayed in boldface is the current selection.
5301          This feature is displayed as "Enable Message View Web Hostname
5302          Links".
5303   _enable-multiple-newsrcs_
5304          This feature makes it so _Alpine_ can use multiple newsrcs based
5305          on the news server being connected to, which allows for separate
5306          lists of subscribed-to newsgroups. When this feature is not set,
5307          there is only one list of newsgroups.
5308          Under this feature, the name of a newsrc is based on the news
5309          server. For example, if your newsrc-path is set to ".newsrc",
5310          and the news server you are connecting to is news.example.com,
5311          then the newsrc to be used is .newsrc-news.example.com. Setting
5312          this feature for the first time will allow for the option of
5313          using your old newsrc the next time you read news.
5314          If this feature is set, then the feature
5315          Mult-Newsrc-Hostnames-As-Typed also may affect the name of the
5316          newsrc file that is used.
5317   _enable-newmail-in-xterm-icon_
5318          This feature controls whether or not _Alpine_ will attempt to
5319          announce new mail arrival when it is running in an X terminal
5320          window and that window is iconified. If set, and the $DISPLAY
5321          variable indicates that an X terminal is being used, _Alpine_
5322          will send appropriate escape sequences to the X terminal to
5323          modify the label on _Alpine_'s icon to indicate that new mail
5324          has arrived. _Alpine_ will also modify the _Alpine_ window's
5325          title to indicate new mail. See also
5326          Enable-Newmail-Short-Text-in-Icon.
5327   _enable-newmail-short-text-in-icon_
5328          This feature controls the text to be displayed in an icon in the
5329          event of a new message arrival. Normally, the message will be
5330          the one that is displayed on the screen. This feature shortens
5331          the message to a count of the number of new messages in
5332          brackets. This may be more useful for those who use the window's
5333          title bar in the task bar as a new mail indicator. This feature
5334          is only useful if the Enable-Newmail-in-Xterm-Icon is also set.
5335          Like the Enable-Newmail-in-Xterm-Icon feature, this feature is
5336          only relevant when run in an xterm environment.
5337   _enable-partial-match-lists_
5338          This feature affects the subcommands available when _Sav_ing or
5339          Opening a new folder. If set, the subcommand _^X ListMatches_
5340          will be available. This command allows you to type in a
5341          substring of the folder you are looking for and when you type
5342          _^X_ it will display all folders which contain that substring in
5343          their names. This feature is set by default.
5344   _enable-print-via-y-command_
5345          By default, _Alpine_'s print command is available by pressing
5346          the _%_ key. In older versions of _Pine_, the print command was
5347          accessed by pressing the _Y_ key.
5348          Enabling this feature will cause _Alpine_ to recognize both the
5349          old command, _Y_, and the new _%_ method for invoking printing.
5350          Note, key menu labels are not changed as a result of enabling
5351          this feature.
5352   _enable-reply-indent-string-editing_
5353          This feature affects the Reply command's "Include original
5354          message in Reply?" prompt. When enabled, it causes the "Edit
5355          Indent String" sub-command to appear which allows you to edit
5356          the string _Alpine_ would otherwise use to denote included text
5357          from the message being replied to.
5358          Thus, you can change _Alpine_'s default message quote character
5359          (usually an angle bracket) on a per message basis. So you could
5360          change your quoted message to look, for example, like this:
5361On Tues, 26 Jan 1999, John Q. Smith wrote:
5362
5363John: I just wanted to say hello and to congratulate you
5364John: on a job well done!
5365          The configuration option "reply-indent-string" may be used to
5366          change what appears as the default string to be edited.
5367          NOTE: Edited reply-indent-strings only apply to the message
5368          currently being replied to.
5369   _enable-rules-under-take_
5370          Normally, the Take command takes addresses from a message and
5371          helps you put them into your Address Book. If you use Rules for
5372          Indexcolors, Roles, Filtering, or Scoring; you may find it
5373          useful to be able to Take information from a message's headers
5374          and put it into a new Rule. When this feature is set, you will
5375          be given an extra prompt which gives you the choice to Take into
5376          the Address Book or Take into a rule.
5377          This feature is displayed as "Enable Take Rules".
5378   _enable-search-and-replace_
5379          If set _Alpine_'s composer offers the _R Replace_ command option
5380          inside the _W WhereIs_ command.
5381   _enable-sigdashes_
5382          If set and a _signature-file_ exists, the line consisting of the
5383          three characters "-- " (dash dash space) is included before the
5384          signature. This only happens if the signature doesn't already
5385          contain such a line.
5386          In addition, when you Reply or Followup to a message containing
5387          one of these special lines and choose to include its text,
5388          _Alpine_ will observe the convention of not including text beyond
5389          the special line in your reply.
5390   _enable-suspend_
5391          Setting this feature will allow you to type _^Z_ and temporarily
5392          suspend _Alpine_. Not available on _PC-Alpine_.
5393   _enable-tab-completion_
5394          This feature enables the _TAB_ key when at a prompt for a
5395          filename. In this case, _TAB_ will cause the partial name
5396          already entered to be automatically completed, provided the
5397          partial name is unambiguous. This feature is set by default.
5398          Similarly, this feature also enables TAB completion of address
5399          book nicknames when at a prompt for a nickname, or when typing
5400          in an address field in the composer.
5401   _enable-take-export_
5402          Normally, the Take command takes addresses from a message and
5403          helps you put them into your Address Book. When this feature is
5404          set, you will be given an extra prompt which gives you the
5405          choice to Take addresses into a file instead of your Address
5406          Book. Only the user@domain_name part of the address is put in
5407          the file.
5408   _enable-tray-icon_
5409          _PC-Alpine_ only. This option restores a behavior of previous
5410          versions of PC-Alpine. These versions, when started, installed a
5411          PC-Alpine icon in the notification tray of Window's Taskbar. The
5412          primary use of this icon was to indicate new mail arrival by
5413          turning red (while the Taskbar icon remained green).
5414          Additionally, the icon now changes to yellow to signify that a
5415          mail folder has been closed unexpectedly.
5416          Rather than add another icon to the Taskbar, this version of
5417          PC-Alpine will color its Taskbar entry's icon red (as well as
5418          the icon in the Window Title). This feature is only provided for
5419          backwards compatibility.
5420   _enable-unix-pipe-cmd_
5421          This feature enables the _| Pipe_ command that sends the current
5422          message to the specified Unix command for external processing.
5423          This feature is displayed as "Enable Unix Pipe Command".
5424   _enable-verbose-smtp-posting_
5425          This feature controls an aspect of _Alpine_'s message sending.
5426          When enabled, _Alpine_ will send a VERB (i.e., VERBose) command
5427          early in the posting process intended to cause the server SMTP
5428          to provide a more detailed account of the transaction. This
5429          feature is typically only useful to system administrators and
5430          other support personnel as an aid in troubleshooting problems.
5431          Note, this feature relies on a specific capability of the
5432          system's mail transport agent or configured smtp-server.
5433   _expanded-view-of-addressbooks_
5434          If multiple address books (either personal or global) are
5435          defined, and you wish to have them all expanded implicitly upon
5436          entering the ADDRESS BOOK screen, then set this feature. This
5437          feature will have no effect unless the feature
5438          combined-addrbook-display is also set.
5439   _expanded-view-of-distribution-lists_
5440          If this feature is set, then distribution lists in the address
5441          book screen will always be expanded automatically.
5442   _expanded-view-of-folders_
5443          If multiple folder collections are defined, and you wish to have
5444          them all expanded implicitly upon entering the FOLDER LIST
5445          screen, then set this feature. This feature will have no effect
5446          unless the feature combined-folder-display is also set.
5447   _expose-hidden-config_
5448          The purpose of this feature is to allow you to change
5449          configuration features and variables which are normally hidden.
5450          This is particularly useful if you are using a remote
5451          configuration file, where it is difficult to edit the file
5452          manually, but it may also be used on a local pinerc
5453          configuration file.
5454          If set, most configuration variables and features which are
5455          normally hidden from view will show up in the
5456          Setup/Configuration screen. They will be at the bottom of the
5457          configuration screen. You can find them by searching for the
5458          word "hidden".
5459          Note that this is an advanced feature which should be used with
5460          care. The reason that this part of the configuration is normally
5461          hidden is because there is a significant potential for causing
5462          problems if you change these variables. If something breaks
5463          after a change try changing it back to see if that is what is
5464          causing the problem. There are also some variables which are
5465          normally hidden because they are manipulated through _Alpine_ in
5466          other ways. For example, the "address-book" variable is normally
5467          set using the Setup/AddressBooks screen, so there is little
5468          reason to edit it directly. The "incoming-folders" variable is
5469          normally changed by using the Add, Delete, and Rename commands
5470          in the FOLDER LIST screen, and the "last-time-prune-questioned"
5471          variable is normally used internally by _Alpine_ and not set
5472          directly by the user.
5473   _expunge-only-manually_
5474          Normally, when you close a folder which contains deleted
5475          messages you are asked if you want to expunge those messages
5476          from the folder permanently. If this feature is set, you won't
5477          be asked and the deleted messages will remain in the folder. If
5478          you choose to set this feature you will have to expunge the
5479          messages manually using the eXpunge command, which you can use
5480          while in the MESSAGE INDEX screen. If you do not expunge deleted
5481          messages the size of your folder will continue to increase until
5482          you are out of disk space.
5483   _expunge-without-confirm_
5484          If set, you will not be prompted to confirm your intent before
5485          the expunge takes place. Actually, you will still be prompted
5486          for confirmation if the folder is not the _INBOX_ folder or
5487          another folder in the Incoming Folders collection. See the
5488          _expunge-without-confirm-everywhere_ feature which follows.
5489          This feature is displayed as "Expunge Without Confirming".
5490   _expunge-without-confirm-everywhere_
5491          The regular _expunge-without-confirm_ feature actually only
5492          works for the _INBOX_ folder and for other folders in the
5493          "Incoming Folders" collection. If this feature is set then you
5494          also won't be prompted to confirm expunges for all other
5495          folders.
5496          This feature is displayed as "Expunge Without Confirming
5497          Everywhere".
5498   _fcc-on-bounce_
5499          If set, normal Fcc (File Carbon Copy) processing will be done
5500          for bounced messages, just as if you had composed a message to
5501          the address you are bouncing to. If not set, no Fcc of the
5502          message will be saved.
5503          This feature is displayed as "Include Fcc When Bouncing
5504          Messages".
5505   _fcc-only-without-confirm_
5506          This features controls an aspect of _Alpine_'s composer. The
5507          only time this feature will be used is if you attempt to send
5508          mail which has no recipients but does have an Fcc. Normally,
5509          _Alpine_ will ask if you really mean to copy the message only to
5510          the Fcc. That is, it asks if you really meant to have no
5511          recipients. If this feature is set, you will _not_ be prompted
5512          to confirm your intent to make only a copy of a message with no
5513          recipients.
5514          This feature is closely related to
5515          warn-if-blank-to-and-cc-and-newsgroups. The difference between
5516          this feature and that feature is that this feature considers a
5517          Bcc to be a recipient while that feature will ask for
5518          confirmation even if there is a Bcc when there is no To, Cc, or
5519          Newsgroup. The default values also differ. This feature defaults
5520          to asking the question and you have to turn it off. The
5521          warn-if-blank-to-and-cc-and-newsgroups feature defaults to not
5522          asking unless you turn it on.
5523          This feature is displayed as "Send to Fcc Only Without
5524          Confirming".
5525   _fcc-without-attachments_
5526          This features controls the way FCC's (File Carbon Copies) are
5527          made of the messages you send.
5528          Normally, _Alpine_ saves an exact copy of your message as it was
5529          sent. When this feature is enabled, the "body" of the message
5530          you send (the text you type in the composer) is preserved in the
5531          copy as before, however all attachments are replaced with text
5532          explaining what had been sent rather than the attachments
5533          themselves.
5534          This feature also affects _Alpine_'s "Send ?" confirmation
5535          prompt in that a new "^F Fcc Attchmnts" option becomes available
5536          which allows you to interactively set whether or not attachments
5537          are saved to the Fcc'd copy.
5538          This feature is displayed as "Fcc Does Not Include Attachments".
5539   _force-arrow-cursor_
5540          This feature affects _Alpine_'s MESSAGE INDEX display routine.
5541          If set, the normal inverse-video cursor will be replaced by a
5542          simple "arrow" cursor, which normally occupies the second column
5543          of the index display.
5544          This is the same index cursor you get if you turn on
5545          Assume-Slow-Link, but the index line coloring will still be
5546          present if this feature is turned on and Assume-Slow-Link is
5547          off.
5548          An alternative version of the Arrow cursor is available by
5549          including the ARROW token in the Index-Format option.
5550          It ought to be the case that this feature also affects the
5551          ATTACHMENT INDEX, but that is not implemented.
5552   _hide-nntp-path_
5553          Normally the Path header that _Alpine_ generates when posting to
5554          a newsgroup contains the name of the computer from which the
5555          message is being sent and the user name. Some believe that this
5556          information is used by spammers. If this feature is set, that
5557          information will be replaced with the text
5558
5559                                not-for-mail
5560          instead.
5561          It should be noted that many servers being connected to will
5562          still reveal the information that this feature attempts to
5563          protect.
5564   _include-attachments-in-reply_
5565          If set, any MIME attachments that were part of the original
5566          message will automatically be included in a _Reply_.
5567   _include-header-in-reply_
5568          If set, and a message being replied to is included in the
5569          _Reply_, then headers from that message will also be part of the
5570          reply.
5571   _include-text-in-reply_
5572          Normally, _Alpine_ will ask whether you wish to include the
5573          original message in your _Reply_. If this feature is set and the
5574          feature enable-reply-indent-string-editing is _not_ set, then
5575          the original message will be included in the reply
5576          automatically, without prompting.
5577   _incoming-checking-includes-total_
5578          This option has no effect unless the feature
5579          enable-incoming-folders-checking is set, which in turn has no
5580          effect unless incoming-folders is set.
5581          When incoming folder checking is turned on the default is to
5582          display the number of unseen messages in each folder. More
5583          precisely, it is the number of undeleted unseen messages. Using
5584          this option you may also display the total number of messages in
5585          each folder. Instead of a single number representing the number
5586          of unseen messages you will get two numbers separated by a slash
5587          character. The first is the number of unseen messages and the
5588          second is the total number of messages.
5589          You may also use the recent message count instead of the unseen
5590          message count by turning on the feature
5591          incoming-checking-uses-recent.
5592   _incoming-checking-uses-recent_
5593          This option has no effect unless the feature
5594          enable-incoming-folders-checking is set, which in turn has no
5595          effect unless incoming-folders is set.
5596          When incoming folder checking is turned on the default is to
5597          display the number of unseen messages in each folder. More
5598          precisely, it is the number of undeleted unseen messages. Using
5599          this option you may display the number of recent messages
5600          instead of the number of unseen messages. A message is only
5601          counted as recent if this is the first session to see it, so the
5602          recent count might be less than the unseen count. The difference
5603          between the two would be accounted for by the unseen messages in
5604          the folder which were there previously but have not been looked
5605          at yet.
5606          If you simultaneously run more than one email client at a time
5607          (for example, you run more than one _Alpine_ in parallel) then
5608          turning this feature on can cause some confusion. The confusion
5609          stems from the fact that each message is only considered to be
5610          recent in one session. That means that the counts of new
5611          messages may be different in the two _Alpine_s running side by
5612          side, because each incoming message will only be counted as
5613          recent in one of the two sessions.
5614          You may also display the total number of messages in each folder
5615          by using the incoming-checking-includes-total option.
5616   _ldap-result-to-addrbook-add_
5617          This is only available if _Alpine_ was linked with an LDAP
5618          library when it was compiled. If both the per-directory-server
5619          option use-implicitly-from-composer and this feature are set,
5620          then when an implicit directory lookup is done from the composer
5621          you will automatically be prompted to add the result of the
5622          directory lookup to your address book.
5623          This feature is displayed as "LDAP Result to Addressbook Add".
5624   _maildrops-preserve-state_
5625          This feature affects the way Mail Drops work. Normally, when
5626          mail is moved from a Mail Drop folder to a destination folder,
5627          the state changes that have taken place since the mail was
5628          originally delivered are lost. Any Seen/New, Answered,
5629          Important/Flagged state that has changed will be ignored. All of
5630          the mail will be considered unSeen, unAnswered, and unImportant
5631          after it is moved.
5632          If this feature is set, then the state changes will not be lost.
5633          In any case, messages which are already marked Deleted when the
5634          mail is to be copied from the Mail Drop will be ignored.
5635   _mark-fcc-seen_
5636          This features controls the way FCCs (File Carbon Copies) are
5637          made of the messages you send. Normally, when _Alpine_ saves a
5638          copy of a message you sent as an Fcc, that copy will be marked
5639          as Unseen. When you look at the folder it was saved in the
5640          message will appear to be a New message until you read it. When
5641          this feature is enabled, the message will be marked as having
5642          been Seen.
5643   _mark-for-cc_
5644          This feature affects _Alpine_'s MESSAGE INDEX display. By
5645          default, a '+' is displayed in the first column if the message
5646          is addressed directly to you. When this feature is set and the
5647          message is not addressed to you, then a '-' character is
5648          displayed if the message is instead Cc'd directly to you.
5649   _mult-newsrc-hostnames-as-typed_
5650          This feature will be of little use to most users. It has no
5651          effect unless the feature Enable-Multiple-Newsrcs is set. When
5652          the Enable-Multiple-Newsrcs feature is set then the setting of
5653          this feature may have an effect on the names of the newsrc files
5654          used. Normally, the name of the news server will be
5655          canonicalized before it is used in the newsrc file name. For
5656          example, if you type the news server name
5657
5658                                 servername
5659          it is likely that the canonical name will be something like
5660
5661                           servername.example.com
5662          Or it may be the case that
5663
5664                           servername.example.com
5665          is really an alias (a DNS CNAME) for
5666
5667                            othername.example.com
5668          If this feature is not set, then the canonicalized names will be
5669          used. If this feature is set, then the name you typed in (or put
5670          in your configuration) will be used.
5671          This feature is displayed as "Multiple Newsrc Hostnames as
5672          Typed".
5673   _news-approximates-new-status_
5674          This feature causes certain messages to be marked as _New_ in
5675          the MESSAGE INDEX of newsgroups. This feature is set by default.
5676          When opening a newsgroup, _Alpine_ will consult your _newsrc_
5677          file and determine the last message you have previously disposed
5678          of via the _D_ key. If this feature is set, any subsequent
5679          messages will be shown in the Index with an _N_, and the first
5680          of these messages will be highlighted. Although this is only an
5681          approximation of true _New_ or _Unseen_ status, it provides a
5682          useful cue to distinguish more-or-less recent messages from
5683          those you have seen previously, but are not yet ready to mark
5684          deleted.
5685          Background: your _newsrc_ file (used to store message status
5686          information for newsgroups) is only capable of storing a single
5687          flag, and _Alpine_ uses this to record whether or not you are
5688          "done with" a message, as indicated by marking the message as
5689          _Deleted_. Unfortunately, this means that _Alpine_ has no way to
5690          record exactly which messages you have previously seen, so it
5691          normally does not show the _N_ status flag for any messages in a
5692          newsgroup. This feature enables a starting _approximation_ of
5693          seen/unseen status that may be useful.
5694   _news-deletes-across-groups_
5695          This feature controls what _Alpine_ does when you delete a
5696          message in a newsgroup that appears in more than one newsgroup.
5697          Such a message is sometimes termed a "crossposting" in that it
5698          was posted across several newsgroups.
5699          _Alpine_'s default behavior when you delete such a message is to
5700          remove only the copy in the current newsgroup from view when you
5701          use the "Exclude" command or the next time you visit the
5702          newsgroup.
5703          Enabling this feature causes _Alpine_ to remove every occurrence
5704          of the message from all newsgroups it appears in and to which
5705          you are subscribed.
5706          NOTE: As currently implemented, enabling this feature may
5707          increase the time it takes the Expunge command and newsgroup
5708          closing to complete.
5709   _news-offers-catchup-on-close_
5710          This feature controls what _Alpine_ does as it closes a
5711          newsgroup. When set, _Alpine_ will offer to delete all messages
5712          from the newsgroup as you are quitting _Alpine_ or opening a new
5713          folder.
5714          This feature is useful if you typically read all the interesting
5715          messages in a newsgroup each time you open it. This feature
5716          saves you from having to delete each message in a newsgroup as
5717          you read it or from selecting all the messages and doing an
5718          aggregate delete before you move on to the next folder or
5719          newsgroup.
5720   _news-post-without-validation_
5721          This feature controls whether the NNTP server is queried as
5722          newsgroups are entered for posting. Validation over slow links
5723          (e.g. dialup using SLIP or PPP) can cause delays. Set this
5724          feature to eliminate such delays.
5725   _news-read-in-newsrc-order_
5726          This feature controls the order that newsgroups will be
5727          presented. If set, they will be presented in the same order as
5728          they occur in your _newsrc_ file. If not set, the newsgroups
5729          will be presented in alphabetical order.
5730   _next-thread-without-confirm_
5731          This feature controls an aspect of _Alpine_'s Next and Prev
5732          commands in the case where you are using one of the
5733          "separate-index-screen" styles for the configuration option
5734          threading-index-style and currently have the folder sorted by a
5735          Threaded or OrderedSubject sort. When you are Viewing a
5736          particular thread you have a MESSAGE INDEX of only the messages
5737          in that thread. If you press the Next command with the last
5738          message in the thread highlighted you will normally be asked if
5739          you want to "View next thread?", assuming there is a next thread
5740          to view. If this feature is set it will be assumed that you
5741          always want to view the next thread and you won't be asked to
5742          confirm that. Similarly, if the first message of the thread is
5743          highlighted and you press the Prev command, this feature will
5744          prevent the question "View previous thread".
5745          This feature only has an effect in the MESSAGE INDEX screen. If
5746          you then view a particular message from that screen and press
5747          the Next command, you will be sent to the next thread without
5748          being asked, independent of the setting of this feature.
5749          The feature auto-open-next-unread, also has some similar
5750          effects.
5751          This feature is displayed as "Read Next Thread Without
5752          Confirming".
5753   _offer-expunge-of-inbox_
5754          The INBOX is normally treated differently from regular folders
5755          in several ways. One of the differences is that the normal
5756          "close" sequence of events is deferred until _Alpine_ is exited,
5757          instead of happening when you leave the INBOX to view another
5758          folder. The "close" sequence normally includes the Expunging of
5759          deleted messages (either automatically or after a prompt,
5760          controlled by the features Expunge-Without-Confirm,
5761          Expunge-Without-Confirm-Everywhere, and Expunge-Only-Manually),
5762          and the handling of the Read-Message-Folder.
5763          If this feature is set the "close" sequence handling will take
5764          place every time you leave the INBOX. The INBOX will still be
5765          kept open, but the offer to Expunge and the archiving to the
5766          Read-Message-Folder will take place each time you leave the
5767          INBOX instead of only once at the end of the session.
5768   _offer-expunge-of-stayopen-folders_
5769          This feature is related to the option Stay-Open-Folders. Stay
5770          Open folders are treated differently from regular folders in
5771          several ways. One of the differences is that the normal "close"
5772          sequence of events is deferred until _Alpine_ is exited, instead
5773          of happening when you leave the folder to view another folder.
5774          The "close" sequence normally includes the Expunging of deleted
5775          messages (either automatically or after a prompt, controlled by
5776          the features Expunge-Without-Confirm,
5777          Expunge-Without-Confirm-Everywhere, and Expunge-Only-Manually),
5778          and the handling of Incoming-Archive-Folders.
5779          If this feature is set the "close" sequence handling will take
5780          place when you leave the Stay Open folder. The folder will still
5781          be kept open, but the offer to Expunge and the archiving will
5782          take place each time you leave the folder instead of only once
5783          at the end of the session. This feature does not affect the
5784          INBOX, which will still only be processed when you exit
5785          _Alpine_.
5786   _pass-c1-control-characters-as-is_
5787          It is probably not useful to set this option. This is a legacy
5788          option left behind "just in case". Multi-byte characters which
5789          have an octet which has the same value as a control character
5790          are permitted through whether or not this option is turned on.
5791          If the feature pass-control-characters-as-is is set, then this
5792          feature has no effect. However, if you wish to filter out
5793          regular control characters but pass the so-called C1 control
5794          characters (0x80 <= char < 0xA0) through unchanged, then you may
5795          leave pass-control-characters-as-is unset and set this feature.
5796   _pass-control-characters-as-is_
5797          It is probably not useful to set this option. This is a legacy
5798          option left behind "just in case". Multi-byte characters which
5799          have an octet which has the same value as a control character
5800          are permitted through whether or not this option is turned on.
5801          If set, all characters in a message will be sent to the screen.
5802          Normally, control characters are automatically suppressed in
5803          order to avoid inadvertently changing terminal setup parameters.
5804          Control characters are usually displayed as two character
5805          sequences like
5806
5807                                     ^C
5808          for Control-C,
5809
5810                                     ^[
5811          for ESCAPE,
5812
5813                                     ^?
5814          for DELETE, and
5815
5816                                     ~E
5817          for the character with value 133 (0x85). (The DEL character is
5818          displayed as ^?, regular control characters are displayed as the
5819          character ^ followed by the character obtained by adding the
5820          five low-order bits of the character to 0x40, and the C1 control
5821          characters 0x80 - 0x9F are displayed as the character ~ followed
5822          by the character obtained by adding the five low-order bits of
5823          the character to 0x40.) Sometimes, in cases where changing a
5824          single control character into a two-character sequence would
5825          confuse _Alpine_'s display routines, a question mark is
5826          substituted for the control character.
5827          If you wish to filter out regular control characters but pass
5828          the so-called C1 control characters (0x80 <= char < 0xA0)
5829          through unchanged, then you may leave this feature unset and set
5830          the feature pass-c1-control-characters-as-is instead.
5831   _predict-nntp-server_
5832          This feature allows _Alpine_ to assume that the open NNTP server
5833          at the time of composition is the NNTP server to which the
5834          message should be posted. This is especially recommended when
5835          there are multiple News collections. If this feature is not set,
5836          _Alpine_ will try to post to the first server in the nntp-server
5837          variable. Setting this feature also negates the need to add News
5838          collection servers to the nntp-server variable.
5839          This feature can be especially handy when used in conjunction
5840          with enable-multiple-newsrcs.
5841          This option is displayed as "NNTP Server (for news)".
5842   _prefer-plain-text_
5843          A message being viewed may contain alternate versions of the
5844          same content. Those alternate versions are ordered by the
5845          sending software such that the first alternative is the least
5846          preferred and the last alternative is the most preferred.
5847          _Alpine_ will normally display the most-preferred version that it
5848          knows how to display. This is most often encountered where the
5849          two alternate versions are a plain text version and an HTML
5850          version, with the HTML version listed last as the most
5851          preferred.
5852          If this option is set, then any plain text version will be
5853          preferred to all other versions.
5854   _preopen-stayopen-folders_
5855          This feature is related to the option Stay-Open-Folders.
5856          Normally, Stay Open folders are only opened on demand, when the
5857          user asks to open them. From then on they are kept open for the
5858          duration of the session. However, if this feature is set, then
5859          the Stay Open folders will all be opened at startup, at the same
5860          time that the INBOX is opened.
5861   _preserve-start-stop-characters_
5862          This feature controls how special control key characters,
5863          typically _^S_ and _^Q_, are interpreted when input to _Alpine_.
5864          These characters are known as the "start" and "stop" characters
5865          and are sometimes used in communications paths to control data
5866          flow between devices that operate at different speeds.
5867          By default, _Alpine_ turns the system's handling of these
5868          special characters off except during printing. However, if you
5869          see _Alpine_ reporting input errors such as:
5870
5871     [ Command "^Q" not defined for this screen. ]
5872          and, at the same time, see your display become garbled, then it
5873          is likely that setting this option will solve the problem. Be
5874          aware, though, that enabling this feature will also cause
5875          _Alpine_ to ostensibly "hang" whenever the _Ctrl-S_ key
5876          combination is entered as the system is now interpreting such
5877          input as a "stop output" command. To "start output" again,
5878          simply type _Ctrl-Q_.
5879          This feature is displayed as "Preserve Start/Stop Characters".
5880   _print-formfeed-between-messages_
5881          Setting this feature causes a formfeed to be printed between
5882          messages when printing multiple messages with the _Apply Print_
5883          command.
5884   _print-includes-from-line_
5885          If this feature is set, then the Unix mail style From line is
5886          included at the start of each message that is printed. This line
5887          looks something like the following, with the address replaced by
5888          the address from the From line of the message being printed:
5889
5890     From user@domain.somewhere.com Mon May 13 14:11:06 1996
5891   _print-index-enabled_
5892          This feature controls the behavior of the _Print_ command when
5893          in the "Folder Index" screen. If set, the _Print_ command will
5894          give you a prompt asking if you wish to print the message index,
5895          or the currently highlighted message. If not set, the message
5896          will be printed.
5897   _print-offers-custom-cmd-prompt_
5898          When this feature is set, the _Print_ command will have an
5899          additional subcommand called _C CustomPrint_. If selected, you
5900          will have the opportunity to enter any system print command,
5901          instead of being restricted to using those that have been
5902          previously configured in the _Setup/Printer_ screen.
5903          This feature is displayed as "Print Offers Custom Command
5904          Prompt".
5905   _prune-uses-yyyy-mm_
5906          By default, _Alpine_ asks monthly whether or not you would like
5907          to rename some folders to a new name containing the date. It
5908          also asks whether or not you would like to delete some old
5909          folders. See the pruning-rule option for an explanation.
5910          By default, the name used when renaming a folder looks like
5911
5912                         <foldername>-<month>-<year>
5913          For example, the first time you run _Alpine_ in May of 2004, the
5914          folder "sent-mail" might be renamed to
5915
5916                             sent-mail-apr-2004
5917          If this feature is set, the name used will be of the form
5918
5919                          <foldername>-<yyyy>-<mm>
5920          where "yyyy" is the year and "mm" is the two-digit month (01,
5921          02, ..., 12). For the April, 2004 example above, it would
5922          instead be
5923
5924                              sent-mail-2004-04
5925          because April is the 4th month of the year. A reason you might
5926          want to set this feature is so that the folders will sort in
5927          chronological order.
5928   _publiccerts-in-keychain_
5929          Mac OS X _Alpine_ only.
5930          If this feature is set the Mac OS X default keychain will be
5931          used as the place to store public certificates instead of a
5932          smime-public-cert-directory or a smime-public-cert-container.
5933          This feature is displayed as "S/MIME -- Public Certs in MacOS
5934          Keychain".
5935   _quell-attachment-extension-warn_
5936          This feature suppresses the extra warning you can get when
5937          trying to view an attachment for which there is no mime-type
5938          match. Turning on this feature will just run the program
5939          according to extension instead of first warning the user that it
5940          will run according to the file's extension.
5941          This feature can be used along side
5942          quell-attachment-extra-prompt to preserve the behavior exhibited
5943          in _Pine_ versions prior to _Pine_ 4.50.
5944          This feature is displayed as "Suppress Attachment Extension
5945          Warning".
5946   _quell-attachment-extra-prompt_
5947          By default, when you attempt to view an attachment externally
5948          from the "Attachment View" screen, you are asked if you really
5949          want to view the selected attachment.
5950          If this feature is set, you will _not_ be prompted to confirm
5951          your selection. Prior to _Pine_ 4.50, the default behavior was
5952          to not prompt. This feature was added for those wanting to
5953          preserve that behavior.
5954          This feature is displayed as "Suppress Attachment Extra Prompt".
5955   _quell-berkeley-format-timezone_
5956          POSIX mandates a timezone in UNIX mailbox format folder
5957          delimiters (the line which begins with From ). Some versions of
5958          Berkeley mail have trouble with this, and don't recognize the
5959          line as a message delimiter. If this feature is set, the
5960          timezone will be left off the delimiter line.
5961          This feature is displayed as "Suppress Berkeley Format
5962          Timezone".
5963   _quell-charset-warning_
5964          By default, if the message you are viewing contains characters
5965          that are not representable in your display-character-set then
5966          _Alpine_ will add a warning to the start of the displayed text.
5967          If this option is set, then that editorial message will be
5968          suppressed.
5969          Setting this feature also suppresses the comment about the
5970          character set in header lines. For example, when viewing a
5971          message you might see
5972
5973                     From: "[ISO-8859-2] Name" <address>
5974          in the From header if your Character-Set is something other than
5975          ISO-8859-2. If you set this feature, the comment about the
5976          character set will no longer be there.
5977          This feature is displayed as "Suppress Character Set Warning".
5978   _quell-content-id_
5979          This feature changes the behavior of _Alpine_ when sending
5980          messages. It is intended to work around a bug in Microsoft's
5981          Outlook XP mail user agent. As of this writing, Microsoft has
5982          acknowledged the bug but has not added it to the Knowledge Base.
5983          We have been told that there will be a post-SP1 hotfix for
5984          Outlook XP. This particular bug has bug fix number
5985          OfficeQFE:4781. The nature of the bug is that messages with
5986          attachments which contain a Content-ID header (which standard
5987          _Alpine_ attachments do) do not show the attachment indicator (a
5988          paperclip) when viewed with Outlook XP. So the user has no
5989          indication that the message contains an attachment.
5990          If this feature is set then _Alpine_ will remove most Content-ID
5991          headers before sending a message. If an attachment is of type
5992          MESSAGE, then the existing Content-ID headers inside the message
5993          will be left intact. This would only happen with _Alpine_ if a
5994          message was forwarded as an attachment or if a message with a
5995          message attached was forwarded. Similarly if an attachment of
5996          type MULTIPART/ALTERNATIVE is forwarded, the Content-ID headers
5997          of the alternative parts will not be removed.
5998          Because the Content-ID header is a standard part of MIME it is
5999          possible that setting this feature will break something. For
6000          example, if an attachment has a Content-ID header which is
6001          necessary for the correct functioning of that attachment, it is
6002          possible that _Alpine_ may remove that header when the
6003          attachment is forwarded. However, it seems fairly safe at this
6004          time.
6005          This feature is displayed as "Suppress Content-ID".
6006   _quell-dead-letter-on-cancel_
6007          This feature affects _Alpine_'s behavior when you cancel a
6008          message being composed. _Alpine_'s usual behavior is to write
6009          the canceled message to a file named dead.letter in your home
6010          directory (under UNIX; DEADLETR under WINDOWS/DOS) overwriting
6011          any previous message. Under some conditions (some routine), this
6012          can introduce a noticeable delay.
6013          Setting this feature will cause _Alpine_ NOT to write canceled
6014          compositions into the file called dead.letter.
6015          This feature affects the newer option Dead-Letter-Files, which
6016          specifies the number of dead letter files to keep around. If
6017          this feature is set, then the Dead-Letter-Files option has no
6018          effect.
6019          This feature is displayed as "Do Not Save to Deadletter on
6020          Cancel".
6021   _quell-empty-directories_
6022          This feature causes _Alpine_ to remove from the display any
6023          directories that do not contain at least one file or directory.
6024          This can be useful to prevent overly cluttered folder lists when
6025          a collection is stored on a server that treats all names as both
6026          a folder and a directory.
6027          Note, enabling this feature can cause surprising behavior! For
6028          example, you can still use Add to create a directory, but unless
6029          you immediately enter that directory and create a folder, that
6030          newly created directory may not be displayed next time you enter
6031          the folder list.
6032          This feature is displayed as "Hide Empty Directories".
6033   _quell-extra-post-prompt_
6034          This feature causes _Alpine_ to skip the extra question about
6035          posting a message which may go to thousands of readers when you
6036          are about to post to a newsgroup.
6037          This feature is displayed as "Suppress Extra Posting Prompt".
6038   _quell-filtering-done-message_
6039          This feature causes _Alpine_ to suppress the "filtering done"
6040          message.
6041          This feature is displayed as "Suppress Filtering Done Message".
6042   _quell-filtering-messages_
6043          This feature causes _Alpine_ to suppress the messages about
6044          moving filtered messages and setting flags in messages, due to
6045          Filter Rules.
6046          This feature is displayed as "Suppress Filtering Messages".
6047   _quell-flowed-text_
6048          _Alpine_ generates flowed text where possible. The method for
6049          generating flowed text is defined by RFC 3676, the benefit of
6050          doing so is to send message text that can properly be viewed
6051          both on normal width displays and on displays with smaller or
6052          larger than normal screen widths. With flowed text, a space at
6053          the end of a line tells the receiving mail client that the
6054          following line belongs to the same paragraph. Quoted text will
6055          also be affected, with only the innermost level of ">" quoting
6056          being followed by a space. However, if you have changed the
6057          "Reply-Indent-String" so that it is not equal to the default
6058          value of "> ", then quoted text will not be flowed. For this
6059          reason, we recommend that you leave your "Reply-Indent-String"
6060          set to the default.
6061          This feature turns off the generation of flowed text, as it
6062          might be desired to more tightly control how a message is
6063          displayed on the receiving end.
6064          If this feature is _not_ set, you can control on a message by
6065          message basis whether or not flowed text is generated. You do
6066          this by typing ^V at the Send confirmation prompt that you get
6067          after typing ^X to send a message. ^V is a toggle which turns
6068          flowing off and back on if typed again. If for some reason
6069          flowing cannot be done on a particular message, then the ^V
6070          command will not be available. This would be the case, for
6071          example, if this feature was set, or if your
6072          "Reply-Indent-String" was set to a non-default value. If the
6073          feature Send-Without-Confirm is set, then the opportunity to
6074          control on a message by message basis whether or not flowed text
6075          is generated is lost.
6076          When this feature is not set and you have typed ^V to turn off
6077          flowing, the Send confirmation prompt will change to look like
6078
6079                         Send message (not flowed)?
6080          Strip-Whitespace-Before-Send will also turn off the sending of
6081          flowed text messages, but it differs in that it also trims all
6082          trailing white space from a message before sending it.
6083          If alternate editors are used extensively, be aware that a
6084          message will still be sent flowed if this feature is unset. In
6085          most cases this will be fine, but if the editor has a "flowed
6086          text" mode, it would be best to use that.
6087          This feature is displayed as "Do Not Send Flowed Text".
6088   _quell-folder-internal-msg_
6089          This feature determines whether or not _Alpine_ will create
6090          "pseudo messages" in folders that are in standard Unix or MMDF
6091          format.
6092          _Alpine_ will normally create these pseudo messages when they
6093          are not already present in a standard Unix or MMDF folder. Their
6094          purpose is to record certain mailbox state data needed for
6095          correct IMAP and POP server operation, and also for _Alpine_ to
6096          be able to mark messages as Answered when the Reply has been
6097          postponed.
6098          Sites which do not use IMAP/POP for remote mail access, and
6099          which need to support mail tools that are adversely affected by
6100          the presence of the pseudo-messages (e.g. some mail notification
6101          tools) may enable this feature to tell _Alpine_ not to create
6102          them. Note that _Alpine_'s "Answered" flag capability will be
6103          adversely affected if this is done.
6104          Note too that, even if this feature is enabled, _Alpine_ will
6105          not remove pseudo-messages when it encounters them (e.g. those
6106          created by UW's imapd or ipopd servers.) This feature has no
6107          effect on folders that are not in standard Unix or MMDF format,
6108          as pseudo-messages are not needed in the other formats to record
6109          mailbox state information.
6110          This feature is displayed as "Prevent Folder Internal Message".
6111   _quell-full-header-auto-reset_
6112          The HdrMode Command normally resets to the default state when
6113          switching to a new message. For example, if you've used the "H"
6114          command to turn on Full Headers for a message you are viewing,
6115          and then you type the Next command to look at the next message,
6116          the full headers will no longer be shown. Setting this feature
6117          disables that reset. Instead, the Header Mode remains the same
6118          from message to message.
6119          The presence or absence of the HdrMode command is determined by
6120          the "Enable-Full-Header-Cmd" Feature-List option.
6121          This feature is displayed as "Suppress Full Header Auto Reset".
6122   _quell-imap-envelope-update_
6123          In the MESSAGE INDEX screen, if the open folder is being
6124          accessed using IMAP, _Alpine_ normally tries to paint the index
6125          lines on the screen as soon as the information arrives from the
6126          IMAP server. This means that the index information makes it onto
6127          the screen more quickly than it otherwise would. This sometimes
6128          results in behavior that bothers some users. For example, when
6129          paging to a new page of the index, it may be possible for the
6130          lines to be painted on the screen in a random order, rather than
6131          from top to bottom.
6132          Setting this feature causes _Alpine_ to wait for all of the
6133          information to be gathered before it paints the index screen.
6134          Once it collects all of the information, the screen will be
6135          painted quickly from top to bottom.
6136          This feature is displayed as "Suppress IMAP Envelope Update".
6137   _quell-lock-failure-warnings_
6138          This feature affects _Alpine_'s behavior when it encounters a
6139          problem acquiring a mail folder lock. Typically, a secondary
6140          file associated with the mail folder being opened is created as
6141          part of the locking process. On some systems, such file creation
6142          has been administratively precluded by the system configuration.
6143          _Alpine_ issues a warning when such failures occur, which can
6144          become bothersome if the system is configured to disallow such
6145          actions. Setting this feature causes _Alpine_ to remain silent
6146          when this part of lock creation fails.
6147          WARNING: systems that have been configured in a way that
6148          precludes locking introduce some risk of mail folder corruption
6149          when more than one program attempts to modify the mail folder.
6150          This is most likely to occur to one's _INBOX_ or other "Incoming
6151          Message Folder".
6152          This feature is displayed as "Suppress Lock Failure Warnings".
6153   _Quell-Mailchecks-Composing-Except-Inbox_
6154          This option is closely related to the Mail-Check-Interval
6155          option, the Mail-Check-Interval-Noncurrent option, and
6156          Quell-Mailchecks-Composing-Inbox.
6157          If this option is set, then the normal new-mail checking which
6158          happens while you are composing will not happen for folders
6159          other than your INBOX (which depends on the setting of
6160          "Quell-Mailchecks-Composing-Inbox").
6161          You might want to set this option if you are experiencing delays
6162          while composing which you think might be related to the speed of
6163          the new-mail checks.
6164          Even with this option turned on, an occasional new-mail check
6165          may be done in order to keep the server from killing the
6166          connection to the folder. For example, IMAP servers may remove a
6167          connection to a folder if there has been no activity on the
6168          connection for 30 minutes or more. Instead of letting that
6169          happen, _Alpine_ will check for new mail before the 30 minutes
6170          is up even though you have turned on this feature to quell those
6171          checks.
6172          Besides new-mail checks, checkpoint operations on the folders
6173          will also be quelled when you set this option. The purpose of
6174          checkpointing is to write the changes to a folder out to disk
6175          periodically in order to avoid losing those changes when system
6176          or software problems occur. New-mail checking and checkpointing
6177          while you are not composing are not affected by this option.
6178          This feature is displayed as "Prevent Mailchecks While Composing
6179          Except for INBOX".
6180   _Quell-Mailchecks-Composing-Inbox_
6181          This option is closely related to the Mail-Check-Interval
6182          option, the Mail-Check-Interval-Noncurrent option, and
6183          Quell-Mailchecks-Composing-Except-Inbox.
6184          If this option is set, then the normal new-mail checking which
6185          happens while you are composing will not happen for your INBOX.
6186          Checking of other folders is controlled in a similar way with
6187          the "Quell-Mailchecks-Composing-Except-Inbox" option.
6188          You might want to set this option if you are experiencing delays
6189          while composing which you think might be related to the speed of
6190          the new-mail checks.
6191          Even with this option turned on, an occasional new-mail check
6192          may be done in order to keep the server from killing the
6193          connection to the folder. For example, IMAP servers may remove a
6194          connection to a folder if there has been no activity on the
6195          connection for 30 minutes or more. Instead of letting that
6196          happen, _Alpine_ will check for new mail before the 30 minutes
6197          is up even though you have turned on this feature to quell those
6198          checks.
6199          Besides new-mail checks, checkpoint operations on the INBOX will
6200          also be quelled when you set this option. The purpose of
6201          checkpointing is to write the changes to a folder out to disk
6202          periodically in order to avoid losing those changes when system
6203          or software problems occur. New-mail checking and checkpointing
6204          while you are not composing are not affected by this option.
6205          This feature is displayed as "Prevent Mailchecks While Composing
6206          for INBOX".
6207   _quell-maildomain-warning_
6208          When your configuration is set up so that your domain name
6209          contains no dots, it is usually a configuration error. By
6210          default, _Alpine_ will warn you about this when you start it up.
6211          You will see a warning message that looks like
6212
6213                      Incomplete maildomain "<domain>".
6214          If this feature is set, the warning is turned off. This feature
6215          is displayed as "Suppress Maildomain Warning".
6216   _quell-news-envelope-update_
6217          In the MESSAGE INDEX screen, if the open folder is being
6218          accessed using NNTP (News), _Alpine_ normally tries to paint the
6219          index lines on the screen as soon as the information arrives
6220          from the NNTP server. This means that the index information
6221          makes it onto the screen more quickly than it otherwise would.
6222          This sometimes results in behavior that bothers some users. For
6223          example, when paging to a new page of the index, it may be
6224          possible for the lines to be painted on the screen in a random
6225          order, rather than from top to bottom.
6226          Setting this feature causes _Alpine_ to wait for all of the
6227          information to be gathered before it paints the index screen.
6228          Once it collects all of the information, the screen will be
6229          painted quickly from top to bottom.
6230          This feature is displayed as "Suppress News Envelope Update".
6231   _quell-partial-fetching_
6232          Partial fetching is a feature of the IMAP protocol. By default,
6233          _Alpine_ will use partial fetching when copying the contents of a
6234          message or attachment from the IMAP server to _Alpine_. This
6235          means that the fetch will be done in many small chunks instead
6236          of one big chunk. The main benefit of this approach is that the
6237          fetch becomes interruptible. That is, the user can type _^C_ to
6238          stop the fetch early. In some cases partial fetching may cause a
6239          performance problem so that the fetching of data takes
6240          significantly longer when partial fetching is used. Turning on
6241          this feature will turn off partial fetching.
6242          This feature is displayed as "Prevent Partial Fetching".
6243   _quell-personal-name-prompt_
6244          _PC-Alpine_ only. This feature quells the prompting for a
6245          personal-name. This prompt normally happens before composing a
6246          message, and only happens when there is no personal name already
6247          set.
6248   _quell-server-after-link-in-html_
6249          By default, links in HTML text are displayed with the host the
6250          link references appended, within square brackets, to the link
6251          text. _Alpine_ does this to help indicate where a link will take
6252          you, particularly when the link text might suggest a different
6253          destination.
6254          Setting this feature will prevent the server name from being
6255          appended to the displayed text.
6256          This feature is displayed as "Suppress Server After Link in
6257          HTML".
6258   _quell-ssl-largeblocks_
6259          This feature (_PC-Alpine_ only) changes the behavior of fetching
6260          messages and attachments so that the message data is fetched in
6261          chunks no larger than 12K bytes. This works around a bug in
6262          Microsoft's SSL/TLS support. Some versions of Microsoft SSL are
6263          not able to read full-sized (16K) SSL/TLS packets. Some servers
6264          will send such packets and this will cause _PC-Alpine_ to crash
6265          with the error
6266
6267              incomplete SecBuffer exceeds maximum buffer size
6268          Microsoft is aware of the problem and has developed a hotfix for
6269          it, but as of this writing the hotfix has not yet been added to
6270          the Knowledge Base.
6271          This feature is displayed as "Prevent SSL Largeblocks".
6272   _quell-status-message-beeping_
6273          If set status messages will never emit a beep.
6274          This feature is displayed as "Suppress Status Message Beeping".
6275   _quell-timezone-comment-when-sending_
6276          Normally, when _Alpine_ generates a Date header for outgoing
6277          mail, it will try to include the symbolic timezone at the end of
6278          the header inside parentheses. The symbolic timezone is often
6279          three characters long, but on some operating systems, it may be
6280          longer. Apparently there are some SMTP servers in the world
6281          which will reject an incoming message if it has a Date header
6282          longer than about 80 characters. If this feature is set, the
6283          symbolic timezone normally generated by _Alpine_ will not be
6284          included. You probably don't need to worry about this feature
6285          unless you run into the problem described above.
6286          This feature is displayed as "Suppress Timezone Comment When
6287          Sending".
6288   _quell-user-id-prompt_
6289          _PC-Alpine_ only. This feature quells the prompting for a
6290          user-id if the information can be obtained from the login name
6291          used to open the INBOX. Normally, this prompt happens before
6292          composing a message, and only happens when there is no user-id
6293          already set in the configuration.
6294          With this feature set, composing a message is only possible
6295          after establishing a connection to the INBOX.
6296   _quell-user-lookup-in-passwd-file_
6297          This feature controls an aspect of _Alpine_'s Composer, and if
6298          needed, will usually be set by the system manager in _Alpine_'s
6299          system-wide configuration file. Specifically, if this feature is
6300          set, _Alpine_ will not attempt to look in the system password
6301          file to find a Full Name for the entered address.
6302          Normally, names you enter into address fields (e.g. To: or Cc:)
6303          are checked against your address book(s) to see if they match an
6304          address book nickname. Failing that, (in Unix _Alpine_) the name
6305          is then checked against the Unix password file. If the entered
6306          name matches a username in the system password file, _Alpine_
6307          extracts the corresponding Full Name information for that
6308          individual, and adds that to the address being entered.
6309          However, password file matching can have surprising (incorrect)
6310          results if other users of the system do not receive mail at the
6311          domain you are using. That is, if either the user-domain or
6312          use-only-domain-name option is set such that the administrative
6313          domain of other users on the system isn't accurately reflected,
6314          _Alpine_ should be told that a password file match is
6315          coincidental, and Full Name info will be incorrect. For example,
6316          a personal name from the password file could get falsely paired
6317          with the entered name as it is turned into an address in the
6318          configured domain.
6319          If you are seeing this behavior, enabling this feature will
6320          prevent Unix _Alpine_ from looking up names in the password file
6321          to find the Full Name for incomplete addresses you enter.
6322          This feature is displayed as "Prevent User Lookup in Password
6323          File".
6324   _quit-without-confirm_
6325          This feature controls whether or not _Alpine_ will ask for
6326          confirmation when a _Quit_ command is received.
6327          This feature is displayed as "Quit Without Confirming".
6328   _quote-replace-nonflowed_
6329          This feature, which is only active when Quote-Replace-String is
6330          also set, enables quote-replacement on non-flowed messages. It
6331          is off by default because a non-flowed message is more dependent
6332          on its format, and thus quote-replacement may cause
6333          less-than-pleasing results. Setting this feature will cause
6334          quote-replacement similar to that of flowed messages, but with
6335          the added possibility of long lines being wrapped into new lines
6336          if the Quote-Replacement-String is longer than the string it is
6337          replacing, which is "> ".
6338   _reply-always-uses-reply-to_
6339          If set, _Alpine_ will not prompt when a message being replied to
6340          contains a _Reply-To:_ header value, but will simply use its
6341          value (as opposed to using the _From:_ field's value).
6342   _return-to-inbox-without-confirm_
6343          Normally, when you use the TAB command and there are no more
6344          folders or newsgroups to visit, you are asked if you want to
6345          return to the INBOX. If this feature is set you will not be
6346          asked. It will be assumed that you do want to return to the
6347          INBOX.
6348          This feature is displayed as "Return to INBOX Without
6349          Confirming".
6350   _save-aggregates-copy-sequence_
6351          This feature will optimize an aggregate copy operation, if
6352          possible, by issuing a single IMAP _COPY_ command with a list of
6353          the messages to be copied. This feature is set by default. This
6354          may reduce network traffic and elapsed time for the Save.
6355          _However, many IMAP servers (including the UW IMAP server) do not
6356          preserve the order of messages when this optimization is
6357          applied._ If this feature is not set, _Alpine_ will copy each
6358          message individually and the order of the messages will be
6359          preserved.
6360          This feature is displayed as "Save Combines Copies (may be out
6361          of order)".
6362   _save-partial-msg-without-confirm_
6363          This feature controls an aspect of _Alpine_'s Save command. By
6364          default, when you Save a message that has some deleted parts,
6365          you will be asked to confirm that you want to Save with a prompt
6366          that looks like:
6367
6368            Saved copy will NOT include entire message! Continue?
6369          If this feature is set, you will not be asked.
6370          This feature is displayed as "Save Partial Message Without
6371          Confirming".
6372   _save-will-advance_
6373          If set, _Save_ will (in addition to copying the current message
6374          to the designated folder) also advance to the next message.
6375   _save-will-not-delete_
6376          If set, _Save_ will not mark the message Deleted (its default
6377          behavior) after it has been copied to the designated folder.
6378   _save-will-quote-leading-froms_
6379          This feature controls an aspect of the _Save_ command (and also
6380          the way outgoing messages are saved to an FCC folder). If set,
6381          _Alpine_ will add a leading > character in front of message lines
6382          beginning with "From" when they are saved to another folder,
6383          including lines syntactically distinguishable from the type of
6384          message separator line commonly used on Unix systems.
6385          The default behavior is that a > will be prepended only to lines
6386          beginning with "From " that might otherwise be confused with a
6387          message separator line on Unix systems. If _Alpine_ is the only
6388          mail program you use, this default is reasonable. If another
6389          program you use has trouble displaying a message with an
6390          unquoted From saved by _Alpine_, you should enable this feature.
6391          This feature only applies to the common Unix mailbox format that
6392          uses message separator lines beginning with "From ". If _Alpine_
6393          has been configured to use a different mailbox format (possibly
6394          incompatible with other mail programs), then this issue does not
6395          arise, and the feature is irrelevant.
6396   _scramble-message-id_
6397          Normally the Message-ID header that _Alpine_ generates when
6398          sending a message contains the name of the computer from which
6399          the message is being sent. Some believe that this hostname could
6400          be used by spammers or could be used by others for nefarious
6401          purposes. If this feature is set, that name will be transformed
6402          with a simple Rot13 transformation. The result will still have
6403          the correct syntax for a Message-ID but the part of the
6404          MessageID that is often a domain name will not be an actual
6405          domain name because the letters will be scrambled.
6406          It is possible (but unlikely?) that some spam detection software
6407          will use that as a reason to reject the mail as spam. It has
6408          also been reported that some spam detection software uses the
6409          fact that there are no dots after the "@" as a reason to reject
6410          messages. If your _PC-Alpine_ Message-ID is using a name without
6411          a dot that is because that is what Windows thinks is your "Full
6412          computer name". The method used to set this varies from one type
6413          of Windows to another but check under Settings -> Control Panel
6414          -> System and look for Network Identification or Computer Name
6415          or something similar. How to set it is beyond the scope of
6416          _Alpine_.
6417          This feature is displayed as "Scramble the Message-ID When
6418          Sending".
6419   _select-without-confirm_
6420          This feature controls an aspect of _Alpine_'s _Save_, _Export_,
6421          and _Goto_ commands. These commands all take text input to
6422          specify the name of the folder or file to be used, but allow you
6423          to press _^T_ for a list of possible names. If set, the selected
6424          name will be used immediately, without further opportunity to
6425          confirm or edit the name.
6426          This feature is displayed as "Select Ctrl-T Foldername Without
6427          Confirming".
6428   _send-without-confirm_
6429          By default, when you send or post a message you will be asked to
6430          confirm with a question that looks something like:
6431
6432                                Send message?
6433          If this feature is set, you will _not_ be prompted to confirm
6434          your intent to send and your message will be sent.
6435          If this feature is set it disables some possibilities and
6436          renders some other features meaningless. You will not be able to
6437          use Sending Filters, Verbose sending mode, Background Sending,
6438          Delivery Status Notifications, or ^V to turn off the generation
6439          of flowed text for this message. These options are normally
6440          available as suboptions in the Send prompt, but with no Send
6441          prompt the options are gone.
6442          A somewhat related feature is quell-extra-post-prompt. which may
6443          be used to eliminate the extra confirmation question when
6444          posting to a newsgroup.
6445          This feature is displayed as "Send Without Confirming".
6446   _separate-folder-and-directory-display_
6447          This feature affects folder collections wherein a folder and
6448          directory can have the same name. By default, _Alpine_ displays
6449          them only once, denoting that it is both a folder and directory
6450          by appending the folder name with the hierarchy character
6451          enclosed in square brackets.
6452          Enabling this feature will cause _Alpine_ to display such names
6453          separately marking the name representing a directory with a
6454          trailing hierarchy delimiter (typically the slash, "/",
6455          character).
6456          The feature also alters the command set slightly. By default,
6457          the right-arrow descends into the directory, while hitting the
6458          Return key will cause the folder by that name to be opened.
6459          With this feature set, the Return key will open the highlighted
6460          folder, or enter the highlighted directory.
6461   _show-cursor_
6462          If set, the system cursor will move to convenient locations in
6463          the displays. For example, to the beginning of the status field
6464          of the highlighted index line, or to the highlighted word after
6465          a successful _WhereIs_ command. It is intended to draw your
6466          attention to the _interesting_ spot on the screen.
6467   _show-plain-text-internally_
6468          This feature modifies the method _Alpine_ uses to display
6469          Text/Plain MIME attachments from the Attachment Index screen.
6470          Normally, the "View" command searches for any externally defined
6471          (usually via the Mailcap file) viewer, and displays the selected
6472          text within that viewer.
6473          Enabling this feature causes _Alpine_ to ignore any external
6474          viewer settings and always display text with _Alpine_'s internal
6475          viewer.
6476   _show-selected-in-boldface_
6477          This feature controls an aspect of _Alpine_'s aggregate
6478          operation commands; in particular, the _Select_ and _WhereIs_
6479          commands. _Select_ and _WhereIs_ (with the _^X_ subcommand) will
6480          search the current folder for messages meeting a specified
6481          criteria, and _tag_ the resulting messages with an _X_ in the
6482          first column of the applicable lines in the "Folder Index". If
6483          this feature is set, instead of using the _X_ to denote a
6484          selected message, _Alpine_ will attempt to display those index
6485          lines in boldface. Whether this is preferable to the _X_ will
6486          depend on personal taste and the type of terminal being used.
6487   _show-sort_
6488          If this feature is set and there is sufficient space on the
6489          screen, a short indication of the current sort order will be
6490          added in the titlebar (the top line on the screen), before the
6491          name of the folder. For example, with the default Arrival sort
6492          in effect, the display would have the characters
6493
6494                                     [A]
6495          added between the title of the screen and the folder name. The
6496          letters are the same as the letters you may type to manually
6497          sort a folder with the SortIndex command ($). The letters in the
6498          table below are the ones that may show up in the titlebar line.
6499
6500          A _A_rrival
6501          S _S_ubject
6502          F _F_rom
6503          T _T_o
6504          C _C_c
6505          D _D_ate
6506          Z si_Z_e
6507          O _O_rderedsubject
6508          E scor_E_
6509          H t_H_read
6510          If the sort order is Reversed, the letter above will be preceded
6511          by the letter "R", for example
6512
6513                                    [RS]
6514          means that a Reverse Subject sort is in effect. For the case
6515          where the sort is in Reverse Arrival order, the "A" is left out,
6516          and just an "R" is shown.
6517
6518                                     [R]
6519          This feature is displayed as "Show Sort in Titlebar".
6520   _signature-at-bottom_
6521          If this feature is set, and a message being _Repl_ied to is
6522          being included in the reply, then the contents of the signature
6523          file (if any) will be inserted after the included message. This
6524          feature does not affect the results of a _Forward_ command.
6525   _single-column-folder-list_
6526          If set, the "Folder List" screen will list one folder per line
6527          instead of several per line.
6528   _slash-collapses-entire-thread_
6529          Normally, the Collapse/Expand Thread command Collapses or
6530          Expands the subthread which starts at the currently highlighted
6531          message, if any. If this feature is set, then the slash command
6532          Collapses or Expands the _entire_ current thread instead of just
6533          the subthread.
6534   _smime-dont-do-smime_
6535          UNIX _Alpine_ only.
6536          Setting this feature turns off all of _Alpine_'s S/MIME support.
6537          You might want to set this if you are having trouble due to the
6538          S/MIME support.
6539          + General S/MIME Overview
6540          This feature is displayed as "S/MIME -- Turn off S/MIME".
6541   _smime-encrypt-by-default_
6542          UNIX _Alpine_ only.
6543          This feature only has an effect if your version of _Alpine_
6544          includes support for S/MIME. It affects _Alpine_'s behavior when
6545          you send a message. If this option is set, the "Encrypt" option
6546          will default to ON when sending messages.
6547          Only the default value is affected. In any case, you may still
6548          toggle the Encrypt option on or off before sending with the "E
6549          Encrypt" command (provided you have a the public digital ID for
6550          the recipient).
6551          + General S/MIME Overview
6552          This feature is displayed as "S/MIME -- Encrypt by Default".
6553   _smime-remember-passphrase_
6554          UNIX _Alpine_ only.
6555          This feature only has an effect if your version of _Alpine_
6556          includes support for S/MIME. If this option is set, you will
6557          only have to enter your passphrase for your private key once
6558          during an _Alpine_ session.
6559          + General S/MIME Overview
6560          This feature is displayed as "S/MIME -- Remember S/MIME
6561          Passphrase".
6562   _smime-sign-by-default_
6563          UNIX _Alpine_ only.
6564          This feature only has an effect if your version of _Alpine_
6565          includes support for S/MIME. It affects _Alpine_'s behavior when
6566          you send a message. If this option is set, the "Sign" option
6567          will default to ON when sending messages.
6568          Only the default value is affected. In any case, you may still
6569          toggle the Signing option on or off before sending with the "G
6570          Sign" command (provided you have a personal digital ID
6571          certificate).
6572          + General S/MIME Overview
6573          This feature is displayed as "S/MIME -- Sign by Default".
6574   _sort-default-fcc-alpha_
6575          This feature controls an aspect of _Alpine_'s FOLDER LIST
6576          screen. If set, the default FCC folder will be sorted
6577          alphabetically with the other folders instead of appearing right
6578          after the INBOX.
6579          This feature is displayed as "Sort Default Fcc Folder
6580          Alphabetically".
6581   _sort-default-save-alpha_
6582          This feature controls an aspect of _Alpine_'s FOLDER LIST
6583          screen. If set, the default save folder will be sorted
6584          alphabetically with the other folders instead of appearing right
6585          after the INBOX (and default FCC folder).
6586          This feature is displayed as "Sort Default Save Folder
6587          Alphabetically".
6588   _spell-check-before-sending_
6589          When this feature is set, every composed message will be
6590          spell-checked before being sent.
6591   _store-window-position-in-config_
6592          Normally, _PC-Alpine_ will store its window size and position in
6593          the Windows Registry. This is convenient if you want to use the
6594          same remote configuration from more than one PC. If you use
6595          multiple configuration files to start _PC-Alpine_, you may want
6596          to store the window size and position in the configuration file
6597          instead of in the Registry. Setting this feature causes that to
6598          happen.
6599   _strip-from-sigdashes-on-reply_
6600          This feature doesn't do anything if the feature enable-sigdashes
6601          is turned on. However, if the _enable-sigdashes_ feature is not
6602          turned on, then turning on this feature enables support for the
6603          convention of not including text beyond the sigdashes line when
6604          Replying or Following up to a message and including the text of
6605          that message.
6606          In other words, this is a way to turn on the signature stripping
6607          behavior without also turning on the dashes-adding behavior.
6608   _strip-whitespace-before=send_
6609          Trailing whitespace is not stripped from a message before
6610          sending. Trailing whitespace should have no effect on an email
6611          message, and in flowed text can aid in delimiting paragraphs.
6612          However, the old behavior of stripping trailing whitespace was
6613          in place to better deal with older clients that couldn't handle
6614          certain types of text encodings. This feature restores the old
6615          behavior
6616          Trailing whitespace is of aid to flowed-text-formatted messages,
6617          which are generated by default but can be turned off via the
6618          quell-flowed-text feature. strip-whitespace-before-send also has
6619          the effect of turning off sending of flowed text.
6620          This feature is displayed as "Strip Whitespace Before Sending".
6621   _suppress-asterisks-in-password-prompt_
6622          When you are running _Alpine_ you will sometimes be asked for a
6623          password in a prompt on the third line from the bottom of the
6624          screen. Normally each password character you type will cause an
6625          asterisk to echo on the screen. That gives you some feedback to
6626          know that your typing is being recognized. There is a very
6627          slight security risk in doing it this way because someone
6628          watching over your shoulder might be able to see how many
6629          characters there are in your password. If you'd like to suppress
6630          the echoing of the asterisks set this feature.
6631   _suppress-user-agent-when-sending_
6632          If this feature is set then _Alpine_ will not generate a
6633          User-Agent header in outgoing messages.
6634   _tab-checks-recent_
6635          In a FOLDER LIST screen, the TAB key usually just changes which
6636          folder is highlighted. If this feature is set, then the TAB key
6637          will cause the number of recent messages and the total number of
6638          messages in the highlighted folder to be displayed instead.
6639          This feature is displayed as "Tab Checks for Recent Messages".
6640   _tab-uses-unseen-for-next-folder_
6641          This feature affects _Alpine_'s behavior when using the TAB
6642          NextNew Command to move from one folder to the next. _Alpine_'s
6643          usual behavior is to search for folders with _Recent_ messages
6644          in them. Recent messages are messages which have arrived since
6645          the last time the folder was opened.
6646          Setting this feature causes _Alpine_ to search for _Unseen_
6647          messages instead of Recent messages. Unseen messages remain
6648          Unseen until you view them (or flag then as Seen with the Flag
6649          Command). Setting this feature allows you to locate messages you
6650          have not read instead of only recently received messages. When
6651          this feature is set, the feature Enable-Fast-Recent-Test will
6652          have no effect, so the checking may be slower.
6653          Another reason why you might want to use this feature is that
6654          _Alpine_ sometimes opens folders implicitly behind the scenes,
6655          and this clears the Recent status of all messages in the folder.
6656          One example where this happens is when Saving or filtering a
6657          message to another folder. If that message has some keywords
6658          set, then because of some shortcomings in the IMAP
6659          specification, the best way to ensure that those keywords are
6660          still set in the saved copy of the message is to open the folder
6661          and set the keywords explicitly. Because this clears the Recent
6662          status of all messages in that folder the folder will not be
6663          found by the NextNew command unless this feature is set.
6664   _tab-visits-next-new-message-only_
6665          This feature affects _Alpine_'s behavior when using the _TAB_
6666          key to move from one message to the next. _Alpine_'s usual
6667          behavior is to select the next _Unread_ message or message
6668          flagged as _Important_.
6669          Setting this feature causes _Alpine_ to skip the messages
6670          flagged as _Important_, and select _Unread_ messages
6671          exclusively. Tab behavior when there are no new messages left to
6672          select remains unchanged.
6673   _termdef-takes-precedence_
6674          This feature may affect _Alpine_'s low-level input routines.
6675          Termcap (or terminfo, depending on how your copy of _Alpine_ was
6676          compiled and linked) is the name of the database which describes
6677          terminal capabilities. In particular, it describes the sequences
6678          of characters that various keys will emit.
6679          An example would be the Up Arrow key on the keyboard. Up Arrow
6680          is not a distinct character on most Unix systems. When you press
6681          the Up Arrow key a short sequence of characters are produced.
6682          This sequence is supposed to be described in the termcap
6683          database by the "ku" capability (or by the "kcuu1" capability if
6684          you are using terminfo instead of termcap).
6685          By default, _Alpine_ defines some terminal escape sequences that
6686          are commonly used. For example, the sequence "ESC O A" is
6687          recognized as an Up Arrow key. The sequence "ESC [ A" is also
6688          recognized as an Up Arrow key. These are chosen because common
6689          terminals like VT100's or ANSI standard terminals produce these
6690          sequences when you press the Up Arrow key.
6691          If your system's termcap (terminfo) database assigns some other
6692          function to the sequence "ESC O A" it is usually ignored by
6693          _Alpine_. Also, if your termcap (terminfo) database assigns a
6694          sequence which doesn't begin with an escape character (ESC) it
6695          is usually ignored by _Alpine_. This usually works fine because
6696          most terminals emit the escape sequences that _Alpine_ has
6697          defined by default. We have also found that it is usually better
6698          to have these defaults take precedence over the definitions
6699          contained in the database because the defaults are more likely
6700          to be correct than the database.
6701          There are some terminals where this breaks down. If you want
6702          _Alpine_ to believe the definitions given in your termcap
6703          (terminfo) database in preference to the defaults the _Alpine_
6704          itself sets up, then you may turn this feature on. Then,
6705          sequences of characters which are defined in both termcap
6706          (terminfo) and in _Alpine_'s set of defaults will be interpreted
6707          the way that termcap (terminfo) says they should be interpreted.
6708          Also, if your terminal capabilities database assigns a sequence
6709          which doesn't begin with escape, it will not be ignored.
6710   _thread-index-shows-important-color_
6711          This option affects only the THREAD INDEX screen. Whether or not
6712          you ever see a THREAD INDEX screen depends on the setting of the
6713          configuration option threading-index-style and on the sort order
6714          of the index. If a message within a thread is flagged as
6715          Important and this option is set, then the entire line in the
6716          THREAD INDEX will be colored the color of the Index-important
6717          Symbol, which can be set using the Setup Kolor screen.
6718   _try-alternative-authentication-driver-first_
6719          This feature affects how _Alpine_ connects to IMAP servers. It's
6720          utility has largely been overtaken by events, but it may still
6721          be useful in some circumstances. If you only connect to modern
6722          IMAP servers that support "TLS" you can ignore this feature.
6723          Details:
6724          By default, _Alpine_ will attempt to connect to an IMAP server
6725          on the normal IMAP service port (143), and if the server offers
6726          "Transport Layer Security" (TLS) and _Alpine_ has been compiled
6727          with encryption capability, then a secure (encrypted) session
6728          will be negotiated.
6729          With this feature enabled, before connecting on the normal IMAP
6730          port, _Alpine_ will first attempt to connect to an alternate
6731          IMAP service port (993) used specifically for encrypted IMAP
6732          sessions via the Secure Sockets Layer (SSL) method. If the SSL
6733          attempt fails, _Alpine_ will then try the default behavior
6734          described in the previous paragraph.
6735          TLS negotiation on the normal port is preferred, and supersedes
6736          the use of SSL on port 993, but older servers may not provide
6737          TLS support. This feature may be convenient when accessing IMAP
6738          servers that do not support TLS, but do support SSL connections
6739          on port 993. However, it is important to understand that with
6740          this feature enabled, _Alpine_ will _attempt_ to make a secure
6741          connection if that is possible, but it will proceed to make an
6742          insecure connection if that is the only option offered by the
6743          server, or if the _Alpine_ in question has been built without
6744          encryption capability.
6745          Note that this feature specifies a per-user (or system-wide)
6746          default behavior, but host/folder specification flags may be
6747          used to control the behavior of any specific connection. This
6748          feature interacts with some of the possible host/folder path
6749          specification flags as follows:
6750          The /tls host flag, for example,
6751
6752                         {foo.example.com/tls}INBOX
6753          will over-ride this feature for the specified host by bypassing
6754          the SSL connection attempt. Moreover, with /tls specified, the
6755          connection attempt will fail if the service on port 143 does not
6756          offer TLS support.
6757          The /ssl host flag, for example,
6758
6759                         {foo.example.com/ssl}INBOX
6760          will insist on an SSL connection for the specified host, and
6761          will fail if the SSL service on port 993 is not available.
6762          _Alpine_ will not subsequently retry a connection on port 143 if
6763          /ssl is specified.
6764   _unselect-will-not-advance_
6765          Normally, when the Unselect current message command (:) is typed
6766          when the current message is selected, the message will be
6767          unselected and the next message will become the current message.
6768          If this feature is set, the cursor will not advance to the next
6769          message. Instead, the current message will remain the current
6770          message after unselecting.
6771   _use-current-dir_
6772          This feature controls an aspect of several commands. If set,
6773          your "current working directory" will be used instead of your
6774          home directory for all of the following operations:
6775          + _Export_ in the "Folder Index" and "Message Text" screens
6776          + Attachment _Save_ in the "Message Text" and "Attachment Text"
6777            screens
6778          + _^R_ file inclusion in the Composer
6779          + _^J_ file attachment in the Composer
6780          This feature is displayed as "Use Current Directory".
6781   _use-function-keys_
6782          This feature specifies that _Alpine_ will respond to function
6783          keys instead of the normal single-letter commands. In this mode,
6784          the key menus at the bottom of each screen will show function
6785          key designations instead of the normal mnemonic key.
6786   _use-regular-startup-rule-for-stayopen-folders_
6787          This feature affects which message is selected as the current
6788          message when you enter a Stay Open folder.
6789          Normally, the starting position for an incoming folder (which
6790          most Stay Open folders will likely be) is controlled by the
6791          Incoming-Startup-Rule. However, if a folder is a Stay Open
6792          folder, when you re-enter the folder after the first time the
6793          current message will be the same as it was when you left the
6794          folder. An exception is made if you use the TAB command to get
6795          to the folder. In that case, the message number will be
6796          incremented by one from what it was when you left the folder.
6797          The above special behavior is thought to be useful. However, it
6798          is special and different from what you might at first expect. If
6799          this feature is set, then Stay Open folders will not be treated
6800          specially as far as the startup rule is concerned.
6801   _use-resent-to-in-rules_
6802          This feature is turned off by default because turning it on
6803          causes problems with some deficient IMAP servers. In _Alpine_
6804          Filters and other types of Rules, if the Pattern contains a To
6805          header pattern and this feature is turned on, then a check is
6806          made in the message to see if a Resent-To header is present, and
6807          that is used instead of the To header. If this feature is not
6808          turned on, then the regular To header will always be used.
6809   _use-sender-not-x-sender_
6810          Normally _Alpine_ on Unix adds a header line labeled
6811          _X-X-Sender_, if the sender is different from the _From:_ line.
6812          The standard specifies that this header line should be labeled
6813          _Sender_, not _X-X-Sender_. Setting this feature causes _Sender_
6814          to be used instead of _X-X-Sender_. The standard also states
6815          that the data associated with this header field should not be
6816          used as a Reply address. Unfortunately, certain implementations
6817          of mail list management servers will use the Sender address for
6818          such purposes. These implementations often even recognize the
6819          _X-Sender_ fields as being equivalent to the _Sender_ field, and
6820          use it if present. This is why _Alpine_ defaults to
6821          _X-X-Sender_.
6822          Note, _PC-Alpine_ always adds either an _X-X-Sender_ line if
6823          there is an open, remote mailbox, or an _X-Warning:
6824          UNAuthenticated User_ otherwise
6825          This feature is displayed as "Use Sender Instead of X-X-Sender".
6826   _use-subshell-for-suspend_
6827          This feature affects _Alpine_'s behavior when process suspension
6828          is enabled and then activated via the _^Z_ key. _Alpine_
6829          suspension allows one to temporarily interact with the operating
6830          system command "shell" without quitting _Alpine_, and then
6831          subsequently resume the still-active _Alpine_ session.
6832          When the _enable-suspend_ feature is set and subsequently the
6833          _^Z_ key is pressed, _Alpine_ will normally suspend itself and
6834          return temporary control to _Alpine_'s parent shell process.
6835          However, if this feature is set, _Alpine_ will instead create an
6836          inferior subshell process. This is useful when the parent
6837          process is not intended to be used interactively. Examples
6838          include invoking _Alpine_ via the -e argument of the Unix _xterm_
6839          program, or via a menu system.
6840          Note that one typically resumes a suspended _Alpine_ by entering
6841          the Unix _fg_ command, but if this feature is set, it will be
6842          necessary to enter the _exit_ command instead.
6843   _use-system-translation_
6844          UNIX _Alpine_ only. _Alpine_ normally uses its own internal
6845          software to convert between the multi-byte representation of
6846          characters and the Unicode representation of those same
6847          characters ( see the section on International Character Sets).
6848          It converts from the multi-byte characters your keyboard
6849          produces to Unicode, and from Unicode to the multi-byte
6850          characters your display expects. Alpine also uses its own
6851          internal software to decide how much space on the screen a
6852          particular Unicode character will occupy.
6853          Setting this feature tells _Alpine_ to use the system-supplied
6854          routines to perform these tasks instead. In particular there are
6855          three tasks and three system routines that will be used for
6856          these tasks.
6857          To convert from multi-byte to Unicode the routine
6858
6859                                  mbstowcs
6860          is used. To convert from Unicode to multi-byte the routine
6861
6862                                   wcrtomb
6863          is used. And to find the screen width a particular Unicode
6864          character will occupy the routine used is
6865
6866                                   wcwidth
6867          This feature has been only lightly tested. The internal routines
6868          should normally be used unless you run into a problem that you
6869          think may be solved by using the system routines. Note that your
6870          environment needs to be set up for these routines to work
6871          correctly. In particular, the LANG or LC_CTYPE variable in your
6872          environment will need to be set.
6873   _vertical-folder-list_
6874          This feature controls an aspect of _Alpine_'s FOLDER LIST
6875          screen. If set, the folders will be listed alphabetically down
6876          the columns rather than across the columns as is the default.
6877          This feature is displayed as "Use Vertical Folder List".
6878   _warn-if-blank-subject_
6879          This feature affects _Alpine_'s behavior when you send a message
6880          being composed. If this option is set, _Alpine_ will check to
6881          see if the message about to be sent has a subject or not. If
6882          not, you will be asked if you want to send the message anyway.
6883   _warn-if-blank-to-and-cc-and-newsgroups_
6884          This feature affects _Alpine_'s behavior when you send a message
6885          being composed. If this option is set, _Alpine_ will check to
6886          see if the message about to be sent has either a To address, a
6887          Cc address, or a Newsgroup. If none of these is set, you will be
6888          asked if you want to send the message anyway.
6889          This feature is closely related to fcc-only-without-confirm.
6890          _Alpine_ will normally ask if you want to copy a message only to
6891          the Fcc. This feature also applies to cases where there is a Bcc
6892          but still no To, Cc, or Newsgroup. If the
6893          Fcc-Only-Without-Confirm feature is set and you are sending a
6894          message with only an Fcc, then you won't be asked about sending
6895          with a blank To and Cc and Newsgroups header even if this
6896          feature is set. Similarly, if you have already been asked if you
6897          want to send to the Fcc only and you have answered Yes, then you
6898          won't be asked again about sending with blank To, Cc, and
6899          Newsgroups headers even if this feature is set.
6900
6901Hidden Config Variables and Features
6902
6903   There are several configuration variables and features which are
6904   normally hidden from the user. That is, they don't appear on any of the
6905   configuration screens. Some of these are suppressed because they are
6906   intended to be used by system administrators, and in fact may only be
6907   set in system-wide configuration files. Others are available to users
6908   but are thought to be of such little value to most users that their
6909   presence on the Config screens would cause more confusion than help.
6910   Others are hidden in the Setup/Config screen because they are normally
6911   configured in one of the other configuration screens. For example, all
6912   of the colors are hidden because the normal way to configure colors is
6913   through Setup/Colors not Setup/Config. You may set the feature
6914   expose-hidden-config to cause most of these hidden variables and
6915   features to show up at the bottom of the Setup/Config screen.
6916
6917  Hidden Variables Not Settable by Users
6918
6919   These variables are settable only in system-wide configuration files.
6920     * bugs-additional-data
6921     * bugs-address
6922     * bugs-fullname
6923     * forced-abook-entry
6924     * kblock-passwd-count
6925     * local-address
6926     * local-fullname
6927     * mail-directory
6928     * standard-printer
6929     * suggest-address
6930     * suggest-fullname
6931
6932  Hidden Variables Which are Settable by Users
6933
6934   These variables are not shown to users but are settable by means of
6935   hand editing the personal configuration file. This first group is
6936   usually maintained by _Alpine_ and there will usually be no reason to
6937   edit them by hand.
6938     * last-version-used
6939     * patterns-filters2
6940     * patterns-indexcolors
6941     * patterns-roles
6942     * patterns-scores2
6943     * remote-abook-metafile
6944
6945   This group is usually correct but may be changed by system managers or
6946   users in special cases.
6947     * disable-these-authenticators
6948     * disable-these-drivers
6949     * last-time-prune-questioned
6950     * new-version-threshold
6951     * remote-abook-history
6952     * remote-abook-validity
6953     * rsh-command
6954     * rsh-open-timeout
6955     * rsh-path
6956     * sendmail-path
6957     * ssh-command
6958     * ssh-open-timeout
6959     * ssh-path
6960     * tcp-open-timeout
6961     * tcp-query-timeout
6962     * tcp-read-warning-timeout
6963     * tcp-write-warning-timeout
6964     * use-function-keys
6965
6966   System managers are usually interested in setting these in the
6967   system-wide configuration files, though users may set them if they
6968   wish.
6969     * operating-dir
6970     * user-input-timeout
6971
6972  Hidden Features Which are Settable by Users
6973
6974   These are _features_ (as opposed to variables) which users or system
6975   administrators may set. Some of them only make sense for
6976   administrators. To turn these on manually, the configuration file
6977   should be edited and the feature added to the _feature-list_ variable.
6978   You may set the feature expose-hidden-config to cause these hidden
6979   features to show up in the Setup/Config screen. They will be at the
6980   bottom of the screen.
6981     * disable-config-cmd
6982     * disable-keyboard-lock-cmd
6983     * disable-password-cmd
6984     * disable-pipes-in-sigs
6985     * disable-pipes-in-templates
6986     * disable-roles-setup-cmd
6987     * disable-roles-sig-edit
6988     * disable-roles-template-edit
6989     * disable-setlocale-collate
6990     * disable-shared-namespaces
6991     * disable-signature-edit-cmd
6992
6993Retired Variables and Features
6994
6995   Variables and features that are no longer used by the current _Alpine_
6996   version. When an obsolete variable is encountered, its value is applied
6997   to any new corresponding setting. The replaced values include:
6998
6999   _character-set_
7000          Replaced by three separate variables: _display-character-set_,
7001          _keyboard-character-set_, and _posting-character-set_.
7002   _compose-mime_
7003   _elm-style-save_
7004          Replaced by _saved-msg-name-rule_
7005   _feature-level_
7006          Replaced by _feature-list._
7007   _header-in-reply_
7008          Replaced by _include-header-in-reply_ in the _feature-list._
7009   _old-style-reply_
7010          Replaced by _signature-at-bottom_ in the _feature-list._
7011   _use-old-unix-format-write_
7012          No replacement.
7013   _patterns_
7014          Replaced by four separate patterns variables: _patterns-roles_,
7015          _patterns-filters_, _patterns-scores_, and
7016          _patterns-indexcolors_. Since then, _patterns-filters_ has also
7017          become obsolete and is replaced by _patterns-filters2_;
7018          _patterns-scores_ is replaced by _patterns-scores2_.
7019   _save-by-sender_
7020          Replaced by _saved-msg-name-rule._
7021   _show-all-characters_
7022          No replacement, it always works this way now.
7023
7024Tokens for Index and Replying
7025
7026   This set of special tokens may be used in the index-format option, in
7027   the reply-leadin option, in signature files, in template files used in
7028   roles, and in the folder name that is the target of a Filter Rule. Some
7029   of them aren't available in all situations.
7030
7031   The tokens are used as they appear below for the _Index-Format_ option,
7032   but they must be surrounded by underscores for the _Reply-Leadin_
7033   option, in signature and template files, and in the target of Filter
7034   Rules.
7035
7036  _Tokens Available for all Cases (except Filter Rules)_
7037
7038   SUBJECT
7039          This token represents the Subject the sender gave the message.
7040          Alternatives for use in the index screen are SUBJKEY,
7041          SUBJKEYINIT, SUBJECTTEXT, SUBJKEYTEXT, and SUBJKEYINITTEXT. You
7042          may color the subject text in the MESSAGE INDEX screen
7043          differently by using the Index Subject Color and the Index
7044          Opening Color. options available from the Setup Kolor screen.
7045
7046   FROM
7047          This token represents the personal name (or email address if the
7048          name is unavailable) of the person specified in the message's
7049          "From:" header field. You may color the from text in the MESSAGE
7050          INDEX screen differently by using the Index From Color option
7051          available from the Setup Kolor screen.
7052
7053   ADDRESS
7054          This is similar to the "FROM" token, only it is always the email
7055          address, never the personal name. For example, "mailbox@domain".
7056
7057   MAILBOX
7058          This is the same as the "ADDRESS" except that the domain part of
7059          the address is left off. For example, "mailbox".
7060
7061   SENDER
7062          This token represents the personal name (or email address) of
7063          the person listed in the message's "Sender:" header field.
7064
7065   TO
7066          This token represents the personal names (or email addresses if
7067          the names are unavailable) of the persons specified in the
7068          message's "To:" header field.
7069
7070   NEWSANDTO
7071          This token represents the newsgroups from the message's
7072          "Newsgroups:" header field _and_ the personal names (or email
7073          addresses if the names are unavailable) of the persons specified
7074          in the message's "To:" header field.
7075
7076   TOANDNEWS
7077          Same as "NEWSANDTO" except in the opposite order.
7078
7079   NEWS
7080          This token represents the newsgroups from the message's
7081          "Newsgroups:" header field.
7082
7083   CC
7084          This token represents the personal names (or email addresses if
7085          the names are unavailable) of the persons specified in the
7086          message's "Cc:" header field.
7087
7088   RECIPS
7089          This token represents the personal names (or email addresses if
7090          the names are unavailable) of the persons specified in both the
7091          message's "To:" header field and the message's "Cc:" header
7092          field.
7093
7094   NEWSANDRECIPS
7095          This token represents the newsgroups from the message's
7096          "Newsgroups:" header field _and_ the personal names (or email
7097          addresses if the names are unavailable) of the persons specified
7098          in the message's "To:" and "Cc:" header fields.
7099
7100   RECIPSANDNEWS
7101          Same as "NEWSANDRECIPS" except in the opposite order.
7102
7103   INIT
7104          This token represents the initials from the personal name of the
7105          person specified in the message's "From:" header field. If there
7106          is no personal name, it is blank.
7107
7108   DATE
7109          This token represents the date on which the message was sent,
7110          according to the "Date" header field. It has the format MMM DD.
7111          For example, "Oct 23". The feature convert-dates-to-localtime,
7112          which adjusts for the timezone the message was sent from, may
7113          have an affect on the value of this token as well as the values
7114          of all of the other DATE or TIME tokens. Some of the DATE and
7115          TIME tokens are displayed in a locale-specific way unless the
7116          option Disable-Index-Locale-Dates is set.
7117
7118   SMARTDATE
7119          This token represents the date on which the message was sent,
7120          according to the "Date" header field. It is "Today" if the
7121          message was sent today, "Yesterday" for yesterday, "Wednesday"
7122          if it was last Wednesday, and so on. If the message is from last
7123          year and is more than six months old it includes the year, as
7124          well. There is no adjustment made for different time zones, so
7125          you'll get the day the message was sent according to the time
7126          zone the sender was in. See the SMARTDATE alternatives below, as
7127          well.
7128
7129   SMARTTIME
7130          This token represents the most relevant elements of the date on
7131          which the message was sent (according to the "Date" header
7132          field), in a compact form. If the message was sent today, only
7133          the time is used (e.g. "9:22am", "10:07pm"); if it was sent
7134          during the past week, the day of the week and the hour are used
7135          (e.g. "Wed09am", "Thu10pm"); other dates are given as date,
7136          month, and year (e.g. "23Aug00", "9Apr98"). There is no
7137          adjustment made for different time zones, so you'll get the
7138          day/time the message was sent according to the time zone the
7139          sender was in.
7140
7141   SMARTDATETIME
7142          This is a combination of SMARTDATE and SMARTTIME. It is
7143          SMARTDATE unless the SMARTDATE value is "Today", in which case
7144          it is SMARTTIME. See the SMARTDATETIME alternatives below, as
7145          well.
7146
7147   DATEISO
7148          This token represents the date on which the message was sent,
7149          according to the "Date" header field. It has the format
7150          YYYY-MM-DD. For example, "1998-10-23".
7151
7152   SHORTDATEISO
7153          This token represents the date on which the message was sent,
7154          according to the "Date" header field. It has the format
7155          YY-MM-DD. For example, "98-10-23".
7156
7157   SHORTDATE1
7158          This token represents the date on which the message was sent,
7159          according to the "Date" header field. It has the format
7160          MM/DD/YY. For example, "10/23/98".
7161
7162   SHORTDATE2
7163          This token represents the date on which the message was sent,
7164          according to the "Date" header field. It has the format
7165          DD/MM/YY. For example, "23/10/98".
7166
7167   SHORTDATE3
7168          This token represents the date on which the message was sent,
7169          according to the "Date" header field. It has the format
7170          DD.MM.YY. For example, "23.10.98".
7171
7172   SHORTDATE4
7173          This token represents the date on which the message was sent,
7174          according to the "Date" header field. It has the format
7175          YY.MM.DD. For example, "98.10.23".
7176
7177   LONGDATE
7178          This token represents the date on which the message was sent,
7179          according to the "Date" header field. It has the format MMM DD,
7180          YYYY. For example, "Oct 23, 1998".
7181
7182   SMARTDATE alternatives
7183          There are several versions of SMARTDATE which are all the same
7184          except for the way they format dates far in the past. SMARTDATE
7185          formats the date using the information from your locale settings
7186          to format the date string. It may end up formatting dates so
7187          that they look like DATEISO tokens, or SHORTDATE2 tokens, or
7188          something else entirely. The feature convert-dates-to-localtime
7189          may have an affect on the values of these tokens. If you want
7190          more control you may use one of the following.
7191
7192        SMARTDATE
7193                If the option Disable-Index-Locale-Dates is not set then
7194                this will be locale specific. Control this with the
7195                LC_TIME locale setting on a UNIX system. On Windows the
7196                Regional Options control panel may be used to set the
7197                Short date format. At the programming level, the strftime
7198                routine is what _Alpine_ uses to print the date. If the
7199                Disable-Index-Locale-Dates option is set then this is
7200                equivalent to SMARTDATES1.
7201
7202        SMARTDATEISO
7203                DATEISO format. See text above.
7204
7205        SMARTDATESHORTISO
7206                SHORTDATEISO format.
7207
7208        SMARTDATES1
7209                SHORTDATE1 format.
7210
7211        SMARTDATES2
7212                SHORTDATE2 format.
7213
7214        SMARTDATES3
7215                SHORTDATE3 format.
7216
7217        SMARTDATES4
7218                SHORTDATE4 format.
7219
7220   SMARTDATETIME alternatives
7221          There are several versions of SMARTDATETIME which are all very
7222          similar. The ones which end in 24 use a 24-hour clock for
7223          Today's messages instead of a 12-hour clock. The other variation
7224          is for the way they format dates far in the past. SMARTDATETIME
7225          and SMARTDATETIME24 format the date using the information from
7226          your locale settings to format the date string. It may end up
7227          formatting dates so that they look like DATEISO tokens, or
7228          SHORTDATE2 tokens, or something else entirely. The feature
7229          convert-dates-to-localtime may have an affect on the values of
7230          these tokens. The possible choices are:
7231
7232        SMARTDATETIME
7233                Locale specific. Control this with the LC_TIME locale
7234                setting on a UNIX system. On Windows the Regional Options
7235                control panel may be used to set the Short date format. At
7236                the programming level, the strftime routine is what
7237                _Alpine_ uses to print the date.
7238
7239        SMARTDATETIME
7240                If the option Disable-Index-Locale-Dates is not set then
7241                this will be locale specific. Control this with the
7242                LC_TIME locale setting on a UNIX system. On Windows the
7243                Regional Options control panel may be used to set the
7244                Short date format. At the programming level, the strftime
7245                routine is what _Alpine_ uses to print the date. If the
7246                Disable-Index-Locale-Dates option is set then this is
7247                equivalent to SMARTDATETIMES1.
7248
7249        SMARTDATETIME24
7250                Use TIME24 for Today
7251
7252        SMARTDATETIMEISO
7253                DATEISO format. See text above.
7254
7255        SMARTDATETIMEISO24
7256                Use TIME24 for Today
7257
7258        SMARTDATETIMESHORTISO
7259                SHORTDATEISO format.
7260
7261        SMARTDATETIMESHORTISO24
7262                Use TIME24 for Today
7263
7264        SMARTDATETIMES1
7265                SHORTDATE1 format.
7266
7267        SMARTDATETIMES124
7268                Use TIME24 for Today
7269
7270        SMARTDATETIMES2
7271                SHORTDATE2 format.
7272
7273        SMARTDATETIMES224
7274                Use TIME24 for Today
7275
7276        SMARTDATETIMES3
7277                SHORTDATE3 format.
7278
7279        SMARTDATETIMES324
7280                Use TIME24 for Today
7281
7282        SMARTDATETIMES4
7283                SHORTDATE4 format.
7284
7285        SMARTDATETIMES424
7286                Use TIME24 for Today
7287
7288   DAYDATE
7289          This token represents the date on which the message was sent,
7290          according to the "Date" header field. It looks like "Sat, 23 Oct
7291          1998". This token is never converted in any locale-specific way.
7292
7293   PREFDATE
7294          This token represents the date on which the message was sent,
7295          according to the "Date" header field. It is your operating
7296          system's idea of the preferred date representation for the
7297          current locale. Internally it uses the %x version of the date
7298          from the strftime routine.
7299
7300   PREFTIME
7301          This token represents the time at which the message was sent,
7302          according to the "Date" header field. It is the preferred time
7303          representation for the current locale. Internally it uses the %X
7304          version of the time from the strftime routine.
7305
7306   PREFDATETIME
7307          This token represents the date and time at which the message was
7308          sent, according to the "Date" header field. It is the preferred
7309          date and time representation for the current locale. Internally
7310          it uses the %c version of the time from the strftime routine.
7311
7312   DAY
7313          This token represents the day of the month on which the message
7314          was sent, according to the "Date" header field. For example,
7315          "23" or "9".
7316
7317   DAY2DIGIT
7318          This token represents the day of the month on which the message
7319          was sent, according to the "Date" header field. For example,
7320          "23" or "09". It is always 2 digits.
7321
7322   DAYORDINAL
7323          This token represents the ordinal number which is the day of the
7324          month on which the message was sent, according to the "Date"
7325          header field. For example, "23rd" or "9th".
7326
7327   DAYOFWEEK
7328          This token represents the day of the week on which the message
7329          was sent, according to the "Date" header field. For example,
7330          "Sunday" or "Wednesday".
7331
7332   DAYOFWEEKABBREV
7333          This token represents the day of the week on which the message
7334          was sent, according to the "Date" header field. For example,
7335          "Sun" or "Wed".
7336
7337   MONTHABBREV
7338          This token represents the month the message was sent, according
7339          to the "Date" header field. For example, "Oct".
7340
7341   MONTHLONG
7342          This token represents the month in which the message was sent,
7343          according to the "Date" header field. For example, "October".
7344
7345   MONTH
7346          This token represents the month in which the message was sent,
7347          according to the "Date" header field. For example, "10" or "9".
7348
7349   MONTH2DIGIT
7350          This token represents the month in which the message was sent,
7351          according to the "Date" header field. For example, "10" or "09".
7352          It is always 2 digits.
7353
7354   YEAR
7355          This token represents the year the message was sent, according
7356          to the "Date" header field. For example, "1998" or "2001".
7357
7358   YEAR2DIGIT
7359          This token represents the year the message was sent, according
7360          to the "Date" header field. For example, "98" or "01". It is
7361          always 2 digits.
7362
7363   TIME24
7364          This token represents the time at which the message was sent,
7365          according to the "Date" header field. There is no adjustment
7366          made for different time zones, so you'll get the time the
7367          message was sent according to the time zone the sender was in.
7368          It has the format HH:MM. For example, "17:28".
7369
7370   TIME12
7371          This token represents the time at which the message was sent,
7372          according to the "Date" header field. This time is for a 12 hour
7373          clock. It has the format HH:MMpm. For example, "5:28pm" or
7374          "11:13am".
7375
7376   TIMEZONE
7377          This token represents the numeric timezone from the "Date"
7378          header field. It has the format [+-]HHMM. For example, "-0800".
7379
7380  _Tokens Available Only for Index-Format_
7381
7382   MSGNO
7383          This token represents the message's current position in the
7384          folder which, of course, may change as the folder is sorted or
7385          new mail arrives.
7386
7387   STATUS
7388          This token represents a three character wide field displaying
7389          various aspects of the message's state. The first character is
7390          either blank, a '*' for message marked Important, or a '+'
7391          indicating a message addressed directly to you (as opposed to
7392          your having received it via a mailing list, for example). When
7393          the feature mark-for-cc is set, if the first character would
7394          have been blank then it will instead be a '-' if the message is
7395          cc'd to you. The second character is typically blank, though the
7396          arrow cursor may occupy it if either the assume-slow-link or the
7397          force-arrow-cursor feature is set (or you actually are on a slow
7398          link). The third character is either D (Deleted), A (Answered),
7399          N (New), or blank.
7400
7401          If you are using a threaded view of the index and this message
7402          is at the top of a collapsed portion of a thread, then this
7403          token refers to all of the messages in the collapsed portion of
7404          the thread instead of just the top message. The first character
7405          will be a '*' if _any_ of the messages in the thread are marked
7406          Important, else a '+' if any of the messages are addressed to
7407          you, else a '-' if any of the messages are cc'd to you. The
7408          third character will be a 'D' if _all_ of the messages in the
7409          collapsed thread are marked deleted, an 'A' if _all_ of the
7410          messages in the collapsed thread are marked answered, it will be
7411          an 'N' if any of the messages are undeleted and unseen, and it
7412          will be blank otherwise.
7413
7414   FULLSTATUS
7415          This token represents a less abbreviated alternative to the
7416          "STATUS" token. It is six characters wide. The first character
7417          is '+', '-', or blank, the second blank, the third either '*' or
7418          blank, the fourth N or blank, the fifth A or blank, and the
7419          sixth character is either D or blank.
7420
7421          If you are using a threaded view of the index and this message
7422          is at the top of a collapsed portion of a thread, then this
7423          token refers to all of the messages in the collapsed portion of
7424          the thread instead of just the top message. The first character
7425          is '+', '-', or blank depending on whether _any_ of the messages
7426          in the collapsed thread are addressed to you or cc'd to you. The
7427          third character will be '*' if any of the messages are marked
7428          Important. The fourth character will be 'N' if all of the
7429          messages in the thread are New, else 'n' if some of the messages
7430          in the thread are New, else blank. The fifth character will be
7431          'A' or 'a' or blank, and the sixth character will be 'D' or 'd'
7432          or blank.
7433
7434   IMAPSTATUS
7435          This token represents an even less abbreviated alternative to
7436          the "STATUS" token. It differs from "FULLSTATUS" in only the
7437          fourth character which is an 'N' if the message is new to this
7438          folder since the last time it was opened _and_ it has not been
7439          viewed, an 'R' (Recent) if the message is new to the folder and
7440          has been viewed, a 'U' (Unseen) if the message is not new to the
7441          folder since it was last opened _but_ has not been viewed, or a
7442          blank if the message has been in the folder since it was last
7443          opened and has been viewed.
7444
7445          If you are using a threaded view of the index and this message
7446          is at the top of a collapsed portion of a thread, then the
7447          fourth character will be 'N' if all of the messages in the
7448          thread are unseen and recent; else 'n' if some of the messages
7449          in the thread are unseen and recent; else 'U' if all of the
7450          messages in the thread are unseen and not recent; else 'u' if
7451          some of the messages in the thread are unseen and not recent;
7452          else 'R' if all of the messages in the thread are seen and
7453          recent; else 'r' if some of the messages in the thread are seen
7454          and recent; else blank.
7455
7456   SHORTIMAPSTATUS
7457          This is the same as the last four of the six characters of
7458          IMAPSTATUS, so the '+' To Me information will be missing.
7459
7460   SIZE
7461          This token represents the total size, in bytes, of the message.
7462          If a "K" (Kilobyte) follows the number, the size is
7463          approximately 1,000 times that many bytes (rounded to the
7464          nearest 1,000). If an "M" (Megabyte) follows the number, the
7465          size is approximately 1,000,000 times that many bytes. Commas
7466          are not used in this field. This field is seven characters wide,
7467          including the enclosing parentheses. Sizes are rounded when "K"
7468          or "M" is present. The progression of sizes used looks like:
7469
7470           0 1 ... 9999 10K ... 999K 1.0M ... 99.9M 100M ... 2000M
7471
7472   SIZECOMMA
7473          This token represents the total size, in bytes, of the message.
7474          If a "K" (Kilobyte) follows the number, the size is
7475          approximately 1,000 times that many bytes (rounded to the
7476          nearest 1,000). If an "M" (Megabyte) follows the number, the
7477          size is approximately 1,000,000 times that many bytes. Commas
7478          are used if the number shown is 1,000 or greater. The SIZECOMMA
7479          field is one character wider than the SIZE field. Sizes are
7480          rounded when "K" or "M" is present. The progression of sizes
7481          used looks like:
7482
7483      0 1 ... 99,999 100K ... 9,999K 10.0M ... 999.9M 1,000M ... 2,000M
7484
7485   KSIZE
7486          This token represents the total size of the message, expressed
7487          in kilobytes or megabytes, as most appropriate. These are 1,024
7488          byte kilobytes and 1,024 x 1,024 byte megabytes. The progression
7489          of sizes used looks like:
7490
7491                0K 1K ... 1023K 1.0M ... 99.9M 100M ... 2047M
7492
7493   SIZENARROW
7494          This token represents the total size, in bytes, of the message.
7495          If a "K" (Kilobyte) follows the number, the size is
7496          approximately 1,000 times that many bytes. If an "M" (Megabyte)
7497          follows the number, the size is approximately 1,000,000 times
7498          that many bytes. If a "G" (Gigabyte) follows the number, the
7499          size is approximately 1,000,000,000 times that many bytes. This
7500          field uses only five characters of screen width, including the
7501          enclosing parentheses. The progression of sizes used looks like:
7502
7503       0 1 ... 999 1K ... 99K .1M ... .9M 1M ... 99M .1G ... .9G 1G 2G
7504
7505   DESCRIPSIZE
7506          This token is intended to represent a more useful description of
7507          the message than just its size, but it isn't very useful at this
7508          point. The plus sign in this view means there are attachments.
7509          Note that including this token in the "Index-Format" could slow
7510          down the display a little while _Alpine_ collects the necessary
7511          information.
7512
7513   SUBJKEY
7514          This token is the same as the SUBJECT token unless keywords are
7515          set for the message. In that case, a list of keywords enclosed
7516          in braces will be prepended to the subject of the message. Only
7517          those keywords that you have defined in your Keywords option in
7518          Setup/Config are considered in the list. In other words,
7519          keywords that have been set by some other means, perhaps by
7520          another email program, won't show up unless included in
7521          Keywords. Having this set in the Index-Format will also cause
7522          the keywords to be prepended to the subject in the MESSAGE TEXT
7523          screen. If you have given a keyword a nickname (keywords), that
7524          nickname is displayed instead of the actual keyword. The
7525          keyword-surrounding-chars option may be used to modify this
7526          token slightly. It is also possible to color keywords in the
7527          index using the Setup/Kolor screen.
7528
7529   SUBJKEYINIT
7530          This token is the same as the SUBJKEY token except that instead
7531          of prepending a list of keywords to the subject, a list of first
7532          initials of keywords will be prepended instead. For example, if
7533          a message has the keywords _Work_ and _Now_ set (or Work and Now
7534          are the _Alpine_ nicknames of keywords which are set) then the
7535          SUBJKEY token would cause a result like
7536
7537                          {Work Now} actual subject
7538
7539          whereas the SUBJKEYINIT token would give
7540
7541                             {WN} actual subject
7542
7543          Only those keywords that you have defined in your Keywords
7544          option in Setup/Config are considered in the list. In other
7545          words, keywords that have been set by some other means, perhaps
7546          by another email program, won't show up unless included in
7547          Keywords. The keyword-surrounding-chars option may be used to
7548          modify this token slightly. It is also possible to color
7549          keywords in the index using the Setup/Kolor screen.
7550
7551   SUBJECTTEXT
7552          Same as SUBJECT but if there is room in the Subject field for
7553          more text, the opening part of the text of the message is
7554          displayed after the subject. The time needed to fetch the text
7555          may cause a performance problem which can, of course, be avoided
7556          by using the SUBJECT version of the Subject instead. You may
7557          color this opening text differently by using the Index Opening
7558          Color option available from the Setup Kolor screen. You may
7559          adjust the characters that are displayed between the Subject and
7560          the opening text with the option Opening-Text-Separator-Chars.
7561
7562   SUBJKEYTEXT
7563          Same as SUBJKEY but with the opening message text.
7564
7565   SUBJKEYINITTEXT
7566          Same as SUBJKEYINIT but with the opening message text.
7567
7568   OPENINGTEXT
7569          This is similar to SUBJECTTEXT. Instead of combining the Subject
7570          and the opening text in a single field in the index screen this
7571          token allows you to allocate a separate column just for the
7572          opening text of the message. The time needed to fetch this text
7573          may cause a performance problem. You may color this opening text
7574          differently by using the Index Opening Color option available
7575          from the Setup Kolor screen.
7576
7577   OPENINGTEXTNQ
7578          This is very similar to OPENINGTEXT. The NQ stands for No
7579          Quotes. The only difference is that quoted text (lines beginning
7580          with >) is deleted. For some messages this may be confusing. For
7581          example, a message might have a line preceding some quoted text
7582          that reads something like "On May 8th person A said." That no
7583          longer makes sense after the quoted text is deleted and it will
7584          appear that person A said whatever the text after the quote is,
7585          even though that is really person B talking.
7586
7587   KEY
7588          This is a space-delimited list of keywords that are set for the
7589          message. Only those keywords that you have defined in your
7590          Keywords option in Setup/Config are considered in the list. In
7591          other words, keywords that have been set by some other means,
7592          perhaps by another email program, won't show up unless included
7593          in Keywords. If you have given a keyword a nickname that
7594          nickname is displayed instead of the actual keyword. It is also
7595          possible to color keywords in the index using the Setup/Kolor
7596          screen. This token defaults to an arbitrary width of 5. You
7597          should set it to whatever width suits you using something like
7598          KEY(17) in the Index-Format.
7599
7600   KEYINIT
7601          This is a list of keyword initials that are set for the message.
7602          If you have given a keyword a nickname the initial of that
7603          nickname is displayed instead of the initial of the actual
7604          keyword. It is also possible to color keyword initials in the
7605          index using the Setup/Kolor screen. This token defaults to an
7606          arbitrary width of 2. You should set it to whatever width suits
7607          you using something like KEYINIT(3) in the Index-Format.
7608
7609   PRIORITY
7610          The X-Priority header is a non-standard header that is used in a
7611          somewhat standard way by many mail programs. _Alpine_ expects
7612          the value of this header to be a digit with a value from 1 to 5,
7613          with 1 being the highest priority and 5 the lowest priority.
7614          Since this priority is something that the sender sets it is only
7615          an indication of the priority that the sender attaches to the
7616          mail and it is therefore almost totally unreliable for use as a
7617          filtering criterion. This token will display the numeric value
7618          of the priority if it is between 1 and 5. It will be suppressed
7619          (blank) if the value is 3, which is normal priority. It is also
7620          possible to set the color of the PRIORITY field. By default the
7621          token is colored the same as the index line it is part of. You
7622          may set it to be another color with the Index Priority Colors
7623          options available from the Setup Kolor screen.
7624
7625   PRIORITYALPHA
7626          This is a more verbose interpretation of the X-Priority field.
7627          Once again nothing is displayed unless the value of the field is
7628          1, 2, 4, or 5. The values displayed for those values are:
7629
7630          1 Highest
7631          2 High
7632          4 Low
7633          5 Lowest
7634
7635          You may color this token with the Index Priority Colors options.
7636
7637   PRIORITY!
7638          This is a one character, non-numeric version of the X-Priority
7639          field. If the value of the X-Priority header is 1 or 2 an
7640          exclamation point is displayed. If the value is 4 or 5 a "v"
7641          (think down arrow) is displayed. You may color this token with
7642          the Index Priority Colors options.
7643
7644   ATT
7645          This is a one column wide field which represents the number of
7646          attachments a message has. It will be blank if there are no
7647          attachments, a single digit for one to nine attachments, or an
7648          asterisk for more than nine. Note that including this token in
7649          the "Index-Format" could slow down the display a little while
7650          _Alpine_ collects the necessary information.
7651
7652   FROMORTO
7653          This token represents _either_ the personal name (or email
7654          address) of the person listed in the message's "From:" header
7655          field, _or_, if that address is yours or one of your alternate
7656          addresses, the first person specified in the message's "To:"
7657          header field with the prefix "To: " prepended. If the from
7658          address is yours and there is also no "To" address, _Alpine_
7659          will use the address on the "Cc" line. If there is no address
7660          there, either, _Alpine_ will look for a newsgroup name from the
7661          "Newsgroups" header field and put that after the "To: " prefix.
7662
7663   FROMORTONOTNEWS
7664          This is almost the same as _FROMORTO_. The difference is that
7665          newsgroups aren't considered. When a message is from you,
7666          doesn't have a To or Cc, and does have a Newsgroups header; this
7667          token will be your name instead of the name of the newsgroup
7668          (like it would be with FROMORTO).
7669
7670   TEXT
7671          This is a different sort of token. It allows you to display a
7672          label within each index line. It will be the same fixed text for
7673          each line. It is different from all the other tokens in that
7674          there is no space column displayed after this token. Instead, it
7675          is butted up against the following field. It also has a
7676          different syntax. The text to display is given following a colon
7677          after the word "TEXT". For example,
7678
7679                                  TEXT:abc=
7680
7681          would insert the literal text "abc=" (without the quotes) into
7682          the index display line. You must quote the text if it includes
7683          space characters, like
7684
7685                                TEXT:"abc = "
7686
7687   HEADER
7688          This allows you to display the text from a particular header
7689          line in the message. The syntax for this token is substantially
7690          different from all the others in order that you might be able to
7691          display a portion of the text following a particular header. The
7692          header name you are interested in is given following a colon
7693          after the word "HEADER". For example,
7694
7695                                HEADER:X-Spam
7696
7697          would display the text of the X-Spam header, if any. Like for
7698          other index tokens a width field may (and probably should)
7699          follow this.
7700
7701                              HEADER:X-Spam(10)
7702
7703          displays the first ten characters of the X-Spam header. Unlike
7704          other index tokens, the syntax for HEADER is more flexible. An
7705          optional second argument comes after a comma inside the
7706          parentheses. It specifies the "field" number. By default, the
7707          field separator is a space character. No extra space characters
7708          are allowed in the argument list.
7709
7710                             HEADER:X-Spam(10,2)
7711
7712          would display the second field, left-justified, in a 10
7713          character wide field. The second field would consist of all the
7714          text after the first space up to the next space or the end of
7715          the header. The default field number is zero, which stands for
7716          the entire line. There is also an optional third argument which
7717          is a list of field separators. It defaults to a space character.
7718          The example
7719
7720                           HEADER:X-Spam(10,2,:% )
7721
7722          would cause the field separators to be any of colon, percent, or
7723          space (there is a space character between the percent and the
7724          right parenthesis). The first field runs from the start of the
7725          header value up to the first colon, percent, or space; the
7726          second goes from there to the next; and so on. In order to use a
7727          comma character as a field separator you must escape it by
7728          preceding it with a backslash (\). The same is true of the
7729          backslash character itself. There is one further optional
7730          argument. It is an R or an L to specify right or left adjustment
7731          of the text within the field. The default is to left justify,
7732          however if you are displaying numbers you might prefer to right
7733          justify.
7734
7735          Here's an example of a SpamAssassin header. The exact look of
7736          the header will vary, but if your incoming mail contains headers
7737          that look like the following
7738
7739       X-Spam-Status: Yes, hits=10.6 tagged_above=-999.0 required=7.0
7740                                tests=BAYE...
7741
7742          you might want to display the hits value. The first field starts
7743          with the Y in Yes. To get what you're interested in you might
7744          use "=" and space as the field separators and display the third
7745          field, like
7746
7747                        HEADER:X-Spam-Status(4,3,= )
7748
7749          or maybe you would break at the dot instead
7750
7751                       HEADER:X-Spam-Status(2,2,=.,R)
7752
7753          Another example we've seen has headers that look like
7754
7755              X-Spam: Gauge=IIIIIII, Probability=7%, Report=...
7756
7757          Because there are two equals and a comma before the 7% and a
7758          comma after it, the token
7759
7760                       HEADER:X-Spam-Status(3,4,=\,,R)
7761
7762          should display the probability (for example 7% or 83%) right
7763          justified in a 3-wide field.
7764
7765   ARROW
7766          This gives an alternative way to display the current message in
7767          the MESSAGE INDEX screen. Usually the current message is
7768          indicated by the line being shown in reverse video. Instead, if
7769          the ARROW token is included in your Index-Format, the current
7770          line will include an "arrow" that looks like
7771
7772                                     ->
7773
7774          in the ARROW token's field. For all of the non-current messages,
7775          the ARROW field will be filled with blanks. If you use the
7776          fixed-field width feature the length of the "arrow" may be
7777          adjusted. The arrow will be drawn as width-1 dashes followed by
7778          a greater than sign. For example, if you use ARROW(3) you will
7779          get
7780
7781                                     -->
7782
7783          and ARROW(1) will give you just
7784
7785                                      >
7786
7787          It is also possible to set the color of the ARROW field. By
7788          default (and for non-current messages) the arrow is colored the
7789          same as the index line it is part of. You may set it to be
7790          another color with the Index Arrow Color option available from
7791          the Setup Kolor screen.
7792
7793   SCORE
7794          This gives the score of each message. This will be six columns
7795          wide to accommodate the widest possible score. You will probably
7796          want to use the Index-Format fixed-field width feature to limit
7797          the width of the field to the widest score that you use (e.g.
7798          SCORE(3) if your scores are always between 0 and 999). If you
7799          have not defined any score rules the scores will all be zero. If
7800          any of your score rules contain AllText or BodyText patterns
7801          then including SCORE in the Index-Format may slow down the
7802          display of the MESSAGE INDEX screen.
7803
7804  _Tokens Available for all but Index-Format_
7805
7806   CURNEWS
7807          This token represents the current newsgroup if there is one. For
7808          example, "comp.mail.pine".
7809
7810   MSGID
7811          This token represents the message ID of the message. This token
7812          does not work with Filter Rule folder names.
7813
7814   CURDATE
7815          This token represents the current date. It has the format MMM
7816          DD. For example, "Oct 23".
7817
7818   CURDATEISO
7819          This token represents the current date. It has the format
7820          YYYY-MM-DD. For example, "1998-10-23".
7821
7822   CURDATEISOS
7823          This token represents the current date. It has the format
7824          YY-MM-DD. For example, "98-10-23".
7825
7826   CURPREFDATE
7827          This token represents the current date. It is your operating
7828          system's idea of the preferred date representation for the
7829          current locale. Internally it uses the %x version of the date
7830          from the strftime routine.
7831
7832   CURPREFTIME
7833          This token represents the current time. It is the preferred time
7834          representation for the current locale. Internally it uses the %X
7835          version of the time from the strftime routine.
7836
7837   CURPREFDATETIME
7838          This token represents the current date and time. It is the
7839          preferred date and time representation for the current locale.
7840          Internally it uses the %c version of the time from the strftime
7841          routine.
7842
7843   CURTIME24
7844          This token represents the current time. It has the format HH:MM.
7845          For example, "17:28".
7846
7847   CURTIME12
7848          This token represents the current time. This time is for a 12
7849          hour clock. It has the format HH:MMpm. For example, "5:28pm" or
7850          "11:13am".
7851
7852   CURDAY
7853          This token represents the current day of the month. For example,
7854          "23" or "9".
7855
7856   CURDAY2DIGIT
7857          This token represents the current day of the month. For example,
7858          "23" or "09". It is always 2 digits.
7859
7860   CURDAYOFWEEK
7861          This token represents the current day of the week. For example,
7862          "Sunday" or "Wednesday".
7863
7864   CURDAYOFWEEKABBREV
7865          This token represents the current day of the week. For example,
7866          "Sun" or "Wed".
7867
7868   CURMONTH
7869          This token represents the current month. For example, "10" or
7870          "9".
7871
7872   CURMONTH2DIGIT
7873          This token represents the current month. For example, "10" or
7874          "09". It is always 2 digits.
7875
7876   CURMONTHLONG
7877          This token represents the current month. For example, "October".
7878
7879   CURMONTHABBREV
7880          This token represents the current month. For example, "Oct".
7881
7882   CURYEAR
7883          This token represents the current year. For example, "1998" or
7884          "2001".
7885
7886   CURYEAR2DIGIT
7887          This token represents the current year. For example, "98" or
7888          "01". It is always 2 digits.
7889
7890   LASTMONTH
7891          This token represents last month. For example, if this is
7892          November (the 11th month), it is equal to "10" or if this is
7893          October (the 10th month), it is "9". It is possible that this
7894          and the other tokens beginning with LASTMONTH below could be
7895          useful when used with a Filtering Rule that has the "Beginning
7896          of Month" option set.
7897
7898   LASTMONTH2DIGIT
7899          This token represents last month. For example, if this is
7900          November (the 11th month), it is equal to "10" or if this is
7901          October (the 10th month), it is "09". It is always 2 digits.
7902
7903   LASTMONTHLONG
7904          This token represents last month. For example, if this is
7905          November the value is "October".
7906
7907   LASTMONTHABBREV
7908          This token represents last month. For example, if this is
7909          November the value is "Oct".
7910
7911   LASTMONTHYEAR
7912          This token represents what the year was a month ago. For
7913          example, if this is October, 1998, it is "1998". If this is
7914          January, 1998, it is "1997".
7915
7916   LASTMONTHYEAR2DIGIT
7917          This token represents what the year was a month ago. For
7918          example, if this is October, 1998, it is "98". If this is
7919          January, 1998, it is "97".
7920
7921   LASTYEAR
7922          This token represents last year. For example, if this is 1998,
7923          it equals "1997". It is possible that this could be useful when
7924          used with a Filtering Rule that has the "Beginning of Year"
7925          option set.
7926
7927   LASTYEAR2DIGIT
7928          This token represents last year. For example, if this is 1998,
7929          it equals "97". It is always 2 digits.
7930
7931   ROLENICK
7932          This token represents the nickname of the role currently being
7933          used. If no role is being used, then no text will be printed for
7934          this token. This token does not work with Filter Rule folder
7935          names.
7936
7937  _Token Available Only for Reply-Leadin_
7938
7939   See the help for the Reply-Leadin option, to see why you might want to
7940   use this. Since the _Reply-Leadin_ contains free text this token must
7941   be surrounded by underscores when used.
7942
7943   NEWLINE
7944          This is an end of line marker.
7945
7946  _Token Available Only for Templates and Signatures_
7947
7948   CURSORPOS
7949          This token is different from the others. When it is replaced it
7950          is replaced with nothing, but it sets a _Alpine_ internal
7951          variable which tells the composer to start with the cursor
7952          positioned at the position where this token was. If both the
7953          template file and the signature file contain a "CURSORPOS"
7954          token, then the position in the template file is used. If there
7955          is a template file and neither it nor the signature file
7956          contains a "CURSORPOS" token, then the cursor is positioned
7957          after the end of the contents of the template file when the
7958          composer starts up.
7959
7960Conditional Inclusion of Text for Reply-Leadin, Signatures, and Templates
7961
7962   Conditional text inclusion may be used with the Reply-Leadin option, in
7963   signature files, and in template files used in roles. It may _not_ be
7964   used with the _Index-Format_ option.
7965
7966   There is a limited if-else capability for including text. The if-else
7967   condition is based on whether or not a given token would result in
7968   replacement text you specify. The syntax of this conditional inclusion
7969   is
7970
7971            _token_(match_this, if_matched [ , if_not_matched ] )
7972
7973   The left parenthesis must follow the underscore immediately, with no
7974   intervening space. It means the token is expanded and the results of
7975   that expansion are compared against the "match_this" argument. If there
7976   is an exact match, then the "if_matched" text is used as the
7977   replacement text. Otherwise, the "if_not_matched" text is used. One of
7978   the most useful values for the "match_this" argument is the empty
7979   string, "". In that case the expansion is compared against the empty
7980   string.
7981
7982   Here's an example to make it clearer. This text could be included in
7983   one of your template files:
7984
7985         _NEWS_("", "I'm replying to email","I'm replying to news")
7986
7987   If that is included in a template file which you are using while
7988   replying to a message (because you chose to use the role it was part
7989   of), and that message has a newsgroup header and a newsgroup in that
7990   header, then the text
7991
7992                            I'm replying to news
7993
7994   will be included in the message you are about to compose. On the other
7995   hand, if the message you are replying to does not have a newsgroup,
7996   then the text
7997
7998                            I'm replying to email
7999
8000   would be included instead. This would also work in signature files and
8001   in the "Reply-Leadin" option. If the "match_this", "if_matched", or
8002   "if_not_matched" arguments contain spaces, parentheses, or commas; they
8003   have to be quoted with double quotation marks (like in the example
8004   above). If you want to include a literal quote in the text you must
8005   escape the quote by preceding it with a backslash character. If you
8006   want to include a literal backslash character you must escape it by
8007   preceding it with another backslash.
8008
8009   The comma followed by "if_not_matched" is optional. If there is no
8010   "if_not_matched" present then no text is included if the not_matched
8011   case is true. Here's another example:
8012
8013            _NEWS_("", "", "This msg was seen in group: _NEWS_.")
8014
8015   Here you can see that tokens may appear in the arguments. The same is
8016   true for tokens with the conditional parentheses. They may appear in
8017   arguments, though you do have to be careful to get the quoting and
8018   escaping of nested double quotes correct. If this was in the signature
8019   file being used and you were replying to a message sent to
8020   comp.mail.pine the resulting text would be:
8021
8022                 This msg was seen in group: comp.mail.pine.
8023
8024   If you were replying to a message which wasn't sent to any newsgroup
8025   the resulting text would be a single blank line. The reason you'd get a
8026   blank line is because the end of the line is outside of the
8027   conditional, so is always included. If you wanted to get rid of that
8028   blank line you could do so by moving the end of line inside the
8029   conditional. In other words, it's ok to have multi-line "if_matched" or
8030   "if_not_matched" arguments. The text just continues until the next
8031   double quotation, even if it's not on the same line.
8032
8033   Here's one more (contrived) example illustrating a matching argument
8034   which is not the empty string.
8035
8036        _SMARTDATE_("Today", _SMARTDATE_, "On _DATE_") _FROM_ wrote:
8037
8038   If this was the value of your "Reply-Leadin" option and you were
8039   replying to a message which was sent today, then the value of the
8040   "Reply-Leadin" would be
8041
8042                        Today Fred Flintstone wrote:
8043
8044   But if you were replying to a message sent on Oct. 27 (and that wasn't
8045   today) you would get
8046
8047                      On Oct 27 Fred Flintstone wrote:
8048
8049Per Server Directory Configuration
8050
8051   This is only available if _Alpine_ was built with LDAP support. If
8052   that's the case, there will be a Directory option underneath the Setup
8053   command on the Main Menu. Each server that is defined there has several
8054   configuration variables which control the behavior when using it.
8055   _ldap-server_
8056          This is the name of the host where an LDAP server is running.
8057          To find out whether your organization has its own LDAP server,
8058          contact its computing support staff.
8059   _search-base_
8060          This is the search base to be used on this server. It functions
8061          as a filter by restricting your searches in the LDAP server
8062          database to the specified contents of the specified fields.
8063          Without it, searches submitted to this directory server may
8064          fail. It might be something like:
8065      O = <Your Organization Name>, C = US
8066
8067          or it might be blank. (Some LDAP servers actually ignore
8068          anything specified here.)
8069          If in doubt what parameters you should specify here, contact the
8070          maintainers of the LDAP server.
8071   _port_
8072          This is the TCP port number to be used with this LDAP server. If
8073          you leave this blank port 389 will be used.
8074   _nickname_
8075          This is a nickname to be used in displays. If you don't supply a
8076          nickname the server name from "ldap-server" will be used
8077          instead. This option is strictly for your convenience.
8078   _use-implicitly-from-composer_
8079          Set this feature to have lookups done to this server implicitly
8080          from the composer. If an address doesn't look like a
8081          fully-qualified address, it will be looked up in your address
8082          books, and if it doesn't match a nickname there, then it will be
8083          looked up on the LDAP servers which have this feature set. The
8084          lookups will also be done when using the address completion
8085          feature (TAB command) in the composer if any of the serves have
8086          this feature set. Also see the LDAP feature
8087          lookup-addrbook-contents and the Setup/Config feature
8088          ldap-result-to-addrbook-add.
8089   _lookup-addrbook-contents_
8090          Normally implicit LDAP lookups from the composer are done only
8091          for the strings you type in from the composer screen. In other
8092          words, you type in something in the To or CC field and press
8093          return, then the string is looked up. First that string is
8094          looked up in your address books. If a match is found there, then
8095          the results of that match are looked up again. If you place a
8096          string in your address book that you want to have looked up on
8097          the LDAP directory server, you need to turn on this feature. If
8098          you set this feature for a server, you almost always will also
8099          want to set the use-implicitly-from-composer feature. An example
8100          might serve to best illustrate this feature.
8101          If an LDAP lookup of "William Clinton" normally returns an entry
8102          with an address of pres@whitehouse.gov, then you might put an
8103          entry in your address book that looks like:
8104    Nickname     Address
8105    bill         "William Clinton"
8106
8107          Now, when you type "bill" into an address field in the composer
8108          _Alpine_ will find the "bill" entry in your address book. It will
8109          replace "bill" with "William Clinton". It will then search for
8110          an entry with that nickname in your address book and not find
8111          one. If this feature is set, _Alpine_ will then attempt to
8112          lookup "William Clinton" on the LDAP server and find the entry
8113          with address pres@whitehouse.gov.
8114          A better way to accomplish the same thing is probably to use the
8115          feature save-search-criteria-not-result.
8116   _save-search-criteria-not-result_
8117          Normally when you save the results of an LDAP directory lookup
8118          to your address book the _results_ of the lookup are saved. If
8119          this feature is set and the entry being saved was found on this
8120          directory server, then the search _criteria_ is saved instead of
8121          the _results_ of the search. When this address book entry is
8122          used in the future, instead of copying the results from the
8123          address book the directory lookup will be done again. This could
8124          be useful if the copied result might become stale because the
8125          data on the directory server changes (for example, the entry's
8126          email address changes). You probably don't want to set this
8127          feature if the server is at all slow or unreliable.
8128          The way this actually works is that instead of saving the email
8129          address in your address book, _Alpine_ saves enough information
8130          to look up the same directory entry again. In particular, it
8131          saves the server name and the distinguished name of the entry.
8132          It's possible that the server administrators might change the
8133          format of distinguished names on the server, or that the entry
8134          might be removed from the server. If _Alpine_ notices this, you
8135          will be warned and a backup copy of the email address will be
8136          used. You may want to create a new entry in this case, since you
8137          will get the annoying warning every time you use the old entry.
8138          You may do that by Saving the entry to a new nickname in the
8139          same address book. You will be asked whether or not you want to
8140          use the backup email address.
8141          A related feature in the Setup/Config screen is
8142          ldap-result-to-addrbook-add.
8143   _disable-ad-hoc-space-substitution_
8144          Spaces in your input are normally handled specially. Each space
8145          character is replaced by
8146     * <SPACE>
8147
8148          in the search query (but not by "* <SPACE> *"). The reason this
8149          is done is so the input string
8150     Greg Donald
8151
8152          (which is converted to "Greg* Donald") will match the names
8153          "Greg Donald", "Gregory Donald", "Greg F. Donald", and "Gregory
8154          F Donald"; but it won't match "Greg McDonald". If the
8155          "Search-Rule" you were using was "begins-with", then it would
8156          also match the name "Greg Donaldson".
8157          Turning on this feature will disable this substitution.
8158   _search-type_
8159          This affects the way that LDAP searches are done. In particular,
8160          this tells the server where to look for the string to be
8161          matched. If set to "name" then the string that is being searched
8162          for will be compared with the string in the "Name" field on the
8163          server (technically, it is the "commonname" field on the
8164          server). "Surname" means we're looking for a match in the
8165          "Surname" field on the server (actually the "sn" field).
8166          "Givenname" really is "givenname" and "email" is the electronic
8167          mail address (this is actually the field called "mail" or
8168          "electronicmail" on the server). The other three types are
8169          combinations of the types listed so far. "Name-or-email" means
8170          the string should appear in either the "name" field OR the
8171          "email" field. Likewise, "surname-or-givenname" means "surname"
8172          OR "givenname" and "sur-or-given-or-name-or-email" means the
8173          obvious thing.
8174          This search _type_ is combined with the search rule to form the
8175          actual search query.
8176          The usual default value for this option is
8177          "sur-or-given-or-name-or-email". This type of search may be slow
8178          on some servers. Try "name-or-email", which is often faster, or
8179          just "name" if the performance seems to be a problem.
8180          Some servers have been configured with different attribute names
8181          for these four fields. In other words, instead of using the
8182          attribute name "mail" for the email address field, the server
8183          might be configured to use something else, for example,
8184          "rfc822mail" or "internetemailaddress". _Alpine_ can be
8185          configured to use these different attribute names by using the
8186          four per-server configuration options:
8187          + email-attribute
8188          + name-attribute
8189          + surname-attribute
8190          + givenname-attribute
8191   _search-rule_
8192          This affects the way that LDAP searches are done. If set to
8193          "equals" then only exact matches count. "Contains" means that
8194          the string you type in is a substring of what you are matching
8195          against. "Begins-with" and "ends-with" mean that the string
8196          starts or ends with the string you type in.
8197          Spaces in your input are normally handled specially, but you can
8198          turn that special handling off with the
8199          disable-ad-hoc-space-substitution feature.
8200          The usual default value for this option is _begins-with_.
8201   _email-attribute_
8202          This is the name of the attribute which is searched for when
8203          looking for an email address. The default value for this option
8204          is "mail" or "electronicmail". If the server you are using uses
8205          a different attribute name for the email address, put that
8206          attribute name here.
8207          This will affect the search filter used if your Search-Type is
8208          one that contains a search for "email". It will also cause the
8209          attribute value matching this attribute name to be used as the
8210          email address when you look up an entry from the composer.
8211   _name-attribute_
8212          This is the name of the attribute which is searched for when
8213          looking for the name of the entry. The default value for this
8214          option is "cn", which stands for common name. If the server you
8215          are using uses a different attribute name for the name, put that
8216          attribute name here. This will affect the search filter used if
8217          your Search-Type is one that contains a search for "name".
8218   _surname-attribute_
8219          This is the name of the attribute which is searched for when
8220          looking for the surname of the entry. The default value for this
8221          option is "sn". If the server you are using uses a different
8222          attribute name for the surname, put that attribute name here.
8223          This will affect the search filter used if your Search-Type is
8224          one that contains a search for "surname".
8225   _givenname-attribute_
8226          This is the name of the attribute which is searched for when
8227          looking for the given name of the entry. The default value for
8228          this option is "givenname". If the server you are using uses a
8229          different attribute name for the given name, put that attribute
8230          name here. This will affect the search filter used if your
8231          Search-Type is one that contains a search for "givenname".
8232   _timelimit_
8233          This places a limit on the number of seconds the LDAP search
8234          will continue. The default is 30 seconds. A value of 0 means no
8235          limit. Note that some servers may place limits of their own on
8236          searches.
8237   _sizelimit_
8238          This places a limit on the number of entries returned by the
8239          LDAP server. A value of 0 means no limit. The default is 0. Note
8240          that some servers may place limits of their own on searches.
8241   _custom-search-filter_
8242          This one is for advanced users only! If you define this, then
8243          the search-type and search-rule defined are both ignored.
8244          However, the feature disable-ad-hoc-space-substitution is still
8245          in effect. That is, the space substitution will take place even
8246          in a custom filter unless you disable it.
8247          If your LDAP service stops working and you suspect it might be
8248          because of your custom filter, just delete this filter and try
8249          using the _search-type_ and _search-rule_ instead. Another
8250          option that sometimes causes trouble is the search-base option.
8251          This variable may be set to the string representation of an LDAP
8252          search filter (see RFC1960). In the places where you want the
8253          address string to be substituted in, put a '%s' in this filter
8254          string. Here are some examples:
8255          A "Search-Type" of "name" with "Search-Rule" of "begins-with" is
8256          equivalent to the "custom-search-filter"
8257     (cn=%s*)
8258
8259          When you try to match against the string "string" the program
8260          replaces the "%s" with "string" (without the quotes). You may
8261          have multiple "%s"'s and they will all be replaced with the
8262          string. There is a limit of 10 "%s"'s.
8263          A "Search-Type" of "name-or-email" with "Search-Rule" of
8264          "contains" is equivalent to
8265     (|(cn=*%s*)(mail=*%s*))
8266
8267          If your server uses a different attribute _name_ than _Alpine_
8268          uses by default, (for example, it uses "rfc822mail" instead of
8269          "mail"), then you may be able to use one or more of the four
8270          attribute configuration options instead of defining a custom
8271          filter:
8272          + email-attribute
8273          + name-attribute
8274          + surname-attribute
8275          + givenname-attribute
8276
8277Color Configuration
8278
8279   If the terminal or terminal emulator you are using is capable of using
8280   color (see color-style option), or if you are using _PC-Alpine_, then
8281   it is possible to set up _Alpine_ so that various parts of the display
8282   will be shown in colors you configure. This is done using the Setup
8283   Color screen. The Setup Color screen is divided into five broad
8284   sections: Options, General Colors, Index Colors, Header Colors, and
8285   Keyword Colors. In addition to these five categories you may also color
8286   lines in the MESSAGE INDEX screen by configuring the Index Line Color.
8287
8288   Each color is defined as a foreground color (the color of the actual
8289   text) and a background color (the color of the area behind the text).
8290
8291  Color Options
8292
8293   _current-indexline-style_
8294          This option affects the colors used to display the current line
8295          in the MESSAGE INDEX screen. If you do not have Index Line
8296          Colors defined, then this option will have no effect in the
8297          index. Those Rules may be defined by going to the
8298          Setup/Rules/Indexcolor screen.
8299
8300          If the option enable-incoming-folders-checking is turned on and
8301          the Incoming Unseen Color is set to something other than the
8302          default, then this option also affects the color used to display
8303          the current folder in the Incoming FOLDER LIST screen.
8304
8305          The available options include:
8306
8307        flip-colors
8308                This is the default. If an index line is colored because
8309                it matches one of your Index Color Rules, then its colors
8310                will be reversed when it is the currently highlighted
8311                line. For example, if the line is normally red text on a
8312                blue background, then when it is the current line it will
8313                be drawn as blue text on a red background.
8314
8315                The rest of the option values all revert to this
8316                flip-colors behavior if there is no Reverse Color defined.
8317
8318        reverse
8319                With this option the Reverse color is always used to
8320                highlight the current line.
8321
8322        reverse-fg
8323                The foreground part of the Reverse Color is used to
8324                highlight the current line. If this would cause the text
8325                to be unreadable (because the foreground and background
8326                colors are the same) or if it would cause no change in the
8327                color of the index line, then the colors are flipped
8328                instead.
8329
8330                Some people think this works particularly well if you use
8331                different background colors to emphasize "interesting"
8332                lines, but always with the same Normal foreground color,
8333                and you use a different foreground color for the Reverse
8334                Color.
8335
8336        reverse-fg-no-ambiguity
8337                With the "reverse-fg" rule above, it is possible that the
8338                resulting color will be exactly the same as the regular
8339                Reverse Color. That can lead to some possible confusion
8340                because an "interesting" line which is the current line
8341                will be displayed exactly the same as a non-interesting
8342                line which is current. You can't tell whether the line is
8343                just a regular current line or if it is an "interesting"
8344                current line by looking at the color. Setting the option
8345                to this value removes that ambiguity. It is the same as
8346                the "reverse-fg" setting unless the resulting interesting
8347                current line would look just like a non-interesting
8348                current line. In that case, the interesting line's colors
8349                are simply flipped (like in the default behavior).
8350
8351                As an alternative way to preserve the line's
8352                interestingness in this case, you may find that using both
8353                a different foreground and a different background color
8354                for the interesting line will help.
8355
8356        reverse-bg
8357                The background part of the Reverse Color is used to
8358                highlight the current line. If this would cause the text
8359                to be unreadable (because the foreground and background
8360                colors are the same) or if it would cause no change in the
8361                color of the index line, then the colors are flipped
8362                instead.
8363
8364                Some people think this works particularly well if you use
8365                different foreground colors to emphasize "interesting"
8366                lines, but always with the same Normal background color,
8367                and you use a different background color for the Reverse
8368                Color.
8369
8370        reverse-bg-no-ambiguity
8371                As with the "reverse-fg" case, the "reverse-bg" rule may
8372                also result in a color which is exactly the same as the
8373                regular Reverse Color. Setting the option to this value
8374                removes that ambiguity. It is the same as the "reverse-bg"
8375                setting unless the resulting current line has the same
8376                color as the Reverse Color. In that case, the interesting
8377                line's colors are simply flipped (like in the default
8378                behavior).
8379
8380   _titlebar-color-style_
8381          This option affects the colors used to display the titlebar (the
8382          top line on the screen) when viewing a message.
8383
8384          The available options include:
8385
8386        default
8387                The color of the titlebar will be the color you set for
8388                the Title Color. The Title Color may be set by using the
8389
8390        indexline
8391                The color of the titlebar will be the same as the color of
8392                the index line corresponding to the message being viewed.
8393                The rules which determine what color the index line will
8394                be may be set up by going to the Setup/Rules/Indexcolor
8395                screen. If the index line for a message is not colored
8396                explicitly by the Indexcolor rules, then the titlebar will
8397                be colored the same as for the "default" option above
8398                (which is not the same color that the index line itself
8399                will have).
8400
8401        reverse-indexline
8402                This is similar to the "indexline" option except the
8403                foreground and background colors from the corresponding
8404                index line will be reversed. For example, if the index
8405                line color is red letters on a white background, then the
8406                titlebar will be white letters on a red background. If the
8407                index line for a message is not colored explicitly by the
8408                Indexcolor rules, then the titlebar will be colored the
8409                same as for the "default" option above (which is not the
8410                same color that the index line itself will have).
8411
8412  General Colors
8413
8414   _Normal Color_
8415          This is the color which most of the screen is painted in. By
8416          default this color is black characters on a white background.
8417   _Reverse Color_
8418          The color _Alpine_ uses for reverse video characters. Actually,
8419          the name is misleading. This used to be reverse video and so the
8420          name remains. It is still used to highlight certain parts of the
8421          screen but the color may be set to whatever you'd like.
8422   _Title Color_
8423          The color _Alpine_ uses for the titlebar (the top line on the
8424          screen). By default, the Title Color is black characters on a
8425          yellow background. The actual titlebar color may be different
8426          from the Title Color if the option titlebar-color-style is set
8427          to some value other than the default. It may also be different
8428          if the current folder is closed and the Title Closed Color is
8429          set to something different from the Title Color.
8430   _Title-closed Color_
8431          The color _Alpine_ uses for the titlebar (the top line on the
8432          screen) when the current folder is closed. By default, the Title
8433          Color Closed Color is white characters on a red background.
8434   _Status Color_
8435          The color _Alpine_ uses for messages written to the status
8436          message line near the bottom of the screen. By default, the
8437          Status Color is the same as the Reverse Color.
8438   _KeyLabel Color_
8439          The color _Alpine_ uses for the labels of the commands in the
8440          two-line menu at the bottom of the screen. The label is the long
8441          name, for example, "PrevMsg". By default, the KeyLabel Color is
8442          the same as the Normal Color.
8443          WARNING: Some terminal emulators have the property that the
8444          screen will scroll down one line whenever a character is written
8445          to the character cell in the lower right corner of the screen.
8446          _Alpine_ can usually avoid writing a character in that corner of
8447          the screen. However, if you have defined a KeyLabel Color then
8448          _Alpine_ does have to write a character in that cell in order to
8449          color the cell correctly. If you find that your display
8450          sometimes scrolls up a line this could be the problem. The most
8451          obvious symptom is probably that the titlebar at the top of the
8452          screen scrolls off the screen. Try setting KeyLabel Color to
8453          Default to see if that fixes the problem.
8454   _KeyName Color_
8455          The color _Alpine_ uses for the names of the commands in the
8456          two-line menu at the bottom of the screen. The KeyName is the
8457          shorter name in the menu. For example, the "W" before the
8458          "WhereIs". By default, the KeyName Color is the same as the
8459          Normal Color.
8460   _Selectable-item Color_
8461          The color _Alpine_ uses for displaying selectable items, such as
8462          URLs. By default, the Selectable-item Color is the same as the
8463          Normal Color, except it is also Bold.
8464   _Meta-message Color_
8465          The color _Alpine_ uses in the MESSAGE TEXT screen for messages
8466          to you that aren't part of the message itself. By default, the
8467          Meta-Message Color is black characters on a yellow background.
8468   _Quote Colors_
8469          The colors _Alpine_ uses for coloring quoted text in the MESSAGE
8470          TEXT screen. If a line begins with a > character (or space
8471          followed by >) it is considered a quote. That line will be given
8472          the Quote1 Color (first level quote). If there is a second level
8473          of quoting then the Quote2 Color will be used. _Alpine_
8474          considers there to be a second level of quoting if that first >
8475          is followed by another > (or space followed by >). If there are
8476          characters other than whitespace and > signs, then it isn't
8477          considered another level of quoting. Similarly, if there is a
8478          third level of quoting the Quote3 Color will be used. If there
8479          are more levels after that the Quote Colors are reused. If you
8480          define all three colors then it would repeat like Color1,
8481          Color2, Color3, Color1, Color2, Color3, ... If you only define
8482          the first two it would be Color1, Color2, Color1, Color2, ... If
8483          you define only the Quote1 Color, then the entire quote would be
8484          that color regardless of the quoting levels. By default, the
8485          Quote1 Color is black characters on a greenish-blue background;
8486          the Quote2 Color is black characters on a dull yellow
8487          background; and the Quote3 Color is black characters on a green
8488          background.
8489   _Incoming Unseen Color_
8490          If the option enable-incoming-folders-checking is turned on it
8491          is possible to highlight the folders that contain unseen
8492          messages by coloring them with this color. By default, this is
8493          the same as the Normal Color and no highlighting is done.
8494          Usually the "current" folder (the folder the cursor is on) is
8495          highlighted using reverse video. If the current folder is
8496          colored because it contains unseen messages then the color used
8497          to show that it is also the current folder is controlled by the
8498          current-indexline-style feature at the top of the SETUP COLOR
8499          screen.
8500   _Signature Color_
8501          The color _Alpine_ uses for coloring the signature in the
8502          MESSAGE TEXT screen. According to USENET conventions, the
8503          signature is defined as the paragraph following the "sigdashes",
8504          that is, the special line consisting of the three characters
8505          "-- " (i.e., dash, dash, and space). _Alpine_ allows for one
8506          empty line right after the sigdashes to be considered as part of
8507          the signature. By default, the Signature Color is blue
8508          characters on a white background.
8509   _Prompt Color_
8510          The color _Alpine_ uses for confirmation prompts and questions
8511          which appear in the status message line near the bottom of the
8512          screen. By default, the Prompt Color is the same as the Reverse
8513          Color.
8514
8515  Index Colors
8516
8517   You may add color to the single character symbols which give the status
8518   of each message in the MESSAGE INDEX. By default the characters "+",
8519   "*", "D", "A", and "N" show up near the left hand side of the screen,
8520   depending on whether the message is addressed to you, and whether the
8521   message is marked Important, is Deleted, is Answered, or is New. You
8522   may set the color of those symbols. By default, all of these symbols
8523   are drawn with the same color as the rest of the index line they are a
8524   part of.
8525
8526   Besides coloring the message status symbols, you may also color the
8527   entire index line. This is done by using the Index Line Color
8528   configuration screen. It is also possible to color (keywords in the
8529   index using the Setup/Kolor screen (Keyword Colors); the ARROW cursor;
8530   the Subject using Index Subject Color; the From using Index From Color;
8531   and the Index Opening text.
8532
8533   _Index-to-me Symbol Color_
8534          The color used for drawing the "+" symbol which signifies a
8535          message is addressed directly to you.
8536   _Index-important Symbol Color_
8537          The color used for drawing the "*" symbol which signifies a
8538          message has been flagged Important.
8539   _Index-deleted Symbol Color_
8540          The color used for drawing the "D" symbol which signifies a
8541          message has been marked Deleted.
8542   _Index-answered Symbol Color_
8543          The color used for drawing the "A" symbol which signifies a
8544          message has been answered.
8545   _Index-new Symbol Color_
8546          The color used for drawing the "N" symbol which signifies a
8547          message is New.
8548   _Index-recent Symbol Color_
8549          The color used for drawing the "R" symbol which signifies a
8550          message is Recent (only visible if the "IMAPSTATUS" or
8551          "SHORTIMAPSTATUS" token is part of the index-format option).
8552   _Index-unseen Symbol Color_
8553          The color used for drawing the "U" symbol which signifies a
8554          message is Unseen (only visible if the "IMAPSTATUS" or
8555          "SHORTIMAPSTATUS" token is part of the Index-Format option).
8556   _Index-priority Symbol Colors_
8557          The colors used for drawing the tokens "PRIORITY",
8558          "PRIORITYALPHA", and "PRIORITY!" when these are configured as
8559          part of the Index-Format option. You may set the color used to
8560          draw these tokens by use of the colors Index High Priority
8561          Symbol Color and Index Low Priority Symbol Color. This coloring
8562          takes place for all but the current index line, and the Priority
8563          Color appears to be in front of any color from an Index Color
8564          Rule. If the priority has a value of 1 or 2 the High Priority
8565          color will be used, and if the value is 4 or 5 the Low Priority
8566          color will be used.
8567          If you don't set these colors the index line will be colored in
8568          the same color as the bulk of the index line.
8569   _Index-arrow Symbol Color_
8570          The color used for drawing the "ARROW" token when it is
8571          configured as part of the Index-Format option.
8572   _Index-subject Symbol Color_
8573          You may set the color used to draw the Subject part of the index
8574          line. This coloring takes place for all but the current index
8575          line, and the Subject Color appears to be in front of any color
8576          from an Index Color Rule.
8577          If you don't set this color it will be colored in the same color
8578          as the bulk of the index line.
8579   _Index-from Symbol Color_
8580          You may set the color used to draw the From part of the index
8581          line. This coloring takes place for all but the current index
8582          line, and the From Color appears to be in front of any color
8583          from an Index Color Rule.
8584          If you don't set this color it will be colored in the same color
8585          as the bulk of the index line.
8586   _Index-opening Symbol Color_
8587          It is possible to configure the Index-Format option so that it
8588          includes the subject followed by the "opening" text of the
8589          message if there is enough space. This is done by using one of
8590          the tokens SUBJECTTEXT, SUBJKEYTEXT, or SUBJKEYINITTEXT. The
8591          color used for drawing this opening text is given by this
8592          option. The coloring happens for all but the current index line,
8593          and this opening color appears to be in front of any color from
8594          an Index Color Rule.
8595          By default the Index Opening Color is gray characters on a white
8596          background.
8597
8598   The default colors for these symbols are:
8599
8600     Index-to-me     black on cyan
8601     Index-important white on bright red
8602     Index-deleted   same as Normal Color
8603     Index-answered  bright red on yellow
8604     Index-new       white on magenta
8605     Index-recent    same as Normal Color
8606     Index-unseen    same as Normal Color
8607
8608  Header Colors
8609
8610   You may add color to the header fields in the MESSAGE TEXT screen. The
8611
8612   _Header-general Color_
8613          may be used to color all of the headers of the message.
8614
8615   It is also possible to set the colors for specific header fields, for
8616   example for the Subject or From fields, using the viewer-hdr-colors
8617   option.
8618
8619   For Header Colors, there is an additional line on the configuration
8620   screen labeled "Pattern to match". If you leave that blank, then the
8621   whole field for that header will always be colored. However, if you
8622   give a pattern to match, the coloring will only take place if there is
8623   a match for that pattern in the value of the field. For example, if you
8624   are working on a color for the Subject header and you fill in a pattern
8625   of "important", then only Subjects which contain the word "important"
8626   will be colored. For address fields like From or To, a pattern match
8627   will cause only the addresses which match the pattern to be colored.
8628
8629   If the pattern you enter is a comma-separated list of patterns, then
8630   coloring happens if any of those patterns matches.
8631
8632  Keyword Colors
8633
8634   Sets the colors _Alpine_ uses for Keyword fields in the MESSAGE INDEX
8635   screen. Keywords may be displayed as part of the Subject of a message
8636   by using the "SUBJKEY" or "SUBJKEYINIT" tokens in the Index-Format
8637   option. Keywords may also be displayed in a column of their own in the
8638   MESSAGE INDEX screen by using the "KEY" or "KEYINIT" tokens.
8639
8640   For example, you might have set up a Keyword "Work" using the Keywords
8641   option in the Setup/Config screen. You could cause that Keyword to show
8642   up as a special color by setting up the Keyword Color using this
8643   option, and then including it in the MESSAGE INDEX screen using one of
8644   the tokens listed above in the Index-Format.
8645
8646  Index Line Colors
8647
8648   You may color whole index lines by using roles. This isn't configured
8649   in the Setup Colors screen, but is configured in the Setup Rules
8650   IndexColor screen.
8651
8652Index Line Color Configuration
8653
8654   Index Line Color causes lines in the MESSAGE INDEX screen to be
8655   colored. This action is only available if your terminal is capable of
8656   displaying color and color display has been enabled with the
8657   Color-Style option. (In PC-Alpine, color is always enabled so there is
8658   no option to turn on.)
8659
8660   Each rule has a "Pattern", which is used to decide which of the rules
8661   is used; and the color which is used if the Pattern matches a
8662   particular message.
8663
8664  Rule Patterns
8665
8666   In order to determine whether or not a message matches a rule the
8667   message is compared with the rule's Pattern. These Patterns are the
8668   same for use with Roles, Filtering, Index Coloring, Scoring, Other
8669   Rules, and Search Rules, so are described in only one place, "here".
8670
8671  Index Line Color
8672
8673   This is the color that index lines are colored when there is a matching
8674   Pattern. This colors the whole index line, except possibly the status
8675   letters which may be colored separately using the Setup Kolor screen.
8676
8677Role Configuration
8678
8679   You may play different roles depending on who you are replying to. For
8680   example, if you are replying to a message addressed to _help-desk_ you
8681   may be acting as a Help Desk Worker. That role may require that you use
8682   a different return address and/or a different signature.
8683
8684   Roles are optional. If you set up roles they work like this: Each role
8685   has a set of "Uses", which indicate whether or not a role is eligible
8686   to be considered for a particular use; a "Pattern", which is used to
8687   decide which of the eligible roles is used; and a set of "Actions",
8688   which are taken when that role is used. When you reply to a message,
8689   the message you are replying to is compared with the Patterns of the
8690   roles marked as eligible for use when replying. The comparisons start
8691   with the first eligible role and keep going until there is a match. If
8692   a match is found, the matching role's Actions are taken.
8693
8694   It is also possible to set a default role and to change that role
8695   during your _Alpine_ session. When you start _Alpine_ no default role
8696   will be set. You may set or change the current default role by using
8697   the "D" command in the role selection screen. You'll see that screen
8698   while composing a message and being asked to select a role. An easy way
8699   to get to that screen is to use the Role Command to compose a message.
8700   You may find a default role useful if you normally perform the duties
8701   of one of your roles for a while, then you switch to another role and
8702   stay in the new role for another period of time. It may be easier than
8703   using the Role Command to select the role each time you compose a
8704   message.
8705
8706  Role Uses
8707
8708   There are three types of use to be configured; one for Replying, one
8709   for Forwarding, and one for Composing. These indicate whether or not
8710   you want a role to be considered when you type the Reply, Forward, or
8711   Compose commands. (The Role command is an alternate form of the Compose
8712   command, and it is not affected by these settings.) Each of these Use
8713   types has three possible values. The value "Never" means that the role
8714   will never be considered as a candidate for use with the corresponding
8715   command. For example, if you set a role's Reply Use to Never, then when
8716   you Reply to a message, the role won't even be considered. (That isn't
8717   quite true. If the message you are replying to matches some other role
8718   which requires confirmation, then there will be a ^T command available
8719   which allows you to select a role from all of your roles, not just the
8720   reply-eligible roles.)
8721
8722   The options "With confirmation" and "Without confirmation" both mean
8723   that you do want to consider this role when using the corresponding
8724   command. For either of these settings the role's Pattern will be
8725   checked to see if it matches the message. For Reply Use, the message
8726   used to compare the Patterns with is the message being replied to. For
8727   Forward Use, the message used to compare the Pattern with is the
8728   message being forwarded. For Compose Use, there is no message, so the
8729   parts of the Pattern which depend on a message (everything other than
8730   Current Folder Type) are ignored. In all cases, the Current Folder is
8731   checked if defined. If there is a match then this role will either be
8732   used without confirmation or will be the default when confirmation is
8733   asked for, depending on which of the two options is selected. If
8734   confirmation is requested, you will have a chance to choose No Role
8735   instead of the offered role, or to change the role to any one of your
8736   other roles (with the ^T command).
8737
8738  Role Patterns
8739
8740   In order to determine whether or not a message matches a role the
8741   message is compared with the Role Pattern. These Patterns are the same
8742   for use with Roles, Filtering, Index Coloring, Scoring, Other Rules,
8743   and Search Rules, so are described in only one place, "here".
8744
8745   Since header patterns, AllText patterns, and BodyText patterns which
8746   are unset are ignored, a role which has all header patterns unset, the
8747   AllText pattern unset, the BodyText pattern unset, the Score Interval
8748   unset, and the Current Folder Type set to "Any" may be used as a
8749   default role. It should be put last in the list of roles since the
8750   matching starts at the beginning and proceeds until one of the roles is
8751   a match. If no roles at all match, then _Alpine_ will use its regular
8752   methods of defining the role. If you wanted to, you could define a
8753   different "default" role for Replying, Forwarding, and Composing by
8754   setting the "Use" fields appropriately.
8755
8756  Role Actions
8757
8758   Once a role match is found, the role's Actions are taken. For each role
8759   there are several possible actions that may be defined. They are
8760   actions to set the From address, the Reply-To address, the Fcc, the
8761   Signature file, and the Template file.
8762
8763    Initialize Settings Using Role
8764
8765   This is a power user feature. You will usually want to leave this field
8766   empty. The value of this field is the nickname of another one of your
8767   roles. The Action values from that other role are used as the initial
8768   values of the Action items for this role. If you put something in any
8769   of the action fields for this role, that will override whatever was in
8770   the corresponding field of the initializer role.
8771
8772   You might use this field if the "Action" part of one of your roles is
8773   something you want to use in more than one role. Instead of filling in
8774   those action values again for each role, you may give the nickname of
8775   the role where the values are filled in. It's just a shortcut way to
8776   define Role Actions.
8777
8778   Here's an example to help explain how this works. Suppose you have a
8779   role with nickname "role1" and role1 has (among other things)
8780
8781               Set Reply-To = The Pres <president@example.com>
8782
8783   set. If in "role2" you set "Initialize settings using role" to "role1",
8784   then role2 will inherit the Set Reply-To value from role1 by default
8785   (and any of the other inheritable action values that are set). So if
8786   role2 had
8787
8788                        Set Reply-To = <No Value Set>
8789
8790   defined, the Reply-To used with role2 would be "The Pres
8791   <president@example.com>" However, if role2 had
8792
8793                Set Reply-To = VP <vicepresident@example.com>
8794
8795   defined, then the Reply-To used with role2 would be "VP
8796   <vicepresident@example.com>" instead.
8797
8798   If you wish, you may choose a nickname from your list of roles by using
8799   the "T" command. If the role you are using to initialize also has a
8800   role it initializes from, then that initialization happens first. That
8801   is, inheritance works as expected with the grandparent and
8802   great-grandparent (and so on) roles having the expected effect.
8803
8804    Set From
8805
8806   This field consists of a single address which will be used as the From
8807   address on the message you are sending. This should be a
8808   fully-qualified address like
8809
8810                           Full Name <user@domain>
8811
8812   or just
8813
8814                                 user@domain
8815
8816   If this is left blank, then the normal From address will be used.
8817
8818    Set Reply-To
8819
8820   The Reply-To address is the address used on the Reply-To line of the
8821   message you are sending. You don't need a Reply-To address unless it is
8822   different from the From address. This should be a fully-qualified
8823   address like
8824
8825                           Full Name <user@domain>
8826
8827   or just
8828
8829                                 user@domain
8830
8831   If this is left blank, then there won't be a Reply-To address unless
8832   you have configured one specially with the customized-hdrs
8833   configuration option.
8834
8835    Set Other-Hdrs
8836
8837   This field gives you a way to set values for headers besides "From" and
8838   "Reply-To". If you want to set either of those, use the specific "Set
8839   From" and "Set Reply-To" settings.
8840
8841   This field is similar to the customized-hdrs option. Each header you
8842   specify here must include the header tag ("To:", "Approved:", etc.) and
8843   may optionally include a value for that header. In order to see these
8844   headers when you compose using this role you must use the rich header
8845   command. Here's an example which shows how you might set the To
8846   address.
8847
8848                Set Other Hdrs = To: Full Name <user@domain>
8849
8850   Headers set in this way are different from headers set with the
8851   customized-hdrs option in that the value you give for a header here
8852   will replace any value that already exists. For example, if you are
8853   Replying to a message there will already be at least one address in the
8854   To header (the address you are Replying to). However, if you Reply
8855   using a role which sets the To header, that role's To header value will
8856   be used instead. The customized-hdrs headers are defaults.
8857
8858   Limitation: Because commas are used to separate the list of Other
8859   Headers, it is not possible to have the value of a header contain a
8860   comma; nor is there currently an "escape" mechanism provided to make
8861   this work.
8862
8863    Set Fcc
8864
8865   This field consists of a single folder name which will be used in the
8866   Fcc field of the message you are sending. You may put anything here
8867   that you would normally type into the Fcc field from the composer.
8868
8869   In addition, an fcc of "" (two double quotation marks) means no Fcc.
8870
8871   A blank field here means that _Alpine_ will use its normal rules for
8872   deciding the default value of the Fcc field. For many roles, perhaps
8873   most, it may make more sense for you to use the other _Alpine_
8874   facilities for setting the Fcc. In particular, if you want the Fcc to
8875   depend on who you are sending the message to then the fcc-name-rule is
8876   probably more useful. In that case, you would want to leave the Fcc
8877   field here blank. However, if you have a role that depends on who the
8878   message you are replying to was From, or what address that message was
8879   sent to; then it might make sense to set the Fcc for that role here.
8880
8881    Set LiteralSig
8882
8883   This field contains the actual text for your signature, as opposed to
8884   the name of a file containing your signature. If this is defined it
8885   takes precedence over any value set in the _Set Signature_ field.
8886
8887   This is simply a different way to store the signature. The signature is
8888   stored inside your Alpine configuration file instead of in a separate
8889   signature file. Tokens work the same way they do with _Set Signature_.
8890
8891   The two character sequence \n (backslash followed by the character n)
8892   will be used to signify a line-break in your signature. You don't have
8893   to enter the \n, but it will be visible in the CHANGE THIS ROLE RULE
8894   window after you are done editing the signature.
8895
8896    Set Signature
8897
8898   The Signature is the name of a file to be used as the signature file
8899   when this role is being used. If the filename is followed by a vertical
8900   bar (|) then instead of reading the contents of the file the file is
8901   assumed to be a program which will produce the text to be used on its
8902   standard output. The program can't have any arguments and doesn't
8903   receive any input from _Alpine_, but the rest of the processing works
8904   as if the contents came from a file.
8905
8906   Signature files may be stored remotely on an IMAP server. In order to
8907   do that you just give the file a remote name. This works just like the
8908   regular signature-file option which is configured from the
8909   Setup/Configuration screen. A remote signature file name might look
8910   like:
8911
8912                  {myimaphost.myschool.k12.wa.us}mail/sig3
8913
8914   or, if you have an SSL-capable version of _Alpine_, you might try
8915
8916         {myimaphost.myschool.k12.wa.us/user=loginname/ssl}mail/sig3
8917
8918   Once you have named the remote signature file you create its contents
8919   by using the "F" "editFile" command when the cursor is on the "Set
8920   Signature" line of the role editor.
8921
8922   Besides containing regular text, a signature file may also contain (or
8923   a signature program may produce) tokens which are replaced with text
8924   which depends on the message you are replying to or forwarding. The
8925   tokens all look like _word_ (a word surrounded by underscores). For
8926   example, if the token
8927
8928                                   _DATE_
8929
8930   is included in the text of the signature file, then when you reply to
8931   or forward a message, the token will be replaced with the actual date
8932   the message you are replying to or forwarding was sent.
8933
8934   If you use a role which has a signature file for a plain composition
8935   (that is, not a reply or forward) then there is no original message, so
8936   any tokens which depend on the message will be replaced with nothing.
8937   So if you want a signature file to be useful for new compositions it
8938   shouldn't include any of the tokens which depend on the message being
8939   replied to or forwarded.
8940
8941   The list of available tokens is here.
8942
8943   Actually, for the adventurous, there is a way to conditionally include
8944   text based on whether or not a token would result in specific
8945   replacement text. For example, you could include some text based on
8946   whether or not the _NEWS_ token would result in any newsgroups if it
8947   was used. It's explained in detail here.
8948
8949   In the very unlikely event that you want to include a literal token in
8950   a signature file, you must precede it with a backslash character. For
8951   example, to include the literal text _DATE_ you must actually use
8952   \_DATE_. It is not possible to have a literal backslash followed by an
8953   expanded token.
8954
8955   A blank field here means that _Alpine_ will use its normal rules for
8956   deciding which file (if any) to use for the signature file.
8957
8958    Set Template
8959
8960   A Template is the name of a file to be included in the message when
8961   this role is being used. The template file is a file which is included
8962   at the top of the message you are composing.
8963
8964   If the filename is followed by a vertical bar (|) then instead of
8965   reading the contents of the file the file is assumed to be a program
8966   which will produce the text to be used on its standard output. The
8967   program can't have any arguments and doesn't receive any input from
8968   _Alpine_, but the rest of the processing works as if the contents came
8969   from a file.
8970
8971   Template files may be stored remotely on an IMAP server. In order to do
8972   that you just give the file a remote name. This works just like the
8973   regular signature-file option which is configured from the
8974   Setup/Configuration screen. A remote template file name might look
8975   like:
8976
8977                 {myimaphost.myschool.k12.wa.us}mail/templ3
8978
8979   or, if you have an SSL-capable version of _Alpine_, you might try
8980
8981        {myimaphost.myschool.k12.wa.us/user=loginname/ssl}mail/templ3
8982
8983   Once you have named the remote template file you create its contents by
8984   using the "F" "editFile" command when the cursor is on the "Set
8985   Template" line of the role editor.
8986
8987   Besides containing regular text, a template file may also contain (or a
8988   template file program may produce) tokens which are replaced with text
8989   which depends on the message you are replying to or forwarding. The
8990   tokens all look like _word_ (a word surrounded by underscores). For
8991   example, if the token
8992
8993                                   _DATE_
8994
8995   is included in the text of the template file, then when you reply to or
8996   forward a message, the token will be replaced with the actual date the
8997   message you are replying to or forwarding was sent.
8998
8999   If you use a role which has a template file for a plain composition
9000   (that is, not a reply or forward) then there is no original message, so
9001   any tokens which depend on the message will be replaced with nothing.
9002   So if you want a template file to be useful for new compositions it
9003   shouldn't include any of the tokens which depend on the message being
9004   replied to or forwarded.
9005
9006   The list of available tokens is here.
9007
9008   Actually, for the adventurous, there is a way to conditionally include
9009   text based on whether or not a token would result in specific
9010   replacement text. For example, you could include some text based on
9011   whether or not the _NEWS_ token would result in any newsgroups if it
9012   was used. It's explained in detail here.
9013
9014   In the very unlikely event that you want to include a literal token in
9015   a template file, you must precede it with a backslash character. For
9016   example, to include the literal text _DATE_ you must actually use
9017   \_DATE_. It is not possible to have a literal backslash followed by an
9018   expanded token.
9019
9020   A blank field here means that _Alpine_ will not use a template file
9021   when this role is being used.
9022
9023    Use SMTP Server
9024
9025   If this field has a value, then it will be used as the SMTP server to
9026   send mail when this role is being used (unless the SMTP server variable
9027   is set in the system-wide fixed configuration file). It has the same
9028   semantics as the smtp-server variable in the Setup/Config screen. When
9029   you postpone the composition this SMTP server list will be saved with
9030   the postponed composition and it cannot be changed later. Because of
9031   that, you may want to make this a list of SMTP servers with the
9032   preferred server at the front of the list and alternate servers later
9033   in the list.
9034
9035   If any of the actions are left unset, then the action depends on what
9036   is present in the "Initialize settings using role" field. If you've
9037   listed the nickname of another one of your roles there, then the
9038   corresponding action from that role will be used here. If that action
9039   is also blank, or if there is no nickname specified, then _Alpine_ will
9040   do whatever it normally does to set these actions. This depends on
9041   other configuration options and features you've set.
9042
9043Filtering Configuration
9044
9045   The software which actually delivers mail (the stuff that happens
9046   before _Alpine_ is involved) for you is in a better position to do mail
9047   filtering than _Alpine_ itself. If possible, you may want to look into
9048   using that sort of mail filtering to deliver mail to different folders,
9049   delete it, or forward it. However, if you'd like _Alpine_ to help with
9050   this, _Alpine_'s filtering is for you.
9051
9052   Filtering is a way to automatically move certain messages from one
9053   folder to another or to delete messages. It can also be used to set
9054   message status bits (Important, Deleted, New, Answered). _Alpine_
9055   doesn't have the ability to forward mail to another address.
9056
9057   Each filtering rule has a "Pattern" and a "Filter Action". When a
9058   folder is opened, when new mail arrives in an open folder, or when mail
9059   is Expunged from a folder; each message is compared with the Patterns
9060   of your filtering rules. The comparisons start with the first rule and
9061   keep going until there is a match. If a match is found, the message may
9062   be deleted or moved, depending on the setting of the Filter Action. If
9063   the message is not deleted, it may have its status altered.
9064
9065   For efficiency, each message is usually only checked once. When new
9066   mail arrives, the new messages are checked but not the old. There are
9067   some exceptions to this rule. The expunge command will cause all
9068   messages to be rechecked, as will editing of the filtering rules.
9069
9070   _NOTE:_ When setting up a Pattern used to delete messages, it is
9071   recommended that you test the Pattern first with a "Move" folder
9072   specified in case unintended matches occur. Messages that are deleted
9073   will be removed from the folder and _unrecoverable_ from within _Alpine_
9074   after the next Expunge command or once the folder being filtered has
9075   been closed.
9076
9077  Filter Patterns
9078
9079   In order to determine whether or not a message matches a filter the
9080   message is compared with the Filter's Pattern. These Patterns are the
9081   same for use with Roles, Filtering, Index Coloring, Scoring, Other
9082   Rules, and Search Rules, so are described in only one place, "here".
9083
9084   Since filtering is a potentially destructive action, if you have a
9085   filtering Pattern with nothing other than Current Folder Type set, that
9086   filtering rule is ignored.
9087
9088  Filter Actions
9089
9090   Once a filter match is found for a particular message, there are some
9091   actions which may be taken. First, the message may have its status
9092   changed. This is the same message status that you can manipulate
9093   manually using the Flag Command. There are four elements of message
9094   status that you can control. You can set or clear the Important status,
9095   the New status, the Deleted status, and the Answered status. Of course,
9096   if the filter is going to delete the message, then there is no point in
9097   setting message status. You may also set or clear user-defined keywords
9098   for a message.
9099
9100   Second, the filter may delete or move the message. Deleting the message
9101   marks it Deleted and removes it from view. It is effectively gone
9102   forever (though it technically is still there until the next expunge
9103   command, which may happen implicitly). Moving the message moves it from
9104   the open folder into the folder listed on the "Folder List" line of the
9105   filter configuration. If you list more than one folder name (separated
9106   by commas) then the message will be copied to each of those folders. In
9107   any case, if "Delete" or "Move" is set then the message is removed from
9108   the current folder. If you just want to set the messages status without
9109   deleting it from the folder, then set the filter action to "Just Set
9110   Message Status".
9111
9112   (There is no way to do a Copy instead of a Move, due to the
9113   difficulties involved in keeping track of whether or not a message has
9114   already been copied by a previous _Alpine_ session.)
9115
9116    Move-only-if-not-deleted option
9117
9118   If you have specified a Move to Folder to filter messages into, then
9119   this option has an effect. If this option is set then messages will
9120   only be moved into the specified folder if they aren't already marked
9121   deleted. This might be useful if you have more than one _Alpine_
9122   session running simultaneously and you don't want messages to be
9123   filtered into a folder more than once. This method is not foolproof.
9124   There may be cases where a message gets marked deleted and so it is
9125   never filtered into the folder. For example, if you deleted it in
9126   another _Alpine_ or another mail program that didn't know about the
9127   filtering rule.
9128
9129   This option has no effect if the Filter Action is not set to Move.
9130
9131    Dont-quit-even-if-rule-matches option
9132
9133   If this option is set then this is a non-terminating rule. Usually, for
9134   each message, _Alpine_ searches through the filter rules until a match
9135   is found and then it performs the action associated with that rule.
9136   Rules following the match are not considered. If this option is set
9137   then the search for matches will continue at the next rule.
9138
9139   If a non-terminating rule matches then the actions associated with that
9140   rule, except for any implied deletion of the message, are performed
9141   before the match for the next rule is checked. For example, if the
9142   non-terminating rule sets the Important status, then that status will
9143   be set when the next rule is considered. However, if the
9144   non-terminating rule Moves the message, the message will actually be
9145   copied instead of copied and deleted so that it is still there for the
9146   next rule. A moved message is deleted after all the relevant rules have
9147   been checked. The name of the "Move" action is confusing in this case
9148   because a single message can be moved to more than one folder. It turns
9149   the Move into a Copy instead, but it is still followed by a deletion at
9150   the end.
9151
9152   This option may be useful if you want to have a single message filtered
9153   to two different folders because it matches two different Patterns. For
9154   example, suppose you normally filter messages to a particular mailing
9155   list into one folder, and messages addressed directly to you into a
9156   second folder. If a message is sent to both you and the list (and you
9157   can tell that by looking at the headers of the message) this option may
9158   give you a convenient way to capture a copy to each folder. (It may
9159   also cause you to capture two copies to each folder, depending on
9160   whether your mail system delivers one or two copies of the message to
9161   you and on how the list works.)
9162
9163Scoring Configuration
9164
9165   Most people will not use scores at all, but if you do use them, here's
9166   how they work in Alpine. Using this screen, you may define Scoring
9167   rules. The score for a message is calculated by looking at every Score
9168   rule defined and adding up the Score Values for the ones which match
9169   the message. If there are no matches for a message, it has a score of
9170   zero. Message scores may be used a couple of ways in Alpine.
9171
9172  Sorting by Score
9173
9174   One of the methods you may use to sort message indexes is to sort by
9175   score. The scores of all the messages in a folder will be calculated
9176   and then the index will be ordered by placing the messages in order of
9177   ascending or descending score.
9178
9179  Scores for use in Patterns
9180
9181   The Patterns used for Roles, Index Line Coloring, and Filtering have a
9182   category labeled "Score Interval". When a message is being compared
9183   with a Pattern to check for a match, if the Score Interval is set only
9184   messages which have a score somewhere in the interval are a match.
9185
9186  Scoring Rule Patterns
9187
9188   In order to determine whether or not a message matches a scoring rule
9189   the message is compared with the rule's Pattern. These Patterns are the
9190   same for use with Roles, Filtering, Index Coloring, Scoring, Other
9191   Rules, and Search Rules, so are described in only one place, "here".
9192
9193   Actually, Scoring rule Patterns are slightly different from the other
9194   types of Patterns because Scoring rule Patterns don't contain a Score
9195   Interval. In other words, when calculating the score for a message,
9196   which is done by looking at the Scoring rule Patterns, scores aren't
9197   used.
9198
9199  Score Value
9200
9201   This is the value that will be added to the score for a message if the
9202   rule's Pattern is a match. Each individual Score Value is an integer
9203   between -100 and 100, and the values from matching rules are added
9204   together to get a message's score. There is also a way to extract the
9205   value from a particular header of each message. See the help text for
9206   Score Value for further information.
9207
9208Other Rules Configuration
9209
9210   Using this screen, you may define configuration Rules which don't fit
9211   nicely into the other Rules categories.
9212
9213  Other Rule Patterns
9214
9215   Other Rules are a little different from the rest of the Rules because
9216   they depend only on the current folder, and not on a particular
9217   message. In order to determine whether or not a rule's actions should
9218   be applied the current folder is compared with the rule's Pattern,
9219   which consists of only the Current Folder Type. Current Folder Type
9220   works the same for Other Rules as it does for Roles, Filtering, Index
9221   Coloring, and Scoring. Keep in mind that the only part of the Pattern
9222   which applies to Other Rules is the Current Folder Type when looking at
9223   the description of Patterns given "here".
9224
9225  Other Rule Actions
9226
9227   Once a pattern match is found, the rule's Actions are taken. Neither of
9228   the following two rule's depends on a message for its match. That means
9229   that all the parts of the Pattern which depend on matching an attribute
9230   of a message are ignored. So the only part of the Pattern that matters
9231   for these Actions is the Current Folder Type.
9232
9233    Set Sort Order
9234
9235   When you enter a new folder, these rules will be checked to see if you
9236   have set a sort order which is different from your default sort order.
9237   The default is set in the Setup/Config screen with the Sort-Key option.
9238   If the Sort Order action is set, then the folder will be displayed
9239   sorted in that sort order instead of in the default order.
9240
9241   A possible point of confusion arises when you change the configuration
9242   of the Sort Order for the currently open folder. The folder will
9243   normally be re-sorted when you go back to viewing the index. However,
9244   if you have manually sorted the folder with the Sort command, it will
9245   not be re-sorted.
9246
9247    Set Index Format
9248
9249   When you enter a new folder, these rules will be checked to see if you
9250   have set an Index Format which is different from your default Index
9251   Format, which is set with the Index-Format option. If so, the index
9252   will be displayed with this format instead of the default.
9253
9254    Set Startup Rule
9255
9256   When you enter a new folder, these rules will be checked to see if you
9257   have set a startup rule which is different from the default startup
9258   rule. The default for incoming folders is set in the Setup/Config
9259   screen with the "incoming-startup-rule" option. The default for folders
9260   other than INBOX that are not part of your incoming collection (see
9261   enable-incoming-folders feature) is to start with the last message in
9262   the folder. If the Startup Rule is set to something other than
9263   "default", then the rule will determine which message will be the
9264   current message when the folder is first opened.
9265
9266   The various startup rule possibilities work the same here as they do in
9267   the incoming collection, except that the folder can be any specific
9268   folder or any folder type.
9269
9270Search Rules Configuration
9271
9272   One of the commands that becomes available when that feature is turned
9273   on is the "; Select" command, which is used in the MESSAGE INDEX screen
9274   to select a set of messages. One way of selecting messages is to use a
9275   Rule. All of the messages which match (or don't match if you wish) a
9276   Rule's Pattern will be selected.
9277
9278   Any of your Rules may be used for this purpose. You might already have
9279   Rules set up for filtering, index line color, scores, or roles; and you
9280   may use any of those Rules with the Select command. However, you might
9281   find it more convenient to set up a separate set of Rules just for this
9282   purpose without having to worry about what other effects they may
9283   cause. That is the purpose of these Select Rules.
9284
9285  Rule Patterns
9286
9287   In order to determine whether or not a message is selected by a rule
9288   the message is compared with the rule's Pattern. These Patterns are the
9289   same for use with Roles, Filtering, Index Coloring, Scoring, Other
9290   Rules, and Search Rules, so are described in only one place, "here".
9291
9292   There is no action associated with these Search Rules. Only their
9293   Patterns are used.
9294
9295Patterns
9296
9297   Patterns are used with Roles, Filtering, Index Coloring, Scoring, Other
9298   Rules, and Search Rules. Patterns are compared with a message to see if
9299   there is a match. For Filtering, the messages being checked are all the
9300   messages in the folder, one at a time. For Index Line Coloring, each
9301   message that is visible on the screen is checked for matches with the
9302   Index Coloring Patterns. Roles are used with the Reply, Forward, and
9303   Compose commands. For Reply, the message used to compare the Pattern
9304   with is the message being replied to; for Forward, the message used to
9305   compare the Pattern with is the message being forwarded; and for
9306   Compose, there is no message, so the parts of the Pattern which depend
9307   on a message (everything other than Current Folder Type and the
9308   Beginning of Month and Year) are not used. Only the Current Folder Type
9309   matters for Compose (plus the Beginning of Month or Year, which you
9310   wouldn't usually use for a Role). For Scoring, the message being scored
9311   is compared with all of the Score Patterns, and the Score Values from
9312   the ones that match are added together to get the message's score. For
9313   Other Rules, there is no message. Only the Current Folder Type is
9314   checked for Other Rules.
9315
9316   Each Pattern has several possible parts, all of which are optional. In
9317   order for there to be a match, _ALL_ of the _defined_ parts of the
9318   Pattern must match the message. If a part is not defined it is
9319   considered a match. For example, if the To pattern is not defined it
9320   will be displayed as
9321
9322                         To pattern = <No Value Set>
9323
9324   That is considered a match because it is not defined. This means that
9325   the Pattern with nothing defined is a match if the Current Folder Type
9326   matches, but there is an exception. Because filtering is a potentially
9327   destructive action, filtering Patterns with nothing other than Current
9328   Folder Type defined are ignored. If you really want a filtering Pattern
9329   to match all messages (subject to Current Folder Type) the best way to
9330   do it is to define a Score interval which includes all possible scores.
9331   This would be the score interval (-INF,INF). This can be used even if
9332   you haven't defined any rules to Set Scores.
9333
9334   There are six predefined header patterns called the To, From, Sender,
9335   Cc, News, and Subject patterns. Besides those six predefined header
9336   patterns, you may add additional header patterns with header fieldnames
9337   of your choosing. You add an extra header pattern by placing the cursor
9338   on one of the patterns while in the role editor and using the
9339   "eXtraHdr" command. The Recip pattern is a header pattern which stands
9340   for Recipient (To OR Cc) and the Partic pattern is a header pattern
9341   which stands for Participant (From OR To OR Cc). (Defining the Recip
9342   pattern does not have the same effect as defining both the To and Cc
9343   patterns. Recip is To _OR_ Cc, not To _AND_ Cc.) Similar to the header
9344   patterns are the AllText pattern and the BodyText pattern. Instead of
9345   comparing this pattern's text against only the contents of a particular
9346   header field, the text for the AllText pattern is compared with text
9347   anywhere in the message's header or body, and the text for the BodyText
9348   pattern is compared with text anywhere in the message's body.
9349
9350   Any of the header patterns, the AllText pattern, or the BodyText
9351   pattern may be negated with the "!" "toggle NOT" command. You can tell
9352   that _NOT_ has been turned on by looking for the character "!" at the
9353   beginning of the pattern line. When the "!" is present, it reverses the
9354   meaning of the match. That is, if the pattern matches then it is
9355   considered to NOT be a match, and if it does not match it is considered
9356   to be a match.
9357
9358   Don't make the mistake of putting the "!" in the data field for a
9359   pattern. For example, if you type the characters "!urgent" into the
9360   Subject pattern, the pattern will look like:
9361
9362 Subject pattern = !urgent
9363
9364   This means you want to match the 7 character sequence "!urgent". In
9365   order to match messages which do not have "urgent" in their Subject
9366   field, first type the characters "urgent" followed by carriage return
9367   for the value of the Subject pattern, then negate it by typing the "!"
9368   command. It should look like
9369
9370 ! Subject pattern = urgent
9371
9372   The contents of each of these header patterns (or the AllText or
9373   BodyText patterns) may be a complete email address, part of an address,
9374   or a random set of characters to match against. It may also be a list
9375   of such patterns, which means you are looking for a match against the
9376   first pattern in the list _OR_ the second pattern _OR_ the third and so
9377   on. For example, a Subject pattern equal to
9378
9379 Subject pattern = urgent
9380                   emergency
9381                   alert
9382
9383   would match all messages with a subject which contained at least one of
9384   those words. It would also match subjects containing the words "alerts"
9385   or "Urgently".
9386
9387   The same example with "NOT" turned on would be
9388
9389 ! Subject pattern = urgent
9390                     emergency
9391                     alert
9392
9393   which would match all messages with a subject which did NOT contain any
9394   of those words. You can use the "Add Value" command to add new words to
9395   the list, or you can enter them as a comma-separated list.
9396
9397   (It is not possible to specify two patterns which must _BOTH_ be
9398   present for a match. It is only possible to specify that _EITHER_
9399   pattern1 _OR_ pattern2 must be present, and that is exactly what using
9400   a list does.)
9401
9402   The "Current Folder Type" and the "Score Interval" are also part of the
9403   Pattern, although the "Score Interval" is not used when checking for
9404   matches for Scoring. There are five similar settings which relate to
9405   the status of the message. These settings rely on the message being New
9406   or not, Deleted or not, Answered or not, Important or not, and Recent
9407   or not. There are also some other miscellaneous settings. The first is
9408   the Age of the message in days. Another is the Size of the message in
9409   bytes. The third is a setting which detects whether or not the Subject
9410   of a message contains raw 8-bit characters (unencoded characters with
9411   the most significant bit set). There is a setting which detects whether
9412   or not this is the first time _Alpine_ has been run this month (doesn't
9413   depend on individual messages), and another which detects whether or
9414   not this is the first time _Alpine_ has been run this year. Other parts
9415   of the Pattern detect whether or not the From address of a message
9416   appears in your address book, whether or not certain keywords are set
9417   for a message, and whether or not certain character sets are used in a
9418   message.
9419
9420  Parts of a Pattern
9421
9422    Header patterns
9423
9424   A header pattern is simply text which is searched for in the
9425   corresponding header field. For example, if a Pattern has a From header
9426   pattern with the value "@company.com", then only messages which have a
9427   From header which contains the text "@company.com" will be possible
9428   matches. Matches don't have to be exact. For example, if the relevant
9429   field of a message contains the text "mailbox@domain" somewhere in it,
9430   then header patterns of "box", or "x@d", or "mailbox@domain" are all
9431   matches.
9432
9433   All parts of the Pattern must match so, for example, if a message
9434   matches a defined From pattern, it still must be checked against the
9435   other parts of the Pattern which have been defined. The To header
9436   pattern is a slightly special case. If the message being checked has a
9437   Resent-To header and the feature Use-Resent-To-in-Rules is turned on,
9438   the addresses there are used in place of the addresses in the To
9439   header. This is only true for the To header. Resent-cc and Resent-From
9440   headers are never used unless you add them with the eXtraHdrs command.
9441
9442   The meaning of a header pattern may be negated with the "!" "toggle
9443   NOT" command. You can tell that _NOT_ has been turned on by looking for
9444   the character "!" at the beginning of the pattern line. It would look
9445   something like
9446
9447 ! From pattern = susan@example.com
9448
9449   When the "!" is present, it reverses the meaning of the match.
9450
9451   If you want to check for the presence of a header field but don't care
9452   about its value, then the empty pattern which you get by entering a
9453   pair of double quotes ("") should match any message which has the
9454   corresponding header field.
9455
9456    AllText patterns
9457
9458   AllText patterns are just like header patterns except that the text is
9459   searched for anywhere in the message's headers or body, not just in the
9460   contents of a particular header field.
9461
9462    BodyText patterns
9463
9464   BodyText patterns are just like header patterns except that the text is
9465   searched for anywhere in the message's body, not just in the contents
9466   of a particular header field.
9467
9468   If there is more than one header pattern or AllText pattern or BodyText
9469   pattern for which you want to take the same action there is a shorthand
9470   notation which may be used. Any of these patterns may be a list of
9471   patterns instead of just a single pattern. If any one of the patterns
9472   in the list matches the message then it is considered a match. For
9473   example, if "company1" and "company2" both required you to use the same
9474   role when replying to messages, you might have a To pattern which looks
9475   like
9476
9477 To pattern = company1.com
9478              company2.com
9479
9480   This means that if the mail you are replying to was addressed to either
9481   "anything@company1.com" or "anything@company2.com", then this Pattern
9482   is a match and the same actions will be taken.
9483
9484   The meaning of an AllText or BodyText pattern may be negated with the
9485   "!" "toggle NOT" command. You can tell that _NOT_ has been turned on by
9486   looking for the character "!" at the beginning of the pattern line.
9487   When the "!" is present, it reverses the meaning of the match.
9488
9489   A technicality: Since comma is the character used to separate multiple
9490   values in any of the fields which may have multiple values (such as
9491   header patterns, AllText patterns, BodyText patterns, keywords, folder
9492   lists, and so on), you must escape comma with a backslash (\) if you
9493   want to include a literal comma in one of those fields. In other words,
9494   if you type a backslash followed by a comma it will be interpreted as a
9495   comma by _Alpine_, instead of as a separator between pattern values.
9496   All other backslashes (those not followed by a comma) are literal
9497   backslashes and should not be escaped. It's unlikely you'll ever need
9498   to enter a literal comma or backslash in any of the patterns.
9499
9500    Current Folder Type
9501
9502   The "Current Folder Type" may be set to one of four different values:
9503   "Any", "News", "Email", or "Specific". If the value is set to "News",
9504   then the Pattern will only match if the currently open folder is a
9505   newsgroup. The value "Email" only matches if the current folder is not
9506   news and the value "Any" causes any folder to match. If the value of
9507   "Current Folder Type" is set to "Specific", then you must fill in a
9508   value for "Folder", which is on the line below the "Specific" line. In
9509   this case you will only get a match if the currently open folder is the
9510   specific folder you list. You may give a list of folders instead of
9511   just a single folder name, in which case the Pattern will match if the
9512   open folder is any one of the folders in the list. The name of each
9513   folder in the list may be either "INBOX", the technical specification
9514   of the folder (like what appears in your configuration file) or, if the
9515   folder is one of your incoming folders, it may be the nickname you've
9516   given the folder. Here are some samples of specific folder names:
9517
9518                    {monet.art.example.com}mail/art-class
9519
9520                 {news.example.com/nntp}#news.comp.mail.pine
9521
9522                              mail/local-folder
9523
9524   The easiest way to fill in the "Folder" field is to use the "T" command
9525   which is available when the "Folder" line is highlighted, or to use the
9526   "Take" command with the configuration feature "enable-rules-under-take"
9527   turned on.
9528
9529   When reading a newsgroup, there may be a performance penalty incurred
9530   when collecting the information necessary to check whether or not a
9531   Pattern matches a message. For this reason, the default Current Folder
9532   Type is set to "Email". If you have Patterns with a Current Folder Type
9533   of either "Any" or "News" and those Patterns are used for Index Line
9534   Coloring or Scoring, you may experience slower screen redrawing in the
9535   MESSAGE INDEX screen when in a newsgroup.
9536
9537    Age Interval
9538
9539   The "Age Interval" may be set to an interval of message ages which
9540   should be considered a match. Like the other parts of the Pattern, if
9541   it is unset it will be ignored. The Age Interval looks like
9542
9543                              (min_age,max_age)
9544
9545   where "min_age" and "max_age" are integers greater than or equal to
9546   zero. The special value "INF" may be used for the max value. It
9547   represents infinity.
9548
9549   Actually, this option may be defined as a list of intervals instead of
9550   just a single interval. The list is separated by commas. It can look
9551   like
9552
9553                 (min_age1,max_age1),(min_age2,max_age2),...
9554
9555   When there is an Age Interval defined, it is a match if the age, in
9556   days, of the message is contained in any of the intervals. The
9557   intervals include both endpoints.
9558
9559   Even though this option is called Age, it isn't actually the _age_ of
9560   the message. Instead, it is how many days ago the message arrived in
9561   one of your folders. If the current time is a little past midnight,
9562   then a message that arrived just before midnight arrived yesterday,
9563   even though the message is only a few minutes old. By default, the date
9564   being used is not the date in the Date header of the message. It is the
9565   date that the message arrived in one of your folders. When you Save a
9566   message from one folder to another that arrival date is preserved. If
9567   you would like to use the date in the Date header that is possible.
9568   Turn on the option _use-date-header-for-age_ near the bottom of the
9569   rule definition.
9570
9571   A value of 0 is today, 1 is yesterday, 2 is the day before yesterday,
9572   and so on.
9573
9574    Size Interval
9575
9576   The "Size Interval" may be set to an interval of message sizes which
9577   should be considered a match. Like the other parts of the Pattern, if
9578   it is unset it will be ignored. The Size Interval looks like
9579
9580                             (min_size,max_size)
9581
9582   where "min_size" and "max_size" are integers greater than or equal to
9583   zero. The special value "INF" may be used for the max value. It
9584   represents infinity.
9585
9586   Actually, this option may be defined as a list of intervals instead of
9587   just a single interval. The list is separated by commas. It can look
9588   like
9589
9590               (min_size1,max_size1),(min_size2,max_size2),...
9591
9592   When there is a Size Interval defined, it is a match if the size, in
9593   bytes, of the message is contained in any of the intervals. The
9594   intervals include both endpoints.
9595
9596    Score Interval
9597
9598   The "Score Interval" may be set to an interval of message scores which
9599   should be considered a match. Like the other parts of the Pattern, if
9600   it is unset it will be ignored. The Score Interval looks like
9601
9602                            (min_score,max_score)
9603
9604   where "min_score" and "max_score" are integers between -32000 and
9605   32000. The special values "-INF" and "INF" may be used for the min and
9606   max values to represent negative and positive infinity.
9607
9608   Actually, a list of intervals may be used if you wish. A list would
9609   look like
9610
9611             (min_score1,max_score1),(min_score2,max_score2),...
9612
9613   When there is a Score Interval defined, it is a match if the score for
9614   the message is contained in any of the intervals in the list. The
9615   intervals include the endpoints. The score for a message is calculated
9616   by looking at every Score rule defined and adding up the Score Values
9617   for the ones which match the message. When deciding whether or not a
9618   Pattern matches a message for purposes of calculating the score, the
9619   Score Interval is ignored.
9620
9621    Message Status
9622
9623   There are five separate message status settings. By default, all five
9624   are set to the value "Don't care", which will match any message. The
9625   value "Yes" means that the particular status must be true for a match,
9626   and the value "No" means that the particular status must not be true
9627   for a match. For example, one of the five Message Status settings is
9628   whether a message is marked Important or not. A "Yes" means that the
9629   message must be Important to be considered a match and "No" means that
9630   the message must not be Important to be considered a match. The same is
9631   true of the other four message status settings which depend on whether
9632   or not the message is New; whether the message has been Answered or
9633   not; whether the message has been Deleted or not, and whether the
9634   message is Recent or not.
9635
9636   The nomenclature for New and Recent is a bit confusing:
9637
9638   New means that the message is Unseen. It could have been in your
9639   mailbox for a long time but if you haven't looked at it, it is still
9640   considered New. That matches the default _Alpine_ index display that
9641   shows an N for such a message.
9642
9643   Recent means that the message was added to this folder since the last
9644   time you opened the folder. _Alpine_ also shows an N by default for
9645   these types of messages. If you were to run two copies of _Alpine_ that
9646   opened a folder one right after the other, a message would only show up
9647   as Recent in (at most) the first _Alpine_ session.
9648
9649    Message Keywords
9650
9651   Keywords are similar to Message Status, but they are chosen by the
9652   user. Provided the mail server allows for it, you may add a set of
9653   possible keywords to a folder and then you may set those keywords or
9654   not for each message in the folder. The syntax of this part of the
9655   Pattern is similar to the header patterns. It is a list of keywords.
9656   The Keyword part of the Pattern is a match if the message has any of
9657   the keywords in the list set. Like other parts of the Pattern, if this
9658   is unset it will be ignored.
9659
9660    Message Character Set
9661
9662   A message may use one or more character sets. This part of the Pattern
9663   matches messages which make use of one or more of the character sets
9664   specified in the pattern. It will be considered a match if a message
9665   uses any of the character sets in the list you give here. The syntax of
9666   this part of the Pattern is similar to the header patterns and the
9667   Message Keywords pattern. It is a list of character sets.
9668
9669   Besides actual character set names (for example, ISO-8859-7, KOI8-R, or
9670   GB2312) you may also use some shorthand names that _Alpine_ provides.
9671   These names are more understandable shorthand names for sets of
9672   character set names. Two examples are "Cyrillic" and "Greek". Selecting
9673   one of these shorthand names is equivalent to selecting all of the
9674   character sets that make up the set. You can see all of these shorthand
9675   names and the lists of character sets they stand for by typing the "T"
9676   command with the Character Set pattern highlighted. The Character Set
9677   part of the Pattern is a match if the message uses any of the character
9678   sets in the list. Like other parts of the Pattern, if this is unset it
9679   will be ignored.
9680
9681    Raw 8-bit in Subject
9682
9683   It seems that lots of unwanted email contains unencoded 8-bit
9684   characters in the Subject. Normally, characters with the 8th bit set
9685   are not allowed in the Subject header unless they are MIME-encoded.
9686   This option gives you a way to match messages which have Subjects which
9687   contain unencoded 8-bit characters. Setting this option will affect
9688   performance in large folders because the subject of each message in the
9689   folder has to be checked.
9690
9691    Beginning of Month
9692
9693   This option gives you a way to take some action once per month. The
9694   value "Yes" means that this must be the first time _Alpine_ has been
9695   run this month in order to count as a match,
9696
9697    Beginning of Year
9698
9699   This option gives you a way to take some action once per year. The
9700   value "Yes" means that this must be the first time _Alpine_ has been
9701   run this year in order to count as a match,
9702
9703    From or Reply-To address in Address Books
9704
9705   This option gives you a way to match messages which have a From or a
9706   Reply-To address which is in one of your address books. Only the simple
9707   entries in your address books are searched. Address book distribution
9708   lists are ignored! Setting this option will affect performance in large
9709   folders because the From and Reply-To of each message in the folder
9710   have to be checked.
9711
9712    Categorizer Command
9713
9714   This is a command that is run with its standard input set to the
9715   message being checked and its standard output discarded. The full
9716   directory path should be specified. The command will be run and then
9717   its exit status will be checked against the Exit Status Interval, which
9718   defaults to just the value zero. If the exit status of the command
9719   falls in the interval, it is considered a match, otherwise it is not a
9720   match.
9721
9722   This option may actually be a list of commands. The first one that
9723   exists and is executable is used. That makes it possible to use the
9724   same configuration with Unix _Alpine_ and _PC-Alpine_.
9725
9726   If none of the commands in the list exists and is executable then the
9727   rule is _not_ a match. If it is possible that the command may not
9728   exist, you should be careful to structure your rules so that nothing
9729   destructive happens when the command does not exist. For example, you
9730   might have a filter that filters away spam when there is a match but
9731   does nothing when there is not a match. That would continue to work
9732   correctly if the command didn't exist. However, if you have a filter
9733   which filters away spam when there is not a match and keeps it when
9734   there is a match, that would filter everything if the categorizer
9735   command didn't exist.
9736
9737  Help Configuring Pattern Fields
9738
9739   _Nickname_
9740          This is a nickname to help you. You should have a different
9741          nickname for each role you define. The nickname will be used in
9742          the SETUP ROLE RULES screen to allow you to pick a role to edit.
9743          It will also be used when you send a message to let you know you
9744          are sending with a different role than you use by default, and
9745          it will be useful for choosing a role when composing with the
9746          Role command or when composing with one of the Role Uses set to
9747          With Confirmation. This field is not used in the outgoing
9748          message.
9749   _Comment_
9750          This is a comment to help you. This comment does not play any
9751          functional role, it is simply an optional comment to help you
9752          remember what the rule is for.
9753   _To pattern_
9754          If this pattern is non-blank, then for this role to be
9755          considered a match, at least one of the recipients from the To
9756          line of the message being replied to or forwarded must match
9757          this pattern. In the case of the Compose command, this pattern
9758          and the other header patterns are ignored. If this pattern is a
9759          list of patterns, then at least one of the recipients must match
9760          at least one of the patterns. (Any other non-blank parts of the
9761          Pattern must match, too.) If the message being replied to or
9762          forwarded has a Resent-To header line, then that is used in
9763          place of the To line. (Note that this special Resent rule only
9764          applies to the To header. The Resent-From, Resent-Subject, and
9765          so on are not consulted.)
9766          It is possible to add a _NOT_ to the To Pattern meaning with the
9767          "!" "toggle NOT" command. This changes the meaning of the To
9768          pattern so that it has the opposite meaning. It will be
9769          considered a match if there are no matches between the addresses
9770          in the To: line and the list of To patterns.
9771          Don't make the mistake of putting the "!" in the data field for
9772          the pattern. For example, if you type the characters "!frizzle"
9773          into the To pattern, the pattern will look like:
9774 To pattern = !frizzle
9775
9776          This means you want to match the 8 character sequence
9777          "!frizzle". In order to match messages which do not have
9778          "frizzle" in their To field, first type the characters "frizzle"
9779          followed by carriage return for the value of the To pattern,
9780          then negate it by typing the "!" command. It should end up
9781          looking like
9782 ! To pattern = frizzle
9783
9784   _From pattern_
9785          This is just like the To pattern except that it is compared with
9786          the address from the From header of the message being replied to
9787          or forwarded instead of the addresses from the To header.
9788   _Sender pattern_
9789          This is just like the To pattern except that it is compared with
9790          the address from the Sender header of the message being replied
9791          to or forwarded instead of the addresses from the To header. If
9792          there is no Sender header, then the From header is used instead.
9793   _Cc pattern_
9794          This is just like the To pattern except that it is compared with
9795          the address from the CC header of the message being replied to
9796          or forwarded instead of the addresses from the To header.
9797   _News pattern_
9798          If this pattern is non-blank, then for this role to be
9799          considered a match, at least one of the newsgroups from the
9800          Newsgroups line of the message must match this pattern. If this
9801          pattern is a list of patterns, then at least one of the
9802          newsgroups must match at least one of the patterns. (Any other
9803          non-blank parts of the Pattern must match, too.)
9804   _Subject pattern_
9805          This is similar to the other header patterns. It is compared
9806          with the contents from the Subject of the message being replied
9807          to or forwarded.
9808          If you enter non-ascii characters in this field then the search
9809          will be done using the character set you have defined with the
9810          Character-Set configuration variable. (The truly sophisticated
9811          may use an alternate character set for a search by entering the
9812          MIME encoding of the header string here.)
9813   _Extra header patterns_
9814          There isn't actually a field called Extra header patterns, but
9815          you may add extra header patterns by moving the cursor to one of
9816          the header patterns and using the "eXtraHdr" command to add a
9817          new header pattern. You would do this if the six predefined
9818          header patterns don't cover the header you want to use for
9819          pattern matching. Once you've added an extra header pattern, you
9820          use it just like the Subject pattern. Of course, it is compared
9821          with the contents from the particular header field of the
9822          message being replied to or forwarded rather than the contents
9823          from the subject field. To remove an extra header pattern from a
9824          role, use the &quotRemoveHdr" command on the highlighted extra
9825          header.
9826          If you enter non-ascii characters in this field then the search
9827          will be done using the character set you have defined with the
9828          Character-Set configuration variable. (The truly sophisticated
9829          may use an alternate character set for a search by entering the
9830          MIME encoding of the header string here.)
9831   _Recipient pattern_
9832          This is just like the To pattern except that it is compared with
9833          the addresses from both the To header and the Cc header instead
9834          of just the addresses from the To header. It's equivalent to
9835          having two different rules; one with a To pattern and the other
9836          with the same Cc pattern.
9837   _Participant pattern_
9838          This is just like the To pattern except that it is compared with
9839          the addresses from the To header, the Cc header, and the From
9840          header instead of just the addresses from the To header. It's
9841          equivalent to having three different rules; one with a To
9842          pattern, another with the same Cc pattern, and another with the
9843          same From pattern.
9844   _AllText pattern_
9845          This is similar to the header patterns. Instead of comparing
9846          with text in a particular header field it is compared with all
9847          of the text in the message header and body.
9848          If you enter non-ascii characters in this field then the search
9849          will be done using the character set you have defined with the
9850          Character-Set configuration variable. (The truly sophisticated
9851          may use an alternate character set for a search by entering the
9852          MIME encoding of the header string here.)
9853   _BodyText pattern_
9854          Just like AllText, except it is compared only with the body of
9855          the message, not the body and header.
9856          If you enter non-ascii characters in this field then the search
9857          will be done using the character set you have defined with the
9858          Character-Set configuration variable. (The truly sophisticated
9859          may use an alternate character set for a search by entering the
9860          MIME encoding of the header string here.)
9861   _Age Interval_
9862          The Age Interval, if defined, is part of the Pattern. If you use
9863          this, it should be set to something like:
9864
9865                              (min_age,max_age)
9866          where "min_age" and "max_age" are non-negative integers. The
9867          special value "INF" may be used for the max value. It represents
9868          infinity.
9869          In rare cases it may be useful to use the more general form of
9870          the value, which is a comma-separated list of intervals. It
9871          would look something like:
9872
9873                 (min_age1,max_age1),(min_age2,max_age2),...
9874          When there is an Age Interval defined, it is a match if the age,
9875          in days, of the message is contained in the interval. The
9876          interval includes both endpoints. If the option is set to a list
9877          of intervals then it is a match if the age of the message is
9878          contained in any of the intervals.
9879          Even though this option is called Age, it isn't actually the
9880          _age_ of the message. Instead, it is how many days ago the
9881          message arrived in one of your folders. If the current time is a
9882          little past midnight, then a message that arrived just before
9883          midnight arrived yesterday, even though the message is only a
9884          few minutes old. By default, the date being used is not the date
9885          in the Date header of the message. It is the date that the
9886          message arrived in one of your folders. When you Save a message
9887          from one folder to another that arrival date is preserved. If
9888          you would like to use the date in the Date header that is
9889          possible. Turn on the option _use-date-header-for-age_ near the
9890          bottom of the rule definition.
9891          A value of 0 is today, 1 is yesterday, 2 is the day before
9892          yesterday, and so on. The age interval
9893
9894                                    (2,2)
9895          matches all messages that arrived on the day before yesterday.
9896          The interval
9897
9898                                  (180,INF)
9899          matches all messages that arrived at least 180 days before
9900          today. The interval
9901
9902                                    (0,1)
9903          matches all messages that arrived today or yesterday.
9904   _Score Interval_
9905          The Score Interval, if defined, is part of the Pattern. If you
9906          use this, it should be set to something like:
9907
9908                            (min_score,max_score)
9909          where "min_score" and "max_score" are integers between -32000
9910          and 32000. The special values "-INF" and "INF" can be used for
9911          the min and max values. These represent negative and positive
9912          infinity.
9913          Actually, the value may be a list of intervals rather than just
9914          a single interval if that is useful. The elements of the list
9915          are separated by commas like:
9916
9917             (min_score1,max_score1),(min_score2,max_score2),...
9918          When there is a Score Interval defined, it is a match if the
9919          score for the message is contained in any of the intervals. The
9920          intervals include both endpoints. The score for a message is
9921          calculated by looking at every scoring rule defined and adding
9922          up the Score Values for the rules which match the message.
9923   _Keyword pattern_
9924          A folder may have user-defined keywords. These are similar to
9925          the Important flag which the user may set using the Flag
9926          command. The difference is that the Important flag is always
9927          present for each folder. User-defined keywords are picked by the
9928          user. You may add new keywords by defining them in the Keywords
9929          option in the Setup/Config screen. After you have added a
9930          potential keyword with the Keywords option, the Flag command may
9931          be used to set or clear the keyword on individual messages. If
9932          you have given a keyword a nickname when configuring it, that
9933          nickname may be used instead of the actual keyword.
9934          When filling in a value for this field, it may be easiest to use
9935          the "T" command, which presents you with a list of the keywords
9936          you have defined to choose from.
9937          This part of the Pattern matches messages with certain keywords
9938          set. It will be considered a match if a message has any of the
9939          keywords in the list set.
9940          It is possible to add a _NOT_ to the Keyword Pattern meaning
9941          with the "!" "toggle NOT" command. This changes the meaning of
9942          the Keyword pattern so that it has the opposite meaning. It will
9943          be considered a match if none of the keywords in the list are
9944          set for a message.
9945          Don't make the mistake of putting the "!" in the data field for
9946          the pattern. For example, if you type the characters "!frizzle"
9947          into the Keyword pattern, the pattern will look like:
9948 Keyword pattern = !frizzle
9949
9950          This means you want to match the 8 character sequence
9951          "!frizzle". In order to match messages which do not have the
9952          keyword "frizzle" set, first type the characters "frizzle"
9953          followed by carriage return for the value of the Keyword
9954          pattern, then negate it by typing the "!" command. It should end
9955          up looking like
9956 ! Keyword pattern = frizzle
9957
9958   _Character Set pattern_
9959          A message may use one or more character sets. This part of the
9960          Pattern matches messages which make use of certain specified
9961          character sets. It will be considered a match if a message uses
9962          any of the character sets in the list you give here.
9963          When filling in a value for this field, you may use the "T"
9964          command, which presents you with a large list of possible
9965          character sets to choose from. You may also just type in the
9966          name of a character set, and it need not be one that Alpine
9967          knows about.
9968          Besides actual character set names (for example, ISO-8859-7,
9969          KOI8-R, or GB2312) you may also use some shorthand names that
9970          Alpine provides. These names are more understandable shorthand
9971          names for sets of character set names. Two examples are
9972          "Cyrillic" and "Greek". Selecting one of these shorthand names
9973          is equivalent to selecting all of the character sets that make
9974          up the set. You can see all of these shorthand names and the
9975          lists of character sets they stand for by typing the "T"
9976          command.
9977          For the purposes of this Pattern, _Alpine_ will search through a
9978          message for all of the text parts and collect the character sets
9979          declared for each part. It will also look in the Subject line
9980          for a character set used there. _Alpine_ does not actually look
9981          at the text of the message or the text of the Subject to
9982          determine if a declared character set is actually used, it looks
9983          only at the declarations themselves in the MIME part headers and
9984          in the Subject.
9985          It is possible to add a _NOT_ to the Character Set Pattern
9986          meaning with the "!" "toggle NOT" command. This changes the
9987          meaning of the Character Set pattern so that it has the opposite
9988          meaning. It will be considered a match if none of the character
9989          sets in the list are used in a message.
9990          Don't make the mistake of putting the "!" in the data field for
9991          the pattern. For example, if you type the characters "!GB2312"
9992          into the Character Set pattern, the pattern will look like:
9993 Charset pattern = !GB2312
9994
9995          This means you want to match the 7 character sequence "!GB2312".
9996          In order to match messages which do not have the character set
9997          "GB2312" set, first type the characters "GB2312" followed by
9998          carriage return for the value of the Character Set pattern, then
9999          negate it by typing the "!" command. It should end up looking
10000          like
10001 ! Charset pattern = GB2312
10002
10003          A technicality: Since comma is the character used to separate
10004          multiple values in a pattern field, you have to escape comma
10005          with a backslash (\) if you want to include a literal comma in
10006          the field. In other words, if you type a backslash followed by a
10007          comma it will be interpreted as a comma by _Alpine_, instead of
10008          as a separator between pattern values. All other backslashes are
10009          literal backslashes and should not be escaped.
10010   _Current Folder Type_
10011          The Current Folder Type is part of the Pattern. It refers to the
10012          type of the currently open folder, which is the folder you were
10013          last looking at from the MESSAGE INDEX or MESSAGE TEXT screen.
10014          In order for a pattern to be considered a match, the current
10015          folder must be of the type you set here. The three types "Any",
10016          "News", and "Email" are all what you might think.
10017          If the Current Folder Type for a Pattern is set to "News", for
10018          example, then that will only be a match if the current folder is
10019          a newsgroup and the rest of the Pattern matches. The value
10020          "Specific" may be used when you want to limit the match to a
10021          specific folder (not just a specific type of folder), or to a
10022          list of specific folders. In order to match a specific folder
10023          you must Select the "Specific" button _AND_ you must fill in the
10024          name (or list of names) of the folder in the "Folder" field. If
10025          the current folder is any of the folders in the list, that is
10026          considered a match. The name of each folder in the list may be
10027          either "INBOX", the technical specification of the folder (like
10028          what appears in your configuration file) or, if the folder is
10029          one of your incoming folders, it may be the nickname you've
10030          given the folder. Here are a couple samples of specific folder
10031          names:
10032
10033                    {monet.art.example.com}mail/art-class
10034
10035                 {news.example.com/nntp}#news.comp.mail.pine
10036          The easiest way to fill in the "Folder" field is to use the T
10037          command which is available when the "Folder" line is
10038          highlighted. Note that you won't be able to edit the "Folder"
10039          line unless the Current Folder Type is set to "Specific", and
10040          any value that "Folder" has is ignored unless the type is set to
10041          "Specific".
10042          When reading a newsgroup, there may be a performance penalty
10043          incurred when collecting the information necessary to check a
10044          Pattern. For this reason, the default Current Folder Type is set
10045          to "Email". For example, a role with a non-Normal Index Line
10046          Color and a Current Folder Type of "Any" or "News" may cause the
10047          MESSAGE INDEX screen to draw more slowly when in a newsgroup.
10048   _Message Status Important_
10049          This part of the Pattern may have one of three possible values.
10050          The default value is "Don't care", which matches any message.
10051          The other two values are "Yes", which means the message must be
10052          flagged "Important" in order to be a match; or "No", which means
10053          the message must _not_ be flagged "Important" in order to be
10054          considered a match.
10055   _Message Status New_
10056          This part of the Pattern may have one of three possible values.
10057          The default value is "Don't care", which matches any message.
10058          The other two values are "Yes", which means the message must be
10059          "New" in order to be a match; or "No", which means the message
10060          must _not_ be "New" in order to be a match. "New" is the same as
10061          _Unseen_ and not "New" is the same as _Seen_.
10062          The nomenclature for New and Recent is a bit confusing:
10063          New means that the message is Unseen. It could have been in your
10064          mailbox for a long time but if you haven't looked at it, it is
10065          still considered New. That matches the default _Alpine_ index
10066          display that shows an N for such a message.
10067          Recent means that the message was added to this folder since the
10068          last time you opened the folder. _Alpine_ also shows an N by
10069          default for these types of messages. If you were to run two
10070          copies of _Alpine_ that opened a folder one right after the
10071          other, a message would only show up as Recent in (at most) the
10072          first _Alpine_ session.
10073   _Message Status Recent_
10074          This part of the Pattern may have one of three possible values.
10075          The default value is "Don't care", which matches any message.
10076          The other two values are "Yes", which means the message must be
10077          "Recent" in order to be a match; or "No", which means the
10078          message must _not_ be "Recent" in order to be a match. "Recent"
10079          means that the message was added to the folder since the last
10080          time the folder was opened. If more than one mail client has the
10081          folder opened, the message will appear to be "Recent" to only
10082          one of the clients.
10083          The nomenclature for New and Recent is a bit confusing:
10084          New means that the message is Unseen. It could have been in your
10085          mailbox for a long time but if you haven't looked at it, it is
10086          still considered New. That matches the default _Alpine_ index
10087          display that shows an N for such a message.
10088          Recent means that the message was added to this folder since the
10089          last time you opened the folder. _Alpine_ also shows an N by
10090          default for these types of messages. If you were to run two
10091          copies of _Alpine_ that opened a folder one right after the
10092          other, a message would only show up as Recent in (at most) the
10093          first _Alpine_ session.
10094   _Message Status Deleted_
10095          This part of the Pattern may have one of three possible values.
10096          The default value is "Don't care", which matches any message.
10097          The other two values are "Yes", which means the message must be
10098          marked "Deleted" in order to be a match; or "No", which means
10099          the message must _not_ be marked "Deleted" in order to be a
10100          match.
10101          If you are thinking of using this part of the Pattern as a way
10102          to prevent messages from being filtered more than once in a
10103          Filter Pattern, take a look at the Filter Option
10104          "move-only-if-not-deleted" instead. It should work better than
10105          using this field since it will hide the filtered messages even
10106          if they are already Deleted.
10107   _Message Status Answered_
10108          This part of the Pattern may have one of three possible values.
10109          The default value is "Don't care", which matches any message.
10110          The other two values are "Yes", which means the message must be
10111          marked "Answered" in order to be a match; or "No", which means
10112          the message must _not_ be marked "Answered" in order to be a
10113          match.
10114   _Subject Contains Raw 8-bit_
10115          This part of the Pattern may have one of three possible values.
10116          The default value is "Don't care", which matches any message.
10117          The other two values are "Yes", which means the Subject of the
10118          message must contain unencoded 8-bit characters (characters with
10119          the most significant bit set) in order to be a match; or "No",
10120          which means the Subject must _not_ contain unencoded 8-bit
10121          characters in order to be a match.
10122   _Beginning of Month_
10123          This part of the Pattern may have one of three possible values.
10124          The default value is "Don't care", which matches any message.
10125          The other two values are "Yes", which means this is the first
10126          time _Alpine_ has been run this month; or "No", which means this
10127          is _not_ the first time _Alpine_ has been run this month. The
10128          way that _Alpine_ decides if it is the beginning of the month or
10129          not is to compare today's date with the date stored in the
10130          Last-Time-Prune-Questioned variable in the config file. If the
10131          month of today's date is later than the month stored in the
10132          variable, then this is considered to be the first time you have
10133          run Alpine this month, and that turns the Beginning of the Month
10134          option on.
10135   _Beginning of Year_
10136          This part of the Pattern may have one of three possible values.
10137          The default value is "Don't care", which matches any message.
10138          The other two values are "Yes", which means this is the first
10139          time _Alpine_ has been run this year; or "No", which means this
10140          is _not_ the first time _Alpine_ has been run this year. The way
10141          that _Alpine_ decides if it is the beginning of the year or not
10142          is to compare today's date with the date stored in the
10143          Last-Time-Prune-Questioned variable in the config file. If the
10144          year of today's date is later than the year stored in the
10145          variable, then this is considered to be the first time you have
10146          run Alpine this year, and that turns the Beginning of the Year
10147          option on.
10148   _From or Reply-To in Address Book_
10149          This part of the Pattern may have one of five possible values.
10150          The default value is "Don't care", which matches any message.
10151          The value "Yes, in any address book" means either the From
10152          address or the Reply-To address of the message must be in at
10153          least one of your address books in order to be a match. The
10154          value "No, not in any address book" means neither the From nor
10155          the Reply-To addresses may be in any of your address books in
10156          order to be a match.
10157          The values "Yes, in specific address books" and "No, not in any
10158          of specific address books" are similar but instead of depending
10159          on all address books you are allowed to give a list of address
10160          books to look in. Usually this would be a single address book
10161          but it may be a list of address books as well. For each of these
10162          "specific" address book options you Select which of the Specific
10163          options you want (Yes or No) _AND_ fill in the name (or list of
10164          names) of the address book in the "Abook List" field. The names
10165          to be used are those that appear in the ADDRESS BOOK LIST
10166          screen. The easiest way to fill in the Abook List field it to
10167          use the "T" command which is available when the "Abook List"
10168          line is highlighted. Note that you won't be able to edit the
10169          "Abook List" line unless the option is set to one of the two
10170          "Specific", values.
10171   _Categorizer Command_
10172          This is a command that is run with its standard input set to the
10173          message being checked and its standard output discarded. The
10174          full directory path should be specified. The command will be run
10175          and then its exit status will be checked against the _Exit
10176          Status Interval_, which defaults to just the value zero. If the
10177          exit status of the command falls in the interval, it is
10178          considered a match, otherwise it is not a match.
10179          This option may actually be a list of commands. The first one
10180          that exists and is executable is used. That makes it possible to
10181          use the same configuration with Unix _Alpine_ and _PC-Alpine_.
10182          If none of the commands in the list exists and is executable
10183          then the rule is _not_ a match. If it is possible that the
10184          command may not exist, you should be careful to structure your
10185          rules so that nothing destructive happens when the command does
10186          not exist. For example, you might have a filter that filters
10187          away spam when there is a match but does nothing when there is
10188          not a match. That would continue to work correctly if the
10189          command didn't exist. However, if you have a filter which
10190          filters away spam when there is not a match and keeps it when
10191          there is a match, that would filter everything if the
10192          categorizer command didn't exist.
10193          The categorizer command is run and the result is the exit status
10194          of that command. If that exit status falls in the _Exit Status
10195          Interval_ then it is considered a match, otherwise it is not a
10196          match. Of course for the entire rule to match, it must also be
10197          checked against the other defined parts of the Pattern.
10198          The _Exit Status Interval_ defaults to the single value 0
10199          (zero). If you define it, it should be set to something like:
10200
10201                       (min_exit_value,max_exit_value)
10202          where "min_exit_value" and "max_exit_value" are integers. The
10203          special values "INF" and "-INF" may be used for large positive
10204          and negative integers.
10205          Actually, a list of intervals may be used if you wish. A list
10206          would look like
10207
10208   (min_exit_value1,max_exit_value1),(min_exit_value2,max_exit_value2),...
10209          When there is an _Exit Status Interval_ defined, it is a match
10210          if the exit status of the categorizer command is contained in
10211          any of the intervals. The intervals include both endpoints.
10212          The default interval is
10213
10214                                    (0,0)
10215          and it matches only if the command exits with exit status equal
10216          to zero.
10217          It is also possible to set a _Character Limit_ for the
10218          categorizer command. Setting this option makes it possible to
10219          limit how much of the message is made available to the
10220          categorizer command as input. The default value (-1) means that
10221          the entire message is fed to the command. A value of 0 (zero)
10222          means that only the headers of the message are made available. A
10223          positive integer means that the headers plus that many
10224          characters from the body of the message are passed to the
10225          categorizer.
10226
10227Configuring News
10228
10229   _Alpine_ can access news folders in any one of three different ways:
10230
10231   REMOTE NNTP
10232          Using the Network News Transport Protocol (NNTP) to access news
10233          on a remote news server. In this case the newsrc file is stored
10234          on the machine where _Alpine_ is running.
10235
10236          To specify a remote news-collection accessed via NNTP use the
10237          SETUP/collectionList screen's "Add" command. Set the Server:
10238          value to the NNTP server's hostname appended with the
10239          communication method "/service=NNTP", and set the Path: value to
10240          the "#news." namespace (without the quotes).
10241
10242          Instead of specifying a news-collection, you may simply set the
10243          nntp-server option, which will cause _Alpine_ to create a
10244          default news-collection for you. Another NNTP option which may
10245          be of interest is nntp-range.
10246
10247   REMOTE IMAP
10248          Using the Internet Message Access Protocol (IMAP) to access news
10249          on a remote news server. In this case, your newsrc file is
10250          stored on the news server, in your home directory, so you must
10251          have an account on the news server, but you would be running
10252          _Alpine_ on a different machine. The news server must be running
10253          an IMAPd server process.
10254
10255          To specify a remote news-collection accessed via IMAP use the
10256          SETUP/collectionList screen's "Add" command. Set the Server:
10257          value to the IMAP server's hostname, and set the Path: value to
10258          the "#news." namespace (without the quotes).
10259
10260   LOCAL
10261          Using local file access to the news database. In this case, your
10262          newsrc file is stored on the news server, in your home
10263          directory, so you must have an account on the news server, and
10264          you would be running _Alpine_ on the same machine.
10265
10266          To specify a local news-collection use the SETUP/collectionList
10267          screen's "Add" command. Leave the Server: value blank, and set
10268          the Path: value to the "#news." namespace (without the quotes).
10269
10270   NOTE: Should no news-collection be defined as above, _Alpine_ will
10271   automatically create one using the Setup/Config screen's "nntp-server"
10272   variable's value if defined. The collection will be created as a
10273   "Remote NNTP" as described above.
10274
10275   If you are a _PC-Alpine_ user, either option 1 (NNTP) or option 2
10276   (IMAP) is possible. If you don't have an account on the news server, or
10277   if the news server is not running an IMAP daemon, then you must use
10278   NNTP. (If you are not sure, ask your service provider, university, or
10279   company for help.) In this case, your Unix .newsrc file can be
10280   transferred to your PC. A good place to put it would be in the same
10281   directory as your PINERC file, under the name NEWSRC, but you can
10282   specify a different location.
10283
10284   Other configuration features related to news are
10285   Enable-8bit-Nntp-Posting. Compose-Sets-Newsgroup-Without-Confirm,
10286   News-Approximates-New-Status, News-Deletes-Across-Groups,
10287   News-Offers-Catchup-On-Close, News-Post-Without-Validation,
10288   News-Read-in-Newsrc-Order, and Quell-Extra-Post-Prompt.
10289     __________________________________________________________________
10290
10291                     Notes on Configuration and Preferences
10292
10293Alpine in Function Key Mode
10294
10295   The standard _Alpine_ uses alphabetic keys for most commands, and
10296   control keys in the composer. Despite possible appearances, the current
10297   bindings are the result of much discussion and thought. All the
10298   commands in the composer are single control characters. This keeps
10299   things very neat and simple for users. Two character commands in the
10300   composer are a possibility, but we're trying to avoid them because of
10301   the added complexity for the user.
10302
10303   _Alpine_ can also operate in a function-key mode. To go into this mode
10304   invoke _alpine -k_ or (on some UNIX systems) _alpinef._ On a UNIX
10305   system, you can link or copy the _Alpine_ executable to _alpinef_ to
10306   install _alpinef._ Alternatively, users and systems administrators can
10307   set the _use-function-keys_ feature in the personal or system-wide
10308   _Alpine_ configuration file. The command menus at the bottom of the
10309   screen will show _F1-F12 _instead of the alphabetic commands. In
10310   addition, the help screens will be written in terms of function keys
10311   and not alphabetic keys.
10312
10313   One of the results of using _Alpine_ in function-key mode is that users
10314   can only choose from twelve commands at any given time. In
10315   alphabetic-key mode, a user can press a key for a command (say, q to
10316   quit) and that command can be fulfilled. In function-key mode, the
10317   command must be visible on the bottom key-menu in order to be used.
10318   There are some screens where four screens of commands are operational;
10319   function-key users can get to all of them, just not all at once.
10320     __________________________________________________________________
10321
10322Domain Settings
10323
10324   _Alpine_ uses the default domain for a few different tasks. First, it
10325   is tacked onto the user-id for outgoing email. Second, it is tacked
10326   onto all "local" (unqualified) addresses in the "To:" or "Cc:" fields
10327   of messages being composed (unless they are found in the address book
10328   or on an LDAP server). The domain name is also used to generate
10329   message-id lines for each outgoing message and to allow _Alpine_ to
10330   check if an address is that of the current _Alpine_ user.
10331
10332   _Alpine_ determines the domain name according to whichever of these it
10333   finds. The list here is in decreasing order of precedence.
10334    1. Value of the variable user-domain in the system fixed configuration
10335       file
10336    2. Value of the variable _user-domain_ in the personal configuration
10337       file
10338    3. Value of the variable _user-domain_ in the system-wide
10339       configuration file
10340    4. Value from an external database (DNS, /etc/hosts, NIS) as modified
10341       by a system fixed configuration file if use-only-domain-name set to
10342       _yes_
10343    5. Value from an external database (DNS, /etc/hosts, NIS) as modified
10344       by a personal configuration file if _use-only-domain-name_ set to
10345       _yes_
10346    6. Value from an external database (DNS, /etc/hosts, NIS) as modified
10347       by a system configuration file if _use-only-domain-name_ set to
10348       _yes_
10349    7. Unmodified value (host name) from an external database
10350
10351   The easiest way for this system to work is for _PC-Alpine_ users and
10352   UNIX _Alpine_ system administrators to set the _user-domain_ variable.
10353   The variable _use-only-domain-name_ is helpful if your site
10354   supports/requires hostless addressing, but for some reason you don't
10355   want to use the _user-domain_ variable.
10356     __________________________________________________________________
10357
10358Syntax for Collections
10359
10360   In many environments, it is quite common to have collections of
10361   archived mail on various hosts around the network. Using the folder
10362   collections facility in _Alpine_, access to these archives is just as
10363   simple as access to folders on _Alpine_'s local disk.
10364
10365   "Collection" is the word we use in _Alpine_ to describe a set of
10366   folders. A collection corresponds loosely to a "directory" containing
10367   mail folders. Folders within a defined collection can be manipulated
10368   (opened, saved-to, etc) using just their simple name. Any number of
10369   folder collections can be defined, and _Alpine_ will adjust its menus
10370   and prompts to help navigate them.
10371
10372   The way collections are defined in _Alpine_ is with the
10373   folder-collections variable in the _Alpine_ configuration file.
10374   _Folder-collections_ takes a list of one or more collections, each
10375   (optionally) preceded by a user-defined logical name (label). Once
10376   collections are defined, _Alpine_ adjusts its menus and behavior to
10377   allow choosing files by their simple name within the collection.
10378
10379   Consider the following:
10380   folder-collections=  Local-Mail      C:\MAIL\[],
10381                        Remote-Mail     {imap.u.example.edu}mail/[]
10382
10383   The example shows two collections defined (a comma separated list;
10384   newlines in the list are OK if there's one or more spaces before the
10385   next entry), one local and one remote. Each collection is a
10386   space-delimited pair of elements-first an optional logical-name and
10387   second the collection specifier. The logical-name can have spaces if it
10388   has quotes around it (but keeping the logical name short and
10389   descriptive works best). _Alpine_ will use the logical-name (if
10390   provided) to reference all folders in the collection, so the user never
10391   has to see the ugliness of the collection specifier.
10392
10393   The collection specifier can be thought of as an extended IMAP format
10394   (see the Remote Folders section for a description of IMAP format
10395   names). Basically, a pair of square-brackets are placed in the fully
10396   qualified IMAP path where the simple folder name (the part without the
10397   host name and path) would appear. Like IMAP, the path can be either
10398   fully qualified (i.e., with a leading '/') or relative to your home
10399   directory.
10400
10401   An advanced feature of this notation is that a pattern within the
10402   square brackets allows the user to define a collection to be a subset
10403   of a directory. For example, a collection defined with the specifier:
10404        M-Mail          C:MAIL/[m*]
10405
10406
10407   will provide a view in the folder lister of all folders in the PC's
10408   "C:MAIL" directory that start with the letter 'm' (case insensitive
10409   under DOS, of course). Further, the wildcard matching will honor
10410   characters trailing the '*' in the pattern.
10411
10412   From within _Alpine_, the "Folder List" display will be adjusted to
10413   allow browsing of the folders in any defined collection. Even more,
10414   you'll notice in the _Goto_ and _Save_ commands a pair of sub-commands
10415   to rotate through the list of logical collection names, so only a
10416   simple name need be input in order to operate on a folder in any
10417   collection.
10418
10419   The first collection specified in the _folder-collections_ has special
10420   significance. That folder is the "default collection for saves". By
10421   default, in cases where the user does not specify which collection
10422   should be used to _Save_ a message, the default collection for saves
10423   will be used. Also, if the default-fcc is a relative file name, then it
10424   is relative to the default collection for saves. (See also
10425   saved-msg-name-rule.
10426
10427   The notion of collections encompasses both email folders and news
10428   reading. The variable news-collections uses nearly the same format as
10429   _folder-collections_. Newsgroups can be defined for convenient access
10430   via either IMAP or NNTP. There are advantages and disadvantages to both
10431   access methods. In the IMAP case, your news environment state is
10432   maintained on the server and, thus, will be seen by any client. The
10433   downside is that, at the moment, you must have an account on the
10434   server. In the NNTP case, server access is mostly anonymous and no
10435   state/accounting need be maintained on it. The downside is that each
10436   client, for now, must individually maintain news environment state.
10437
10438   An example pinerc entry might be:
10439     news-collections=  Remote-State    {news.u.example.edu}#news.[],
10440                        Local-State     {news.u.example.edu/nntp}#news.[]
10441
10442   Only newsgroups to which you are subscribed are included in the
10443   collection.
10444
10445   The pattern matching facility can be applied so as to define a news
10446   collection which is a subset of all the newsgroups you subscribe to.
10447   For example, this could be a valid collection:
10448                        Newsfeed-News   {news.u.example.edu/nntp}#news.[clari.*]
10449
10450   Collection handling is a tough problem to solve in a general way, and
10451   the explanation of the syntax is a bit ugly. The upside is, hopefully,
10452   that for a little complexity in the _Alpine_ configuration file you get
10453   simple management of multiple folders in diverse locations.
10454
10455   Collection setup is handled by the _Setup/collectionList_ screen.
10456     __________________________________________________________________
10457
10458Syntax for Folder Names
10459
10460   Remote folders are distinguished from local folders by a leading host
10461   name bracketed by '{' and '}'. The path and folder name immediately
10462   following the closing bracket, '}', is interpreted by the remote server
10463   and is in a form compatible with that server (i.e., path delimiters and
10464   naming syntax relative to that server).
10465
10466   The full syntax for a _Alpine_ folder name looks like
10467
10468      [{<remote-specification>}][#<namespace>]<namespace-specific-part>
10469
10470   The square brackets ([]) mean that the part is optional.
10471
10472   If there is no remote-specification, then the folder name is
10473   interpreted locally on the computer running _Alpine_. Local folder
10474   names depend on the operating system used by the computer running
10475   _Alpine_, as well as the configuration of that system. For example,
10476   "C:\ALPINE\FOLDERS\OCT-94" might exist on a PC, and
10477   "~/mail/september-1994" might be a reasonable folder name on a system
10478   running Unix.
10479
10480   _Alpine_ users have the option of using folders which are stored on
10481   some other computer. _Alpine_ accesses remote folders via IMAP (the
10482   Internet Message Access Protocol), or in the case of news, via NNTP
10483   (the Network News Transport Protocol). To be able to access remote
10484   folders in _Alpine_, the remote host must be running the appropriate
10485   server software (imapd or nntpd) and you must correctly specify the
10486   name of the folder to _Alpine_, including the domain name of the remote
10487   machine. For example,
10488
10489                        {monet.art.example.com}INBOX
10490
10491   could be a remote folder specification, and so could
10492
10493               {unixhost.art.example.com}~/mail/september-1994
10494
10495   and
10496
10497                   {winhost.art.example.com}\mymail\SEP-94
10498
10499   Note that in the case of remote folders, the directory/file path in the
10500   specification is determined by the operating system of the remote
10501   computer, _not_ by the operating system of the computer on which you
10502   are running _Alpine_.
10503
10504   As you can tell, the name of the computer is in {} brackets followed
10505   immediately by the name of the folder. (In each of these cases the
10506   optional namespace is missing.) If, as in these examples, there is no
10507   remote access protocol specified, then IMAP is assumed. Check Server
10508   Name Syntax for a more detailed look at what options can be placed
10509   between the brackets. If there are no brackets at all, then the folder
10510   name is interpreted locally on the computer on which you are running
10511   _Alpine_.
10512
10513   To the right of the brackets when a server name is present, or at the
10514   start of the foldername if no server is present, the sharp sign, "#",
10515   holds special meaning. It indicates a folder name outside the area
10516   reserved for your personal folders. In fact, it's used to indicate both
10517   the name of the folder, and a special phrase telling _Alpine_ how to
10518   interpret the name that follows.
10519
10520   So, for example, _Alpine_ can be used to access a newsgroup that might
10521   be available on your computer using:
10522
10523                            #news.comp.mail.pine
10524
10525   The sharp sign indicates the folder name is outside your personal
10526   folder area. The "news." phrase after it tells _Alpine_ to interpret
10527   the remainder of the name as a newsgroup.
10528
10529   Similarly, to access a newsgroup on your IMAP server, you might use
10530   something like:
10531
10532                {wharhol.art.example.com}#news.comp.mail.misc
10533
10534   There are a number of such special phrases (or "namespaces") available.
10535   For a more detailed explanation read about Namespaces.
10536
10537   Note that "INBOX" has special meaning in both local and remote folder
10538   names. The name INBOX refers to your "principal incoming message
10539   folder" and will be mapped to the actual file name used for your INBOX
10540   on any given host. Therefore, a name like "{xxx.art.example.com}INBOX"
10541   refers to whatever file is used to store incoming mail for you on that
10542   particular host.
10543     __________________________________________________________________
10544
10545Server Name Syntax
10546
10547   This section describes the syntax which may be used for server names
10548   which may be associated with remote folders or SMTP servers.
10549
10550   A server name is the hostname of the server. It's a good idea to use
10551   the host's fully-qualified network name.
10552
10553                               foo.example.com
10554
10555   However, IP addresses are allowed if surrounded with square-brackets.
10556
10557                                 [127.0.0.1]
10558
10559   An optional network port number may be supplied by appending a colon
10560   (:) followed by the port number to the server name. By default, the
10561   IMAP port number, 143, is used.
10562
10563                            foo.example.com:port
10564
10565   Besides server name and optional port number, various other optional
10566   parameters may be supplied that alter _Alpine_'s interaction with the
10567   server. A parameter is supplied by appending a slash (/) character
10568   followed by the parameter's name and, depending on the particular
10569   parameter, the value assigned to that name, to the server name (and
10570   optional port number). Parameter names are _not_ case sensitive.
10571   Currently supported parameters include:
10572
10573   User
10574          This parameter requires an associated value, and is intended to
10575          provide the username identifier with which to establish the
10576          server connection. If your SMTP server offers SMTP AUTH
10577          authentication, adding this parameter to the SMTP-Server option
10578          will cause _Alpine_ to attempt to authenticate to the server
10579          using the supplied username. Similarly, if your NNTP server
10580          offers NNTP "AUTHINFO SASL" or "AUTHINFO USER" authentication,
10581          adding this parameter to the NNTP-Server option (or to the
10582          server name for any folder collection using NNTP) will cause
10583          _Alpine_ to attempt to authenticate to the server using the
10584          supplied username. An example might be:
10585
10586                                 /user=katie
10587
10588   TLS
10589          Normally, when a new connection is made an attempt is made to
10590          negotiate a secure (encrypted) session using Transport Layer
10591          Security (TLS). If that fails then a non-encrypted connection
10592          will be attempted instead. This is a unary parameter indicating
10593          communication with the server must take place over a TLS
10594          connection. If the attempt to use TLS fails then this parameter
10595          will cause the connection to fail instead of falling back to an
10596          unsecure connection.
10597
10598                                    /tls
10599
10600   SSL
10601          This is a unary parameter indicating communication with the
10602          server should take place over a Secure Socket Layer connection.
10603          The server must support this method, and be prepared to accept
10604          connections on the appropriate port (993 by default). _Alpine_
10605          must be linked with an SSL library for this option to be
10606          operational.
10607
10608                                    /ssl
10609
10610   NoValidate-Cert
10611          Do not validate certificates (for TLS or SSL connections) from
10612          the server. This is needed if the server uses self-signed
10613          certificates or if _Alpine_ cannot validate the certificate for
10614          some other known reason.
10615
10616   Anonymous
10617          This is a unary parameter (that means it does not have a value)
10618          indicating that the connection be logged in as "anonymous"
10619          rather than a specific user. Not all servers offer anonymous
10620          access; those which do generally only offer read-only access to
10621          certain "public" folders.
10622
10623                                 /anonymous
10624
10625   Secure
10626          This is a unary parameter indicating that the connection use the
10627          most secure authentication method mutually supported by _Alpine_
10628          and the server. _Alpine_ is capable of authenticating
10629          connections to the server using several methods. By default,
10630          _Alpine_ will attempt each method until either a connection is
10631          established or the list of methods is exhausted. This parameter
10632          causes _Alpine_ to instead fail the connection if the first
10633          (generally most "secure") method fails.
10634
10635                                   /secure
10636
10637   Submit
10638          This is a unary parameter for use with the "SMTP-Server" option.
10639          It indicates that the connection should be made to the Submit
10640          server (RFC 3676) (port 587) instead of the SMTP port (25). At
10641          the time this help was written the submit option was equivalent
10642          to specifying port 587.
10643
10644                                   /submit
10645
10646          or
10647
10648                                  host:587
10649
10650   Debug
10651          This is a unary parameter indicating that the connection be
10652          established in a verbose mode. Basically, it causes _Alpine_ to
10653          log the communication with the server in _Alpine_'s debug file.
10654          Normally, the alpine -d command-line flag would be used instead.
10655
10656   NoRsh
10657          By default, _Alpine_ attempts to login using "rsh", the UNIX
10658          remote shell program. Including "NoRsh" will cause connections
10659          to this server to skip the "rsh" attempt. This might be useful
10660          to avoid long timeouts caused by rsh firewalls, for example.
10661
10662   Service
10663          This parameter requires an associated value. The default value
10664          is "IMAP" which indicates communication with the server based on
10665          the IMAP4rev1 protocol (defined in RFC 3501 -- see
10666          http://www.imap.org/docs/rfc3501.html). Other service values
10667          include:
10668
10669        NNTP
10670                This value indicates communication with the server takes
10671                place via the Network News Transfer Protocol. Use this to
10672                define a collection of newsgroups on a remote news server.
10673                So
10674
10675                                /service=NNTP
10676
10677                or just
10678
10679                                    /NNTP
10680
10681                is the way to specify NNTP access.
10682
10683        POP3
10684                This value indicates communication with the server takes
10685                place via the Post Office Protocol 3 protocol.
10686
10687                                /service=POP3
10688
10689                or just
10690
10691                                    /POP3
10692
10693                Note that there are several important issues to consider
10694                when selecting this option:
10695
10696              1. POP3 provides access to only your INBOX. In other words,
10697                 secondary folders such as your "saved-messages" are
10698                 inaccessible.
10699              2. _Alpine_'s implementation of POP3 does not follow the
10700                 traditional POP model and will leave your mail on the
10701                 server. Refer to the Mail Drop functionality for a
10702                 possible way around this problem.
10703              3. See the discussion about new-mail checking in
10704                 Folder-Reopen-Rule.
10705
10706   Note that it is possible to include more than one parameter in a server
10707   specification by concatenating the parameters. For example:
10708
10709            foo.example.com:port/user=katie/novalidate-cert/debug
10710     __________________________________________________________________
10711
10712Folder Namespaces
10713
10714   A _Alpine_ folder name looks like
10715
10716     [{<remote-specification>}][#<namespace>][<namespace-specific-part>]
10717
10718   The local part of a folder name has an optional "Namespace" which tells
10719   _Alpine_ how to interpret the rest of the name.
10720
10721   By default the folder name is interpreted as defining a section of your
10722   personal folder area. This area and how you specify it are defined by
10723   the server, if one is specified, or, typically, the home directory, if
10724   no server is defined.
10725
10726   If a namespace is specified, it begins with the sharp, "#", character
10727   followed by the name of the namespace and then the namespace's
10728   path-element-delimiter. Aside from the path's format, namespaces can
10729   also imply access rights, content policy, audience, location, and,
10730   occasionally, access methods.
10731
10732   Each server exports its own set (possibly of size one) of namespaces.
10733   Hence, it's likely communication with your server's administrator will
10734   be required for specific configurations. Some of the more common
10735   namespaces, however, include:
10736
10737   #news.
10738          This specifies a set of folders in the newsgroup namespace.
10739          Newsgroup names are hierarchically defined with each level
10740          delimited by a period.
10741
10742                            #news.comp.mail.pine
10743
10744   #public/
10745          This specifies a folder area that the server may export to the
10746          general public.
10747
10748   #shared/
10749          This specifies a folder area that the folder may export to
10750          groups of users.
10751
10752   #ftp/
10753          This specifies a folder area that is the same as that it may
10754          have exported via the "File Transfer Protocol".
10755
10756   #mh/
10757          This specifies the personal folder area associated with folders
10758          and directories that were created using the MH message handling
10759          system.
10760
10761   #move/
10762          This namespace is interpreted locally by _Alpine_. It has an
10763          unusual interpretation and format.
10764
10765           #move<DELIM><MailDropFolder><DELIM><DestinationFolder>
10766
10767          The #move namespace is followed by two folder names separated by
10768          a delimiter character. The delimiter character may be any
10769          character which does not appear in the MailDropFolder name. The
10770          meaning of #move is that mail will be copied from the
10771          MailDropFolder to the DestinationFolder and then deleted (if
10772          possible) from the MailDropFolder. Periodic checks at frequency
10773          Mail-Check-Interval, but with a minimum time between checks set
10774          by MailDrop-Check-Minimum, are made for new mail arriving in the
10775          MailDropFolder. An example which copies mail from a POP inbox to
10776          a local folder follows
10777
10778          #move+{popserver.example.com/pop3/ssl}inbox+local folder
10779
10780          To you it appears that mail is being delivered to the local
10781          folder when it is copied from the MailDropFolder, and you read
10782          mail from the local folder.
10783
10784          Note that if the DestinationFolder does not exist then the
10785          messages are not copied from the MailDropFolder. A #move folder
10786          may only be used as an Incoming folder or an Inbox. When you are
10787          in the FOLDER LIST of Incoming Message Folders (after turning on
10788          the enable-incoming-folders option) the Add command has a
10789          subcommand "Use Mail Drop" which may be helpful for defining the
10790          folder in your _Alpine_ configuration. The same is true when you
10791          edit the Inbox-Path option in Setup/Config. Each of these
10792          configuration methods will also create the DestinationFolder if
10793          it doesn't already exist. If you are having problems, make sure
10794          the DestinationFolder exists.
10795
10796   In addition, the server may support access to other user's folders,
10797   provided you have suitable permissions. Common methods use a prefix of
10798   either "~user/", or "/user/" to indicate the root of the other user's
10799   folder area.
10800     __________________________________________________________________
10801
10802What is a Mail Drop?
10803
10804   In some situaions it may make sense to have your mail delivered to one
10805   folder (the Mail Drop) and then when you want to read mail that has
10806   been delivered to the Mail Drop folder _Alpine_ will move it to another
10807   destination folder. Often the Mail Drop will be a remote folder and
10808   messages will be moved from there to a local destination folder.
10809
10810   One example where this might make sense is if the Mail Drop folder is
10811   accessible only with the POP protocol. You could designate your POP
10812   inbox as the Mail Drop folder and have _Alpine_ move mail from there to
10813   a local (on the same machine _Alpine_ is running on) destination
10814   folder, where you'll read it.
10815
10816   A Mail Drop may only be used as your Inbox or as an Incoming folder.
10817
10818   There is no attempt to synchronize the contents of the destination
10819   folder with the contents of the Mail Drop folder. All that happens is
10820   that all of the messages in the Mail Drop folder are copied to the
10821   destination folder and then they are deleted and expunged (if possible)
10822   from the Mail Drop folder. The next time a check for new mail is made,
10823   any messages in the Mail Drop folder are once again copied to the
10824   destination folder and deleted and expunged from the Mail Drop folder.
10825   (If the Mail Drop folder is a news group, then the messages can't be
10826   expunged from the newsgroup. Instead, only Recent messages are copied
10827   from the newsgroup to the destination folder.)
10828
10829   Configuration of a Mail Drop is a little different from configuration
10830   of a folder which does not use a Mail Drop because you have to specify
10831   two folder names instead of one. The two folders may be any types of
10832   folders that _Alpine_ can normally use. They don't have to be a remote
10833   folder and a local folder, that is simply the most common usage. When
10834   you use a Mail Drop folder _Alpine_ will periodically re-open the Mail
10835   Drop to check for new mail. The new-mail checks will happen at the
10836   frequency set with the Mail-Check-Interval option, but with a minimum
10837   time (MailDrop-Check-Minimum) between checks. Because of this minimum
10838   you may notice that new mail does not appear promptly when you expect
10839   it. The reason for this is to protect the server from over-zealous
10840   opening and closing of the Mail Drop folder. If the user initiates the
10841   check by typing ^L (Ctrl-L) or the Next command when at the end of the
10842   folder index, then the check will happen, regardless of how long it has
10843   been since the previous check.
10844
10845   If there is new mail, that mail will be copied to the destination
10846   folder and then will be deleted from the Mail Drop. Note that using a
10847   Mail Drop with a local destination folder does not make sense if you
10848   read mail from more than one machine, because the mail is downloaded to
10849   the destination folder (which is accessible from only one machine) and
10850   deleted from the Mail Drop.
10851
10852   The feature Maildrops-Preserve-State modifies the operation of Mail
10853   Drops.
10854
10855   The actual syntax used by _Alpine_ for a folder that uses a Mail Drop
10856   is:
10857
10858           #move<DELIM><MailDropFolder><DELIM><DestinationFolder>
10859
10860   The brackets are not literal.
10861
10862                                   <DELIM>
10863
10864   is a single character which does not appear in the MailDropFolder name.
10865   If the name doesn't contain spaces then it can be a space character.
10866   The two folder names are full technical folder names as used by
10867   _Alpine_. Here are a couple examples to give you an idea what is being
10868   talked about:
10869
10870             #move {popserver.example.com/pop3}inbox localfolder
10871
10872    #move+{nntpserver.example.com/nntp}#news.comp.mail.pine+local folder
10873
10874   A #move folder may only be used as an Incoming folder or an Inbox. When
10875   you are in the FOLDER LIST of Incoming Message Folders (after turning
10876   on the Enable-Incoming-Folders option) the Add command has a subcommand
10877   "Use Mail Drop" which may be helpful for defining the folder in your
10878   _Alpine_ configuration. The same is true when you edit the Inbox-Path
10879   option in Setup/Config.
10880   if it doesn't already exist. If you are having problems, make sure the
10881   DestinationFolder exists.
10882     __________________________________________________________________
10883
10884Sorting a Folder
10885
10886   The mail index may be sorted by arrival, date, subject, from, size,
10887   score, to, or cc order. Each sort order can also be reversed. The _$_
10888   command will prompt the user for the sort order. The sort order can
10889   also be specified on the command line with the _-sort_ flag or
10890   (equivalently) with the sort-key variable in the _pinerc_ file. When a
10891   user changes folders, the sort order will go back to the original sort
10892   order. The command line (_-sort_) or configuration file sort
10893   specification (_sort-key_) changes the original sort order.
10894
10895   When a folder is sorted and new mail arrives in the folder it will be
10896   inserted in its properly sorted place. This can be a little odd when
10897   the folder is sorted by something like the subject. It can also be a
10898   little slow if you are viewing a large, sorted _INBOX_, since the
10899   _INBOX_ will have to be re-sorted whenever new mail arrives.
10900
10901   The sorts are all independent of case and ignore leading or trailing
10902   white space. There are actually two forms of subject sort. One called
10903   _Subject_ and the other called _OrderedSubj_. They both ignore "Re:" at
10904   the beginning and "(fwd)" at the end of the subjects. _Subject_ sorts
10905   all the subjects alphabetically. _OrderedSubj_ sorts by subjects
10906   alphabetically, groups messages with the same subject (pseudo-threads),
10907   then sorts the groups by the date of the first message of the group.
10908   Sorting by _Thread_ was added after _OrderedSubj_ and is usually a
10909   better method. Thread sorting uses information in the message headers
10910   References, Message-ID, and Subject. It is possible the sort will be
10911   slightly slower with a Thread sort than with an OrderedSubj sort. The
10912   sort by sender sorts by the user-id (part before the "@"), not the full
10913   name. The arrival sort is no sort at all and the date sort depends on
10914   the format of the date. Some dates are in strange formats and are
10915   unparsable. The time zone is also taken into account.
10916
10917   Sorting large mail folders can be very slow since it requires fetching
10918   all the headers of the mail messages. With UNIX _Alpine_, only the
10919   first sort is slow since _Alpine_ keeps a copy of all the headers. One
10920   exception is sorting in reverse arrival order. This is fast because no
10921   headers have to be examined. _Alpine_ will show progress as it is
10922   sorting.
10923     __________________________________________________________________
10924
10925Alternate Editor
10926
10927   In the _Alpine_ composer you can use any text editor, such as _vi_ or
10928   _emacs,_ for composing the message text. The addresses and subject still
10929   must be edited using the standard _Alpine_ composer. If you include the
10930   feature enable-alternate-editor-cmd in your _pinerc_ you can type _^__
10931   while in the body of the message in the composer and be prompted for
10932   the editor. If you also set the editor variable in your _pinerc_ then
10933   _^__ will invoke the configured editor when you type it.
10934
10935   Turning on the feature enable-alternate-editor-implicitly will
10936   automatically invoke the editor you have defined with the _editor_
10937   variable whenever you enter the body of a message you are composing.
10938   For example, when you move out of the last header line and into the
10939   body of the message, the alternate editor will be automatically
10940   invoked.
10941
10942   We know that many people would like to use the alternate editor to edit
10943   the mail header as well. We considered several designs for this and
10944   didn't come up with one that we liked and that was easy to implement.
10945   One of the main problems is that you lose access to the address book.
10946     __________________________________________________________________
10947
10948Signatures and Signature Placement
10949
10950   If the file _~/.signature_ (UNIX) or _<PINERC_directory>\PINE.SIG (PC)
10951   exists, it will be included in all outgoing messages. It is included
10952   before composition starts so that the user has a chance to edit it out
10953   if he or she likes. The file name for the signature can be changed by
10954   setting the signature-file variable in the _pinerc_. If the feature
10955   enable-sigdashes is turned on then the line consisting of the three
10956   characters "-- " is prepended to the signature file. When Replying or
10957   Forwarding a message different signatures my be automatically included
10958   by configuring them in the Roles setup screen. It's easy to include
10959   different signatures by hand, by having multiple signature files
10960   (_.sig1, .sig2, .sig3, etc_) and choosing to include (^R in the
10961   composer) the correct one for the message being sent.
10962
10963   _Alpine_'s default behavior encourages a user to put his or her
10964   contribution before the inclusion of the original text of the message
10965   being forwarded or replied to, This is contrary to some conventions,
10966   but makes the conversation more readable when a long original message
10967   is included in a reply for context. The reader doesn't have to scroll
10968   through the original text that he or she has probably already seen to
10969   find the new text. If the reader wishes to see the old message(s), the
10970   reader can scroll further into the message. Users who prefer to add
10971   their input at the end of a message should set the signature-at-bottom
10972   feature. The signature will then be appended to the end of the message
10973   after any included text. This feature applies when _Reply_ing, not when
10974   _Forward_ing.
10975     __________________________________________________________________
10976
10977Feature List Variable
10978
10979   _Alpine_ used to have _feature levels_ for users with different amounts
10980   of experience. We found that this was too restrictive. _Alpine_ now has
10981   a feature-list instead. Each user may pick and choose which features
10982   they would like enabled (simple to do in the _Setup/Config_ screen).
10983   There is a short description of each in Configuration Features. There
10984   is also a short on-line help explaining the effect of each of the
10985   features in the _Setup/Config_ screen. When the cursor is highlighting
10986   a feature, the _?_ command will show the help text for that feature.
10987   Features don't have values, they are just turned on or off. They are
10988   all off by default.
10989
10990   The _feature-list_ variable is different from all other configuration
10991   variables in that its value is additive. That is, the system-wide
10992   configuration file can have some features turned on by default. The
10993   user can select other features in their personal configuration file and
10994   those features will be _added_ to the set of features turned on in the
10995   system-wide configuration file. (With all other configuration
10996   variables, the user's values _replace_ the system-wide values.)
10997   Likewise, additional features may be set on the command-line with the
10998   argument "-feature-list=". These will be added to the others.
10999
11000   The treatment of _feature-list_ in the system-wide _fixed_
11001   configuration file is also different from other variables. The system
11002   management can fix the value of individual features by placing them in
11003   the fixed configuration file. Users will not be able to alter those
11004   features, but will still be able to set the other non-restricted
11005   features the way they like.
11006
11007   Because _feature-list_ is additive, there is a way to turn features off
11008   as well as on. Prepending the prefix "no-" to any feature sets it to
11009   off. This is useful for over-riding the system-wide default in the
11010   personal configuration file or for over-riding the system-wide default
11011   or the personal configuration value on the command line. For example,
11012   if the system-wide default configuration has the _quit-without-confirm_
11013   feature set, the user can over-ride that (and turn it off) by including
11014   _no-quit-without-confirm_ in the personal configuration file or by
11015   giving the command line argument
11016   _-feature-list=no-quit-without-confirm._ More features (options) will no
11017   doubt continue to be added.
11018     __________________________________________________________________
11019
11020Configuration Inheritance
11021
11022   We start with an explanation of how configuration works in hopes of
11023   making it easier to describe how inheritance works.
11024
11025   _Alpine_ uses a hierarchy of configuration values from different
11026   locations. There are five ways in which each configuration option
11027   (configuration variable) can be set. In increasing order of precedence
11028   they are:
11029
11030    1. the system-wide configuration file.
11031    2. the personal configuration file
11032    3. the personal exceptions file
11033    4. a command line argument
11034    5. the system-wide _fixed_ configuration file (Unix _Alpine_ only)
11035
11036   The fixed configuration file is normally
11037   /usr/local/lib/pine.conf.fixed.
11038
11039   The system-wide configuration file is normally /usr/local/lib/pine.conf
11040   for Unix _Alpine_ and is normally not set for _PC-Alpine_. For
11041   _PC-Alpine_, if the environment variable _$PINECONF_ is set, that is
11042   used for the system-wide configuration. This location can be set or
11043   changed on the command line with the -P flag. The system-wide
11044   configuration file can be either a local file or a remote configuration
11045   folder.
11046
11047   For Unix _Alpine_, the personal configuration file is normally the file
11048   .pinerc in the user's home directory. This can be changed with the -p
11049   command line flag. For _PC-Alpine_, the personal configuration file is
11050   in $PINERC or <PineRC registry value> or ${HOME}\ALPINE\PINERC or
11051   <ALPINE.EXE dir>\PINERC. This can be changed with the -p command line
11052   flag. If -p or $PINERC is used, the configuration data may be in a
11053   local file or a remote config folder.
11054
11055   For Unix _Alpine_, the personal exceptions configuration file is
11056   specified with the "-x exceptions_config" command line argument.
11057   "Exceptions_config" may be either a local file or a remote
11058   configuration folder. If there is no "-x" command line option, _Alpine_
11059   will look for the file ".pinercex" in the same local directory that the
11060   regular config file is located in. If the regular config file is remote
11061   then Unix _Alpine_ looks in the home directory for ".pinercex".
11062
11063   For _PC-Alpine_, the personal exceptions configuration file is
11064   specified with the "-x exceptions_config" command line argument. If
11065   there is no "-x" command line argument the environment variable
11066   $PINERCEX may be set to the name of the "exceptions_config" instead.
11067   "Exceptions_config" may be either a local file or a remote
11068   configuration folder. If there is no "-x" command line option and
11069   $PINERCEX is not set, _PC-Alpine_ will look for the file "PINERCEX" in
11070   the same local directory that the regular config file is located in. If
11071   the regular config file is remote then _PC-Alpine_ looks in the local
11072   directory specified by the "-aux local_directory" command line
11073   argument, or the directory ${HOME}\ALPINE, or in <ALPINE.EXE directory>
11074   for a file named "PINERCEX".
11075
11076   To reiterate, the value of a configuration option is taken from the
11077   last location in the list above in which it is set. Or, thinking about
11078   it slightly differently, a default value for an option is established
11079   in the system-wide configuration file (or in the source code if there
11080   is no value in the system-wide file). That default remains in effect
11081   until and unless it is overridden by a value in a location further down
11082   the list, in which case a new "default" value is established. As we
11083   continue down the list of locations we either retain the value at each
11084   step or establish a new value. The value that is still set after going
11085   through the whole list of configuration locations is the one that is
11086   used.
11087
11088   So, for example, if an option is set in the system-wide configuration
11089   file and in the personal configuration file, but is not set in the
11090   exceptions, on the command line, or in the fixed file; then the value
11091   from the personal configuration file is the one that is used. Or, if it
11092   is set in the system-wide config, in the personal config, not in the
11093   exceptions, but is set on the command line; then the value on the
11094   command line is used.
11095
11096   Finally we get to inheritance. For configuration options which are
11097   lists, like "smtp-server" or "incoming-folders", the inheritance
11098   mechanism makes it possible to _combine_ the values from different
11099   locations instead of _replacing_ the value. This is true of all
11100   configuration lists other than the "feature-list", for which you may
11101   already set whatever you want at any configuration location (by using
11102   the "no-" prefix if necessary).
11103
11104   To use inheritance, set the first item in a configuration list to the
11105   token "INHERIT". If the first item is "INHERIT", then instead of
11106   replacing the default value established so far, the rest of the list is
11107   appended to the default value established so far and that is the new
11108   value.
11109
11110   Here is an example which may make it clearer. Suppose we have:
11111
11112 System-wide config :   smtp-server = smtp1.corp.com, smtp2.corp.com
11113 Personal config    :   smtp-server = INHERIT, mysmtp.home
11114 Exceptions config  :   smtp-server = <No Value Set>
11115 Command line       :   smtp-server = <No Value Set>
11116 Fixed config       :   smtp-server = <No Value Set>
11117
11118   This would result in an effective smtp-server option of
11119
11120 smtp-server = smtp1.corp.com, smtp2.corp.com, mysmtp.home
11121
11122   The "INHERIT" token can be used in any of the configuration files and
11123   the effect cascades. For example, if we change the above example to:
11124
11125 System-wide config :   smtp-server = smtp1.corp.com, smtp2.corp.com
11126 Personal config    :   smtp-server = INHERIT, mysmtp.home
11127 Exceptions config  :   smtp-server = INHERIT, yoursmtp.org
11128 Command line       :   smtp-server = <No Value Set>
11129 Fixed config       :   smtp-server = <No Value Set>
11130
11131   This would result in:
11132
11133 smtp-server = smtp1.corp.com, smtp2.corp.com, mysmtp.home, yoursmtp.org
11134
11135   Unset variables are skipped over (the default value is carried forward)
11136   so that, for example:
11137
11138 System-wide config :   smtp-server = smtp1.corp.com, smtp2.corp.com
11139 Personal config    :   smtp-server = <No Value Set>
11140 Exceptions config  :   smtp-server = INHERIT, yoursmtp.org
11141 Command line       :   smtp-server = <No Value Set>
11142 Fixed config       :   smtp-server = <No Value Set>
11143
11144   produces:
11145
11146 smtp-server = smtp1.corp.com, smtp2.corp.com, yoursmtp.org
11147
11148   If any later configuration location has a value set (for a particular
11149   list option) which does _not_ begin with "INHERIT", then that value
11150   replaces whatever value has been defined up to that point. In other
11151   words, that cancels out any previous inheritance.
11152
11153 System-wide config :   smtp-server = smtp1.corp.com, smtp2.corp.com
11154 Personal config    :   smtp-server = INHERIT, mysmtp.org
11155 Exceptions config  :   smtp-server = yoursmtp.org
11156 Command line       :   smtp-server = <No Value Set>
11157 Fixed config       :   smtp-server = <No Value Set>
11158
11159   results in:
11160
11161 smtp-server = yoursmtp.org
11162
11163   For some configuration options, like "viewer-hdr-colors" or
11164   "patterns-roles", it is difficult to insert the value "INHERIT" into
11165   the list of values for the option using the normal Setup tools. In
11166   other words, the color setting screen (for example) does not provide a
11167   way to input the text "INHERIT" as the first item in the
11168   viewer-hdr-colors option. The way to do this is to either edit the
11169   pinerc file directly and manually insert it, or turn on the
11170   "expose-hidden-config" feature and insert it using the Setup/Config
11171   screen.
11172     __________________________________________________________________
11173
11174Using Environment Variables
11175
11176   The values of _Alpine_ configuration options may include environment
11177   variables which are replaced by the value of the variable at the time
11178   _Alpine_ is run (and also at the time the config option is changed). The
11179   syntax to use environment variables is a subset of the common Unix
11180   shell dollar-syntax. For example, if
11181
11182                                    $VAR
11183
11184   appears in the value of a _Alpine_ configuration option it is looked up
11185   in the environment (using getenv("VAR")) and its looked-up value
11186   replaces the $VAR part of the option value. To include a literal dollar
11187   sign you may precede the dollar sign with another dollar sign. In other
11188   words, if the text
11189
11190                                   $$text
11191
11192   is the value of a configuration option, it will be expanded to
11193
11194                                    $text
11195
11196   and no environment lookup will be done. For Unix _Alpine_ it will also
11197   work to use a backslash character to escape the special meaning of the
11198   dollar sign, but $$ is preferable since it works for both _PC-Alpine_
11199   and Unix _Alpine_, allowing the configuration option to be in a shared
11200   configuration file.
11201
11202   This all sounds more complicated than it actually is. An example may
11203   make it clearer. Unfortunately, the way in which environment variables
11204   are set is OS-dependent and command shell-dependent. In some Unix
11205   command shells you may use
11206
11207                         PERSNAME="Fred Flintstone"
11208
11209                               export PERSNAME
11210
11211   Now, if you use _Alpine_'s Setup/Config screen to set
11212
11213                           personal-name=$PERSNAME
11214
11215   the $PERSNAME would be replaced by Fred Flintstone so that this would
11216   be equivalent to
11217
11218                        personal-name=Fred Flintstone
11219
11220   Note, environment variable substitution happens after configuration
11221   options which are lists are split into the separate elements of the
11222   list, so a single environment variable can't contain a list of values.
11223
11224   The environment variable doesn't have to be the only thing after the
11225   equal sign. However, if the name of the variable is not at the end of
11226   the line or followed by a space (so that you can tell where the
11227   variable name ends), it must be enclosed in curly braces like
11228
11229                                   ${VAR}
11230
11231   It is always ok to use the braces even if you don't need to.
11232
11233   It is also possible to set a default value for an environment variable.
11234   This default value will be used if the environment variable is not set
11235   (that is, if getenv("VAR") returns NULL). The syntax used to set a
11236   default value is
11237
11238                            ${VAR:-default value}
11239
11240   If the config file contains
11241
11242                    personal-name=${VAR:-Fred Flintstone}
11243
11244   then when _Alpine_ is run VAR will be looked up in the environment. If
11245   VAR is found then personal-name will have the value that VAR was set
11246   to, otherwise, personal-name will be set to Fred Flintstone, the
11247   default value.
11248
11249   An example where an environment variable might be useful is the
11250   variable inbox-path in the global configuration file. Suppose most
11251   users used the server
11252
11253                           imapserver.example.com
11254
11255   but that there were some exceptions who used
11256
11257                          altimapserver.example.com
11258
11259   In this case, the system manager might include the following line in
11260   the systemwide default _Alpine_ configuration file
11261
11262              inbox-path=${IMAPSERVER:-imapserver.example.com}
11263
11264   For the exceptional users adding
11265
11266                    IMAPSERVER=altimapserver.example.com
11267
11268   to their environment should work.
11269
11270   Another example might be the case where a user has to use a different
11271   SMTP server from work and from home. The setup might be something as
11272   simple as
11273
11274                              smtp-server=$SMTP
11275
11276   or perhaps a default value could be given. Note that, as mentioned
11277   above, the variable SMTP cannot contain a list of SMTP servers.
11278     __________________________________________________________________
11279
11280SMTP Servers
11281
11282   It is sometimes desirable to set smtp-server=localhost instead of
11283   setting sendmail-path to overcome the inability to negotiate ESMTP
11284   options when _sendmail_ is invoked with the _-t_ option. Sendmail can
11285   also be subject to unacceptable delays due to slow DNS lookups and
11286   other problems.
11287
11288   It is sometimes desirable to configure an SMTP server on a port other
11289   than the default port 25. This may be used to provide an alternate
11290   service that is optimized for a particular environment or provides
11291   different features from the port 25 server. An example would be a
11292   program that negotiates ESMTP options and queues a message, but does
11293   not attempt to deliver messages. This would avoid delays frequently
11294   encountered when invoking _sendmail_ directly.
11295
11296   A typical configuration would consist of
11297     * A program that implements the SMTP or ESMTP protocol via stdio.
11298     * An entry in /etc/services for the alternate service.
11299     * An entry in /etc/inetd.conf for the alternate service.
11300     * An entry in /usr/local/lib/pine.conf,
11301       /usr/local/lib/pine.conf.fixed or ~/.pinerc.
11302     __________________________________________________________________
11303
11304MIME.Types file
11305
11306   _Alpine_'s MIME-TYPE support is based on code contributed by Hans
11307   Drexler &LT;drexler@mpi.nl&GT;. _Alpine_ assigns MIME Content-Types
11308   according to file name extensions found in the system-wide files
11309   /usr/local/lib/mime.types and /etc/mime.types, and a user specific
11310   ~/.mime.types file.
11311
11312   In Windows, _Alpine_ looks in the same directory as the PINERC file and
11313   the same dir as ALPINE.EXE. This is similar to the UNIX situation with
11314   personal config info coming before potentially shared config data. An
11315   alternate search path can be specified by setting the
11316   mimetype-search-path variable in the user or system-wide configuration
11317   or by setting the MIMETYPES environment variable.
11318
11319   These files specify file extensions that will be connected to a mime
11320   type. Lines beginning with a '#' character are treated as comments and
11321   ignored. All other lines are treated as a mime type definition. The
11322   first word is a _type/subtype_ specification. All following words are
11323   file _extensions_ belonging to that type/subtype. Words are separated
11324   by whitespace characters. If a file extension occurs more than once,
11325   then the first definition determines the file type and subtype. A
11326   couple sample lines from a mime.types file follow:
11327
11328image/gif         gif
11329text/html         html htm
11330video/mpeg        mpeg mpg mpe
11331
11332     __________________________________________________________________
11333
11334Color Details
11335
11336   UNIX _Alpine_ may display color if the terminal or terminal emulator
11337   you are using is capable of displaying colors. If the terminal supports
11338   ANSI color escape sequences you will be able to turn color on using the
11339   color-style option and setting it to the value _force-ansi-8color_ or
11340   _force-ansi-16color_. If instead you'd like _Alpine_ to automatically
11341   detect whether or not you are on a color terminal, set _color-style_ to
11342   _use-termdef_ _and_ configure the termcap entry to describe your
11343   terminal's color capabilities.
11344
11345   If the _color-style_ option is set to _use-termdef_, _Alpine_ looks in
11346   the terminal capabilities database, TERMINFO or TERMCAP, depending on
11347   how _Alpine_ was compiled, to decide whether or not your terminal is
11348   capable of color. For TERMINFO compiled _Alpine_s, the capabilities
11349   that are used for color are "colors", "setaf", "setab", "op", and
11350   "bce". If you have a terminal with color capabilities described by the
11351   "scp" capability, _Alpine_ does not support it. The capabilities "setf"
11352   and "setb" may be used instead of "setaf" and "setab". The capability
11353   "bce" is optional and is used as an optimization, the other
11354   capabilities are required. For TERMCAP compiled _Alpine_s, the
11355   capabilities that are used for color are "Co", "AF", "AB", "op", and
11356   "ut". The capabilities "Sf" and "Sb" may be used instead of "AF" and
11357   "AB", though this isn't a useful feature.
11358
11359   Here are some short descriptions of the capabilities listed above. The
11360   TERMINFO name is listed, followed by the TERMCAP name in parentheses.
11361   _colors_ (_Co_)
11362          The number of different colors.
11363   _setaf_ (_AF_)
11364          Set ANSI foreground color.
11365   _setab_ (_AB_)
11366          Set ANSI background color.
11367   _setf_ (_Sf_)
11368          Set foreground color. Alternate form of _setaf_.
11369   _setb_ (_Sb_)
11370          Set background color. Alternate form of _setab_.
11371   _op_ (_op_)
11372          Set default pair to its original value.
11373   _bce_ (_ut_)
11374          Screen is erased with current background color instead of
11375          default background.
11376
11377   A standard ANSI terminal which supports color will have a TERMINFO
11378   entry which contains:
11379  colors#8
11380  setaf=\E[3%p1%dm
11381  setab=\E[4%p1%dm
11382  op=\E[39;49m
11383  bce
11384
11385   or the TERMCAP equivalent:
11386  Co#8
11387  AF=\E[3%dm
11388  AB=\E[4%dm
11389  op=\E[39;49m
11390  ut
11391
11392   If there are eight colors, the program uses colors 0, 1, ..., 7. For an
11393   ANSI terminal, the foreground color is set by sending the escape
11394   sequence "Escape LeftBracket 3 color_number m" to the terminal. The
11395   background color is set by sending the sequence "Escape LeftBracket 4
11396   color_number m". ANSI colors zero through seven are defined to be
11397   "black", "red", "green", "yellow", "blue", "magenta", "cyan", and
11398   "white". Some terminal emulators will swap blue and red and swap yellow
11399   and cyan. The capabilities "setf" and "setb" are usually designed for
11400   those terminals so that they will flip the color numbers 1 and 4 and
11401   the numbers 3 and 6 to compensate for this. _Alpine_ will use the ANSI
11402   versions of the capabilities if they exist, and will use the non-ANSI
11403   versions (setf and setb) if the ANSI versions don't exist. Here's a
11404   version which does the flipping. This can only be used with TERMINFO
11405   _Alpine_s, because of the arithmetic, which is not supported by TERMCAP.
11406  colors#8
11407  setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m
11408  setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m
11409  op=\E[39;49m
11410  bce
11411
11412   Some terminal emulators are capable of displaying eight more colors
11413   when the foreground colors 30-37 are replaced with 90-97 and the
11414   background colors 40-47 are replaced with 100-107. These terminals
11415   require a fancy termcap entry which can take foreground colors 0, 1,
11416   ..., 15 and map that into 30, 31, ..., 37, 90, 91, ..., 97, and
11417   similarly for the background colors. Here is a terminfo entry which
11418   will do just that:
11419  colors#16
11420  setaf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%dm
11421  setab=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%dm
11422  op=\E[39;49m
11423  bce
11424
11425   and here is the termcap equivalent:
11426  Co#16
11427  AF=\E[%i%i%>\001\034%>\045\064%dm
11428  AB=\E[%i%i%>\001\046%>\057\064%dm
11429  op=\E[39;49m
11430  ut
11431
11432   This is a terminfo entry for 16 colors that also does the color
11433   flipping:
11434  colors#16
11435  setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{
114364}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m
11437  setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{
114384}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m
11439  op=\E[39;49m
11440  bce
11441
11442   If you are always using the same display it probably won't matter to
11443   you if the color pairs red/blue and cyan/yellow are flipped, since
11444   you'll always be seeing them flipped. You will get different defaults
11445   than on a display with them not flipped, but that's about all. If you
11446   are trying to use the same pinerc file from displays with different
11447   color characteristics, or from _Alpine_ and _PC-Alpine_, you will have
11448   to be more careful. The colors numbered 0 through 7 may be used
11449   portably between different systems if you are careful to make them
11450   correspond to the ANSI order mentioned above. You can check this by
11451   looking at a color configuration screen for one of the colors. The
11452   first eight colors should be in the order above. If they aren't, you
11453   could fix that by modifying your termcap entry on the UNIX system. This
11454   is not possible if your system uses TERMCAP instead of TERMINFO.
11455     __________________________________________________________________
11456
11457S/MIME Overview
11458
11459   UNIX _Alpine_ only.
11460
11461   S/MIME is a standard for the public key encryption and signing of
11462   email. UNIX _Alpine_ contains a basic implementation of S/MIME based on
11463   the OpenSSL libraries.
11464
11465   Some limitations:
11466     * There is no _PC-Alpine_ implementation.
11467     * There is no provision for checking for CRLs (Certificate Revocation
11468       Lists) in _Alpine_.
11469     * This built-in S/MIME implementation is not compatible with and does
11470       not help with PGP.
11471     * There is no mechanism available for feeding either an entire
11472       incoming or an entire outgoing message to an external filter and
11473       using that external filter to do S/MIME or PGP processing.
11474     * Because the implementation currently uses OpenSSL, there is only a
11475       very limited integration with the Mac OS Keychain (the storing and
11476       access of public certificates).
11477     * There is no way to view or manipulate the lists of certificates
11478       from within _Alpine_.
11479
11480   The S/MIME configuration screen is reached by going to the Main Menu
11481   and typing the "S Setup" command followed by "M S/MIME".
11482
11483  S/MIME BASICS
11484
11485   In order to digitally sign messages you send you must have a
11486   public/private key-pair. This may be obtained from a public Certificate
11487   Authority (CA) such as Thawte, Verisign, Comodo, or GoDaddy; or from a
11488   smaller CA such as a university which provides certificates for its
11489   users or a company which provides certificates for its workers. These
11490   certificates are bound to an email address, so the identity being
11491   verified is the email address not a person's name.
11492
11493   Mail is signed by using the sender's private key, which only the owner
11494   of the private key has access to. The signature is verified using the
11495   signer's public key, which anyone can have access to. With _Alpine_,
11496   the first time you receive a signed message the public key of the
11497   sender will be stored for future use.
11498
11499   Mail is encrypted using the recipient's public key and decrypted by the
11500   recipient with their private key.
11501
11502   You need a key of your own in order to sign outgoing messages and to
11503   have others encrypt messages sent to you. You do not need a key of your
11504   own to verify signed messages sent by others or to encrypt messages
11505   sent to others.
11506
11507  ALPINE S/MIME CERTIFICATE STORAGE
11508
11509   By default UNIX _Alpine_ stores the certificates it uses in a directory
11510   in your home directory. The directory name is
11511
11512                                .alpine-smime
11513
11514   Within that directory are three subdirectories. Each of the three
11515   subdirectories contains files with PEM-encoded contents, the default
11516   format for OpenSSL. The "public" directory contains public
11517   certificates. The files within that directory have names that are email
11518   addresses with the suffix ".crt" appended. An example filename is
11519
11520                            user@example.com.crt
11521
11522   The "private" directory contains private keys, probably just one for
11523   your private key. These are also email addresses but with the suffix
11524   ".key" instead. The third directory is "ca" and it contains
11525   certificates for any Certificate Authorities that you want to trust but
11526   that aren't contained in the set of system CAs. Those files may have
11527   arbitrary names as long as they end with the suffix ".crt".
11528
11529  HOW TO SIGN AND ENCRYPT
11530
11531   If you have a certificate you may sign outgoing messages. After typing
11532   the Ctrl-X command to send a message you will see the prompt
11533
11534                                Send message?
11535
11536   Available subcommands include "G Sign" and "E Encrypt". Typing the "G"
11537   command will change the prompt to
11538
11539                           Send message (Signed)?
11540
11541   Typing the "E" command will change the prompt to
11542
11543                          Send message (Encrypted)?
11544
11545   You may even type both to get
11546
11547                      Send message (Encrypted, Signed)?
11548
11549  HOW TO READ SIGNED OR ENCRYPTED MESSAGES
11550
11551   The reading of a signed message should not require any special action
11552   on your part. There should be an editorial addition at the start of the
11553   message which says either
11554
11555                 This message was cryptographically signed.
11556
11557   or
11558
11559    This message was cryptographically signed but the signature could not
11560                                be verified.
11561
11562   If an encrypted message is sent to you the encrypted text will not be
11563   shown. You will have to type the "Ctrl-D Decrypt" command (from the
11564   screen where you are viewing the message) and supply your passphrase
11565   when asked.
11566
11567   For a signed or encrypted message there is also a "Ctrl-E Security"
11568   command which gives you some information about the certificate used to
11569   sign or encrypt the message.
11570
11571  MISCELLANEOUS
11572
11573   You may have access to a private certificate in the PKCS12 format,
11574   which would sometimes be in a file with a ".p12" suffix. The UNIX shell
11575   command
11576
11577                  openssl pkcs12 -in file.p12 -out file.pem
11578
11579   may work to convert that from the PKCS12 format to the PEM format. Then
11580   that file could be placed in the "private" directory with a filename of
11581   your email address followed by the suffix ".key".
11582     __________________________________________________________________
11583
11584Additional Notes on PC-Alpine
11585
11586   Below are a few odds and ends worth mentioning about _PC-Alpine_. They
11587   have to do with DOS-specific behavior that is either necessary or
11588   useful (and sometimes both!).
11589
11590   As _PC-Alpine_ runs in an environment with limited access control,
11591   accounting or auditing, an additional line is automatically inserted
11592   into the header of mail messages generated by _PC-Alpine_:
11593        X-Sender: <userid>@<imap.host>
11594
11595
11596   By popular demand of system administrators, _PC-Alpine_ has been
11597   modified to prevent sending messages until the user has successfully
11598   logged into a remote mail server. Even though _PC-Alpine_ cannot
11599   prevent users from changing the apparent identity of the sender of a
11600   message, the IMAP server login name and host name included in the
11601   _X-Sender_ line provide some level of traceability by the recipient.
11602   However, this should not be considered a rigorous form of
11603   authentication. It is extremely lightweight, and is not a replacement
11604   for true authentication.
11605
11606   Hand in hand with authentication and accounting is user information.
11607   Since _PC-Alpine_ has no user database to consult for _user-id_,
11608   _personal-name_, etc., necessary information must be provided by the
11609   user/installer before _PC-Alpine_ can properly construct the "From"
11610   address required for outbound messages. _PC-Alpine_ will, by default,
11611   prompt for the requisite pieces as they are needed. This information
11612   corresponds to the _PINERC_ variables user-id, personal-name,
11613   user-domain, and smtp-server.
11614
11615   The user is then asked whether or not this information should
11616   automatically be saved to the _PINERC_. This is useful behavior in
11617   general, but can lead to problems in a lab or other shared environment.
11618   Hence, these prompts and automatic saving of configuration can be
11619   turned off on an entry by entry basis by setting any of the above
11620   values in the _PINERC_ to the null string (i.e., a pair of double
11621   quotes). This means that the user will be prompted for the information
11622   once during each _Alpine_ session, and no opportunity to save them in
11623   the _PINERC_ will be offered.
11624
11625   Another feature of DOS is the lack of standard scratch area for
11626   temporary files. During the course of a session, _PC-Alpine_ may
11627   require numerous temporary files (large message texts, various caches,
11628   etc.). Where to create them can be a problem, particularly when running
11629   under certain network operating systems. _PC-Alpine_ observes the
11630   _TMPDIR_, _TMP_, and _TEMP_ environment variables, and creates temporary
11631   files in the directory specified by either. In their absence,
11632   _PC-Alpine_ creates these files in the root of the current working
11633   drive. Some temporary files have to be created in the same directory as
11634   the file they are a temporary copy of. For example, a pinerc file or a
11635   address book file.
11636
11637                               Behind the Scenes
11638
11639   Many people ask how certain _Alpine_ features are implemented. This
11640   section outlines some of the details.
11641
11642Address Books
11643
11644   There are two types of address book storage. There are _local_ address
11645   books, which are the address books that are stored in a local file; and
11646   there are _remote_ address books, which are stored on an IMAP server.
11647
11648    Information About Remote Address Books
11649
11650     NOTE: The remote address book capability does not allow you to
11651     access an existing local address book from a remote system! That is,
11652     you can't set the remote address book to something like
11653     {remote.host}.addressbook and expect to access the existing
11654     .addressbook _file_ on remote.host. Instead, you need to create a
11655     new remote address book in a new, previously unused remote mail
11656     _folder_. Then you can use the _Select_ and _Apply Save_ commands in
11657     the address book screen to _Save_ all of the entries from an
11658     existing local address book to the new remote address book.
11659
11660   A remote address book is stored in a mail folder on an IMAP server. An
11661   _Alpine_ remote address book is just like an _Alpine_ local address book
11662   in that it is not interoperable with other email clients. The folder is
11663   a regular folder containing mail messages but those messages are
11664   special. The first message must be an alpine remote address book header
11665   message which contains the header _x-pine-addrbook_. The last message
11666   in the folder contains the address book data. In between the first and
11667   the last message are old versions of the address book data. The address
11668   book data is simply stored in the message as it would be on disk, with
11669   no MIME encoding. When it is used the data from the last message in the
11670   folder is copied to a local file and then that file is used exactly
11671   like a local address book file is used. When a change is made the
11672   modified local file is appended to the remote folder in a new message.
11673   In other words, the local file is just a cache copy of the data in the
11674   remote folder. Each client which uses the remote address book will have
11675   its own cache copy of the data. Whenever a copy is done the entire
11676   address book is copied, not just the entries which have changed.
11677
11678   _Alpine_ can tell that the remote data has changed by one of several
11679   methods. If the date contained in the Date header of the last message
11680   has changed then it knows it has changed. If the UID of the last
11681   message has changed, or the number of messages in the folder has
11682   changed, it knows that it has changed. When _Alpine_ discovers the
11683   folder has changed it gets a new copy and puts it in the local cache
11684   file.
11685
11686   There is a configuration file variable for remote address books called
11687   remote-abook-metafile. The variable is the name of a file in which
11688   information about remote address books is stored. There is one line in
11689   the metafile for each remote address book. The information stored there
11690   is the name of the cache file and information to help figure out when
11691   the remote folder was last changed. If the metafile or any of the cache
11692   files is deleted then _Alpine_ will rebuild them the next time it runs.
11693
11694   Remote address books have names that look just like regular remote mail
11695   folder names. For example:
11696
11697     {host.domain}foldername
11698
11699   _Alpine_ decides whether or not an address book is remote simply by
11700   looking at the first character of the address book name and comparing
11701   it to '{'.
11702
11703    Information About All Address Books
11704
11705   The address book is named, by default, .addressbook in the user's Unix
11706   home directory, or in the case of _PC-Alpine_, ADDRBOOK, in the same
11707   directory as the PINERC file. There may be more than one address book,
11708   and the default name can be overridden via an entry in any of the
11709   _Alpine_ configuration files. The two configuration variables
11710   address-book and global-address-book are used to specify the names of
11711   the address books. Each of these variables is a list variable. The
11712   total set of address books for a user is the combination of all the
11713   address books specified in these two lists. Each entry in the list is
11714   an optional nickname followed by an address book name. The nickname is
11715   everything up to the last space before the file name. The
11716   _global-address-book_ list will typically be configured in the
11717   system-wide configuration file, though a user may override it like most
11718   other variables. Address books which are listed in the
11719   _global-address-book_ variable are forced read-only, and are typically
11720   shared among multiple users.
11721
11722   Local address books (or local cache files for remote address books) are
11723   simple text files with lines in the format:
11724
11725     <nickname>TAB<fullname>TAB<address>TAB<fcc>TAB<comments>
11726
11727   The last two fields are optional. A "line" may be made up of multiple
11728   actual lines in the file by using continuation lines, which are lines
11729   beginning with SPACE characters. The line breaks may be after TABs or
11730   in between addresses in a distribution list. Each _actual_ line in the
11731   file must be less than 1000 characters in length.
11732
11733   Nicknames (the first field) are short names that the user types instead
11734   of typing in the full address. There are several characters which
11735   aren't allowed in nicknames in order to avoid ambiguity when parsing
11736   the address (SPACE, COMMA, @, ", ;, :, (, ), [, ], <, >, \). Nicknames
11737   aren't required. In fact, none of the fields is required.
11738
11739   The _fullname_ field is usually stored as Last_name, First_name, in
11740   order that a sort on the fullname field comes out sorted by Last_name.
11741   If there is an unquoted comma in the fullname, _Alpine_ will flip the
11742   first and last name around and get rid of the comma when using the
11743   entry in a composition. It isn't required that there be a comma, that's
11744   only useful if the user wants the entries to sort on last names.
11745
11746   The _address_ field takes one of two forms, depending on whether the
11747   entry is a single (simple) address or a distribution list. For a simple
11748   entry, the address field is an RFC 2822 address. This could be either
11749   the email-address part of the address, i.e., the part that goes inside
11750   the brackets (<>), or it could be a full RFC 2822 address. The phrase
11751   part of the address (the fullname) is used unless there is a fullname
11752   present in the fullname field of the address book entry. In that case,
11753   the fullname of the address book entry replaces the fullname of the
11754   address. For a distribution list, the <address> is in the format:
11755
11756     "(" <address>, <address>, <address>, ... ")"
11757
11758   The only purpose for the parentheses around the list of addresses is to
11759   make it easier for the parsing routines to tell that it is a simple
11760   entry instead of a list. The two are displayed differently and treated
11761   slightly differently in some cases, though most of the distinction has
11762   disappeared. Each of the addresses in a list can be a full RFC 2822
11763   address with fullname included, or it may be just the simple
11764   email-address part of the address. This allows the user to have a list
11765   which includes the fullnames of all the list members. In both the
11766   simple and list cases, addresses may also be other nicknames which
11767   appear in this address book or in one of the other address books.
11768   (Those nicknames are searched for by looking through the address books
11769   in the order they appear in the address book screen, with the first
11770   match winning.) Lists may be nested. If addresses refer to each other
11771   in a loop (for example, list A includes list B which includes list A
11772   again) this is detected and flagged. In that case, the address will be
11773   changed to "**** address loop ****".
11774
11775   The optional _fcc_ field is a folder name, just like the fcc field in
11776   the composer headers. If the first address in the To field of a
11777   composition comes from an address book entry with an fcc field, then
11778   that fcc is placed in the fcc header in the composer.
11779
11780   The _comments_ field is just a free text field for storing comments
11781   about an entry. By default, neither the fcc nor the comments field is
11782   shown on the screen in the address book screen. You may make those
11783   fields visible by configuring the variable addressbook-formats. They
11784   are also searched when you use the _WhereIs_ command in the address
11785   book screen and are visible when you _View_ or _Update_ an entry.
11786
11787   The address book is displayed in the order that it is stored. When the
11788   user chooses a different sorting criterion, the data is actually sorted
11789   and stored, as opposed to showing a sorted view of the data.
11790
11791   When the address book is written out, it is first written to a
11792   temporary file and if that write is successful it is renamed. This
11793   guards against errors writing the file that might destroy the whole
11794   address book. The address book is re-written after each change. If the
11795   address book is a remote address book, the file is then appended to the
11796   remote mail folder using IMAP.
11797
11798   The end-of-line character(s) in the address book file are those native
11799   to the system writing it. So it is <LF> on Unix and <CR><LF> on PC's.
11800   However, both Unix and PC versions of _Alpine_ can read either format,
11801   so it should be possible to share a read-only address book among the
11802   two populations (using NFS, for example).
11803     __________________________________________________________________
11804
11805  Address Book Lookup File
11806
11807   _Pine_ used an additional file for each address book, called the LookUp
11808   file. It had the same name as the address book file with the suffix
11809   ".lu" appended. _Alpine_ no longer uses a lookup file.
11810
11811    Validity Checking of Address Books
11812
11813   There is no file locking done on _Alpine_ address books, however, there
11814   is considerable validity checking done to make sure that the address
11815   book hasn't changed unexpectedly. Whenever the address book is about to
11816   be changed, a check is made to see if the file is newer than when we
11817   read it or the remote address book folder has changed since we last
11818   copied it. If either of these is true, the change is aborted.
11819
11820   There is an automatic, behind-the-scene check that happens every so
11821   often, also. For example, if someone else changes one of the address
11822   books that you have configured, your _Alpine_'s copy of the address
11823   book will usually be updated automatically without you noticing. This
11824   checking happens at the same time as new mail checking takes place,
11825   unless you are actively using the address book, in which case it
11826   happens more frequently.
11827     __________________________________________________________________
11828
11829Remote Configuration
11830
11831   Configuration information may be stored remotely. Remote configuration
11832   information is stored in a folder on an IMAP server. This should be a
11833   folder which is used only for storing the configuration information. In
11834   other words, it should be a folder which didn't exist before.
11835
11836   Remote configuration folders are very similar to remote address book
11837   folders. They both consist of a header message, which serves to
11838   identify the type of folder; the last message, which contains the data;
11839   and intermediate messages, which contain old versions of the data. The
11840   first message must contain the header _x-pine-pinerc_.
11841
11842   When a remote configuration is being used, the folder is checked to
11843   make sure it is a remote configuration folder, then the data contained
11844   in the last message is copied to a temporary file. That file is treated
11845   just like any regular local configuration file from that point on.
11846   Whenever a configuration change is made, the entire file is copied back
11847   to the IMAP server and is appended to the folder as a new message.
11848
11849   Because remote configuration folders are so similar to remote address
11850   books, the configuration variable remote-abook-metafile is used by
11851   both.
11852
11853   Remote configuration folders have names that look just like regular
11854   remote mail folder names. For example:
11855
11856     {host.domain}mypinerc
11857
11858   _Alpine_ decides whether or not a configuration file is remote simply
11859   by looking at the first character of the name and comparing it to '{'.
11860     __________________________________________________________________
11861
11862Checkpointing
11863
11864   Periodically _Alpine_ will save the whole mail folder to disk to
11865   prevent loss of any mail or mail status in the case that it gets
11866   interrupted, disconnected, or crashes. The period of time _Alpine_
11867   waits to do the checkpoint is calculated to be minimally intrusive. The
11868   timing can be changed (but usually isn't) at compile time. Folder
11869   checkpointing happens for both local folders and those being accessed
11870   with IMAP. The delays are divided into three categories:
11871
11872     The exact algorithm given below is no longer correct. It has gotten
11873     more complicated over time. However, this gives the general idea
11874     _Alpine_ uses when deciding whether or not to do a checkpoint.
11875
11876   Good Time:
11877          This occurs when _Alpine_ has been idle for more than 30
11878          seconds. In this case _Alpine_ will checkpoint if 12 changes to
11879          the file have been made or at least one change has been made and
11880          a checkpoint hasn't been done for five minutes.
11881   Bad Time:
11882          This occurs just after _Alpine_ has executed some command.
11883          _Alpine_ will checkpoint if there are 36 outstanding changes to
11884          the mail file or at least one change and no checkpoint for ten
11885          minutes.
11886   Very Bad Time:
11887          Done when composing a message. In this case, _Alpine_ will only
11888          checkpoint if at least 48 changes have been made or at least one
11889          change has been made in the last twenty minutes with no
11890          checkpoint.
11891     __________________________________________________________________
11892
11893Debug Files
11894
11895   If UNIX _Alpine_ is compiled with the compiler _DEBUG_ option on (the
11896   default), then _Alpine_ will produce debugging output to a file. This
11897   can be disabled at compile-time with the --disable-debug configure
11898   option, or at run-time with the command line flag -d0. The file is
11899   normally .pine-debugX in the user's home directory where _X_ goes from
11900   1 to 4. Number 1 is always the most recent session and 4 the oldest.
11901   Four are saved because often the user has gone in and out of _Alpine_ a
11902   few times after a problem has occurred before the expert actually gets
11903   to look at it. The amount of output in the debug files varies with the
11904   debug level set when _Alpine_ is compiled and/or as a command line
11905   flag. The default is level 2. This shows very general things and
11906   records errors. Level 9 produces copious amounts of output for each
11907   keystroke.
11908
11909   Similarly, _PC-Alpine_ creates debug files named pinedebg.txtX in the
11910   same directory as the PINERC file.
11911     __________________________________________________________________
11912
11913INBOX and Special Folders
11914
11915   The _INBOX_ folder is treated specially. It is normally kept open
11916   constantly so that the arrival of new mail can be detected. The name
11917   _INBOX_ refers to wherever new mail is retrieved on the system. If the
11918   inbox-path variable is set, then _INBOX_ refers to that. IMAP servers
11919   understand the concept of _INBOX_, so specifying the folder
11920   _{imap.u.example.edu}INBOX_ is meaningful. The case of the word _INBOX_
11921   is not important, but _Alpine_ tends to display it in all capital
11922   letters.
11923
11924   The folders for sent mail and saved messages folders are also somewhat
11925   special. They are automatically created if they are absent and
11926   recreated if they are deleted.
11927     __________________________________________________________________
11928
11929Internal Help Files
11930
11931   The file pine.hlp in the alpine subdirectory of the distribution
11932   contains all the help text for _Alpine_. It is compiled right into the
11933   _Alpine_ binary as strings. This is done to simplify installation and
11934   configuration. The pine.hlp file is in a special format that is
11935   documented at the beginning of the file. It is divided into sections,
11936   each with a name that winds up being referenced as a global variable.
11937   This file is processed during the build process and turned into a C
11938   file that is compiled into _Alpine_.
11939     __________________________________________________________________
11940
11941International Character Sets
11942
11943   _Alpine_ uses Unicode characters internally and it is a goal for
11944   _Alpine_ to handle email in many different languages. _Alpine_ will
11945   properly display only left-to-right character sets in a fixed-width
11946   font. Specifically, _Alpine_ assumes that a fixed-width font is in use,
11947   in the sense that characters are assumed to take up zero, one, or two
11948   character cell widths from left to right on the screen. This is true
11949   even in _PC-Alpine_.
11950
11951   _Alpine_ recognizes some local character sets which are right-to-left
11952   (Arabic, Hebrew, and Thai) or not representable in a fixed-width font
11953   (Arabic) and properly converts texts in these character sets to/from
11954   Unicode; however, there are known display bugs with these character
11955   sets.
11956
11957   There are three possible configuration character settings and some
11958   environment variable settings which can affect how _Alpine_ handles
11959   international characters. The first two of these are only available in
11960   UNIX _Alpine_. The three configuration options are
11961   _display-character-set_, _keyboard-character-set_, and
11962   _posting-character-set_. The _keyboard-character-set_ defaults to being
11963   the same value as the _display-character-set_, and that is usually
11964   correct, because the keyboard almost always produces characters in the
11965   same character set as the display displays. The _display-character-set_
11966   is the character set that _Alpine_ will attempt to use when sending
11967   characters to the display.
11968
11969   Besides those variables there is also use-system-translation which can
11970   be used instead of these. That usage is only lightly tested and is not
11971   recommended.
11972
11973   By default, the _display-character-set_ variable is not set and UNIX
11974   _Alpine_ will attempt to get this information from the environment. In
11975   particular, the nl_langinfo(CODESET) call is used. This usually depends
11976   on the setting of the environment variables LANG or LC_CTYPE. An
11977   explicit configuration setting for _display-character-set_ will, of
11978   course, override any default setting.
11979
11980   For _PC-Alpine_ the _display-character-set_ and the
11981   _keyboard-character-set_ are always equivalent to UTF-8 and this is not
11982   settable.
11983
11984   It is probably best to use UNIX _Alpine_ in a terminal emulator capable
11985   of displaying UTF-8 characters, since that will allow you to view just
11986   about any received text that is correctly formatted (note, however, the
11987   above comments about known index display bugs with certain character
11988   sets). You'll need to have an emulator which uses a UTF-8 font and
11989   you'll need to set up your environment to use a UTF-8 charmap. For
11990   example, on a Linux system you might include
11991
11992                           setenv LANG en_US.UTF-8
11993
11994   or something similar in your UNIX startup files. You'd also have to
11995   select a UTF-8 font in your terminal emulator.
11996
11997   The types of values that the character set variables may be set to are
11998   UTF-8, ISO-8859-1, or EUC-JP. The ISO-2022 character sets are not
11999   supported for input or for display, but as a special case, ISO-2022-JP
12000   is supported for use only as a _posting-character-set_. In the
12001   Setup/Config screen you may choose from a list of all the character
12002   sets _Alpine_ knows about by using the "T" ToCharsets command. Here is
12003   a list of many of the possible character sets:
12004
12005   UTF-8        Unicode
12006   US-ASCII     7 bit American English characters
12007   ISO-8859-1   8 bit European "Latin 1" character set
12008   ISO-8859-2   8 bit European "Latin 2" character set
12009   ISO-8859-3   8 bit European "Latin 3" character set
12010   ISO-8859-4   8 bit European "Latin 4" character set
12011   ISO-8859-5   8 bit Latin and Cyrillic
12012   ISO-8859-6   8 bit Latin and Arabic
12013   ISO-8859-7   8 bit Latin and Greek
12014   ISO-8859-8   8 bit Latin and Hebrew
12015   ISO-8859-9   8 bit European "Latin 5" character set
12016   ISO-8859-10  8 bit European "Latin 6" character set
12017   ISO-8859-11  Latin and Thai
12018   ISO-8859-12  Reserved
12019   ISO-8859-13  8 bit European "Latin 7" character set
12020   ISO-8859-14  8 bit European "Latin 8" character set
12021   ISO-8859-15  8 bit European "Latin 9" character set
12022   ISO-8859-16  8 bit European "Latin 10" character set
12023   KOI8-R       8 bit Latin and Russian
12024   KOI8-U       8 bit Latin and Ukrainian
12025   WINDOWS-1251 8 bit Latin and Russian
12026   TIS-620      8 bit Latin and Thai
12027   VISCII       8 bit Latin and Vietnamese
12028   GBK          Latin and Chinese Simplified
12029   GB2312       Latin and Chinese Simplified
12030   CN-GB        Latin and Chinese Simplified
12031   BIG5         Latin and Chinese Traditional
12032   BIG-5        Latin and Chinese Traditional
12033   EUC-JP       Latin and Japanese
12034   SHIFT-JIS    Latin and Japanese
12035   EUC-KR       Latin and Korean
12036   KSC5601      Latin and Korean
12037
12038   When reading incoming email, _Alpine_ understands many different
12039   character sets and is able to convert the incoming mail into Unicode.
12040   The Unicode will be converted to the _display-character-set_ for
12041   display on your terminal. Characters typed at the keyboard will be
12042   converted from the _keyboard-character-set_ to Unicode for _Alpine_'s
12043   internal use. You may find that you can read some malformed messages
12044   that do not contain a character set label by setting the option
12045   unknown-character-set.
12046
12047   The _posting-character-set_ is used when sending messages. The default
12048   behavior obtained by leaving this variable unset is usually what is
12049   wanted. In that default case, _Alpine_ will attempt to label the
12050   message with the most specific character set from the rather arbitrary
12051   set
12052
12053   US-ASCII, ISO-8859-15, ISO-8859-1, ISO-8859-2, VISCII, KOI8-R, KOI8-U,
12054   ISO-8859-7, ISO-8859-6, ISO-8859-8, TIS-620, ISO-2022-JP, GB2312, BIG5,
12055   EUC-KR, and UTF-8.
12056
12057   For example, if the message is made up of only US-ASCII characters, it
12058   will be labeled US-ASCII. Otherwise, if it is all ISO-8859-15
12059   characters, that will be the label. If that doesn't work the same is
12060   tried for the remaining members of the list.
12061
12062   It might make sense to set _posting-character-set_ to an explicit value
12063   instead. For example, if you usually send messages in Greek, setting
12064   this option to ISO-8859-7 will result in messages being labeled as
12065   US-ASCII if there are no non-ascii characters, ISO-8859-7 if there are
12066   only Greek characters, or UTF-8 if there are some characters which
12067   aren't representable in ISO-8859-7. Another possibility is to set this
12068   option explicitly to UTF-8. In that case _Alpine_ labels only ascii
12069   messages as US-ASCII and all other messages as UTF-8.
12070     __________________________________________________________________
12071
12072Interrupted and Postponed Messages
12073
12074   If the user is composing mail and is interrupted by being disconnected
12075   (SIGHUP, SIGTERM or end of file on the standard input), _Alpine_ will
12076   save the interrupted composition and allow the user to continue it when
12077   he or she resumes _Alpine_. As the next _Alpine_ session starts, a
12078   message will be given that an interrupted message can be continued. To
12079   continue the interrupted message, simply go into the composer. To get
12080   rid of the interrupted message, go into the composer and then cancel
12081   the message with _^C._
12082
12083   Composition of half-done messages may be postponed to a later time by
12084   giving the _^O_ command. Other messages can be composed while postponed
12085   messages wait. All of the postponed messages are kept in a single
12086   folder. Postponing is a good way to quickly reference other messages
12087   while composing.
12088     __________________________________________________________________
12089
12090Message Status
12091
12092   The c-client library allows for several flags or status marks to be set
12093   for each message. _Alpine_ uses four of these flags: UNSEEN, DELETED,
12094   ANSWERED, and FLAGGED. The N in _Alpine_'s FOLDER INDEX means that a
12095   message is unseen-it has not been read from this folder yet. The D
12096   means that a message is marked for deletion. Messages marked with D are
12097   removed when the user _Expunges_ the folder (which usually happens when
12098   the folder is closed or the user quits _Alpine_). The A in _Alpine_'s
12099   FOLDER INDEX means that the message has been replied-to. The * in
12100   _Alpine_'s FOLDER INDEX means that the message has been ``flagged'' as
12101   important. That is, the user used the _Flag_ command to turn the
12102   FLAGGED flag on. This flag can mean whatever the user wants it to mean.
12103   It is just a way to mark some messages as being different from others.
12104   It will usually probably be used to mark a message as somehow being
12105   ``important''. For Berkeley format folders, the message status is
12106   written into the email folder itself on the header lines marked Status:
12107   and X-Status.
12108
12109   It is also possible for a user to define their own flags in addition to
12110   the standard system flags above. In _Alpine_ these user defined flags
12111   are called Keywords.
12112     __________________________________________________________________
12113
12114MIME: Reading a Message
12115
12116   _Alpine_ should be able to handle just about any MIME message. When a
12117   MIME message is received, _Alpine_ will display a list of all the
12118   parts, their types and sizes. It will display the attachments when
12119   possible and appropriate and allow users to _Save_ all other
12120   attachments.
12121
12122   _Alpine_ honors the "mailcap" configuration system for specifying
12123   external programs for handling attachments. The mailcap file maps MIME
12124   attachment types to the external programs loaded on your system which
12125   can display and/or print the file. A sample mailcap file comes bundled
12126   with the _Alpine_ distribution. It includes comments which explain the
12127   syntax you need to use for mailcap. With the mailcap file, any program
12128   (mail readers, newsreaders, WWW clients) can use the same configuration
12129   for handling MIME-encoded data.
12130
12131   If a MAILCAPS environment variable is defined, _Alpine_ will use that
12132   to look for one or more mailcap files, which are combined. In the
12133   absence of MAILCAPS, Unix _Alpine_ will look for a personal mailcap
12134   file in ~/.mailcap and combine that with a system-wide file in
12135   /etc/mailcap. _PC-Alpine_ will look for a file named MAILCAP in the
12136   same directory as the PINERC file, and/or the directory containing the
12137   ALPINE.EXE executable.
12138
12139   Messages which include _rich text_ or _enriched text_ in the main body
12140   will be displayed in a very limited way (it will show bold and
12141   underlining).
12142
12143   If _Alpine_ sees a MIME message part tagged as type IMAGE, and
12144   _Alpine_'s image-viewer configuration variable is set, _Alpine_ will
12145   attempt to send that attachment to the named image viewing program. In
12146   the case of UNIX _Alpine_, the DISPLAY environment variable is checked
12147   to see if an X-terminal is being used (which can handle the images). If
12148   the _image-viewer_ variable is not set, _Alpine_ uses the _mailcap_
12149   system to determine what to do with IMAGE types, just as it does for
12150   any other non-TEXT type, e.g. type APPLICATION. For MIME's generic
12151   "catch all" type, APPLICATION/OCTET-STREAM, the _mailcap_ file will
12152   probably not specify any action, but _Alpine_ users may always _Save_
12153   any MIME attachment to a file.
12154
12155   MIME type "text/plain" is handled a little bit differently than the
12156   other types. If you are viewing the main body part in the MESSAGE TEXT
12157   viewing screen, then _Alpine_ will use its internal viewer to display
12158   it. This happens even if there is a mailcap description which matches
12159   this particular type. However, if you view a part of type "text/plain"
12160   from the ATTACHMENT INDEX screen, then _Alpine_ will check the mailcap
12161   database for a matching entry and use it in preference to its internal
12162   viewer.
12163
12164   Some text attachments, specifically those which are just other email
12165   messages forwarded as MIME messages, are displayed as part of the main
12166   body of the message. This distinction allows easy display when possible
12167   (the forward as MIME case) and use of an attachment viewer when that is
12168   desirable (the plain text file attachment case).
12169
12170   If the parts of a multipart message are alternate versions of the same
12171   thing _Alpine_ will select and display the one best suited. For parts
12172   of type "message/external-body", the parameters showing the retrieval
12173   method will be displayed, and the retrieval process is automated.
12174   Messages of type "message/partial" are not supported.
12175     __________________________________________________________________
12176
12177MIME: Sending a Message
12178
12179   There are two important factors when trying to include an attachment in
12180   a message: encoding and labeling. _Alpine_ has rules for both of these
12181   which try to assure that the message goes out in a form that is robust
12182   and can be handled by other MIME mail readers.
12183
12184   MIME has two ways of encoding data-Quoted-Printable and Base64.
12185   Quoted-Printable leaves the ASCII text alone and only changes 8-bit
12186   characters to "=" followed by the hex digits. For example, "=09" is a
12187   tab. It has the advantage that it is mostly readable and that it allows
12188   for end of line conversions between unlike systems. Base64 encoding is
12189   similar to _uuencode_ or _btoa_ and just encodes a raw bit stream. This
12190   encoding is designed to get text and binary files through even the most
12191   improperly implemented and configured gateways intact, even those that
12192   distort uuencoded data.
12193
12194   _All_ attachments are encoded using Base64 encoding. This is so that
12195   the attachment will arrive at the other end looking exactly like it did
12196   when it was sent. Since Base64 is completely unreadable except by
12197   MIME-capable mailers or programs, there is an obvious tradeoff being
12198   made here. We chose to ensure absolutely reliable transport of
12199   attachments at the cost of requiring a MIME-capable mailer to read
12200   them. If the user doesn't want absolute integrity he or she may always
12201   _include_ text (with the _^R_ command) in the body of a message instead
12202   of attaching it. With this policy, the only time quoted-printable
12203   encoding is used is when the main body of a message includes special
12204   foreign language characters.
12205
12206   When an attachment is to be sent, _Alpine_ sniffs through it to try to
12207   set the right label (content-type and subtype). An attachment with any
12208   lines longer than 500 characters in it or more than 10% of the
12209   characters are 8-bit it will be considered binary data. _Alpine_ will
12210   recognize (and correctly label) a few special types including GIF,
12211   JPEG, PostScript, and some audio formats. Another method which can be
12212   more robust and flexible for determining the content-type and subtype
12213   is to base it on the file extension. This method uses a MIME.Types
12214   File.
12215
12216   If it is not binary data (has only a small proportion of 8-bit
12217   characters in it,) the attachment is considered 8-bit text. 8-bit text
12218   attachments are labeled "text/plain" with charset set to the value of
12219   the user's _keyboard-character-set_ variable. If an attachment is ASCII
12220   (no 8-bit characters) and contains no control characters then it is
12221   considered plain ASCII text. Such attachments are given the MIME label
12222   "text/plain; charset=US-ASCII", regardless of the setting of the user's
12223   _keyboard-character-set_ variable.
12224
12225   All other attachments are unrecognized and therefore given the generic
12226   MIME label "application/octet-stream".
12227     __________________________________________________________________
12228
12229New Mail Notification
12230
12231   _Alpine_ checks for new mail in the _INBOX_ and in the currently open
12232   folder every two and a half minutes by default. This default can be
12233   changed in the system-wide configuration file or at compile-time with
12234   the --with-mailcheck-interval=VALUE configuration option. A user can
12235   change it by changing the option mail-check-interval. A new mail check
12236   can be manually forced by redrawing the screen with a _^L_.
12237
12238   When there is new mail, the message(s) will appear in the index, the
12239   screen will beep, and a notice showing the sender and subject will be
12240   displayed. If there has been more than one new message since you last
12241   issued a command to _Alpine_, the notice will show the count of new
12242   messages and the sender of the most recent one.
12243     __________________________________________________________________
12244
12245NFS
12246
12247   It is possible to access mail folders on _NFS_ mounted volumes with
12248   _Alpine_, but there are some drawbacks to doing this, especially in the
12249   case of incoming-message folders that may be concurrently updated by
12250   _Alpine_ and the system's mail delivery agent. One concern is that
12251   _Alpine_'s user-contention locks don't work because _/tmp_ is usually
12252   not shared, and even if it was, _flock()_ doesn't work across _NFS._
12253
12254   The implementation of the standard UNIX ".lock" file locking has been
12255   modified to work with _NFS_ as follows. Standard hitching post locking
12256   is used so first a uniquely named file is created, usually something
12257   like _xxxx.host.time.pid._ Then a link to it is created named
12258   _xxxx.lock_ where the folder being locked is _xxxx._ This file
12259   constitutes the lock. This is a standard UNIX locking scheme. After the
12260   link returns, a _stat(2)_ is done on the file. If the file has two
12261   links, it is concluded that the lock succeeded and it is safe to
12262   proceed.
12263
12264   In order to minimize the risks of locking failures via _NFS_, we
12265   strongly recommend using IMAP rather than _NFS_ to access remote
12266   incoming message folders, e.g. your _INBOX_. However, it is generally
12267   safe to access personal saved-message folders via _NFS_ since it is
12268   unlikely that more than one process will be updating those folders at
12269   any given time. Still, some problems may occur when two _Alpine_
12270   sessions try to access the same mail folder from different hosts
12271   without using IMAP. Imagine the scenario: _Alpine_-A performs a write
12272   that changes the folder. _Alpine_-B then attempts to perform a write on
12273   the same folder. _Alpine_-B will get upset that the file has been
12274   changed from underneath it and abort operations on the folder.
12275   _Alpine_-B will continue to display mail from the folder that it has in
12276   its internal cache, but it will not read or write any further data. The
12277   only thing that will be lost out of the _Alpine_-B session when this
12278   happens is the last few status changes.
12279
12280   If other mail readers besides _Alpine_ are involved, all bets are off.
12281   Typically, mailers don't take any precautions against a user opening a
12282   mailbox more than once and no special precautions are taken to prevent
12283   _NFS_ problems.
12284     __________________________________________________________________
12285
12286Printers and Printing
12287
12288   UNIX _Alpine_ can print to the standard UNIX line printers or to
12289   generic printers attached to ANSI terminals using the escape sequences
12290   to turn the printer on and off. The user has a choice of three printers
12291   in the configuration.
12292
12293   The first setting, _attached-to-ansi_, makes use of escape sequences on
12294   ANSI/VT100 terminals. It uses "<ESC>[5i" to begin directing all output
12295   sent to the terminal to the printer and then "<ESC>[4i" to return to
12296   normal. _Alpine_ will send these escape sequences if the printer is set
12297   to _attached-to-ansi._ This works with most ANSI/VT100 emulators on
12298   Macs and PCs such as kermit, NCSA telnet, VersaTerm Pro, and WinQVT.
12299   Various terminal emulators implement the print feature differently.
12300   There is also a closely related method called
12301   _attached-to-ansi-no-formfeed_ which is the same except for the lack of
12302   formfeed character at the end of the print job.
12303
12304   _Attached-to-wyse_ and _attached-to-wyse-no-formfeed_ are very similar
12305   to "attached-to-ansi". The only difference is in the control characters
12306   sent to turn the printer on and off. The Wyse version uses Ctrl-R for
12307   on, and Ctrl-T for off.
12308
12309   The second selection is the standard UNIX print command. The default is
12310   _lpr_, but it can be changed on a system basis to anything so desired
12311   in /usr/local/lib/pine.conf.
12312
12313   The third selection is the user's personal choice for a UNIX print
12314   command. The text to be printed is piped into the command. _Enscript_
12315   or _lpr_ with options are popular choices. The actual command is
12316   retained even if one of the other print selections is used for a while.
12317
12318   Both the second and third sections are actually lists of possible
12319   commands rather than single commands.
12320
12321   If you have a PostScript printer attached to a PC or Macintosh, then
12322   you will need to use a utility called _ansiprt_ to get printouts on
12323   your printer. _Ansiprt_ source code and details can be found in the
12324   ./contrib directory of the _Alpine_ distribution.
12325     __________________________________________________________________
12326
12327Save and Export
12328
12329   _Alpine_ users get two options for moving messages in _Alpine_: _Save_
12330   and _Export_. _Save_ is used when the message should remain ``in the
12331   _Alpine_ realm.'' Saved messages include the complete header (including
12332   header lines normally hidden by _Alpine_), are placed in a _Alpine_
12333   folder collection and accumulate in a standard folder format which
12334   _Alpine_ can read. In contrast, the _Export_ command is used to write
12335   the contents of a message to a file for use outside of _Alpine_.
12336   Messages which have been exported are placed in the user's home
12337   directory (unless the feature use-current-dir is turned on), not in a
12338   _Alpine_ folder collection. Unless FullHeaderMode is toggled on, all
12339   delivery-oriented headers are stripped from the message. Even with
12340   _Export_, _Alpine_ retains message separators so that multiple messages
12341   can accumulate in a single file and subsequently be accessed as a
12342   folder. On UNIX systems, the _Export_ command pays attention to the
12343   standard _umask_ for the setting of the file permissions.
12344     __________________________________________________________________
12345
12346Sent Mail
12347
12348   _Alpine_'s default behavior is to keep a copy of each outgoing message
12349   in a special "sent mail" folder. This folder is also called the fcc for
12350   "file carbon copy". The existence, location and name of the sent mail
12351   folder are all configurable. Sent mail archiving can be turned off by
12352   setting the configuration variable default-fcc="". The sent mail folder
12353   is assumed to be in the default collection for _Save_s, which is the
12354   first collection named in folder-collections. The name of the folder
12355   can be chosen by entering a name in _default-fcc_. With _PC-Alpine_,
12356   this can be a bit complicated. If the default collection for _Save_s is
12357   local (DOS), then the _default-fcc_ needs to be SENTMAIL, which is
12358   syntax for a DOS file. However, if the default collection for _Save_s
12359   is remote, then the _default-fcc_ needs to be sent-mail to match the
12360   UNIX syntax.
12361
12362   The configuration variable fcc-name-rule also plays a role in selecting
12363   the folder to save sent mail in.
12364
12365   A danger here is that the sent mail could grow without bound. For this
12366   reason, we thought it useful to encourage the users to periodically
12367   prune their sent mail folder. The first time _Alpine_ is used each
12368   month it will offer to archive all messages sent from the month before.
12369   _Alpine_ also offers to delete all the sent mail archive folders which
12370   are more than 1 month old. If the user or system has disabled sent mail
12371   archiving (by setting the configuration variable _default-fcc=""_)
12372   there will be no pruning question.
12373     __________________________________________________________________
12374
12375Spell Checker
12376
12377   Both UNIX _Alpine_ and _PC-Alpine_ depend on the system for their spell
12378   checking and dictionary. _Pico_, the text editor, uses the same spell
12379   checking scheme as _Alpine_.
12380
12381   Lines beginning with ">" (usually messages included in replies) are not
12382   checked. The message text to be checked is on the standard input and
12383   the incorrect words are expected on the standard output.
12384
12385   The default spell checker is UNIX _spell_. You can replace this by
12386   setting the speller configuration variable. A common choice for a
12387   superior replacement is _ispell_.
12388
12389   _PC-Alpine_ relies on the aspell library being installed. Aspell is
12390   independent of Alpine. The Windows version has traditionally been
12391   available at http://aspell.net/win32/. You'll need to download and
12392   install both Aspell and a precompiled dictionary. Aspell is provided in
12393   an installer package. Dictionaries, to be installed after Aspell, are
12394   in '.exe' files to download and run.
12395     __________________________________________________________________
12396
12397Terminal Emulation and Key Mapping
12398
12399   UNIX _Alpine_ has been designed to require as little as possible from
12400   the terminal. At the minimum, _Alpine_ requires cursor positioning,
12401   clear to end of line, and inverse video. Unfortunately, there are
12402   terminals that are missing some of these such as a vt52. _Alpine_ makes
12403   no assumptions as to whether the terminal wraps or doesn't wrap. If the
12404   terminal has other capabilities it may use some of them. _Alpine_ won't
12405   run well on older terminals that require a space on the screen to
12406   change video attributes, such as the Televideo 925. One can get around
12407   this on some terminals by using "protected field" mode. The terminal
12408   can be made to go into protected mode for reverse video, and then
12409   reverse video is assigned to protected mode.
12410
12411   _Alpine_ handles screens of most any size and resizing on the fly. It
12412   catches SIGWINCH and does the appropriate thing.
12413
12414   On the input side of things, _Alpine_ uses all the standard keys, most
12415   of the control keys and (in function-key mode) the function keys.
12416   _Alpine_ avoids certain control keys, specifically ^S, ^Q, ^H, and _^\_
12417   because they have other meanings outside of _Alpine_ (they control data
12418   flow, etc.) _^H_ is treated the same as the _delete_ key, so the
12419   _backspace_ or _delete_ keys always work regardless of any
12420   configuration. There is a feature _compose-maps-delete-key-to-ctrl-d_
12421   which makes the delete key behave like ^D rather than ^H (deletes
12422   current character instead of previous character).
12423
12424   Sometimes a communications program or communications server in between
12425   you and the other end will eat certain control characters. There is a
12426   work-around when you need it. If you type two escape characters
12427   followed by a character that will be interpreted as the character with
12428   the control key depressed. For example, _ESC ESC T_ is equivalent to
12429   _^T_.
12430
12431   When a function key is pressed and _Alpine_ is in regular (non-function
12432   key) mode, _Alpine_ traps escape sequences for a number of common
12433   function keys so users don't get an error message or have an unexpected
12434   command executed for each character in the function key's escape
12435   sequence. _Alpine_ expects the following escape sequences from
12436   terminals defined as VT100:
12437
12438     ANSI/VT100
12439     F1: <ESC>OP
12440     F2: <ESC>OQ
12441     F3: <ESC>OR
12442     F4: <ESC>OS
12443     F5: <ESC>Op
12444     F6: <ESC>Oq
12445     F7: <ESC>Or
12446     F8: <ESC>Os
12447     F9: <ESC>Ot
12448     F10: <ESC>Ou
12449     F11: <ESC>Ov
12450
12451   Arrow keys are a special case. _Alpine_ has the escape sequences for a
12452   number of conventions for arrow keys hard coded and does not use
12453   _termcap_ to discover them. This is because _termcap_ is sometimes
12454   incorrect, and because many users have PC's running terminal emulators
12455   that don't conform exactly to what they claim to emulate. There is a
12456   feature called termdef-takes-precedence which can be set to cause the
12457   _termcap_ or _terminfo_ definitions to be used instead of the built in
12458   definitions. Some arrow keys on old terminals send single control
12459   characters like _^K_ (one even sends _^\_). These arrow keys will not
12460   work with _Alpine_. The most popular escape sequences for arrow keys
12461   are:
12462
12463     Up: <ESC>[A <ESC>?x <ESC>A <ESC>OA
12464     Down: <ESC>[B <ESC>?r <ESC>B <ESC>OB
12465     Right: <ESC>[C <ESC>?v <ESC>C <ESC>OC
12466     Left: <ESC>[D <ESC>?t <ESC>D <ESC>OD
12467