X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=init.h;h=0512ca863c322d4f08ad6256c8e1be6e16be9e43;hp=0b8d4bc8d1bbdd5bfb0470baeb3001bd935d68d4;hb=c7ceecd31e97891dd5cf48536d4bddf2c1d7d9dd;hpb=f07b807db70d3ac5d0a8086819cfbb4f7ff25f07 diff --git a/init.h b/init.h index 0b8d4bc..0512ca8 100644 --- a/init.h +++ b/init.h @@ -1,5 +1,6 @@ /* * Copyright (C) 1996-2002 Michael R. Elkins + * Copyright (C) 2004 g10 Code GmbH * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -71,6 +72,12 @@ struct option_t unsigned long init; /* initial value */ }; +struct feature_t +{ + char* name; + short builtin; +}; + #define UL (unsigned long) #endif /* _MAKEDOC */ @@ -100,6 +107,12 @@ struct option_t # ifndef USE_LIBESMTP # define USE_LIBESMTP # endif +# ifndef USE_NNTP +# define USE_NNTP +# endif +# ifndef USE_GNUTLS +# define USE_GNUTLS +# endif #endif struct option_t MuttVars[] = { @@ -120,13 +133,13 @@ struct option_t MuttVars[] = { ** check only happens after the \fIfirst\fP edit of the file). When set ** to \fIno\fP, composition will never be aborted. */ - { "alias_file", DT_PATH, R_NONE, UL &AliasFile, UL "~/.muttrc" }, + { "alias_file", DT_PATH, R_NONE, UL &AliasFile, UL "~/.muttngrc" }, /* ** .pp ** The default file in which to save aliases created by the ** ``$create-alias'' function. ** .pp - ** \fBNote:\fP Mutt will not automatically source this file; you must + ** \fBNote:\fP Mutt-ng will not automatically source this file; you must ** explicitly use the ``$source'' command for it to be executed. */ { "alias_format", DT_STR, R_NONE, UL &AliasFmt, UL "%4n %2f %t %-10a %r" }, @@ -172,32 +185,55 @@ struct option_t MuttVars[] = { { "ascii_chars", DT_BOOL, R_BOTH, OPTASCIICHARS, 0 }, /* ** .pp - ** If set, Mutt will use plain ASCII characters when displaying thread + ** If set, Mutt-ng will use plain ASCII characters when displaying thread ** and attachment trees, instead of the default \fIACS\fP characters. */ { "askbcc", DT_BOOL, R_NONE, OPTASKBCC, 0 }, /* ** .pp - ** If set, Mutt will prompt you for blind-carbon-copy (Bcc) recipients + ** If set, Mutt-ng will prompt you for blind-carbon-copy (Bcc) recipients ** before editing an outgoing message. */ { "askcc", DT_BOOL, R_NONE, OPTASKCC, 0 }, /* ** .pp - ** If set, Mutt will prompt you for carbon-copy (Cc) recipients before + ** If set, Mutt-ng will prompt you for carbon-copy (Cc) recipients before ** editing the body of an outgoing message. */ + { "assumed_charset", DT_STR, R_NONE, UL &AssumedCharset, UL "us-ascii"}, + /* + ** .pp + ** This variable is a colon-separated list of character encoding + ** schemes for messages without character encoding indication. + ** Header field values and message body content without character encoding + ** indication would be assumed that they are written in one of this list. + ** By default, all the header fields and message body without any charset + ** indication are assumed to be in "us-ascii". + ** .pp + ** For example, Japanese users might prefer this: + ** .pp + ** set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8" + ** .pp + ** However, only the first content is valid for the message body. + ** This variable is valid only if $$strict_mime is unset. + */ #ifdef USE_NNTP { "ask_follow_up", DT_BOOL, R_NONE, OPTASKFOLLOWUP, 0 }, /* ** .pp - ** If set, Mutt will prompt you for follow-up groups before editing + ** Availability: NNTP + ** + ** .pp + ** If set, Mutt-ng will prompt you for follow-up groups before editing ** the body of an outgoing message. */ { "ask_x_comment_to", DT_BOOL, R_NONE, OPTASKXCOMMENTTO, 0 }, /* ** .pp - ** If set, Mutt will prompt you for x-comment-to field before editing + ** Availability: NNTP + ** + ** .pp + ** If set, Mutt-ng will prompt you for x-comment-to field before editing ** the body of an outgoing message. */ #endif @@ -209,7 +245,7 @@ struct option_t MuttVars[] = { ** .pp ** .dl ** .dt %C .dd charset - ** .dt %c .dd reqiures charset conversion (n or c) + ** .dt %c .dd requires charset conversion (n or c) ** .dt %D .dd deleted flag ** .dt %d .dd description ** .dt %e .dd MIME content-transfer-encoding @@ -236,10 +272,10 @@ struct option_t MuttVars[] = { /* ** .pp ** If this variable is unset, when operating (saving, printing, piping, - ** etc) on a list of tagged attachments, Mutt will concatenate the + ** etc) on a list of tagged attachments, Mutt-ng will concatenate the ** attachments and will operate on them as a single attachment. The ** ``$$attach_sep'' separator is added after each attachment. When set, - ** Mutt will operate on the attachments one by one. + ** Mutt-ng will operate on the attachments one by one. */ { "attribution", DT_STR, R_NONE, UL &Attribution, UL "On %d, %n wrote:" }, /* @@ -251,7 +287,7 @@ struct option_t MuttVars[] = { { "autoedit", DT_BOOL, R_NONE, OPTAUTOEDIT, 0 }, /* ** .pp - ** When set along with ``$$edit_headers'', Mutt will skip the initial + ** When set along with ``$$edit_headers'', Mutt-ng will skip the initial ** send-menu and allow you to immediately begin editing the body of your ** message. The send-menu may still be accessed once you have finished ** editing the body of your message. @@ -269,12 +305,12 @@ struct option_t MuttVars[] = { { "beep", DT_BOOL, R_NONE, OPTBEEP, 1 }, /* ** .pp - ** When this variable is set, mutt will beep when an error occurs. + ** When this variable is set, Mutt-ng will beep when an error occurs. */ { "beep_new", DT_BOOL, R_NONE, OPTBEEPNEW, 0 }, /* ** .pp - ** When this variable is set, mutt will beep whenever it prints a message + ** When this variable is set, Mutt-ng will beep whenever it prints a message ** notifying you of new mail. This is independent of the setting of the ** ``$$beep'' variable. */ @@ -289,14 +325,17 @@ struct option_t MuttVars[] = { { "bounce_delivered", DT_BOOL, R_NONE, OPTBOUNCEDELIVERED, 1 }, /* ** .pp - ** When this variable is set, mutt will include Delivered-To headers when + ** When this variable is set, Mutt-ng will include Delivered-To headers when ** bouncing messages. Postfix users may wish to unset this variable. */ #ifdef USE_NNTP { "catchup_newsgroup", DT_QUAD, R_NONE, OPT_CATCHUP, M_ASKYES }, /* ** .pp - ** If this variable is \fIset\fP, Mutt will mark all articles in newsgroup + ** Availability: NNTP + ** + ** .pp + ** If this variable is \fIset\fP, Mutt-ng will mark all articles in newsgroup ** as read when you quit the newsgroup (catchup newsgroup). */ #endif @@ -311,7 +350,7 @@ struct option_t MuttVars[] = { ** \fBNote:\fP this option only affects \fImaildir\fP and \fIMH\fP style ** mailboxes. ** .pp - ** When \fIset\fP, Mutt will check for new mail delivered while the + ** When \fIset\fP, Mutt-ng will check for new mail delivered while the ** mailbox is open. Especially with MH mailboxes, this operation can ** take quite some time since it involves scanning the directory and ** checking each file to see if it has already been looked at. If @@ -321,19 +360,19 @@ struct option_t MuttVars[] = { { "collapse_unread", DT_BOOL, R_NONE, OPTCOLLAPSEUNREAD, 1 }, /* ** .pp - ** When \fIunset\fP, Mutt will not collapse a thread if it contains any + ** When \fIunset\fP, Mutt-ng will not collapse a thread if it contains any ** unread messages. */ { "uncollapse_jump", DT_BOOL, R_NONE, OPTUNCOLLAPSEJUMP, 0 }, /* ** .pp - ** When \fIset\fP, Mutt will jump to the next unread message, if any, + ** When \fIset\fP, Mutt-ng will jump to the next unread message, if any, ** when the current thread is \fIun\fPcollapsed. */ - { "compose_format", DT_STR, R_BOTH, UL &ComposeFormat, UL "-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-" }, + { "compose_format", DT_STR, R_BOTH, UL &ComposeFormat, UL "-- Mutt-ng: Compose [Approx. msg size: %l Atts: %a]%>-" }, /* ** .pp - ** Controls the format of the status line displayed in the \fCompose\fP + ** Controls the format of the status line displayed in the \fICompose\fP ** menu. This string is similar to ``$$status_format'', but has its own ** set of printf()-like sequences: ** .pp @@ -341,30 +380,36 @@ struct option_t MuttVars[] = { ** .dt %a .dd total number of attachments ** .dt %h .dd local hostname ** .dt %l .dd approximate size (in bytes) of the current message - ** .dt %v .dd Mutt version string + ** .dt %v .dd Mutt-ng version string ** .de ** .pp ** See the text describing the ``$$status_format'' option for more ** information on how to set ``$$compose_format''. */ + { "config_charset", DT_STR, R_NONE, UL &ConfigCharset, UL 0 }, + /* + ** .pp + ** When defined, Mutt-ng will recode commands in rc files from this + ** encoding. + */ { "confirmappend", DT_BOOL, R_NONE, OPTCONFIRMAPPEND, 1 }, /* ** .pp - ** When set, Mutt will prompt for confirmation when appending messages to + ** When set, Mutt-ng will prompt for confirmation when appending messages to ** an existing mailbox. */ { "confirmcreate", DT_BOOL, R_NONE, OPTCONFIRMCREATE, 1 }, /* ** .pp - ** When set, Mutt will prompt for confirmation when saving messages to a + ** When set, Mutt-ng will prompt for confirmation when saving messages to a ** mailbox which does not yet exist before creating it. */ { "connect_timeout", DT_NUM, R_NONE, UL &ConnectTimeout, 30 }, /* ** .pp - ** Causes Mutt to timeout a network connection (for IMAP or POP) after this + ** Causes Mutt-ng to timeout a network connection (for IMAP or POP) after this ** many seconds if the connection is not able to be established. A negative - ** value causes Mutt to wait indefinitely for the connection to succeed. + ** value causes Mutt-ng to wait indefinitely for the connection to succeed. */ { "content_type", DT_STR, R_NONE, UL &ContentType, UL "text/plain" }, /* @@ -378,10 +423,21 @@ struct option_t MuttVars[] = { ** will be saved for later references. Also see ``$$record'', ** ``$$save_name'', ``$$force_name'' and ``$fcc-hook''. */ + + { "crypt_use_gpgme", DT_BOOL, R_NONE, OPTCRYPTUSEGPGME, 0 }, + /* + ** .pp + ** This variable controls the use the GPGME enabled crypto backends. + ** If it is set and Mutt-ng was build with gpgme support, the gpgme code for + ** S/MIME and PGP will be used instead of the classic code. Note, that + ** you need to use this option in .muttrc as it won't have any effect when + ** used interactively. + */ + { "crypt_autopgp", DT_BOOL, R_NONE, OPTCRYPTAUTOPGP, 1 }, /* ** .pp - ** This variable controls whether or not mutt may automatically enable + ** This variable controls whether or not Mutt-ng may automatically enable ** PGP encryption/signing for messages. See also ``$$crypt_autoencrypt'', ** ``$$crypt_replyencrypt'', ** ``$$crypt_autosign'', ``$$crypt_replysign'' and ``$$smime_is_default''. @@ -389,7 +445,7 @@ struct option_t MuttVars[] = { { "crypt_autosmime", DT_BOOL, R_NONE, OPTCRYPTAUTOSMIME, 1 }, /* ** .pp - ** This variable controls whether or not mutt may automatically enable + ** This variable controls whether or not Mutt-ng may automatically enable ** S/MIME encryption/signing for messages. See also ``$$crypt_autoencrypt'', ** ``$$crypt_replyencrypt'', ** ``$$crypt_autosign'', ``$$crypt_replysign'' and ``$$smime_is_default''. @@ -434,15 +490,15 @@ struct option_t MuttVars[] = { { "delete_untag", DT_BOOL, R_NONE, OPTDELETEUNTAG, 1 }, /* ** .pp - ** If this option is \fIset\fP, mutt will untag messages when marking them + ** If this option is \fIset\fP, Mutt-ng will untag messages when marking them ** for deletion. This applies when you either explicitly delete a message, ** or when you save it to another folder. */ { "digest_collapse", DT_BOOL, R_NONE, OPTDIGESTCOLLAPSE, 1}, /* ** .pp - ** If this option is \fIset\fP, mutt's revattach menu will not show the subparts of - ** individual messages in a digest. To see these subparts, press 'v' on that menu. + ** If this option is \fIset\fP, Mutt-ng's received-attachments menu will not show the subparts of + ** individual messages in a multipart/digest. To see these subparts, press 'v' on that menu. */ { "display_filter", DT_PATH, R_PAGER, UL &DisplayFilter, UL "" }, /* @@ -455,8 +511,11 @@ struct option_t MuttVars[] = { { "dotlock_program", DT_PATH, R_NONE, UL &MuttDotlock, UL BINDIR "/muttng_dotlock" }, /* ** .pp - ** Contains the path of the mutt_dotlock (8) binary to be used by - ** mutt. + ** Availability: Standalone and Dotlock + ** + ** .pp + ** Contains the path of the muttng_dotlock (1) binary to be used by + ** Mutt-ng. */ #endif { "dsn_notify", DT_STR, R_NONE, UL &DsnNotify, UL "" }, @@ -489,7 +548,7 @@ struct option_t MuttVars[] = { { "duplicate_threads", DT_BOOL, R_RESORT|R_RESORT_INIT|R_INDEX, OPTDUPTHREADS, 1 }, /* ** .pp - ** This variable controls whether mutt, when sorting by threads, threads + ** This variable controls whether Mutt-ng, when sorting by threads, threads ** messages with the same message-id together. If it is set, it will indicate ** that it thinks they are duplicates of each other with an equals sign ** in the thread diagram. @@ -506,14 +565,14 @@ struct option_t MuttVars[] = { { "editor", DT_PATH, R_NONE, UL &Editor, 0 }, /* ** .pp - ** This variable specifies which editor is used by mutt. + ** This variable specifies which editor is used by Mutt-ng. ** It defaults to the value of the VISUAL, or EDITOR, environment ** variable, or to the string "vi" if neither of those are set. */ { "encode_from", DT_BOOL, R_NONE, OPTENCODEFROM, 0 }, /* ** .pp - ** When \fIset\fP, mutt will quoted-printable encode messages when + ** When \fIset\fP, Mutt-ng will quoted-printable encode messages when ** they contain the string "From " in the beginning of a line. ** Useful to avoid the tampering certain mail delivery and transport ** agents tend to do with messages. @@ -521,7 +580,7 @@ struct option_t MuttVars[] = { { "envelope_from", DT_BOOL, R_NONE, OPTENVFROM, 0 }, /* ** .pp - ** When \fIset\fP, mutt will try to derive the message's \fIenvelope\fP + ** When \fIset\fP, Mutt-ng will try to derive the message's \fIenvelope\fP ** sender from the "From:" header. Note that this information is passed ** to sendmail command using the "-f" command line switch, so don't set this ** option if you are using that switch in $$sendmail yourself, @@ -557,6 +616,20 @@ struct option_t MuttVars[] = { ** signed. ** (PGP only) */ + { "file_charset", DT_STR, R_NONE, UL &FileCharset, UL 0 }, + /* + ** .pp + ** This variable is a colon-separated list of character encoding + ** schemes for text file attatchments. + ** If unset, $$charset value will be used instead. + ** For example, the following configuration would work for Japanese + ** text handling: + ** .pp + ** set file_charset="iso-2022-jp:euc-jp:shift_jis:utf-8" + ** .pp + ** Note: "iso-2022-*" must be put at the head of the value as shown above + ** if included. + */ { "folder", DT_PATH, R_NONE, UL &Maildir, UL "~/Mail" }, /* ** .pp @@ -593,7 +666,7 @@ struct option_t MuttVars[] = { /* ** .pp ** Controls whether or not the \fIMail-Followup-To\fP header field is - ** generated when sending mail. When \fIset\fP, Mutt will generate this + ** generated when sending mail. When \fIset\fP, Mutt-ng will generate this ** field when you are replying to a known mailing list, specified with ** the ``subscribe'' or ``$lists'' commands. ** .pp @@ -612,6 +685,9 @@ struct option_t MuttVars[] = { { "followup_to_poster", DT_QUAD, R_NONE, OPT_FOLLOWUPTOPOSTER, M_ASKYES }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** If this variable is \fIset\fP and the keyword "poster" is present in ** \fIFollowup-To\fP header, follow-up to newsgroup function is not ** permitted. The message will be mailed to the submitter of the @@ -621,12 +697,22 @@ struct option_t MuttVars[] = { { "force_name", DT_BOOL, R_NONE, OPTFORCENAME, 0 }, /* ** .pp - ** This variable is similar to ``$$save_name'', except that Mutt will + ** This variable is similar to ``$$save_name'', except that Mutt-ng will ** store a copy of your outgoing message by the username of the address ** you are sending to even if that mailbox does not exist. ** .pp ** Also see the ``$$record'' variable. */ + { "force_buffy_check", DT_BOOL, R_NONE, OPTFORCEBUFFYCHECK, 0 }, + /* + ** .pp + ** When \fIset\fP, it causes Mutt-ng to check for new mail when the + ** \fIbuffy-list\fP command is invoked. When \fIunset\fP, \fIbuffy_list\fP + ** will just list all mailboxes which are already known to have new mail. + ** .pp + ** Also see the following variables: ``$$timeout'', ``$$mail_check'' and + ** ``$$imap_mail_check''. + */ { "forward_decode", DT_BOOL, R_NONE, OPTFORWDECODE, 1 }, /* ** .pp @@ -667,32 +753,38 @@ struct option_t MuttVars[] = { { "from", DT_ADDR, R_NONE, UL &From, UL 0 }, /* ** .pp - ** When set, this variable contains a default from address. It + ** This variable contains a default from address. It ** can be overridden using my_hdr (including from send-hooks) and ** ``$$reverse_name''. This variable is ignored if ``$$use_from'' ** is unset. + ** E.g. you can use + ** send-hook Mutt-ng-devel@lists.berlios.de 'my_hdr From: Foo Bar ' + ** when replying to Mutt-ng-devel and Mutt-ng takes this email address. ** .pp ** Defaults to the contents of the environment variable EMAIL. */ { "gecos_mask", DT_RX, R_NONE, UL &GecosMask, UL "^[^,]*" }, /* ** .pp - ** A regular expression used by mutt to parse the GECOS field of a password + ** A regular expression used by Mutt-ng to parse the GECOS field of a password ** entry when expanding the alias. By default the regular expression is set ** to "^[^,]*" which will return the string up to the first "," encountered. ** If the GECOS field contains a string like "lastname, firstname" then you ** should set the gecos_mask=".*". ** .pp ** This can be useful if you see the following behavior: you address a e-mail - ** to user ID stevef whose full name is Steve Franklin. If mutt expands + ** to user ID stevef whose full name is Steve Franklin. If Mutt-ng expands ** stevef to "Franklin" stevef@foo.bar then you should set the gecos_mask to - ** a regular expression that will match the whole name so mutt will expand + ** a regular expression that will match the whole name so Mutt-ng will expand ** "Franklin" to "Franklin, Steve". */ #ifdef USE_NNTP { "group_index_format", DT_STR, R_BOTH, UL &GroupFormat, UL "%4C %M%N %5s %-45.45f %d" }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** This variable allows you to customize the newsgroup browser display to ** your personal taste. This string is similar to ``$index_format'', but ** has its own set of printf()-like sequences: @@ -724,7 +816,7 @@ struct option_t MuttVars[] = { { "header", DT_BOOL, R_NONE, OPTHEADER, 0 }, /* ** .pp - ** When set, this variable causes Mutt to include the header + ** When set, this variable causes Mutt-ng to include the header ** of the message you are replying to into the edit buffer. ** The ``$$weed'' setting applies. */ @@ -736,14 +828,14 @@ struct option_t MuttVars[] = { ** .pp ** \fBNote:\fP The binding will not be displayed correctly if the ** function is bound to a sequence rather than a single keystroke. Also, - ** the help line may not be updated if a binding is changed while Mutt is + ** the help line may not be updated if a binding is changed while Mutt-ng is ** running. Since this variable is primarily aimed at new users, neither ** of these should present a major problem. */ { "hidden_host", DT_BOOL, R_NONE, OPTHIDDENHOST, 0 }, /* ** .pp - ** When set, mutt will skip the host name part of ``$$hostname'' variable + ** When set, Mutt-ng will skip the host name part of ``$$hostname'' variable ** when adding the domain part to addresses. This variable does not ** affect the generation of Message-IDs, and it will not lead to the ** cut-off of first-level domains. @@ -751,26 +843,33 @@ struct option_t MuttVars[] = { { "hide_limited", DT_BOOL, R_TREE|R_INDEX, OPTHIDELIMITED, 0 }, /* ** .pp - ** When set, mutt will not show the presence of messages that are hidden + ** When set, Mutt-ng will not show the presence of messages that are hidden ** by limiting, in the thread tree. */ { "hide_missing", DT_BOOL, R_TREE|R_INDEX, OPTHIDEMISSING, 1 }, /* ** .pp - ** When set, mutt will not show the presence of missing messages in the + ** When set, Mutt-ng will not show the presence of missing messages in the ** thread tree. */ + { "hide_thread_subject", DT_BOOL, R_TREE|R_INDEX, OPTHIDETHREADSUBJECT, 1 }, + /* + ** .pp + ** When set, Mutt-ng will not show the subject of messages in the thread + ** tree that have the same subject as their parent or closest previously + ** displayed sibling. + */ { "hide_top_limited", DT_BOOL, R_TREE|R_INDEX, OPTHIDETOPLIMITED, 0 }, /* ** .pp - ** When set, mutt will not show the presence of messages that are hidden + ** When set, Mutt-ng will not show the presence of messages that are hidden ** by limiting, at the top of threads in the thread tree. Note that when ** $$hide_missing is set, this option will have no effect. */ { "hide_top_missing", DT_BOOL, R_TREE|R_INDEX, OPTHIDETOPMISSING, 1 }, /* ** .pp - ** When set, mutt will not show the presence of missing messages at the + ** When set, Mutt-ng will not show the presence of missing messages at the ** top of threads in the thread tree. Note that when $$hide_limited is ** set, this option will have no effect. */ @@ -799,7 +898,7 @@ struct option_t MuttVars[] = { ** .pp ** Affects the behaviour of the \fIreply\fP function when replying to ** messages from mailing lists. When set, if the ``Reply-To:'' field is - ** set to the same value as the ``To:'' field, Mutt assumes that the + ** set to the same value as the ``To:'' field, Mutt-ng assumes that the ** ``Reply-To:'' field was set by the mailing list to automate responses ** to the list, and will ignore this field. To direct a response to the ** mailing list when this option is set, use the \fIlist-reply\fP @@ -810,23 +909,29 @@ struct option_t MuttVars[] = { { "imap_authenticators", DT_STR, R_NONE, UL &ImapAuthenticators, UL 0 }, /* ** .pp - ** This is a colon-delimited list of authentication methods mutt may - ** attempt to use to log in to an IMAP server, in the order mutt should + ** Availability: IMAP + ** + ** .pp + ** This is a colon-delimited list of authentication methods Mutt-ng may + ** attempt to use to log in to an IMAP server, in the order Mutt-ng should ** try them. Authentication methods are either 'login' or the right - ** side of an IMAP 'AUTH=xxx' capability string, eg 'digest-md5', - ** 'gssapi' or 'cram-md5'. This parameter is case-insensitive. If this - ** parameter is unset (the default) mutt will try all available methods, + ** side of an IMAP 'AUTH=xxx' capability string, eg 'digest-md5', 'gssapi' + ** or 'cram-md5'. This parameter is case-insensitive. If this + ** parameter is unset (the default) Mutt-ng will try all available methods, ** in order from most-secure to least-secure. ** .pp ** Example: set imap_authenticators="gssapi:cram-md5:login" ** .pp - ** \fBNote:\fP Mutt will only fall back to other authentication methods if + ** \fBNote:\fP Mutt-ng will only fall back to other authentication methods if ** the previous methods are unavailable. If a method is available but - ** authentication fails, mutt will not connect to the IMAP server. + ** authentication fails, Mutt-ng will not connect to the IMAP server. */ { "imap_delim_chars", DT_STR, R_NONE, UL &ImapDelimChars, UL "/." }, /* ** .pp + ** Availability: IMAP + ** + ** .pp ** This contains the list of characters which you would like to treat ** as folder separators for displaying IMAP paths. In particular it ** helps in using the '=' shortcut for your \fIfolder\fP variable. @@ -835,13 +940,31 @@ struct option_t MuttVars[] = { { "imap_force_ssl", DT_BOOL, R_NONE, OPTIMAPFORCESSL, 0 }, /* ** .pp - ** If this variable is set, Mutt will always use SSL when + ** Availability: IMAP and SSL or IMAP and GNUTLS + ** + ** .pp + ** If this variable is set, Mutt-ng will always use SSL when ** connecting to IMAP servers. */ # endif + { "imap_headers", DT_STR, R_INDEX, UL &ImapHeaders, UL 0}, + /* + ** .pp + ** Availability: IMAP + ** + ** .pp + ** Mutt-ng requests these header fields in addition to the default headers + ** ("DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE + ** CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES X-LABEL") from IMAP + ** servers before displaying the index menu. You may want to add more + ** headers for spam detection. \fBNote:\fP This is a space separated list. + */ { "imap_home_namespace", DT_STR, R_NONE, UL &ImapHomeNamespace, UL 0}, /* ** .pp + ** Availability: IMAP + ** + ** .pp ** You normally want to see your personal folders alongside ** your INBOX in the IMAP browser. If you see something else, you may set ** this variable to the IMAP path to your folders. @@ -849,9 +972,12 @@ struct option_t MuttVars[] = { { "imap_keepalive", DT_NUM, R_NONE, UL &ImapKeepalive, 900 }, /* ** .pp - ** This variable specifies the maximum amount of time in seconds that mutt + ** Availability: IMAP + ** + ** .pp + ** This variable specifies the maximum amount of time in seconds that Mutt-ng ** will wait before polling open IMAP connections, to prevent the server - ** from closing them before mutt has finished with them. The default is + ** from closing them before Mutt-ng has finished with them. The default is ** well within the RFC-specified minimum amount of time (30 minutes) before ** a server is allowed to do this, but in practice the RFC does get ** violated every now and then. Reduce this number if you find yourself @@ -860,32 +986,54 @@ struct option_t MuttVars[] = { { "imap_list_subscribed", DT_BOOL, R_NONE, OPTIMAPLSUB, 0 }, /* ** .pp + ** Availability: IMAP + ** + ** .pp ** This variable configures whether IMAP folder browsing will look for ** only subscribed folders or all folders. This can be toggled in the ** IMAP browser with the \fItoggle-subscribed\fP function. */ + { "imap_mail_check", DT_NUM, R_NONE, UL &ImapBuffyTimeout, 5 }, + /* + ** .pp + ** This variable configures how often (in seconds) Mutt-ng should look for + ** new mail in IMAP folders. This is split from the ``$mail_check'' variable + ** to generate less traffic and get more accurate information for local folders. + ** .pp + ** It defaults to the default value of ``$mail_check'' which is 5 seconds. But + ** you may want to increase it. + */ { "imap_pass", DT_STR, R_NONE, UL &ImapPass, UL 0 }, /* ** .pp - ** Specifies the password for your IMAP account. If unset, Mutt will + ** Availability: IMAP + ** + ** .pp + ** Specifies the password for your IMAP account. If unset, Mutt-ng will ** prompt you for your password when you invoke the fetch-mail function. ** \fBWarning\fP: you should only use this option when you are on a - ** fairly secure machine, because the superuser can read your muttrc even + ** fairly secure machine, because the superuser can read your muttngrc even ** if you are the only one who can read the file. */ { "imap_passive", DT_BOOL, R_NONE, OPTIMAPPASSIVE, 1 }, /* ** .pp - ** When set, mutt will not open new IMAP connections to check for new - ** mail. Mutt will only check for new mail over existing IMAP + ** Availability: IMAP + ** + ** .pp + ** When set, Mutt-ng will not open new IMAP connections to check for new + ** mail. Mutt-ng will only check for new mail over existing IMAP ** connections. This is useful if you don't want to be prompted to - ** user/password pairs on mutt invocation, or if opening the connection + ** user/password pairs on Mutt-ng invocation, or if opening the connection ** is slow. */ { "imap_peek", DT_BOOL, R_NONE, OPTIMAPPEEK, 1 }, /* ** .pp - ** If set, mutt will avoid implicitly marking your mail as read whenever + ** Availability: IMAP + ** + ** .pp + ** If set, Mutt-ng will avoid implicitly marking your mail as read whenever ** you fetch a message from the server. This is generally a good thing, ** but can make closing an IMAP folder somewhat slower. This option ** exists to appease speed freaks. @@ -893,13 +1041,19 @@ struct option_t MuttVars[] = { { "imap_reconnect", DT_QUAD, R_NONE, OPT_IMAPRECONNECT, M_ASKYES }, /* ** .pp - ** Controls whether or not Mutt will try to reconnect to IMAP server when - ** connection lost. + ** Availability: IMAP + ** + ** .pp + ** Controls whether or not Mutt-ng will try to reconnect to IMAP server when + ** the connection is lost. */ { "imap_servernoise", DT_BOOL, R_NONE, OPTIMAPSERVERNOISE, 1 }, /* ** .pp - ** When set, mutt will display warning messages from the IMAP + ** Availability: IMAP + ** + ** .pp + ** When set, Mutt-ng will display warning messages from the IMAP ** server as error messages. Since these messages are often ** harmless, or generated due to configuration problems on the ** server which are out of the users' hands, you may wish to suppress @@ -908,6 +1062,9 @@ struct option_t MuttVars[] = { { "imap_user", DT_STR, R_NONE, UL &ImapUser, UL 0 }, /* ** .pp + ** Availability: IMAP + ** + ** .pp ** Your login name on the IMAP server. ** .pp ** This variable defaults to your user name on the local machine. @@ -916,9 +1073,9 @@ struct option_t MuttVars[] = { { "implicit_autoview", DT_BOOL,R_NONE, OPTIMPLICITAUTOVIEW, 0}, /* ** .pp - ** If set to ``yes'', mutt will look for a mailcap entry with the + ** If set to ``yes'', Mutt-ng will look for a mailcap entry with the ** copiousoutput flag set for \fIevery\fP MIME attachment it doesn't have - ** an internal viewer defined for. If such an entry is found, mutt will + ** an internal viewer defined for. If such an entry is found, Mutt-ng will ** use the viewer defined in that entry to convert the body part to text ** form. */ @@ -928,6 +1085,12 @@ struct option_t MuttVars[] = { ** Controls whether or not a copy of the message(s) you are replying to ** is included in your reply. */ + { "include_onlyfirst", DT_BOOL, R_NONE, OPTINCLUDEONLYFIRST, 0}, + /* + ** .pp + ** Controls whether or not Mutt-ng includes only the first attachment + ** of the message you are replying. + */ { "indent_string", DT_STR, R_NONE, UL &Prefix, UL "> " }, /* ** .pp @@ -946,7 +1109,7 @@ struct option_t MuttVars[] = { ** .pp ** ``Format strings'' are similar to the strings used in the ``C'' ** function printf to format output (see the man page for more detail). - ** The following sequences are defined in Mutt: + ** The following sequences are defined in Mutt-ng: ** .pp ** .dl ** .dt %a .dd address of the author @@ -963,6 +1126,7 @@ struct option_t MuttVars[] = { ** .dt %E .dd number of messages in current thread ** .dt %f .dd entire From: line (address + real name) ** .dt %F .dd author name, or recipient name if the message is from you + ** .dt %H .dd spam attribute(s) of this message ** .dt %g .dd newsgroup name (if compiled with nntp support) ** .dt %i .dd message-id of the current message ** .dt %l .dd number of lines in the message (does not work with maildir, @@ -974,7 +1138,7 @@ struct option_t MuttVars[] = { ** .dt %M .dd number of hidden messages if the thread is collapsed. ** .dt %N .dd message score ** .dt %n .dd author's real name (or address if missing) - ** .dt %O .dd (_O_riginal save folder) Where mutt would formerly have + ** .dt %O .dd (_O_riginal save folder) Where Mutt-ng would formerly have ** stashed the message: list name or recipient name if no list ** .dt %s .dd subject of the message ** .dt %S .dd status of the message (N/D/d/!/r/\(as) @@ -1009,8 +1173,11 @@ struct option_t MuttVars[] = { { "inews", DT_PATH, R_NONE, UL &Inews, UL "" }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** If set, specifies the program and arguments used to deliver news posted - ** by Mutt. Otherwise, mutt posts article using current connection to + ** by Mutt-ng. Otherwise, Mutt-ng posts article using current connection to ** news server. The following printf-style sequence is understood: ** .pp ** .ts @@ -1045,22 +1212,29 @@ struct option_t MuttVars[] = { ** from (instead to the author only). Setting this option to ``ask-yes'' or ** ``ask-no'' will ask if you really intended to reply to the author only. */ + { "max_line_length", DT_NUM, R_NONE, UL &MaxLineLength, 0 }, + /* + ** .pp + ** When set, the maximum line length for displaying f=f messages is limited + ** to this length. A value of 0 (which is also the default) means that the + ** maximum line length is determined by the terminal width and $$wrapmargin. + */ { "mail_check", DT_NUM, R_NONE, UL &BuffyTimeout, 5 }, /* ** .pp - ** This variable configures how often (in seconds) mutt should look for + ** This variable configures how often (in seconds) Mutt-ng should look for ** new mail. */ { "mailcap_path", DT_STR, R_NONE, UL &MailcapPath, 0 }, /* ** .pp ** This variable specifies which files to consult when attempting to - ** display MIME bodies not directly supported by Mutt. + ** display MIME bodies not directly supported by Mutt-ng. */ { "mailcap_sanitize", DT_BOOL, R_NONE, OPTMAILCAPSANITIZE, 1 }, /* ** .pp - ** If set, mutt will restrict possible characters in mailcap % expandos + ** If set, Mutt-ng will restrict possible characters in mailcap % expandos ** to a well-defined set of safe characters. This is the safe setting, ** but we are not sure it doesn't break some more advanced MIME stuff. ** .pp @@ -1072,26 +1246,35 @@ struct option_t MuttVars[] = { { "header_cache", DT_PATH, R_NONE, UL &HeaderCache, 0 }, /* ** .pp - ** The header_cache variable points to the header cache database. If - ** header_cache points to a directory there will be created one header cache - ** database per folder within this directory. If it doesn't point to a directory a - ** global header cache for all folders is used. Per default it is unset and so - ** no header caching will be used. + ** Availability: Header Cache + ** + ** .pp + ** The header_cache variable points to the header cache database. + ** If header_cache points to a directory it will contain a header cache + ** database per folder. If header_cache points to a file that file will + ** be a single global header cache. By default it is unset and so no + ** header caching will be used. */ { "maildir_header_cache_verify", DT_BOOL, R_NONE, OPTHCACHEVERIFY, 1 }, /* ** .pp - ** Check for Maildir unaware programs other than mutt having modified maildir + ** Availability: Header Cache + ** + ** .pp + ** Check for Maildir unaware programs other than Mutt-ng having modified maildir ** files when the header cache is in use. This incurs one stat(2) per ** message every time the folder is opened. */ { "header_cache_pagesize", DT_STR, R_NONE, UL &HeaderCachePageSize, UL "16384" }, /* ** .pp + ** Availability: Header Cache + ** + ** .pp ** Change the maildir header cache database page size. Too large ** or too small of a page size for the common header can waste ** space, memory effectiveness, or CPU time. The default should be more or - ** less the best you can get. For details google after mutt maildir header + ** less the best you can get. For details google after Mutt-ng maildir header ** cache (first hit). */ #endif /* USE_HCACHE */ @@ -1102,13 +1285,14 @@ struct option_t MuttVars[] = { ** (T)rashed flag instead of unlinked. \fBNOTE:\fP this only applies ** to maildir-style mailboxes. Setting it will have no effect on other ** mailbox types. + ** It is similiar to the trash option. */ { "mark_old", DT_BOOL, R_BOTH, OPTMARKOLD, 1 }, /* ** .pp - ** Controls whether or not mutt marks \fInew\fP \fBunread\fP + ** Controls whether or not Mutt-ng marks \fInew\fP \fBunread\fP ** messages as \fIold\fP if you exit a mailbox without reading them. - ** With this option set, the next time you start mutt, the messages + ** With this option set, the next time you start Mutt-ng, the messages ** will show up with an "O" next to them in the index menu, ** indicating that they are old. */ @@ -1138,11 +1322,18 @@ struct option_t MuttVars[] = { ** This specifies the operating system name for the User-Agent header. If ** this is unset, it will be set to the operating system name that uname(2) ** returns. If uname(2) fails, "UNIX" will be used. + ** It looks like this Mutt-ng version (specified string) + */ + { "sidebar_delim", DT_STR, R_BOTH, UL &SidebarDelim, UL "|" }, + /* + ** .pp + ** This specifies the delimiter between the sidebar (if visible) and + ** other screens. */ { "sidebar_visible", DT_BOOL, R_BOTH, OPTMBOXPANE, 0 }, /* ** .pp - ** This specifies whether or not to show the mailbox list pane. + ** This specifies whether or not to show the mailbox list pane (left sidebar). */ { "sidebar_width", DT_NUM, R_BOTH, UL &SidebarWidth, 0 }, /* @@ -1158,9 +1349,22 @@ struct option_t MuttVars[] = { { "metoo", DT_BOOL, R_NONE, OPTMETOO, 0 }, /* ** .pp - ** If unset, Mutt will remove your address (see the ``alternates'' + ** If unset, Mutt-ng will remove your address (see the ``alternates'' ** command) from the list of recipients when replying to a message. */ + { "menu_context", DT_NUM, R_NONE, UL &MenuContext, 0 }, + /* + ** .pp + ** This variable controls the number of lines of context that are given + ** when scrolling through menus. (Similar to ``$$pager_context''.) + */ + { "menu_move_off", DT_BOOL, R_NONE, OPTMENUMOVEOFF, 0 }, + /* + ** .pp + ** When \fIunset\fP, the bottom entry of menus will never scroll up past + ** the bottom of the screen, unless there are less entries than lines. + ** When \fIset\fP, the bottom entry may move off the bottom. + */ { "menu_scroll", DT_BOOL, R_NONE, OPTMENUSCROLL, 0 }, /* ** .pp @@ -1172,7 +1376,7 @@ struct option_t MuttVars[] = { { "meta_key", DT_BOOL, R_NONE, OPTMETAKEY, 0 }, /* ** .pp - ** If set, forces Mutt to interpret keystrokes with the high bit (bit 8) + ** If set, forces Mutt-ng to interpret keystrokes with the high bit (bit 8) ** set as if the user had pressed the ESC key and whatever key remains ** after having the high bit removed. For example, if the key pressed ** has an ASCII value of 0xf4, then this is treated as if the user had @@ -1183,7 +1387,7 @@ struct option_t MuttVars[] = { { "mh_purge", DT_BOOL, R_NONE, OPTMHPURGE, 0 }, /* ** .pp - ** When unset, mutt will mimic mh's behaviour and rename deleted messages + ** When unset, Mutt-ng will mimic mh's behaviour and rename deleted messages ** to \fI,\fP in mh folders instead of really deleting ** them. If the variable is set, the message files will simply be ** deleted. @@ -1238,6 +1442,9 @@ struct option_t MuttVars[] = { { "mime_subject", DT_BOOL, R_NONE, OPTMIMESUBJECT, 1 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** If \fIunset\fP, 8-bit ``subject:'' line in article header will not be ** encoded according to RFC2047 to base64. This is useful when message ** is Usenet article, because MIME for news is nonstandard feature. @@ -1248,6 +1455,9 @@ struct option_t MuttVars[] = { { "mix_entry_format", DT_STR, R_NONE, UL &MixEntryFormat, UL "%4n %c %-16s %a" }, /* ** .pp + ** Availability: Mixmaster + ** + ** .pp ** This variable describes the format of a remailer line on the mixmaster ** chain selection screen. The following printf-like sequences are ** supported: @@ -1262,18 +1472,19 @@ struct option_t MuttVars[] = { { "mixmaster", DT_PATH, R_NONE, UL &Mixmaster, UL MIXMASTER }, /* ** .pp + ** Availability: Mixmaster + ** + ** .pp ** This variable contains the path to the Mixmaster binary on your ** system. It is used with various sets of parameters to gather the ** list of known remailers, and to finally send a message through the ** mixmaster chain. */ #endif - - { "move", DT_QUAD, R_NONE, OPT_MOVE, M_ASKNO }, /* ** .pp - ** Controls whether you will be asked to confirm moving read messages + ** Controls whether or not Mutt-ng will move read messages ** from your spool mailbox to your ``$$mbox'' mailbox, or as a result of ** a ``$mbox-hook'' command. */ @@ -1287,6 +1498,32 @@ struct option_t MuttVars[] = { { "msg_format", DT_SYN, R_NONE, UL "message_format", 0 }, /* */ + { "msgid_format", DT_STR, R_NONE, UL &MsgIdFormat, UL "%Y%m%d%h%M%s.G%P%p" }, + /* + ** .pp + ** This is the format for the ``local part'' of the message-IDs generated + ** by Mutt-ng. The format string contains of one or more characters. The '%' + ** character marks that certain data will be added to the string, similar to + ** printf(). The following characters are allowed: + ** .pp + ** .dl + ** .dt %d .dd the current day of month + ** .dt %h .dd the current hour + ** .dt %m .dd the current month + ** .dt %M .dd the current minute + ** .dt %O .dd the current UNIX timestamp (octal) + ** .dt %p .dd the process ID + ** .dt %P .dd the current message-ID prefix (a character rotating with + ** every message-ID being generated) + ** .dt %r .dd a random integer value (decimal) + ** .dt %R .dd a random integer value (hexadecimal) + ** .dt %s .dd the current second + ** .dt %T .dd the current UNIX timestamp (decimal) + ** .dt %X .dd the current UNIX timestamp (hexadecimal) + ** .dt %Y .dd the current year (Y2K compliant) + ** .dt %% .dd the '%' character + ** .de + */ { "narrow_tree", DT_BOOL, R_TREE|R_INDEX, OPTNARROWTREE, 0 }, /* ** .pp @@ -1297,13 +1534,19 @@ struct option_t MuttVars[] = { { "news_cache_dir", DT_PATH, R_NONE, UL &NewsCacheDir, UL "~/.mutt" }, /* ** .pp - ** This variable pointing to directory where Mutt will save cached news + ** Availability: NNTP + ** + ** .pp + ** This variable pointing to directory where Mutt-ng will save cached news ** articles headers in. If \fIunset\fP, headers will not be saved at all ** and will be reloaded each time when you enter to newsgroup. */ { "news_server", DT_STR, R_NONE, UL &NewsServer, 0 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** This variable specifies domain name or address of NNTP server. It ** defaults to the newsserver specified in the environment variable ** $$$NNTPSERVER or contained in the file /etc/nntpserver. You can also @@ -1314,6 +1557,9 @@ struct option_t MuttVars[] = { { "newsrc", DT_PATH, R_NONE, UL &NewsRc, UL "~/.newsrc" }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** The file, containing info about subscribed newsgroups - names and ** indexes of read articles. The following printf-style sequence ** is understood: @@ -1325,6 +1571,9 @@ struct option_t MuttVars[] = { { "nntp_context", DT_NUM, R_NONE, UL &NntpContext, 1000 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** This variable defines number of articles which will be in index when ** newsgroup entered. If active newsgroup have more articles than this ** number, oldest articles will be ignored. Also controls how many @@ -1333,6 +1582,9 @@ struct option_t MuttVars[] = { { "nntp_load_description", DT_BOOL, R_NONE, OPTLOADDESC, 1 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** This variable controls whether or not descriptions for each newsgroup ** must be loaded when newsgroup is added to list (first time list ** loading or new newsgroup adding). @@ -1340,27 +1592,39 @@ struct option_t MuttVars[] = { { "nntp_user", DT_STR, R_NONE, UL &NntpUser, UL "" }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** Your login name on the NNTP server. If \fIunset\fP and NNTP server requires - ** authentification, Mutt will prompt you for your account name when you + ** authentification, Mutt-ng will prompt you for your account name when you ** connect to newsserver. */ { "nntp_pass", DT_STR, R_NONE, UL &NntpPass, UL "" }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** Your password for NNTP account. */ { "nntp_poll", DT_NUM, R_NONE, UL &NewsPollTimeout, 60 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** The time in seconds until any operations on newsgroup except post new - ** article will cause recheck for new news. If set to 0, Mutt will + ** article will cause recheck for new news. If set to 0, Mutt-ng will ** recheck newsgroup on each operation in index (stepping, read article, ** etc.). */ { "nntp_reconnect", DT_QUAD, R_NONE, OPT_NNTPRECONNECT, M_ASKYES }, /* ** .pp - ** Controls whether or not Mutt will try to reconnect to newsserver when + ** Availability: NNTP + ** + ** .pp + ** Controls whether or not Mutt-ng will try to reconnect to newsserver when ** connection lost. */ #endif @@ -1373,7 +1637,7 @@ struct option_t MuttVars[] = { ** like to use. ** .pp ** Using an external pager may have some disadvantages: Additional - ** keystrokes are necessary because you can't call mutt functions + ** keystrokes are necessary because you can't call Mutt-ng functions ** directly from the pager, and screen resizes cause lines longer than ** the screen width to be badly formatted in the help menu. */ @@ -1382,7 +1646,7 @@ struct option_t MuttVars[] = { ** .pp ** This variable controls the number of lines of context that are given ** when displaying the next or previous page in the internal pager. By - ** default, Mutt will display the line after the last one on the screen + ** default, Mutt-ng will display the line after the last one on the screen ** at the top of the next page (0 lines of context). */ { "pager_format", DT_STR, R_PAGER, UL &PagerFmt, UL "-%Z- %C/%m: %-20.20n %s" }, @@ -1419,7 +1683,7 @@ struct option_t MuttVars[] = { { "crypt_autosign", DT_BOOL, R_NONE, OPTCRYPTAUTOSIGN, 0 }, /* ** .pp - ** Setting this variable will cause Mutt to always attempt to + ** Setting this variable will cause Mutt-ng to always attempt to ** cryptographically sign outgoing messages. This can be overridden ** by use of the \fIpgp-menu\fP, when signing is not required or ** encryption is requested as well. If ``$$smime_is_default'' is set, @@ -1431,7 +1695,7 @@ struct option_t MuttVars[] = { { "crypt_autoencrypt", DT_BOOL, R_NONE, OPTCRYPTAUTOENCRYPT, 0 }, /* ** .pp - ** Setting this variable will cause Mutt to always attempt to PGP + ** Setting this variable will cause Mutt-ng to always attempt to PGP ** encrypt outgoing messages. This is probably only useful in ** connection to the \fIsend-hook\fP command. It can be overridden ** by use of the \fIpgp-menu\fP, when encryption is not required or @@ -1443,7 +1707,7 @@ struct option_t MuttVars[] = { { "pgp_ignore_subkeys", DT_BOOL, R_NONE, OPTPGPIGNORESUB, 1}, /* ** .pp - ** Setting this variable will cause Mutt to ignore OpenPGP subkeys. Instead, + ** Setting this variable will cause Mutt-ng to ignore OpenPGP subkeys. Instead, ** the principal key will inherit the subkeys' capabilities. Unset this ** if you want to play interesting key selection games. ** (PGP only) @@ -1475,14 +1739,14 @@ struct option_t MuttVars[] = { ** which are encrypted. This makes sense in combination with ** ``$$crypt_replyencrypt'', because it allows you to sign all ** messages which are automatically encrypted. This works around - ** the problem noted in ``$$crypt_replysign'', that mutt is not able + ** the problem noted in ``$$crypt_replysign'', that Mutt-ng is not able ** to find out whether an encrypted message is also signed. ** (Crypto only) */ { "crypt_timestamp", DT_BOOL, R_NONE, OPTCRYPTTIMESTAMP, 1 }, /* ** .pp - ** If set, mutt will include a time stamp in the lines surrounding + ** If set, Mutt-ng will include a time stamp in the lines surrounding ** PGP or S/MIME output, so spoofing such lines is more difficult. ** If you are using colors to mark these lines, and rely on these, ** you may unset this setting. @@ -1491,7 +1755,7 @@ struct option_t MuttVars[] = { { "pgp_use_gpg_agent", DT_BOOL, R_NONE, OPTUSEGPGAGENT, 0}, /* ** .pp - ** If set, mutt will use a possibly-running gpg-agent process. + ** If set, Mutt-ng will use a possibly-running gpg-agent process. ** (PGP only) */ { "pgp_verify_sig", DT_SYN, R_NONE, UL "crypt_verify_sig", 0}, @@ -1506,9 +1770,9 @@ struct option_t MuttVars[] = { { "smime_is_default", DT_BOOL, R_NONE, OPTSMIMEISDEFAULT, 0}, /* ** .pp - ** The default behaviour of mutt is to use PGP on all auto-sign/encryption + ** The default behaviour of Mutt-ng is to use PGP on all auto-sign/encryption ** operations. To override and to use OpenSSL instead this must be set. - ** However, this has no effect while replying, since mutt will automatically + ** However, this has no effect while replying, since Mutt-ng will automatically ** select the same application that was used to sign/encrypt the original ** message. (Note that this variable can be overridden by unsetting $$crypt_autosmime.) ** (S/MIME only) @@ -1524,8 +1788,8 @@ struct option_t MuttVars[] = { { "smime_decrypt_use_default_key", DT_BOOL, R_NONE, OPTSDEFAULTDECRYPTKEY, 1 }, /* ** .pp - ** If set (default) this tells mutt to use the default key for decryption. Otherwise, - ** if manage multiple certificate-key-pairs, mutt will try to use the mailbox-address + ** If set (default) this tells Mutt-ng to use the default key for decryption. Otherwise, + ** if manage multiple certificate-key-pairs, Mutt-ng will try to use the mailbox-address ** to determine the key to use. It will ask you to supply a key, if it can't find one. ** (S/MIME only) */ @@ -1562,7 +1826,7 @@ struct option_t MuttVars[] = { { "pgp_check_exit", DT_BOOL, R_NONE, OPTPGPCHECKEXIT, 1 }, /* ** .pp - ** If set, mutt will check the exit code of the PGP subprocess when + ** If set, Mutt-ng will check the exit code of the PGP subprocess when ** signing or encrypting. A non-zero exit code means that the ** subprocess failed. ** (PGP only) @@ -1584,10 +1848,52 @@ struct option_t MuttVars[] = { ** removed, while the inner multipart/signed part is retained. ** (PGP only) */ + { "pgp_create_traditional", DT_SYN, R_NONE, UL "pgp_autoinline", 0 }, + { "pgp_autoinline", DT_BOOL, R_NONE, OPTPGPAUTOINLINE, 0 }, + /* + ** .pp + ** This option controls whether Mutt-ng generates old-style inline + ** (traditional) PGP encrypted or signed messages under certain + ** circumstances. This can be overridden by use of the \fIpgp-menu\fP, + ** when inline is not required. + ** .pp + ** Note that Mutt-ng might automatically use PGP/MIME for messages + ** which consist of more than a single MIME part. Mutt-ng can be + ** configured to ask before sending PGP/MIME messages when inline + ** (traditional) would not work. + ** See also: ``$$pgp_mime_auto''. + ** .pp + ** Also note that using the old-style PGP message format is \fBstrongly\fP + ** \fBdeprecated\fP. + ** (PGP only) + */ + { "pgp_auto_traditional", DT_SYN, R_NONE, UL "pgp_replyinline", 0 }, + { "pgp_replyinline", DT_BOOL, R_NONE, OPTPGPREPLYINLINE, 0 }, + /* + ** .pp + ** Setting this variable will cause Mutt-ng to always attempt to + ** create an inline (traditional) message when replying to a + ** message which is PGP encrypted/signed inline. This can be + ** overridden by use of the \fIpgp-menu\fP, when inline is not + ** required. This option does not automatically detect if the + ** (replied-to) message is inline; instead it relies on Mutt-ng + ** internals for previously checked/flagged messages. + ** .pp + ** Note that Mutt-ng might automatically use PGP/MIME for messages + ** which consist of more than a single MIME part. Mutt-ng can be + ** configured to ask before sending PGP/MIME messages when inline + ** (traditional) would not work. + ** See also: ``$$pgp_mime_auto''. + ** .pp + ** Also note that using the old-style PGP message format is \fBstrongly\fP + ** \fBdeprecated\fP. + ** (PGP only) + ** + */ { "pgp_show_unusable", DT_BOOL, R_NONE, OPTPGPSHOWUNUSABLE, 1 }, /* ** .pp - ** If set, mutt will display non-usable keys on the PGP key selection + ** If set, Mutt-ng will display non-usable keys on the PGP key selection ** menu. This includes keys which have been revoked, have expired, or ** have been marked as ``disabled'' by the user. ** (PGP only) @@ -1603,7 +1909,7 @@ struct option_t MuttVars[] = { { "pgp_strict_enc", DT_BOOL, R_NONE, OPTPGPSTRICTENC, 1 }, /* ** .pp - ** If set, Mutt will automatically encode PGP/MIME signed messages as + ** If set, Mutt-ng will automatically encode PGP/MIME signed messages as ** \fIquoted-printable\fP. Please note that unsetting this variable may ** lead to problems with non-verifyable PGP signatures, so only change ** this if you know what you are doing. @@ -1613,7 +1919,7 @@ struct option_t MuttVars[] = { /* ** .pp ** The number of seconds after which a cached passphrase will expire if - ** not used. + ** not used. Default: 300. ** (PGP only) */ { "pgp_sort_keys", DT_SORT|DT_SORT_KEYS, R_NONE, UL &PgpSortKeys, SORT_ADDRESS }, @@ -1633,38 +1939,29 @@ struct option_t MuttVars[] = { ** `reverse-'. ** (PGP only) */ - { "pgp_create_traditional", DT_QUAD, R_NONE, OPT_PGPTRADITIONAL, M_NO }, + { "pgp_mime_auto", DT_QUAD, R_NONE, OPT_PGPMIMEAUTO, M_ASKYES }, /* ** .pp - ** This option controls whether Mutt generates old-style inline PGP - ** encrypted or signed messages. - ** .pp - ** Note that PGP/MIME will be used automatically for messages which have - ** a character set different from us-ascii, or which consist of more than - ** a single MIME part. + ** This option controls whether Mutt-ng will prompt you for + ** automatically sending a (signed/encrypted) message using + ** PGP/MIME when inline (traditional) fails (for any reason). ** .pp ** Also note that using the old-style PGP message format is \fBstrongly\fP ** \fBdeprecated\fP. ** (PGP only) */ - { "pgp_auto_traditional", DT_BOOL, R_NONE, OPTPGPAUTOTRAD, 0 }, + { "pgp_auto_decode", DT_BOOL, R_NONE, OPTPGPAUTODEC, 0 }, /* ** .pp - ** This option causes Mutt to generate an old-style inline PGP - ** encrypted or signed message when replying to an old-style - ** message, and a PGP/MIME message when replying to a PGP/MIME - ** message. Note that this option is only meaningful when using - ** ``$$crypt_replyencrypt'', ``$$crypt_replysign'', or - ** ``$$crypt_replysignencrypted''. - ** .pp - ** Also note that PGP/MIME will be used automatically for messages - ** which have a character set different from us-ascii, or which - ** consist of more than a single MIME part. - ** .pp - ** This option overrides ``$$pgp_create_traditional'' - ** (PGP only) + ** If set, Mutt-ng will automatically attempt to decrypt traditional PGP + ** messages whenever the user performs an operation which ordinarily would + ** result in the contents of the message being operated on. For example, + ** if the user displays a pgp-traditional message which has not been manually + ** checked with the check-traditional-pgp function, Mutt-ng will automatically + ** check the message for traditional pgp. */ + /* XXX Default values! */ { "pgp_decode_command", DT_STR, R_NONE, UL &PgpDecodeCommand, 0}, @@ -1694,7 +1991,7 @@ struct option_t MuttVars[] = { { "pgp_getkeys_command", DT_STR, R_NONE, UL &PgpGetkeysCommand, 0}, /* ** .pp - ** This command is invoked whenever mutt will need public key information. + ** This command is invoked whenever Mutt-ng will need public key information. ** %r is the only printf-like sequence used with this format. ** (PGP only) */ @@ -1766,7 +2063,7 @@ struct option_t MuttVars[] = { ** gpg --list-keys --with-colons. ** .pp ** This format is also generated by the pgpring utility which comes - ** with mutt. + ** with Mutt-ng. ** (PGP only) */ { "pgp_list_pubring_command", DT_STR, R_NONE, UL &PgpListPubringCommand, 0}, @@ -1777,7 +2074,7 @@ struct option_t MuttVars[] = { ** gpg --list-keys --with-colons. ** .pp ** This format is also generated by the pgpring utility which comes - ** with mutt. + ** with Mutt-ng. ** (PGP only) */ { "forward_decrypt", DT_BOOL, R_NONE, OPTFORWDECRYPT, 1 }, @@ -1811,7 +2108,7 @@ struct option_t MuttVars[] = { { "smime_keys", DT_PATH, R_NONE, UL &SmimeKeys, 0 }, /* ** .pp - ** Since there is no pubring/secring as with PGP, mutt has to handle + ** Since there is no pubring/secring as with PGP, Mutt-ng has to handle ** storage ad retrieval of keys/certs by itself. This is very basic right now, ** and stores keys and certificates in two different directories, both ** named as the hash-value retrieved from OpenSSL. There is an index file @@ -1829,7 +2126,7 @@ struct option_t MuttVars[] = { { "smime_certificates", DT_PATH, R_NONE, UL &SmimeCertificates, 0 }, /* ** .pp - ** Since there is no pubring/secring as with PGP, mutt has to handle + ** Since there is no pubring/secring as with PGP, Mutt-ng has to handle ** storage and retrieval of keys by itself. This is very basic right ** now, and keys and certificates are stored in two different ** directories, both named as the hash-value retrieved from @@ -1915,8 +2212,8 @@ struct option_t MuttVars[] = { /* ** .pp ** This command is used to extract only the signers X509 certificate from a S/MIME - ** signature, so that the certificate's owner may get compared to the email's - ** 'From'-field. + ** signature, so that the certificate's owner may get compared to the + ** email's 'From'-field. ** (S/MIME only) */ { "smime_import_cert_command", DT_STR, R_NONE, UL &SmimeImportCertCommand, 0}, @@ -1945,12 +2242,18 @@ struct option_t MuttVars[] = { { "smtp_auth_username", DT_STR, R_NONE, UL &SmtpAuthUser, 0 }, /* ** .pp + ** Availability: SMTP + ** + ** .pp ** Defines the username to use with SMTP AUTH. Setting this variable will - ** cause mutt to attempt to use SMTP AUTH when sending. + ** cause Mutt-ng to attempt to use SMTP AUTH when sending. */ { "smtp_auth_password", DT_STR, R_NONE, UL &SmtpAuthPass, 0 }, /* ** .pp + ** Availability: SMTP + ** + ** .pp ** Defines the password to use with SMTP AUTH. If ``$$smtp_auth_username'' ** is set, but this variable is not, you will be prompted for a password ** when sending. @@ -1958,6 +2261,9 @@ struct option_t MuttVars[] = { { "smtp_host", DT_STR, R_NONE, UL &SmtpHost, 0 }, /* ** .pp + ** Availability: SMTP + ** + ** .pp ** Defines the SMTP host which will be used to deliver mail, as opposed ** to invoking the sendmail binary. Setting this variable overrides the ** value of ``$$sendmail'', and any associated variables. @@ -1965,6 +2271,9 @@ struct option_t MuttVars[] = { { "smtp_port", DT_NUM, R_NONE, UL &SmtpPort, 25 }, /* ** .pp + ** Availability: SMTP + ** + ** .pp ** Defines the port that the SMTP host is listening on for mail delivery. ** Must be specified as a number. ** .pp @@ -1972,20 +2281,36 @@ struct option_t MuttVars[] = { ** servers will probably desire 587, the mail submission port. */ #endif - #if defined(USE_SSL)||defined(USE_NSS)||defined(USE_GNUTLS) +#ifdef USE_SSL + { "ssl_client_cert", DT_PATH, R_NONE, UL &SslClientCert, 0 }, + /* + ** .pp + ** Availability: SSL + ** + ** .pp + ** The file containing a client certificate and its associated private + ** key. + */ +#endif # if defined(USE_SSL)||defined(USE_GNUTLS) { "ssl_starttls", DT_QUAD, R_NONE, OPT_SSLSTARTTLS, M_YES }, /* ** .pp - ** If set (the default), mutt will attempt to use STARTTLS on servers - ** advertising the capability. When unset, mutt will not attempt to + ** Availability: SSL or GNUTLS + ** + ** .pp + ** If set (the default), Mutt-ng will attempt to use STARTTLS on servers + ** advertising the capability. When unset, Mutt-ng will not attempt to ** use STARTTLS regardless of the server's capabilities. */ # endif - { "certificate_file", DT_PATH, R_NONE, UL &SslCertFile, 0 }, + { "certificate_file", DT_PATH, R_NONE, UL &SslCertFile, UL "~/.mutt_certificates" }, /* ** .pp + ** Availability: SSL or NSS or GNUTLS + ** + ** .pp ** This variable specifies the file where the certificates you trust ** are saved. When an unknown certificate is encountered, you are asked ** if you accept it or not. If you accept it, the certificate can also @@ -2002,19 +2327,28 @@ struct option_t MuttVars[] = { { "ssl_usesystemcerts", DT_BOOL, R_NONE, OPTSSLSYSTEMCERTS, 1 }, /* ** .pp - ** If set to \fIyes\fP, mutt will use CA certificates in the + ** Availability: SSL or NSS + ** + ** .pp + ** If set to \fIyes\fP, Mutt-ng will use CA certificates in the ** system-wide certificate store when checking if server certificate ** is signed by a trusted CA. */ { "entropy_file", DT_PATH, R_NONE, UL &SslEntropyFile, 0 }, /* ** .pp + ** Availability: SSL or NSS + ** + ** .pp ** The file which includes random data that is used to initialize SSL ** library functions. */ { "ssl_use_sslv2", DT_BOOL, R_NONE, OPTSSLV2, 1 }, /* ** .pp + ** Availability: SSL or NSS + ** + ** .pp ** This variables specifies whether to attempt to use SSLv2 in the ** SSL authentication process. */ @@ -2022,12 +2356,18 @@ struct option_t MuttVars[] = { { "ssl_use_sslv3", DT_BOOL, R_NONE, OPTSSLV3, 1 }, /* ** .pp + ** Availability: SSL or NSS or GNUTLS + ** + ** .pp ** This variables specifies whether to attempt to use SSLv3 in the ** SSL authentication process. */ { "ssl_use_tlsv1", DT_BOOL, R_NONE, OPTTLSV1, 1 }, /* ** .pp + ** Availability: SSL or NSS or GNUTLS + ** + ** .pp ** This variables specifies whether to attempt to use TLSv1 in the ** SSL authentication process. */ @@ -2035,6 +2375,9 @@ struct option_t MuttVars[] = { { "ssl_min_dh_prime_bits", DT_NUM, R_NONE, UL &SslDHPrimeBits, 0 }, /* ** .pp + ** Availability: GNUTLS + ** + ** .pp ** This variable specifies the minimum acceptable prime size (in bits) ** for use in any Diffie-Hellman key exchange. A value of 0 will use ** the default from the GNUTLS library. @@ -2050,14 +2393,13 @@ struct option_t MuttVars[] = { */ #endif #endif - { "pipe_split", DT_BOOL, R_NONE, OPTPIPESPLIT, 0 }, /* ** .pp ** Used in connection with the \fIpipe-message\fP command and the ``tag- ** prefix'' operator. If this variable is unset, when piping a list of - ** tagged messages Mutt will concatenate the messages and will pipe them - ** as a single folder. When set, Mutt will pipe the messages one by one. + ** tagged messages Mutt-ng will concatenate the messages and will pipe them + ** as a single folder. When set, Mutt-ng will pipe the messages one by one. ** In both cases the messages are piped in the current sorted order, ** and the ``$$pipe_sep'' separator is added after each message. */ @@ -2065,7 +2407,7 @@ struct option_t MuttVars[] = { /* ** .pp ** Used in connection with the \fIpipe-message\fP command. When unset, - ** Mutt will pipe the messages without any preprocessing. When set, Mutt + ** Mutt-ng will pipe the messages without any preprocessing. When set, Mutt-ng ** will weed headers and will attempt to PGP/MIME decode the messages ** first. */ @@ -2079,12 +2421,15 @@ struct option_t MuttVars[] = { { "pop_authenticators", DT_STR, R_NONE, UL &PopAuthenticators, UL 0 }, /* ** .pp - ** This is a colon-delimited list of authentication methods mutt may - ** attempt to use to log in to an POP server, in the order mutt should + ** Availability: POP + ** + ** .pp + ** This is a colon-delimited list of authentication methods Mutt-ng may + ** attempt to use to log in to an POP server, in the order Mutt-ng should ** try them. Authentication methods are either 'user', 'apop' or any ** SASL mechanism, eg 'digest-md5', 'gssapi' or 'cram-md5'. ** This parameter is case-insensitive. If this parameter is unset - ** (the default) mutt will try all available methods, in order from + ** (the default) Mutt-ng will try all available methods, in order from ** most-secure to least-secure. ** .pp ** Example: set pop_authenticators="digest-md5:apop:user" @@ -2092,27 +2437,39 @@ struct option_t MuttVars[] = { { "pop_auth_try_all", DT_BOOL, R_NONE, OPTPOPAUTHTRYALL, 1 }, /* ** .pp - ** If set, Mutt will try all available methods. When unset, Mutt will + ** Availability: POP + ** + ** .pp + ** If set, Mutt-ng will try all available methods. When unset, Mutt-ng will ** only fall back to other authentication methods if the previous ** methods are unavailable. If a method is available but authentication - ** fails, Mutt will not connect to the POP server. + ** fails, Mutt-ng will not connect to the POP server. */ { "pop_checkinterval", DT_NUM, R_NONE, UL &PopCheckTimeout, 60 }, /* ** .pp + ** Availability: POP + ** + ** .pp ** This variable configures how often (in seconds) POP should look for ** new mail. */ { "pop_delete", DT_QUAD, R_NONE, OPT_POPDELETE, M_ASKNO }, /* ** .pp - ** If set, Mutt will delete successfully downloaded messages from the POP - ** server when using the fetch-mail function. When unset, Mutt will + ** Availability: POP + ** + ** .pp + ** If set, Mutt-ng will delete successfully downloaded messages from the POP + ** server when using the fetch-mail function. When unset, Mutt-ng will ** download messages but also leave them on the POP server. */ { "pop_host", DT_STR, R_NONE, UL &PopHost, UL "" }, /* ** .pp + ** Availability: POP + ** + ** .pp ** The name of your POP server for the fetch-mail function. You ** can also specify an alternative port, username and password, ie: ** .pp @@ -2121,19 +2478,28 @@ struct option_t MuttVars[] = { { "pop_last", DT_BOOL, R_NONE, OPTPOPLAST, 0 }, /* ** .pp - ** If this variable is set, mutt will try to use the "LAST" POP command + ** Availability: POP + ** + ** .pp + ** If this variable is set, Mutt-ng will try to use the "LAST" POP command ** for retrieving only unread messages from the POP server when using ** the fetch-mail function. */ { "pop_reconnect", DT_QUAD, R_NONE, OPT_POPRECONNECT, M_ASKYES }, /* ** .pp - ** Controls whether or not Mutt will try to reconnect to POP server when + ** Availability: POP + ** + ** .pp + ** Controls whether or not Mutt-ng will try to reconnect to POP server when ** connection lost. */ { "pop_user", DT_STR, R_NONE, UL &PopUser, 0 }, /* ** .pp + ** Availability: POP + ** + ** .pp ** Your login name on the POP server. ** .pp ** This variable defaults to your user name on the local machine. @@ -2141,17 +2507,20 @@ struct option_t MuttVars[] = { { "pop_pass", DT_STR, R_NONE, UL &PopPass, UL "" }, /* ** .pp - ** Specifies the password for your POP account. If unset, Mutt will + ** Availability: POP + ** + ** .pp + ** Specifies the password for your POP account. If unset, Mutt-ng will ** prompt you for your password when you open POP mailbox. ** \fBWarning\fP: you should only use this option when you are on a - ** fairly secure machine, because the superuser can read your muttrc + ** fairly secure machine, because the superuser can read your muttngrc ** even if you are the only one who can read the file. */ #endif /* USE_POP */ { "post_indent_string",DT_STR, R_NONE, UL &PostIndentString, UL "" }, /* ** .pp - ** Similar to the ``$$attribution'' variable, Mutt will append this + ** Similar to the ``$$attribution'' variable, Mutt-ng will append this ** string after the inclusion of a message which is being replied to. */ { "post_indent_str", DT_SYN, R_NONE, UL "post_indent_string", 0 }, @@ -2161,7 +2530,10 @@ struct option_t MuttVars[] = { { "post_moderated", DT_QUAD, R_NONE, OPT_TOMODERATED, M_ASKYES }, /* ** .pp - ** If set to \fIyes\fP, Mutt will post article to newsgroup that have + ** Availability: NNTP + ** + ** .pp + ** If set to \fIyes\fP, Mutt-ng will post article to newsgroup that have ** not permissions to posting (e.g. moderated). \fBNote:\fP if newsserver ** does not support posting to that newsgroup or totally read-only, that ** posting will not have an effect. @@ -2176,8 +2548,8 @@ struct option_t MuttVars[] = { { "postponed", DT_PATH, R_NONE, UL &Postponed, UL "~/postponed" }, /* ** .pp - ** Mutt allows you to indefinitely ``$postpone sending a message'' which - ** you are editing. When you choose to postpone a message, Mutt saves it + ** Mutt-ng allows you to indefinitely ``$postpone sending a message'' which + ** you are editing. When you choose to postpone a message, Mutt-ng saves it ** in the mailbox specified by this variable. Also see the ``$$postpone'' ** variable. */ @@ -2185,10 +2557,10 @@ struct option_t MuttVars[] = { { "preconnect", DT_STR, R_NONE, UL &Preconnect, UL 0}, /* ** .pp - ** If set, a shell command to be executed if mutt fails to establish + ** If set, a shell command to be executed if Mutt-ng fails to establish ** a connection to the server. This is useful for setting up secure ** connections, e.g. with ssh(1). If the command returns a nonzero - ** status, mutt gives up opening the server. Example: + ** status, Mutt-ng gives up opening the server. Example: ** .pp ** preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net ** sleep 20 < /dev/null > /dev/null" @@ -2203,8 +2575,9 @@ struct option_t MuttVars[] = { { "print", DT_QUAD, R_NONE, OPT_PRINT, M_ASKNO }, /* ** .pp - ** Controls whether or not Mutt asks for confirmation before printing. - ** This is useful for people (like me) who accidentally hit ``p'' often. + ** Controls whether or not Mutt-ng really prints messages. + ** This is set to \fIask-no\fP by default, because some people + ** accidentally hit ``p'' often (like me). */ { "print_command", DT_PATH, R_NONE, UL &PrintCmd, UL "lpr" }, /* @@ -2242,14 +2615,14 @@ struct option_t MuttVars[] = { /* ** .pp ** If you use an \fIexternal\fP ``$$pager'', setting this variable will - ** cause Mutt to prompt you for a command when the pager exits rather - ** than returning to the index menu. If unset, Mutt will return to the + ** cause Mutt-ng to prompt you for a command when the pager exits rather + ** than returning to the index menu. If unset, Mutt-ng will return to the ** index menu when the external pager exits. */ { "query_command", DT_PATH, R_NONE, UL &QueryCmd, UL "" }, /* ** .pp - ** This specifies the command that mutt will use to make external address + ** This specifies the command that Mutt-ng will use to make external address ** queries. The string should contain a %s, which will be substituted ** with the query string the user types. See ``$query'' for more ** information. @@ -2258,7 +2631,7 @@ struct option_t MuttVars[] = { /* ** .pp ** This variable controls whether ``quit'' and ``exit'' actually quit - ** from mutt. If it set to yes, they do quit, if it is set to no, they + ** from Mutt-ng. If it set to yes, they do quit, if it is set to no, they ** have no effect, and if it is set to ask-yes or ask-no, you are ** prompted for confirmation when you try to quit. */ @@ -2289,9 +2662,9 @@ struct option_t MuttVars[] = { { "read_inc", DT_NUM, R_NONE, UL &ReadInc, 10 }, /* ** .pp - ** If set to a value greater than 0, Mutt will display which message it + ** If set to a value greater than 0, Mutt-ng will display which message it ** is currently on when reading a mailbox. The message is printed after - ** \fIread_inc\fP messages have been read (e.g., if set to 25, Mutt will + ** \fIread_inc\fP messages have been read (e.g., if set to 25, Mutt-ng will ** print a message when it reads message 25, and then again when it gets ** to message 50). This variable is meant to indicate progress when ** reading large mailboxes which may take some time. @@ -2318,7 +2691,7 @@ struct option_t MuttVars[] = { { "recall", DT_QUAD, R_NONE, OPT_RECALL, M_ASKYES }, /* ** .pp - ** Controls whether or not you are prompted to recall postponed messages + ** Controls whether or not Mutt-ng recalls postponed messages ** when composing a new message. Also see ``$$postponed''. ** .pp ** Setting this variable to ``yes'' is not generally useful, and thus not @@ -2345,15 +2718,15 @@ struct option_t MuttVars[] = { { "reply_self", DT_BOOL, R_NONE, OPTREPLYSELF, 0 }, /* ** .pp - ** If unset and you are replying to a message sent by you, Mutt will + ** If unset and you are replying to a message sent by you, Mutt-ng will ** assume that you want to reply to the recipients of that message rather ** than to yourself. */ { "reply_to", DT_QUAD, R_NONE, OPT_REPLYTO, M_ASKYES }, /* ** .pp - ** If set, Mutt will ask you if you want to use the address listed in the - ** Reply-To: header field when replying to a message. If you answer no, + ** If set, when replying to a message, Mutt-ng will use the address listed + ** in the Reply-to: header as the recipient of the reply. If unset, ** it will use the address in the From: header field instead. This ** option is useful for reading a mailing list that sets the Reply-To: ** header field to the list address and you want to send a private @@ -2369,7 +2742,7 @@ struct option_t MuttVars[] = { { "reverse_alias", DT_BOOL, R_BOTH, OPTREVALIAS, 0 }, /* ** .pp - ** This variable controls whether or not Mutt will display the "personal" + ** This variable controls whether or not Mutt-ng will display the "personal" ** name from your aliases in the index menu if it finds an alias that ** matches the message's sender. For example, if you have the following ** alias: @@ -2395,22 +2768,24 @@ struct option_t MuttVars[] = { ** move the messages to another machine, and reply to some the messages ** from there. If this variable is set, the default \fIFrom:\fP line of ** the reply messages is built using the address where you received the - ** messages you are replying to. If the variable is unset, the - ** \fIFrom:\fP line will use your address on the current machine. + ** messages you are replying to \fBif\fP that address matches your + ** alternates. If the variable is unset, or the address that would be + ** used doesn't match your alternates, the \fIFrom:\fP line will use + ** your address on the current machine. */ { "reverse_realname", DT_BOOL, R_BOTH, OPTREVREAL, 1 }, /* ** .pp ** This variable fine-tunes the behaviour of the $reverse_name feature. - ** When it is set, mutt will use the address from incoming messages as-is, - ** possibly including eventual real names. When it is unset, mutt will + ** When it is set, Mutt-ng will use the address from incoming messages as-is, + ** possibly including eventual real names. When it is unset, Mutt-ng will ** override any such real names with the setting of the $realname variable. */ { "rfc2047_parameters", DT_BOOL, R_NONE, OPTRFC2047PARAMS, 0 }, /* ** .pp - ** When this variable is set, Mutt will decode RFC-2047-encoded MIME - ** parameters. You want to set this variable when mutt suggests you + ** When this variable is set, Mutt-ng will decode RFC-2047-encoded MIME + ** parameters. You want to set this variable when Mutt-ng suggests you ** to save attachments to files named like this: ** =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?= ** .pp @@ -2421,13 +2796,13 @@ struct option_t MuttVars[] = { ** prohibited by the standard, but nevertheless encountered in the ** wild. ** Also note that setting this parameter will \fInot\fP have the effect - ** that mutt \fIgenerates\fP this kind of encoding. Instead, mutt will + ** that Mutt-ng \fIgenerates\fP this kind of encoding. Instead, Mutt-ng will ** unconditionally use the encoding specified in RFC 2231. */ { "save_address", DT_BOOL, R_NONE, OPTSAVEADDRESS, 0 }, /* ** .pp - ** If set, mutt will take the sender's full address when choosing a + ** If set, Mutt-ng will take the sender's full address when choosing a ** default folder for saving a mail. If ``$$save_name'' or ``$$force_name'' ** is set too, the selection of the fcc folder will be changed as well. */ @@ -2438,7 +2813,7 @@ struct option_t MuttVars[] = { ** when closed (the exception is ``$$spoolfile'' which is never removed). ** If set, mailboxes are never removed. ** .pp - ** \fBNote:\fP This only applies to mbox and MMDF folders, Mutt does not + ** \fBNote:\fP This only applies to mbox and MMDF folders, Mutt-ng does not ** delete MH and Maildir directories. */ { "save_name", DT_BOOL, R_NONE, OPTSAVENAME, 0 }, @@ -2466,8 +2841,8 @@ struct option_t MuttVars[] = { /* ** .pp ** Messages which have been assigned a score equal to or lower than the value - ** of this variable are automatically marked for deletion by mutt. Since - ** mutt scores are always greater than or equal to zero, the default setting + ** of this variable are automatically marked for deletion by Mutt-ng. Since + ** Mutt-ng scores are always greater than or equal to zero, the default setting ** of this variable will never mark a message for deletion. */ { "score_threshold_flag", DT_NUM, R_NONE, UL &ScoreThresholdFlag, 9999 }, @@ -2480,14 +2855,14 @@ struct option_t MuttVars[] = { /* ** .pp ** Messages which have been assigned a score equal to or lower than the value - ** of this variable are automatically marked as read by mutt. Since - ** mutt scores are always greater than or equal to zero, the default setting + ** of this variable are automatically marked as read by Mutt-ng. Since + ** Mutt-ng scores are always greater than or equal to zero, the default setting ** of this variable will never mark a message read. */ { "send_charset", DT_STR, R_NONE, UL &SendCharset, UL "us-ascii:iso-8859-1:utf-8" }, /* ** .pp - ** A list of character sets for outgoing messages. Mutt will use the + ** A list of character sets for outgoing messages. Mutt-ng will use the ** first character set into which the text can be converted exactly. ** If your ``$$charset'' is not iso-8859-1 and recipients may not ** understand UTF-8, it is advisable to include in the list an @@ -2498,8 +2873,8 @@ struct option_t MuttVars[] = { { "sendmail", DT_PATH, R_NONE, UL &Sendmail, UL SENDMAIL " -oem -oi" }, /* ** .pp - ** Specifies the program and arguments used to deliver mail sent by Mutt. - ** Mutt expects that the specified program interprets additional + ** Specifies the program and arguments used to deliver mail sent by Mutt-ng. + ** Mutt-ng expects that the specified program interprets additional ** arguments as recipient addresses. */ { "sendmail_wait", DT_NUM, R_NONE, UL &SendmailWait, 0 }, @@ -2508,7 +2883,7 @@ struct option_t MuttVars[] = { ** Specifies the number of seconds to wait for the ``$$sendmail'' process ** to finish before giving up and putting delivery in the background. ** .pp - ** Mutt interprets the value of this variable as follows: + ** Mutt-ng interprets the value of this variable as follows: ** .dl ** .dt >0 .dd number of seconds to wait for sendmail to finish before continuing ** .dt 0 .dd wait forever for sendmail to finish @@ -2529,12 +2904,30 @@ struct option_t MuttVars[] = { { "save_unsubscribed",DT_BOOL, R_NONE, OPTSAVEUNSUB, 0 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** When \fIset\fP, info about unsubscribed newsgroups will be saved into ** ``newsrc'' file and into cache. */ +#endif + { "shorten_hierarchy", DT_BOOL, R_NONE, OPTSHORTENHIERARCHY, 0 }, + /* + ** .pp + ** When \fIset\fP, the "hierarchy" of the sidebar entries will be shortened + ** only if they cannot be printed in full length (because ``$$sidebar_width'' + ** is set to a too low value). For example, if the newsgroup name + ** ``de.alt.sysadmin.recovery'' doesn't fit on the screen, it'll get shortened + ** ``d.a.s.recovery'' while ``de.alt.d0'' still would and thus will not get + ** shortened. + */ +#ifdef USE_NNTP { "show_new_news", DT_BOOL, R_NONE, OPTSHOWNEWNEWS, 1 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** If \fIset\fP, newsserver will be asked for new newsgroups on entering ** the browser. Otherwise, it will be done only once for a newsserver. ** Also controls whether or not number of new articles of subscribed @@ -2543,6 +2936,9 @@ struct option_t MuttVars[] = { { "show_only_unread", DT_BOOL, R_NONE, OPTSHOWONLYUNREAD, 0 }, /* ** .pp + ** Availability: NNTP + ** + ** .pp ** If \fIset\fP, only subscribed newsgroups that contain unread articles ** will be displayed in browser. */ @@ -2554,7 +2950,7 @@ struct option_t MuttVars[] = { ** ``$$signature''. It is \fBstrongly\fP recommended that you not unset ** this variable unless your ``signature'' contains just your name. The ** reason for this is because many software packages use ``-- \n'' to - ** detect your signature. For example, Mutt has the ability to highlight + ** detect your signature. For example, Mutt-ng has the ability to highlight ** the signature in a different color in the builtin pager. */ { "sig_on_top", DT_BOOL, R_NONE, OPTSIGONTOP, 0}, @@ -2573,14 +2969,24 @@ struct option_t MuttVars[] = { ** assumed that filename is a shell command and input should be read from ** its stdout. */ + { "signoff_string", DT_STR, R_NONE, UL &SignOffString, UL 0 }, + /* + ** .pp + ** If set, this string will be inserted before the signature. This is useful + ** for people that want to sign off every message they send with their name. + ** .pp + ** If you want to insert your website's URL, additional contact information or + ** witty quotes into your mails, better use a signature file instead of + ** the signoff string. + */ { "simple_search", DT_STR, R_NONE, UL &SimpleSearch, UL "~f %s | ~s %s" }, /* ** .pp - ** Specifies how Mutt should expand a simple search into a real search + ** Specifies how Mutt-ng should expand a simple search into a real search ** pattern. A simple search is one that does not contain any of the ~ ** operators. See ``$patterns'' for more information on search patterns. ** .pp - ** For example, if you simply type joe at a search or limit prompt, Mutt + ** For example, if you simply type joe at a search or limit prompt, Mutt-ng ** will automatically expand it to the value specified by this variable. ** For the default value it would be: ** .pp @@ -2622,6 +3028,7 @@ struct option_t MuttVars[] = { ** . mailbox-order (unsorted) ** . score ** . size + ** . spam ** . subject ** . threads ** . to @@ -2648,7 +3055,7 @@ struct option_t MuttVars[] = { ** When sorting by threads, this variable controls how threads are sorted ** in relation to other threads, and how the branches of the thread trees ** are sorted. This can be set to any value that ``$$sort'' can, except - ** threads (in that case, mutt will just use date-sent). You can also + ** threads (in that case, Mutt-ng will just use date-sent). You can also ** specify the last- prefix in addition to the reverse- prefix, but last- ** must come after reverse-. The last- prefix causes messages to be ** sorted against its siblings by which has the last descendant, using @@ -2659,7 +3066,7 @@ struct option_t MuttVars[] = { ** order $$sort_aux is reversed again (which is not the right thing to do, ** but kept to not break any existing configuration setting). */ - { "sort_browser", DT_SORT|DT_SORT_BROWSER, R_NONE, UL &BrowserSort, SORT_SUBJECT }, + { "sort_browser", DT_SORT|DT_SORT_BROWSER, R_NONE, UL &BrowserSort, SORT_ALPHA }, /* ** .pp ** Specifies how to sort entries in the file browser. By default, the @@ -2680,18 +3087,27 @@ struct option_t MuttVars[] = { ** .pp ** This variable is only useful when sorting by threads with ** ``$$strict_threads'' unset. In that case, it changes the heuristic - ** mutt uses to thread messages by subject. With sort_re set, mutt will + ** Mutt-ng uses to thread messages by subject. With sort_re set, Mutt-ng will ** only attach a message as the child of another message by subject if ** the subject of the child message starts with a substring matching the - ** setting of ``$$reply_regexp''. With sort_re unset, mutt will attach + ** setting of ``$$reply_regexp''. With sort_re unset, Mutt-ng will attach ** the message whether or not this is the case, as long as the ** non-``$$reply_regexp'' parts of both messages are identical. */ + { "spam_separator", DT_STR, R_NONE, UL &SpamSep, UL "," }, + /* + ** .pp + ** ``$spam_separator'' controls what happens when multiple spam headers + ** are matched: if unset, each successive header will overwrite any + ** previous matches value for the spam label. If set, each successive + ** match will append to the previous, using ``$spam_separator'' as a + ** separator. + */ { "spoolfile", DT_PATH, R_NONE, UL &Spoolfile, 0 }, /* ** .pp - ** If your spool mailbox is in a non-default place where Mutt cannot find - ** it, you can specify its location with this variable. Mutt will + ** If your spool mailbox is in a non-default place where Mutt-ng cannot find + ** it, you can specify its location with this variable. Mutt-ng will ** automatically set this variable to the value of the environment ** variable $$$MAIL if it is not set. */ @@ -2718,6 +3134,7 @@ struct option_t MuttVars[] = { ** .pp ** .dl ** .dt %b .dd number of mailboxes with new mail * + ** .dt %B .dd the short pathname of the current mailbox ** .dt %d .dd number of deleted messages * ** .dt %f .dd the full pathname of the current mailbox ** .dt %F .dd number of flagged messages * @@ -2728,7 +3145,7 @@ struct option_t MuttVars[] = { ** .dt %m .dd the number of messages in the mailbox * ** .dt %M .dd the number of messages shown (i.e., which match the current limit) * ** .dt %n .dd number of new messages in the mailbox * - ** .dt %o .dd number of old unread messages + ** .dt %o .dd number of old unread messages * ** .dt %p .dd number of postponed messages * ** .dt %P .dd percentage of the way through the index ** .dt %r .dd modified/read-only/won't-write/attach-message indicator, @@ -2737,7 +3154,7 @@ struct option_t MuttVars[] = { ** .dt %S .dd current aux sorting method ($$sort_aux) ** .dt %t .dd number of tagged messages * ** .dt %u .dd number of unread messages * - ** .dt %v .dd Mutt version string + ** .dt %v .dd Mutt-ng version string ** .dt %V .dd currently active limit pattern, if any * ** .dt %>X .dd right justify the rest of the string and pad with "X" ** .dt %|X .dd pad to the end of the line with "X" @@ -2755,8 +3172,8 @@ struct option_t MuttVars[] = { ** .pp ** where \fIsequence_char\fP is a character from the table above, and ** \fIoptional_string\fP is the string you would like printed if - ** \fIstatus_char\fP is nonzero. \fIoptional_string\fP \fBmay\fP contain - ** other sequence as well as normal text, but you may \fBnot\fP nest + ** \fIsequence_char\fP is nonzero. \fIoptional_string\fP \fBmay\fP contain + ** other sequences as well as normal text, but you may \fBnot\fP nest ** optional strings. ** .pp ** Here is an example illustrating how to optionally print the number of @@ -2774,7 +3191,7 @@ struct option_t MuttVars[] = { ** lowercase, you would use: ** %_h ** .pp - ** If you prefix the sequence character with a colon (:) character, mutt + ** If you prefix the sequence character with a colon (:) character, Mutt-ng ** will replace any dots in the expansion by underscores. This might be helpful ** with IMAP folders that don't like dots in folder names. */ @@ -2784,6 +3201,19 @@ struct option_t MuttVars[] = { ** Setting this variable causes the ``status bar'' to be displayed on ** the first line of the screen rather than near the bottom. */ + { "strict_mime", DT_BOOL, R_NONE, OPTSTRICTMIME, 1 }, + /* + ** .pp + ** When unset, non MIME-compliant messages that doesn't have any + ** charset indication in ``Content-Type'' field can be displayed + ** (non MIME-compliant messages are often generated by old mailers + ** or buggy mailers like MS Outlook Express). + ** See also $$assumed_charset. + ** .pp + ** This option also replaces linear-white-space between encoded-word + ** and *text to a single space to prevent the display of MIME-encoded + ** ``Subject'' field from being devided into multiple lines. + */ { "strict_threads", DT_BOOL, R_RESORT|R_RESORT_INIT|R_INDEX, OPTSTRICTTHREADS, 0 }, /* ** .pp @@ -2794,17 +3224,24 @@ struct option_t MuttVars[] = { ** personal mailbox where you might have several unrelated messages with ** the subject ``hi'' which will get grouped together. */ + { "stuff_quoted", DT_BOOL, R_BOTH, OPTSTUFFQUOTED, 0 }, + /* + ** .pp + ** If set, attachments with flowed format will have their quoting ``stuffed'', + ** i.e. a space will be inserted between the quote characters and the actual + ** text. + */ { "suspend", DT_BOOL, R_NONE, OPTSUSPEND, 1 }, /* ** .pp - ** When \fIunset\fP, mutt won't stop when the user presses the terminal's - ** \fIsusp\fP key, usually ``control-Z''. This is useful if you run mutt - ** inside an xterm using a command like xterm -e mutt. + ** When \fIunset\fP, Mutt-ng won't stop when the user presses the terminal's + ** \fIsusp\fP key, usually ``control-Z''. This is useful if you run Mutt-ng + ** inside an xterm using a command like xterm -e Mutt-ng. */ { "text_flowed", DT_BOOL, R_NONE, OPTTEXTFLOWED, 0 }, /* ** .pp - ** When set, mutt will generate text/plain; format=flowed attachments. + ** When set, Mutt-ng will generate text/plain; format=flowed attachments. ** This format is easier to handle for some mailing software, and generally ** just looks like ordinary text. To actually make use of this format's ** features, you'll need support in your editor. @@ -2814,7 +3251,7 @@ struct option_t MuttVars[] = { { "thread_received", DT_BOOL, R_RESORT|R_RESORT_INIT|R_INDEX, OPTTHREADRECEIVED, 0 }, /* ** .pp - ** When set, mutt uses the date received rather than the date sent + ** When set, Mutt-ng uses the date received rather than the date sent ** to thread messages by subject. */ { "thorough_search", DT_BOOL, R_NONE, OPTTHOROUGHSRC, 0 }, @@ -2834,15 +3271,15 @@ struct option_t MuttVars[] = { { "timeout", DT_NUM, R_NONE, UL &Timeout, 600 }, /* ** .pp - ** This variable controls the \fInumber of seconds\fP Mutt will wait + ** This variable controls the \fInumber of seconds\fP Mutt-ng will wait ** for a key to be pressed in the main menu before timing out and - ** checking for new mail. A value of zero or less will cause Mutt + ** checking for new mail. A value of zero or less will cause Mutt-ng ** to never time out. */ { "tmpdir", DT_PATH, R_NONE, UL &Tempdir, 0 }, /* ** .pp - ** This variable allows you to specify where Mutt will place its + ** This variable allows you to specify where Mutt-ng will place its ** temporary files needed for displaying and composing messages. If ** this variable is not set, the environment variable TMPDIR is ** used. If TMPDIR is not set then "/tmp" is used. @@ -2869,13 +3306,13 @@ struct option_t MuttVars[] = { ** purged. ** .pp ** NOTE: When you delete a message in the trash folder, it is really - ** deleted, so that you have a way to clean the trash. + ** deleted, so that there is no way to recover mail. */ #ifdef USE_SOCKET { "tunnel", DT_STR, R_NONE, UL &Tunnel, UL 0 }, /* ** .pp - ** Setting this variable will cause mutt to open a pipe to a command + ** Setting this variable will cause Mutt-ng to open a pipe to a command ** instead of a raw socket. You may be able to use this to set up ** preauthenticated connections to your IMAP/POP3 server. Example: ** .pp @@ -2888,7 +3325,7 @@ struct option_t MuttVars[] = { { "umask", DT_NUM, R_NONE, UL &Umask, 0077 }, /* ** .pp - ** This sets the umask that will be used by mutt-ng when creating all + ** This sets the umask that will be used by Mutt-ng when creating all ** kinds of files. If unset, the default value is 077. */ { "use_8bitmime", DT_BOOL, R_NONE, OPTUSE8BITMIME, 0 }, @@ -2898,38 +3335,50 @@ struct option_t MuttVars[] = { ** of sendmail which supports the -B8BITMIME flag (such as sendmail ** 8.8.x) or you may not be able to send mail. ** .pp - ** When \fIset\fP, Mutt will invoke ``$$sendmail'' with the -B8BITMIME + ** When \fIset\fP, Mutt-ng will invoke ``$$sendmail'' with the -B8BITMIME ** flag when sending 8-bit messages to enable ESMTP negotiation. */ { "use_domain", DT_BOOL, R_NONE, OPTUSEDOMAIN, 1 }, /* ** .pp - ** When set, Mutt will qualify all local addresses (ones without the + ** When set, Mutt-ng will qualify all local addresses (ones without the ** @host portion) with the value of ``$$hostname''. If \fIunset\fP, no ** addresses will be qualified. */ { "use_from", DT_BOOL, R_NONE, OPTUSEFROM, 1 }, /* ** .pp - ** When \fIset\fP, Mutt will generate the `From:' header field when + ** When \fIset\fP, Mutt-ng will generate the `From:' header field when ** sending messages. If \fIunset\fP, no `From:' header field will be ** generated unless the user explicitly sets one using the ``$my_hdr'' ** command. */ +#ifdef HAVE_LIBIDN + { "use_idn", DT_BOOL, R_BOTH, OPTUSEIDN, 1}, + /* + ** .pp + ** Availability: IDN + ** + ** .pp + ** When \fIset\fP, Mutt-ng will show you international domain names decoded. + ** Note: You can use IDNs for addresses even if this is \fIunset\fP. + ** This variable only affects decoding. + */ +#endif /* HAVE_LIBIDN */ #ifdef HAVE_GETADDRINFO { "use_ipv6", DT_BOOL, R_NONE, OPTUSEIPV6, 1}, /* ** .pp - ** When \fIset\fP, Mutt will look for IPv6 addresses of hosts it tries to - ** contact. If this option is unset, Mutt will restrict itself to IPv4 addresses. + ** When \fIset\fP, Mutt-ng will look for IPv6 addresses of hosts it tries to + ** contact. If this option is unset, Mutt-ng will restrict itself to IPv4 addresses. ** Normally, the default should work. */ #endif /* HAVE_GETADDRINFO */ { "user_agent", DT_BOOL, R_NONE, OPTXMAILER, 1}, /* ** .pp - ** When \fIset\fP, mutt will add a "User-Agent" header to outgoing - ** messages, indicating which version of mutt was used for composing + ** When \fIset\fP, Mutt-ng will add a "User-Agent" header to outgoing + ** messages, indicating which version of Mutt-ng was used for composing ** them. */ { "visual", DT_PATH, R_NONE, UL &Visual, 0 }, @@ -2941,7 +3390,7 @@ struct option_t MuttVars[] = { { "wait_key", DT_BOOL, R_NONE, OPTWAITKEY, 1 }, /* ** .pp - ** Controls whether Mutt will ask you to press a key after \fIshell- + ** Controls whether Mutt-ng will ask you to press a key after \fIshell- ** escape\fP, \fIpipe-message\fP, \fIpipe-entry\fP, \fIprint-message\fP, ** and \fIprint-entry\fP commands. ** .pp @@ -2949,13 +3398,13 @@ struct option_t MuttVars[] = { ** that the corresponding mailcap entry has a \fIneedsterminal\fP flag, ** and the external program is interactive. ** .pp - ** When set, Mutt will always ask for a key. When unset, Mutt will wait + ** When set, Mutt-ng will always ask for a key. When unset, Mutt-ng will wait ** for a key only if the external command returned a non-zero status. */ { "weed", DT_BOOL, R_NONE, OPTWEED, 1 }, /* ** .pp - ** When set, mutt will weed headers when when displaying, forwarding, + ** When set, Mutt-ng will weed headers when displaying, forwarding, ** printing, or replying to messages. */ { "wrap_search", DT_BOOL, R_NONE, OPTWRAPSEARCH, 1 }, @@ -2970,7 +3419,7 @@ struct option_t MuttVars[] = { /* ** .pp ** Controls the size of the margin remaining at the right side of - ** the terminal when mutt's pager does smart wrapping. + ** the terminal when Mutt-ng's pager does smart wrapping. */ { "write_inc", DT_NUM, R_NONE, UL &WriteInc, 10 }, /* @@ -2984,8 +3433,8 @@ struct option_t MuttVars[] = { { "write_bcc", DT_BOOL, R_NONE, OPTWRITEBCC, 1}, /* ** .pp - ** Controls whether mutt writes out the Bcc header when preparing - ** messages to be sent. Exim users may wish to use this. + ** Controls whether Mutt-ng writes out the Bcc header when preparing + ** messages to be sent. Exim users may wish to unset this. */ {"xterm_icon", DT_STR, R_BOTH, UL &XtermIcon, UL "M%?n?AIL&ail?"}, /* @@ -2997,11 +3446,11 @@ struct option_t MuttVars[] = { {"xterm_set_titles", DT_BOOL, R_BOTH, OPTXTERMSETTITLES, 0}, /* ** .pp - ** Controls whether mutt sets the xterm title bar and icon name + ** Controls whether Mutt-ng sets the xterm title bar and icon name ** (as long as you're in an appropriate terminal). The default must ** be off to force in the validity checking. */ - {"xterm_title", DT_STR, R_BOTH, UL &XtermTitle, UL "Mutt with %?m?%m messages&no messages?%?n? [%n New]?"}, + {"xterm_title", DT_STR, R_BOTH, UL &XtermTitle, UL "Mutt-ng with %?m?%m messages&no messages?%?n? [%n New]?"}, /* ** .pp ** Controls the format of the title bar of the xterm provided that @@ -3012,7 +3461,10 @@ struct option_t MuttVars[] = { { "x_comment_to", DT_BOOL, R_NONE, OPTXCOMMENTTO, 0 }, /* ** .pp - ** If \fIset\fP, Mutt will add ``X-Comment-To:'' field (that contains full + ** Availability: NNTP + ** + ** .pp + ** If \fIset\fP, Mutt-ng will add ``X-Comment-To:'' field (that contains full ** name of original article author) to article that followuped to newsgroup. */ #endif @@ -3020,6 +3472,132 @@ struct option_t MuttVars[] = { { NULL } }; +const struct feature_t Features[] = { + { "ncurses", +#ifdef NCURSES_VERSION + 1 +#else + 0 +#endif + }, { "slang", +#ifdef USE_SLANG_CURSES + 1 +#else + 0 +#endif + }, { "iconv", +#ifdef _LIBICONV_VERSION + 1 +#else + 0 +#endif + }, { "idn", +#ifdef HAVE_LIBIDN + 1 +#else + 0 +#endif + }, { "dotlock", +#ifdef USE_DOTLOCK + 1 +#else + 0 +#endif + }, { "standalone", +#ifdef DL_STANDALONE + 1 +#else + 0 +#endif + }, { "pop", +#ifdef USE_POP + 1 +#else + 0 +#endif + }, { "nntp", +#ifdef USE_NNTP + 1 +#else + 0 +#endif + }, { "imap", +#ifdef USE_IMAP + 1 +#else + 0 +#endif + }, { "ssl", +#ifdef USE_SSL + 1 +#else + 0 +#endif + }, { "gnutls", +#ifdef USE_GNUTLS + 1 +#else + 0 +#endif + }, { "sasl", +#ifdef USE_SASL + 1 +#else + 0 +#endif + }, { "sasl2", +#ifdef USE_SASL2 + 1 +#else + 0 +#endif + }, { "libesmtp", +#ifdef USE_LIBESMTP + 1 +#else + 0 +#endif + }, { "compressed", +#ifdef USE_COMPRESSED + 1 +#else + 0 +#endif + }, { "color", +#ifdef HAVE_COLOR + 1 +#else + 0 +#endif + }, { "classic_pgp", +#ifdef CRYPT_BACKEND_CLASSIC_PGP + 1 +#else + 0 +#endif + }, { "classic_smime", +#ifdef CRYPT_BACKEND_CLASSIC_SMIME + 1 +#else + 0 +#endif + }, { "gpgme", +#ifdef CRYPT_BACKEND_GPGME + 1 +#else + 0 +#endif + }, { "header_cache", +#ifdef USE_HCACHE + 1 +#else + 0 +#endif + }, + /* last */ + { NULL, 0 } +}; + const struct mapping_t SortMethods[] = { { "date", SORT_DATE }, { "date-sent", SORT_DATE }, @@ -3031,6 +3609,7 @@ const struct mapping_t SortMethods[] = { { "threads", SORT_THREADS }, { "to", SORT_TO }, { "score", SORT_SCORE }, + { "spam", SORT_SPAM }, { NULL, 0 } }; @@ -3049,6 +3628,7 @@ const struct mapping_t SortAuxMethods[] = { */ { "to", SORT_TO }, { "score", SORT_SCORE }, + { "spam", SORT_SPAM }, { NULL, 0 } }; @@ -3080,13 +3660,18 @@ const struct mapping_t SortKeyMethods[] = { /* functions used to parse commands in a rc file */ static int parse_list (BUFFER *, BUFFER *, unsigned long, BUFFER *); +#if 0 static int parse_rx_list (BUFFER *, BUFFER *, unsigned long, BUFFER *); -static int parse_unlist (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_rx_unlist (BUFFER *, BUFFER *, unsigned long, BUFFER *); +#endif +static int parse_spam_list (BUFFER *, BUFFER *, unsigned long, BUFFER *); +static int parse_unlist (BUFFER *, BUFFER *, unsigned long, BUFFER *); +static int parse_lists (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_unlists (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_alias (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_unalias (BUFFER *, BUFFER *, unsigned long, BUFFER *); +static int parse_ifdef (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_ignore (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_unignore (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_source (BUFFER *, BUFFER *, unsigned long, BUFFER *); @@ -3094,17 +3679,22 @@ static int parse_set (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_my_hdr (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_unmy_hdr (BUFFER *, BUFFER *, unsigned long, BUFFER *); static int parse_subscribe (BUFFER *, BUFFER *, unsigned long, BUFFER *); +static int parse_unsubscribe (BUFFER *, BUFFER *, unsigned long, BUFFER *); + +static int parse_alternates (BUFFER *, BUFFER *, unsigned long, BUFFER *); +static int parse_unalternates (BUFFER *, BUFFER *, unsigned long, BUFFER *); struct command_t { char *name; int (*func) (BUFFER *, BUFFER *, unsigned long, BUFFER *); unsigned long data; + unsigned long data1; }; struct command_t Commands[] = { - { "alternates", parse_rx_list, UL &Alternates }, - { "unalternates", parse_rx_unlist, UL &Alternates }, + { "alternates", parse_alternates, 0 }, + { "unalternates", parse_unalternates, 0 }, #ifdef USE_SOCKET { "account-hook", mutt_parse_hook, M_ACCOUNTHOOK }, #endif @@ -3127,11 +3717,13 @@ struct command_t Commands[] = { { "append-hook", mutt_parse_hook, M_APPENDHOOK }, #endif { "hdr_order", parse_list, UL &HeaderOrderList }, + { "ifdef", parse_ifdef, 1 }, + { "ifndef", parse_ifdef, 0 }, #ifdef HAVE_ICONV { "iconv-hook", mutt_parse_hook, M_ICONVHOOK }, #endif { "ignore", parse_ignore, 0 }, - { "lists", parse_rx_list, UL &MailLists }, + { "lists", parse_lists, 0 }, { "macro", mutt_parse_macro, 0 }, { "mailboxes", mutt_parse_mailboxes, M_MAILBOXES }, { "unmailboxes", mutt_parse_mailboxes, M_UNMAILBOXES }, @@ -3149,8 +3741,11 @@ struct command_t Commands[] = { { "save-hook", mutt_parse_hook, M_SAVEHOOK }, { "score", mutt_parse_score, 0 }, { "send-hook", mutt_parse_hook, M_SENDHOOK }, + { "send2-hook", mutt_parse_hook, M_SEND2HOOK }, { "set", parse_set, 0 }, { "source", parse_source, 0 }, + { "spam", parse_spam_list, M_SPAM }, + { "nospam", parse_spam_list, M_NOSPAM }, { "subscribe", parse_subscribe, 0 }, { "toggle", parse_set, M_SET_INV }, { "unalias", parse_unalias, 0 }, @@ -3164,6 +3759,6 @@ struct command_t Commands[] = { { "unmy_hdr", parse_unmy_hdr, 0 }, { "unscore", mutt_parse_unscore, 0 }, { "unset", parse_set, M_SET_UNSET }, - { "unsubscribe", parse_rx_unlist, UL &SubscribedLists }, + { "unsubscribe", parse_unsubscribe, 0 }, { NULL } };