NEWS 14.5 KB
Newer Older
1 2 3
Major changes since 1.1

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

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

10 11 12 13 14 15 16 17 18 19 20 21 22
- 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

23 24 25 26 27 28
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.

30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
- 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

- There is a new option $delete_untag.  Former mutt versions used to
Thomas Roessler's avatar
Thomas Roessler committed
  untag messages when you save them, but leave them tagged when you
50 51 52 53 54
  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".

57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
- 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.

73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
- 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 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.

95 96 97 98
- 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,
99 100 101 102 103
  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

105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
- 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.

134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172
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.

173 174
- You can now edit messages in your mail folders. 

  The function 'edit' (default 'e') will make a copy of the
176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219
  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

  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

- 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.

220 221 222 223 224
- 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.

225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250
- You can now use function names in macros. The syntax is <function-name>

  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

  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

251 252
  :exec <TAB><TAB>

  will cycle thru all the commands for that menu.

255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295
  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
  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.


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

- You can now specify an optional description for your macros.
297 298 299 300 301 302 303

  Usage: macro menu key sequence [ description ]

  The specified description is listed on the help screen.

  macro index "^\cb" "|urlview\n" "call urlview to extract URLs"
304 305 306 307 308 309 310

- 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.

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

313 314 315 316 317
- The build-time "hidden host" option has gone.  Use the
  $hidden_host configuration variable instead.

- Unknown major MIME types are recognized properly.

318 319 320 321 322 323 324 325 326
- 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.

327 328 329 330 331
- 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
332 333
  attached files.  Additionally, you can use the update-encoding
  function to update an attachment's encoding.
334 335 336 337 338 339 340 341 342 343 344 345 346 347 348

- 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.

349 350 351 352 353
- 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.)

355 356 357 358 359 360 361
- 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.

362 363 364 365 366
- 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.)