Major changes since 1.2
-----------------------

- The $send_charset variable now contains a colon-separated list of
  possible send character sets, by default it's
  us-ascii:iso-8859-1:utf-8.  Mutt selects the first character set
  which can be used to encode the message you are going to send
  without loss.

- Mutt now tries to automagically determine the $charset variable's
  value from the locale you are using.  It may, however, fail, so
  please check this value by typing ":set ?charset" into mutt, and
  possibly adding an appropriate entry to your .muttrc file.

- The $to_chars variable has grown.  In particular, you will notice
  that mailing list messages are now marked with an "L" character.
  If you don't like this behaviour, just add this line to your
  .muttrc:
  
  set   to_chars=" +TCF "	# Don't tag list mail in the index
  
  This restores the original behaviour.


Major changes since 1.1
-----------------------

- There is a new variable $fcc_clear.  When set, FCCs are not
  affected by PGP encryption or signatures.

- Tommi Komulainen <Tommi.Komulainen@iki.fi> has contributed SSL
  support for mutt's IMAP client code.

- The message-related commands on the attachment menu have been
  rewritten.  Changes include dropping the forward_attachment
  option, applying the mime_forward quad-option to the attachment
  menu, and adding a mime_forward_rest quad-option.  Additionally,
  the message-related commands are now supposed to work on subparts
  of PGP/MIME messages, and from the pager when invoked from the
  attachment menu on a message/rfc822 body part.

  Note that the resend-message function now works from the
  attachment menu.  You can use this to comfortably resend a message
  which was included with a bounce message as a message/rfc822 body
  part.

Major changes since 1.0
-----------------------

- The semantics of the "lists" command has changed.  Basically, it
  only affects the list-reply function now.  To get the same mailing
  list behaviour as with 1.0, use "subscribe" instead.

- The old edit-message command has been split into two commands,
  edit-message and resend-message.

  With edit-message (bound to e by default), mutt makes a copy of
  the raw message, and gives you the possibility to manipulate it
  with your favorite editor. This is ideal for fixing messed-up MIME
  headers and the like.

  After you have left the editor, the edited version of the message
  is copied back to the current folder, and the original message is
  marked for deletion.

  With resend-message (bound to ESC e by default), mutt takes the
  current message as a template for a new message.  This function is
  best described as "recall from arbitrary folders".  Note that the
  amount of headers included here depends on the value of the weed
  option.

- There is a new option $delete_untag.  Former mutt versions used to
  untag messages when you save them, but leave them tagged when you
  mark them for deletion.  $delete_untag controls _both_ cases,
  leading to more uniform behaviour.

- The $weed option applies to the decode-save and decode-copy
  functions.  Think of these functions as something along the lines
  of "print to file".

- The master source of the configuration option reference has been
  moved from the SGML document into special comments in init.h.
  "makedoc" is used to extract this information into a new,
  documented global Muttrc, into the SGML manual, and into a new
  manual page describing muttrc, muttrc (5).

  This way, _all_ options will automatically get minimal
  documentation, with correct default values. :-)

  For details, see doc/devel-notes.txt.

- While the manual was under inspection, hopefully most of the
  recent changes to mutt were documented.  Also, documentation on
  some not-so-recent things such as mixmaster and PGP support was
  added or improved.

- The $in_reply_to configuration variable is gone.  The In-Reply-To
  header currently only contains the message-id of the message to
  which the reply refers.  This is to make sure that this header is
  correctly formatted.

- There is a new variable named $pgp_getkeys_command.  It's invoked
  before mutt invokes PGP in a way which may require public keys.
  The %r format string expands to an e-mail address corresponding to
  that key.  The command given in $pgp_getkeys_command could, for
  instance, query a key server and add public keys to your key ring.

  See also http://home.pages.de/~roessler/pkspxy-0.1.tar.gz for a
  possible application of this with the traditional PGP versions.

- RFC 2231 is (at least partially) implemented.  Additionally, there
  is an option named $rfc2047_parameters.  When it's set, mutt will
  decode RFC2047-encoded MIME parameters.

- Various IMAP-related fixes and patches.  This includes the ability
  to use IMAP folders for postponed messages, improved IMAP folder
  browsing, tab completion for IMAP folders, etc.

- A new variable $from is added.  See the manual for details.

- The various weeding options are gone.  You have one global option,
  $weed, now which can be influenced using configuration commands,
  or using the display-toggle-weed function (this used to be
  display-headers!).  This option is applied when forwarding,
  replying, or printing messages. Essentially, this means that you
  have some "WYSIWIG-like" behaviour with respect to message header
  weeding.

- The PGP configuration interface was completely redone.  Please
  read doc/PGP-Notes.txt before installing this version on any
  production system.

Major changes since 0.95
------------------------

- Mutt was affected by the so-called "pine remote exploit".  We have
  implemented a work-around we believe to be safe.  See
  README.SECURITY and the mailcap_sanitize option for details, and
  check your mailcap files for insecure entries.

- The use_mailcap option has gone.  Instead, we now have
  implicit_autoview.  See the manual for details.

- We have more translations than ever before.  Supported languages
  now include cs, de, es, fr, id, it, ko, nl, pl, ru, sk, uk.  And
  en, as usual.

- Mutt now uses version 0.12 of the "regex" library instead of rx.
  This library is believed to be far more stable than rx.  See
  INSTALL for details.

- The annoying "maildir erratic behaviour" bug could finally be
  tracked down and fixed as of 0.95.6.

- There were some major improvements with the IMAP code.  It should
  work rather correctly against most common IMAP servers now.

Major changes since 0.93
------------------------

- i18n support of various kinds: Mutt now comes with character set
  definitions, so it is able to convert character sets you encounter
  in e-mail messagese to your local display's character set as
  defined by the $charset configuration variable.  This includes a
  poorly-tested UTF-8 decoder.

  Additionally, mutt includes GNU gettext support, so you can make
  it speak your own language.  To use this, just set the environment
  variable "LANG" appropriately.

  (For a list of currently supported languages, have a look at the
  po files in the po subdirectory.)

- There is support for the POP3 "last" command for just fetching the
  latest unread messages from your POP server.  To enable use of
  this feature, set the $pop_last configuration option.

- The IMAP code's handling of server-side EXPUNGE messages was
  fixed, so mutt should now be able to cope with concurrent access
  to IMAP folders.  This is, e.g., supported by the CMU and MS
  Exchange IMAP servers.

- mh_sequences support was _dropped_.  The reason is, on the one
  hand, a major re-write of the mh and maildir folder
  resynchronization code, and the fact that there is no locking
  protocol defined for this file.  If you want to use
  one-file-per-message folders, you should better rely on maildir.

- The new patterns ~g and ~G in the pattern language match PGP
  signed and encrypted messages, respectively.

- The $smileys configuration variable defines exceptions from the
  quote-detecting regular expressions.  This can be used to
  correctly handle lines beginning with smileys such as ":-)" -
  these lines were detected as quoted text by the old code.

- You can now edit messages in your mail folders. 

  The function 'edit' (default 'e') will make a copy of the
  current message and you can edit the message. After editing is
  complete, you are taken to the Compose menu. You can further
  modify the message here or re-send it. Note that the message is
  re-sent to the original recipients (similar to `bounce-message')
  unless you have changed the recipients in the Compose menu (or the
  editor).

  You can also write the edited message back to any mail folder
  using the write-fcc function (default w). Remember that you are
  working with a copy and the original message is not affected.

- new command 'unhdr_order' 

  `unhdr_order *' will clear all previous headers from the order
  list, thus removing the header order effects set by the
  system-wide startup file (via `hdr_order')

- You can now attach message(s) to an outgoing message. Use the
  attach-message function (default 'A') from the Compose menu;
  specify the folder to open and tag the messages you want to
  attach.

- You can now collapse a thread.

  collapse-thread (default ESC v) toggles the collapsed state of the
  current thread.

  collapse-all (default ESC V) toggles the collapsed state of all
  threads in the folder.

  When a collapsed thread received new messages, it is automatically
  uncollapsed. Also, when you display the first message in the
  collapsed thread, it is automatically uncollapsed.

  The variables $collapse_unread and $uncollapse_jump can be used to
  fine-tune this feature.

  Note: Collapsing a thread displays only the first message in the
  thread and hides the others. This is useful when threads contain
  so many messages that you can only see a handful of threads on the
  screen. See %M in ``$index_format''.  For example, you could use
  "%?M?(#%03M)&(%4l)?" in ``$index_format'' to optionally display
  the number of hidden messages if the thread is collapsed.

- The syntax for function keys in key bindings and macro definitions
  has changed:  Instead of "fN", you have to use "<fN>" now.  This
  is more consistant with the syntax for the other special keys like
  "<up>", "<down>", and so on.

- You can now use function names in macros. The syntax is <function-name>

  Example:
  
  macro index z "v<down><down><first-entry><down><save-entry>"
  push "<first-entry><display-message>"
  
  Note that the function has to be a valid function for the menu when
  the macro is _executed_. If not, the literal string of characters is
  used as usual. Also, if you enter a string <...> which is NOT a Mutt
  function like <vikas>, the literal string of characters is used as
  usual.

  Keep in mind that macros are evaluated at runtime, and so the
  current menu could change _during_ the execution of a macro. Be sure
  to use functions that make sense for the menu at that point in the
  macro's execution.

- new command 'exec'.

  You can now use the 'exec' command to execute any internal function
  in Mutt. You can also execute functions in this fashion even if they
  are not bound to any key.

  Also, the 'exec' command has command completion so that

  :exec <TAB><TAB>

  will cycle thru all the commands for that menu.

  If you type something that is not found in the current menu, the
  generic menu is used for completion.

  The 'exec' command accepts multiple arguments each with its own
  command-completion.
  
  For example:
  :exec first-entry display-message ....
  
  Similar to macros, keep in mind that the sequence of functions are
  evaluated at runtime, and so the current menu could change _during_
  the execution of a sequence of functions. Be sure to use functions
  that make sense for the menu _at that point_ in the execution.

- improved command and variable completion.

  Pressing <TAB>, on the command-line now cycles through all possible
  matches of the command (or variable) based on what you have typed so
  far.  When all matches have been cycled through, your original input
  (that started the completion) is restored. Pressing <TAB> again
  repeats the cycle.

  Note that variable completion is done only when appropriate (for the
  following commands: set, reset, unset, toggle). Also, when entering
  a 'set' command, the possible prefixes to the variable name (no,
  inv, ?, &) are honored. This makes it possible to do something like
  
  :set inv<TAB><TAB> 

  to cycle through the possible matches.

  When you press <TAB> without entering any text,  Mutt cycles through
  all possible matches (commands or variables, as appropriate)

- you can now use special keys in a key _sequence_. Special keys are
  <Home>, <End>, <PageUp>, etc.

  Example:

  macro attach s "<Home>~/<End>" "Pre-pend ~/ when saving attachments"

- You can now specify an optional description for your macros.

  Usage: macro menu key sequence [ description ]

  The specified description is listed on the help screen.

  Example:
  macro index "^\cb" "|urlview\n" "call urlview to extract URLs"

- We have a new set of functions decrypt-{save,copy}. They strip off
  the initial layer of PGP/MIME encryption.  For "classical"
  application/pgp messages, they are equivalent to the decode
  functions, for unencrypted messages they fall back to the normal
  save functions.

- new variable $forward_decrypt. See the manual for details.

- The build-time "hidden host" option has gone.  Use the
  $hidden_host configuration variable instead.

- Unknown major MIME types are recognized properly.

- new variables $attach_split (boolean, default set) and $attach_sep
  (string, default "\n")

  If $attach_split is unset, when operating (saving, printing, piping,
  etc) on a list of tagged attachments, Mutt will concatenate the
  attachments and will operate on them as a single attachment. The
  `$attach_sep' separator is added after each attachment. When set
  (default), Mutt will operate on the attachments one by one.

- An option $write_bcc controls whether or not the Bcc header is
  written out to the mail transport agent or not.  Exim users may
  wish to use this.

- The compose menu tries to detect and smoothly handle changes to
  attached files.  Additionally, you can use the update-encoding
  function to update an attachment's encoding.

- On the compose menu, you can generate a "private" copy of an
  attached file using the get-attachment function.

- sendmail's exit values are properly interpreted, so you will no
  longer get a "no such file or directory" error when sending mail
  to a non-existing local user.

- The variable $attach_format controls the look of the compose and
  attach menus.

- The file browser permits you to view files before selecting them.

- Bug fixes of all kinds.  Look at the ChangeLog file for details.

- The configuration files now go to a directory determined by the
  --sysconfdir parameter to the configure script.  The default is
  ${prefix}/etc.  (The install target of the top-level Makefile will
  take care of your old site-global configuration file and
  automagically move it to the new place.)

- new variable $mh_purge (boolean, default unset)

  When unset, mutt will mimic mh's behaviour and rename deleted
  messages to ,<old file name> in mh folders instead of really
  deleting them.  If the variable is set, the message files will
  simply be deleted.

- new variable $forward_weed (boolean, default set)

  When set, this decode-forwarding a message will weed the message's
  header.  (That's the current behaviour.)

$Id: NEWS,v 2.11 2000/10/03 10:47:20 roessler Exp $
