Fix date in entry.
[bpt/emacs.git] / etc / NEWS
index f42d78f..cb40238 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -21,9 +21,6 @@ When you add a new item, please add it without either +++ or ---
 so we will look at it and add it to the manual.
 
 \f
-* About external Lisp packages
-
-\f
 * Installation Changes in Emacs 23.1
 
 ** The default X toolkit is now Gtk+, rather than Lucid.
@@ -60,7 +57,7 @@ a GIF library.
 This provides support for GNUstep (via the GNUstep libraries) and Mac
 OS X (via the Cocoa libraries).
 
-Specify --with-ns to configure for this. By default, a self-contained
+Specify --with-ns to configure for this.  By default, a self-contained
 app will be built (containing all lisp).  To install/share lisp with
 other emacsen (e.g. X11 build) use --disable-ns-self-contained.  See
 nextstep/README and nextstep/INSTALL in the Emacs source directory.
@@ -135,11 +132,12 @@ starts the server.  Clients can connect and create graphical or
 terminal frames using emacsclient.
 
 **** emacsclient starts emacs in daemon mode and connects to it when
---alternate-editor="" is used and emacsclient cannot connect to an
+--alternate-editor="" is used (or when the evironment variable
+ALTERNATE_EDITOR is set to "") and emacsclient cannot connect to an
 emacs server.
 
 *** The new command close-display-connection closes a connection to a
-remote display.
+remote display.  There are some bugs for Gtk+.  See etc/PROBLEMS.
 
 *** Emacs now supports the XEmbed specification.
 You can embed Emacs in another application on X11.  The new command line
@@ -339,6 +337,14 @@ norwegian-alt-postfix, scandinavian-alt-postfix, spanish-alt-postfix,
 and swedish-alt-postfix.  Use the versions without "alt-", which are
 identical.
 
++++
+** If a function in write-region-annotate-functions returns with a
+different buffer current, Emacs no longer kills that buffer
+automatically.  This behavior existed in previous versions of Emacs,
+but was undocumented.  To kill a buffer after write-region, give the
+variable `write-region-post-annotation-function' a buffer-local value
+of `kill-buffer'.
+
 \f
 * Editing Changes in Emacs 23.1
 
@@ -517,7 +523,7 @@ is on a different frame.
 +++
 *** C-l is bound to the new command recenter-top-bottom, rather than recenter.
 This moves the current line to window center, top and bottom on
-successive invokations.
+successive invocations.
 +++
 *** scroll-preserve-screen-position also preserves the column position.
 +++
@@ -536,7 +542,7 @@ run processes remotely.
 +++
 *** The new command kill-matching-buffers kills buffers whose name
 matches a regexp.
-
+---
 *** The new commands `pp-macroexpand-expression' and
 `pp-macroexpand-last-sexp' pretty-print macro expansions.
 +++
@@ -754,7 +760,7 @@ the first error encountered during compilations.
 says to stop auto scrolling at the first error that occurs.
 ---
 *** The `cc' alias for C++ files in `grep-file-aliases' has been
-improved. `hh' can be used to match C++ header files and `cchh' both
+improved.  `hh' can be used to match C++ header files and `cchh' both
 C++ sources and headers.
 
 ** Copyright
@@ -781,8 +787,8 @@ diff-auto-refine-mode.  It is bound to `C-c C-b'.
 buffer and tries to create ChangeLog entries for each change.
 It is bound to `C-x 4 A'.
 +++
-*** The new function `diff-show-trailing-whitespaces' shows
-trailing whitespace problems in the modified lines of a diff buffer.
+*** Turning on `whitespace-mode' in a diff buffer will show trailing
+whitespace problems in the modified lines.
 
 ** Dired
 +++
@@ -896,7 +902,7 @@ history.  See `Minibuffer changes', above.
 +++
 ** MH-E
 
-*** Upgraded to MH-E version 8.1. See MH-E-NEWS for details.
+*** Upgraded to MH-E version 8.1.  See MH-E-NEWS for details.
 
 ** Python
 *** The file etc/emacs.py now supports both Python 2 and 3, meaning
@@ -913,6 +919,70 @@ way as gud-mode does for debugging C programs with gdb.
 remote files, if there is no established connection to the
 corresponding remote host.
 
+** Rmail
+
++++
+*** Rmail no longer converts the messages to Babyl format.
+Instead, it uses UNIX mbox format, both on disk and in Rmail buffers,
+and does conversion and decoding when a message is displayed.
+
+The first time you visit an Rmail file in Babyl format, Rmail
+automatically converts it to mbox format.  This is a one-time
+conversion, but it can take a few minutes, depending on how fast is
+your machine and on the size of the file.  You should find the rest of
+Rmail usage unaltered.
+
+However, M-x set-rmail-inbox-list now lasts only for one session
+because there is no way to save the list of inbox files in an
+mbox-format file.
+
+If you have written any extensions to Rmail, they are likely to need
+updating.  Conceptually, the Rmail buffer that you see is no longer
+just a narrowed portion of the whole.  So you cannot access the whole
+of a message (or message collection) by a simple save-restriction and
+widen.  Instead, there are two buffers: the rmail-buffer, and the
+rmail-view-buffer.  The former is the buffer that you see, the latter
+is invisible.  Most of the time, the invisible `view' buffer contains
+the full contents of the Rmail file, and the Rmail buffer contains a
+decoded copy of the current message (with only a subset of the
+headers).  In this state, Rmail is said to be `swapped'.
+
+You may find the following functions useful:
+
+`rmail-get-header' and `rmail-set-header' get or set the value of a
+message header, whether or not it is currently visible.
+
+`rmail-apply-in-message' is a general purpose function that calls a
+function (with arguments) which you specify on the full text of a given
+message.  To further narrow to just the headers, search forward for "\n\n".
+
++++
+*** The new command `rmail-mime' displays MIME messages.
+It is bound to `v' in Rmail buffers and summaries.  It displays plain
+text and multipart messages in a temporary buffer, and offers buttons
+to save attachments.
+
+---
+*** The command `rmail-redecode-body' no longer accepts the optional arg RAW.
+Since Rmail now holds messages in their original undecoded form in a
+separate buffer, `rmail-redecode-body' no longer encodes the original
+message, and therefore there should be no need to avoid encoding it.
+
++++
+*** The o command is now `rmail-output'.  It is an all-purpose command
+for copying messages from Rmail and appending them to files.  It
+handles Babyl-format files as well as mbox-format files, and it
+handles both kinds properly when they are visited in Emacs.  It always
+copies the full headers of the message.
+
++++
+*** The C-o command is now `rmail-output-as-seen'.  It uses
+the message as displayed, appending it to an mbox file.
+
+---
+*** The modified status of the Rmail buffer is reported in the mode-line.
+Previously, this information was hidden.
+
 ** TeX modes
 ---
 *** New option latex-indent-within-escaped-parens
@@ -1119,7 +1189,7 @@ w32-pass-multimedia-buttons to nil.  See the doc string of that variable
 for the list of extra keys that are available.
 
 ** BDF fonts no longer supported on MS-Windows.
-The font backend was completely rewritten for this release. The focus
+The font backend was completely rewritten for this release.  The focus
 on Windows has been getting acceptable performance and full unicode
 support, including complex script shaping for native Windows fonts.  A
 rewrite of the BDF font support has not happened due to lack of time
@@ -1165,6 +1235,10 @@ checking/manipulating elements directly, use the new functions
 ** `mode-name' is no longer guaranteed to be a string.
 Use `(format-mode-line mode-name)' to ensure a string value.
 
++++
+** The function x-font-family-list has been removed.
+Use the new function font-family-list (see Lisp Changes, below).
+
 ** Internationalization changes
 
 *** The value of the function `charset-id' is now always 0.
@@ -1192,6 +1266,11 @@ mlm-* functions and variables (formerly used for Malayalam script).
 **** `tamil' and `tml-util, and all associated tamil-* and tml-*
 functions and variables (formerly used for Tamil script).
 
+---
+** The variable temp-file-name-pattern has been removed.
+This variable was only used by call-process-region, which now uses
+temporary-file-directory instead.
+
 \f
 * Lisp Changes in Emacs 23.1
 
@@ -1206,7 +1285,7 @@ The default values are ";;;###autoload" and `loaddefs.el',
 respectively.
 
 +++
-** New primitives `list-system-processes' and `system-process-attributes'
+** New primitives `list-system-processes' and `process-attributes'
 let Lisp programs access the processes that are running on the local
 machine.  See the doc strings of these functions for more details.
 Not all platforms support accessing this information; on those that
@@ -1423,7 +1502,7 @@ or attribute/value plists.  If this variable is buffer-local, the
 remapping occurs only in that buffer.
 
 *** text-scale-mode remaps the default face to a larger or smaller
-size in the current buffer. This feature is used by the Buffer Face
+size in the current buffer.  This feature is used by the Buffer Face
 menu and the new `C-x C-+', `C-x C--', and `C-x C-0' commands (see
 Editing Changes, above).
 
@@ -1498,7 +1577,9 @@ accept a cons of characters as the first argument, and modify all
 entries in that range of characters.
 
 +++
-*** `translation-table-for-input' is now obsolete.
+*** Use of `translation-table-for-input' for character code unification
+is now obsolete, since Emacs 23.1 and later uses Unicode as basis for
+internal representation of characters.
 
 *** New functions:
 
@@ -1562,6 +1643,12 @@ conversion should go.
 have an optional 4th argument specifying a buffer to store the result
 of conversion.
 
++++
+*** The new variable `inhibit-null-byte-detection' controls whether to
+consider text with null bytes as binary data.  By default, it is
+`nil', and Emacs uses `no-conversion' for any text containing null
+bytes.
+
 ---
 *** The functions `set-coding-priority' and `make-coding-system' are obsolete.
 
@@ -1589,6 +1676,10 @@ ordered by their priorities.
 +++
 **** `set-coding-system-priority' sets priorities of coding systems.
 
+**** `coding-system-from-name' returns a coding system matching with
+the argument name.
+
+
 ** There is a new input method, Robin, different from Quail.
 It has three functionalities:
  i) a simple input method (converts an ASCII sequence into a string).
@@ -1627,26 +1718,26 @@ second argument, and has an optional 5th argument to control how to
 set the font.
 
 *** New functions:
-
++++
 **** `fontp' checks if the argument is a font-spec or font-entity.
-
++++
 **** `font-spec' creates a new font-spec object.
-
++++
 **** `font-get' returns a font property value.
-
++++
 **** `font-put' sets a font property value.
-
++++
 **** `font-face-attributes' returns a plist of face attributes set by a font.
-
++++
 **** `list-fonts' returns a list of font-entities matching a font spec.
-
-**** `font-font' returns the font-entity best matching the given font spec.
-
-**** `list-families' returns a list of family names of available fonts.
-
++++
+**** `find-font' returns the font-entity best matching the given font spec.
++++
+**** `font-family-list' returns a list of family names of available fonts.
++++
 **** `font-xlfd-name' returns an XLFD name of a given font spec, font
 entity, or font object.
-
+---
 **** `clear-font-cache' clears all font caches.
 
 ** Changes related to multiple-terminal (multi-tty) support
@@ -1664,19 +1755,24 @@ $TERM inherited by Emacs you will have to look inside initial-environment.
 for the first frame.  `window-system' is also now a function that
 takes a frame argument.
 
++++
 *** The `keyboard-translate-table' variable and the terminal and
 keyboard coding systems are now terminal-local.
 
+---
 *** You can specify a terminal device (`tty' parameter) and a terminal
 type (`tty-type' parameter) to `make-terminal-frame'.
 
+---
 *** The function `make-frame-on-display' now works during a tty
 session.
 
++++
 *** A new `terminal' data type.
 The functions `get-device-terminal', `terminal-parameters',
 `terminal-parameter', `set-terminal-parameter' use this data type.
 
++++
 *** Function key sequences are now mapped using `local-function-key-map',
 a new variable.  This inherits from the global variable function-key-map,
 which is not used directly any more.
@@ -1688,24 +1784,28 @@ which is not used directly any more.
 variable file-local-variables-alist, and before actually applying the
 file-local variables.
 
++++
 **** `suspend-tty-functions' and `resume-tty-functions' are called
 after a tty frame has been suspended or resumed, respectively.  The
 functions are called with the terminal id of the frame being
 suspended/resumed as a parameter.
 
++++
 **** The special hook `delete-terminal-functions' is called before
 deleting a terminal.
 
 *** New functions:
 
-**** `environment'
-
-**** `delete-tty'
++++
+**** `delete-terminal'
 
++++
 **** `suspend-tty'
 
++++
 **** `resume-tty'.
 
++++
 *** `initial-environment' holds the environment inherited from Emacs's parent.
 
 ** Redisplay changes