]> code.delx.au - gnu-emacs/blobdiff - etc/NEWS
(VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for release 8.2.
[gnu-emacs] / etc / NEWS
index 901ea2fcbb6a4b4fa20789dba5bfb37dc7355eae..4f129f157110de45c70cf18d321392e5fe1ed147 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -20,9 +20,6 @@ Temporary note:
 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
 
@@ -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.
@@ -125,6 +122,8 @@ With an Emacs server active (M-x server-start), `emacsclient -t'
 creates a tty frame connected to the running emacs server.  You can
 use any number of different ttys.  `emacsclient -c' creates a new X11
 frame on the current $DISPLAY (or a tty frame if $DISPLAY is not set).
+There may be problems if a display exits unexpectedly and Emacs is compiled
+with Gtk+, see etc/PROBLEMS.
 
 You can test for the presence of this feature in your Lisp code by
 testing for the `multi-tty' feature.
@@ -133,13 +132,14 @@ testing for the `multi-tty' feature.
 --daemon command line argument.  It disconnects from the terminal and
 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
@@ -156,19 +156,20 @@ OS X, or on Windows 2000 and later versions of Windows.
 The alpha parameter should be an integer between 0 (transparent) and
 100 (opaque), or a float number between 0.0 and 1.0.  It can also be a
 cons cell (ACTIVE . INACTIVE), where ACTIVE is the opacity of an
-active frame and INACTIVE is the opactity of non-active frames.
+active frame and INACTIVE is the opacity of non-active frames.
 
 The variable `frame-alpha-lower-limit' defines a lower bound for the
 opacity; the default is 20.
 
 ** Internationalization changes
-
++++
 *** The Emacs character set is now a superset of Unicode.
 (It has about four times the code space, which should be plenty).
 
 The internal encoding used for buffers and strings is now
 Unicode-based and called `utf-8-emacs'.  This encoding is backwards
-compatible with Unicode's UTF-8 encoding.  The internal encoding
+compatible with Unicode's UTF-8 encoding.  The encoding
+`emacs-internal' is an alias for this.  The internal encoding
 previously used by Emacs, `emacs-mule', is still available.
 
 During byte-compilation, Emacs 23 uses `utf-8-emacs' to write files.
@@ -190,18 +191,18 @@ each dimension is no longer limited to 94 or 96.
 
 **** A dynamic charset priority list is used to infer the charset of
 characters for display.
-
++++
 *** There are new language environments for Chinese-GBK,
 Chinese-GB18030, Khmer, Bengali, Punjabi, Gujarati, Oriya, Telugu,
 Sinhala, and TaiViet.
-
++++
 *** The minor modes unify-8859-on-encoding-mode and
 unify-8859-on-decoding-mode are obsolete.
-
++++
 *** `ucs-insert' is bound to `C-x 8 RET' and in addition to hex numbers
 accepts numbers in hash notation (e.g. #o21430 for octal, or #10r8984 for
 decimal).  It also accepts Unicode character names with completion.
-
+---
 *** The `cyrillic-translit' input method supports many new characters.
 Common typographical characters available from Unicode were added to
 `cyrillic-translit': punctuation marks, accented characters, fractions,
@@ -281,10 +282,12 @@ display of the initial message in the *scratch* buffer.  If you don't
 want to display the initial message in the *scratch* buffer at startup,
 you can set the option `initial-scratch-message' to nil.
 
++++
 ** New user option `initial-buffer-choice' specifies what to display
 after starting Emacs: startup screen, *scratch* buffer, visiting a
 file or directory.
 
++++
 ** New alias `argv' for `command-line-args-left'
 This is a convenience alias, so that one can write `(pop argv)'
 inside of --eval command line arguments in order to access
@@ -293,6 +296,7 @@ following arguments.
 +++
 ** The abbrev file is no longer read at startup in batch mode.
 
++++
 ** Emacs now supports invocation by an X session manager.
 It can save a session and restore it later.  See the documentation of
 the functions `emacs-session-save' and `emacs-session-restore'.
@@ -339,6 +343,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
 
@@ -405,6 +417,19 @@ Emacs asks for confirmation.  The default value is `after-completion'.
 If you change it to t, Emacs always asks for confirmation; if you
 change it to nil, Emacs never asks for confirmation.
 +++
+*** The rules for performing completion have been changed.
+When generating completion alternatives, Emacs now takes the
+minibuffer text after point, if any, into account: this text is
+treated as a substring of the remaining part of the completion
+alternative (i.e., the part not matched by the minibuffer text before
+point).  If no completion alternatives are found this way, Emacs
+attempts to perform partial-completion.  If still no completion
+alternatives are found, we fall back on the Emacs 22 rules for
+performing completion.
+
+The new variable `completion-styles' can be customized to choose your
+favorite completion style.
++++
 *** When M-n in the minibuffer reaches the end of the list of defaults,
 it adds the completion list to the end, so next M-n continues putting
 completion items to the minibuffer.  The same principle applies to
@@ -441,18 +466,13 @@ next history elements.  When the reverse search reaches the first history
 element, it wraps to the last history element, and the forward search
 wraps to the first history element.  When the search is terminated, the
 history element containing the search string becomes the current.
-
++++
 *** The variable read-file-name-completion-ignore-case overrides
 completion-ignore-case for file name completion.
-
++++
 *** The variable read-buffer-completion-ignore-case overrides
 completion-ignore-case for buffer name completion.
 ---
-*** `completion-styles' can be customized to choose your favorite
-completion style.
----
-*** The default completion styles include a form of partial-completion.
----
 *** The new command `minibuffer-force-complete' chooses one of the
 possible completions, rather than stopping at the common prefix.
 +++
@@ -476,10 +496,9 @@ leading `C-x', e.g. `C-x C-= C-= C-=' increases the face height by
 three steps.  Each step scales the height of the default face by the
 value of the variable `text-scale-mode-step'.
 
-*** The command `buffer-face-mode' prompts for a face name, and remaps
-the default face in the current buffer to that specified face.  The
-command `variable-pitch-mode' turns on Buffer Face mode for the
-`variable-pitch' face.
+*** The commands buffer-face-mode and buffer-face-set can be used to
+remap the default face in the current buffer.  See "Buffer Face mode",
+under New Modes and Packages.
 
 ** Primary selection changes
 +++
@@ -517,7 +536,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 +555,11 @@ run processes remotely.
 +++
 *** The new command kill-matching-buffers kills buffers whose name
 matches a regexp.
-
+---
+*** The value of comment-style now defaults to `indent'.
+Thefore, comment-start markers are inserted at the current indentation
+of the region to comment, rather than the leftmost column.
+---
 *** The new commands `pp-macroexpand-expression' and
 `pp-macroexpand-last-sexp' pretty-print macro expansions.
 +++
@@ -551,19 +574,27 @@ top line, -1 for bottom line), or nil for no recentering.
 +++
 *** When typing in a password in the echo area, C-y yanks the current
 kill into the password.
-
+---
+*** Tooltip frame parameters `font' and `color' in `tooltip-frame-parameters'
+are ignored.  Customize the `tooltip' face instead.
++++
 *** `mkdir' is a new convenience alias for `make-directory'.
 \f
 * New Modes and Packages in Emacs 23.1
 
-** FIXME add details of new packages imported from lisp/gnus.
-[Maybe some information from doc/misc/gnus-coding.texi can be reused]
-
 ** Auto Composition Mode is a minor mode that composes characters
 automatically when they are displayed.  It is globally on by default.
 It uses `auto-composition-function' (default `auto-compose-chars').
 
 ** Bubbles, a new game, is similar to SameGame.
+
+** Buffer Face mode is a minor mode for remapping the default face in
+the current buffer.  The variable `buffer-face-mode-face' specifies
+the face to remap to.  The command `buffer-face-set' prompts for a
+face name, sets `buffer-face-mode-face' to it, and enables
+buffer-face-mode.  See "Face changes", under Editing Changes, for a
+description of face remapping.
+
 ---
 ** butterfly flips the desired bit on the drive platter.
 See http://xkcd.com/378/
@@ -664,15 +695,22 @@ specifies what to do when a buffer is visited, killed, or written.
 * Changes in Specialized Modes and Packages in Emacs 23.1
 
 ** Abbrev has been rewritten in Elisp and extended with more flexibility.
++++
 *** New functions: abbrev-get, abbrev-put, abbrev-table-get, abbrev-table-put,
     abbrev-table-p, abbrev-insert, abbrev-table-menu.
++++
 *** Special hook `abbrev-expand-functions' obsoletes `pre-abbrev-expand-hook'.
++++
 *** `make-abbrev-table', `define-abbrev', `define-abbrev-table' all take
     extra arguments for arbitrary properties.
++++
 *** New variable `abbrev-minor-mode-table-alist'.
++++
 *** `local-abbrev-table' can hold a list of abbrev-tables.
++++
 *** Abbrevs have now the following special properties:
     `:count', `:system', `:enable-function', `:case-fixed'.
++++
 *** Abbrev-tables have now the following special properties:
     `:parents', `:case-fixed', `:enable-function', `:regexp',
     `abbrev-table-modiff'.
@@ -754,7 +792,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 +819,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
 +++
@@ -839,20 +877,21 @@ saving articles drafts and ~/.newsrc.eld.  These file may not be read
 correctly in Emacs 22 and below.  If you want to Gnus across different Emacs
 versions, you may set `mm-auto-save-coding-system' to `emacs-mule'.
 
-*** Password are consistently loaded through `auth-source'
+*** Passwords are consistently loaded through `auth-source'
 Gnus can use `auth-source' for POP and IMAP passwords.  Also see that
 `smtpmail' and `url' support `auth-source' for SMTP and HTTP/HTTPS/RSS
 authentication respectively.
 
 ** Help mode
++++
 *** New macro `with-help-window' should set up help windows better
 than `with-output-to-temp-buffer' with `print-help-return-message'.
 
 *** New option `help-window-select' permits to customize whether help
 window shall be automatically selected when invoking help.
 
-*** New variable `help-window-point-marker' permits to specify new
-position of point in help window (for example in `view-lossage').
+*** New variable `help-window-point-marker' permits one to specify a new
+position for point in help window (for example in `view-lossage').
 
 ** Isearch
 +++
@@ -874,7 +913,7 @@ is bound globally to the command `occur'.
 *** Isearch can now search through multiple ChangeLog files.
 When running Isearch in a ChangeLog file, if the search fails,
 then another C-s tries searching the previous ChangeLog,
-if there is one (e.g. go from ChangeLog to ChangeLog.12).
+if there is one (e.g. going from ChangeLog to ChangeLog.12).
 This is enabled if multi-isearch-search is non-nil.
 
 *** Two new commands to start Isearch on a list of marked buffers
@@ -896,7 +935,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 +952,75 @@ 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.
+
+Also, whereas with Babyl format M-x find-file would switch to Rmail
+mode, with mbox format this is no longer the case (there being no way
+to add an "-*- rmail-*-" cookie to an mbox file).  Use C-u M-x rmail
+instead.
+
+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
@@ -940,7 +1048,7 @@ IPv6 addresses are supported now as host names.  They must be embedded
 in square brackets, like in "/ssh:[::1]:".
 
 *** Multihop syntax has been removed.
-The pseudo-method "multi" has been removed.  Instead of, multi hops
+The pseudo-method "multi" has been removed.  Instead, multi hops
 can be specified by the new variable `tramp-default-proxies-alist'.
 
 *** More default settings.
@@ -949,7 +1057,7 @@ Default values can be set via the variables `tramp-default-user',
 
 *** Connection information is cached.
 In order to reduce connection setup, information about used
-connections are kept persistent in a file.  The name of this file is
+connections is kept persistently in a file.  The name of this file is
 defined in the variable `tramp-persistency-file-name'.
 
 *** Control of remote processes.
@@ -987,6 +1095,9 @@ from that sequence is used.  The special value `t' means "no switches".
 *** Clicking on the VC mode-line entry now pops the VC menu.
 +++
 *** The VC mode-line entry now has a tooltip that explains the VC file status.
+
+*** In VC Annotate mode, the key bindings have changed to use lower
+case keys instead of the upper case keys used in the past.
 +++
 *** In VC Annotate mode, for VC systems that support changesets, you can
 see the diff for the whole changeset (not only for the current file)
@@ -1014,7 +1125,7 @@ by typing the D key or using the "Changeset Diff" menu entry.
 
 *** vc-git supports the "git grep" command.
 +++
-*** VC Support for Meta-CVS has been removed for lack of maintainer able
+*** VC Support for Meta-CVS has been removed for lack of maintainer able
 to update it to the new VC.
 
 ** Miscellaneous
@@ -1119,7 +1230,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,17 +1276,21 @@ 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.
-
++++
 *** The functions `register-char-codings' and `coding-system-spec'
 have been removed.
-
++++
 *** The cpXXX coding systems are now supported automatically.
 The functions cp-...-codepage, which you had to use in Emacs 22 to
 enable support for these coding systems, have been deleted.
-
+---
 *** The following features have been removed.  They were used for
 displaying various scripts with specific fonts, and are no longer
 needed now that OpenType font support is available:
@@ -1192,11 +1307,27 @@ 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 meaning of NAME argument of `set-fontset-font' is changed.
+Previously nil is accepted as the default fontset.  Now, nil is for
+the fontset of the selected frame and t is for the default fontset.
+
+*** The meaning of FONTSET argument of `print-fontset' is changed.
+Now, nil is for the fontset of the selected frame and t is for the
+default fontset.
+
+---
+** 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.
+
++++
+** The COUNT and SYSTEM-FLAG arguments to define-abbrev have been
+removed.  The function now takes extra arguments for specifying
+arbitrary abbrev properties.
+
 \f
 * Lisp Changes in Emacs 23.1
 
-** New coding system alias `emacs-internal'.
-
 +++
 ** The new variable `generate-autoload-cookie' controls the magic comment
 string used by `update-file-autoloads' to find autoloaded forms.  The
@@ -1206,7 +1337,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
@@ -1315,27 +1446,25 @@ value of `current-time' before and after Emacs loads the init files.
 Emacs initialization.
 
 ** Changes affecting display-buffer
-
-+++
-*** New value nil for split-height-threshold inhibits vertical splitting
-unless there's no other window.
-
-+++
-*** New option split-width-threshold controls horizontal splitting.
-
 +++
-*** A window can be split horizontally even when it's not full-width.
-
-+++
-*** New option split-window-preferred-function can be set to a function
-to override the default splitting mechanism of display-buffer.
+*** display-buffer tries to be smarter when splitting windows.
+The new option split-window-preferred-function lets you specify your own
+function to pop up new windows.  Its default value split-window-sensibly
+can split a window either vertically or horizontally, whichever seems
+more suitable in the current configuration.  You can tune the behavior
+of split-window-sensibly by customizing split-height-threshold and the
+new option split-width-threshold.  Both options now take the value nil
+to inhibit splitting in one direction.  Setting split-width-threshold to
+nil inhibits horizontal splitting and gets you the behavior of Emacs 22
+in this respect.  In any case, display-buffer may now split the largest
+window vertically even when it is not as wide as the containing frame.
 
 +++
 *** If pop-up-frames has the value `graphic-only', display-buffer only
 makes a separate frame on graphic displays.
 
 +++
-*** select-frame and set-frame-selected-window have new optional
+*** select-frame and set-frame-selected-window have new optional
 argument NORECORD.  If non-nil, this will avoid messing with the order
 of recently selected windows and the buffer list.
 
@@ -1399,7 +1528,7 @@ to `automatic-all' and `exit-current' for multi-buffer interactive replacement.
 *** The variable `inhibit-changing-match-data', if non-nil, prevents
 the search and match primitives from changing the match data.
 
----
++++
 *** New functions `word-search-forward-lax' and `word-search-backward-lax'.
 These are like `word-search-forward and `word-search-backward', except
 that the end of the search string need not match a word boundary,
@@ -1423,7 +1552,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).
 
@@ -1493,12 +1622,15 @@ character properties.  They are `name', `general-category',
 `old-name', `iso-10646-comment', `uppercase', `lowercase', and
 `titlecase'.
 
++++
 *** The functions `modify-syntax-entry' and `modify-category-entry' now
 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 +1694,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 +1727,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).
@@ -1609,15 +1751,15 @@ but signals an error if STRING contains a non-ASCII, non-eight-bit
 character.
 
 ** Changes related to the new font backend
-
-Which font backends to use can be specified by the X resource "FontBackend".
-For instance, to use both X core fonts and Xft fonts:
++++
+*** Which font backends to use can be specified by the X resource
+"FontBackend".  For instance, to use both X core fonts and Xft fonts:
 
 Emacs.FontBackend: x,xft
 
 If this resource is not set, Emacs tries to use all font backends
 available on your graphic device.
-
++++
 *** New frame parameter `font-backend' specifies a list of
 font-backends supported by the frame's graphic device.  On X, they are
 currently `x' and `xft'.
@@ -1627,26 +1769,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.
-
++++
+**** `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 +1806,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,39 +1835,42 @@ 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
-
++++
 *** For underlined characters, the distance between the underline and
 the baseline is controlled by a new variable, `underline-minimum-offset'.
-
++++
 *** You can now pass the value of the `invisible' property to
 invisible-p to check whether it would cause the text to be invisible.
-Convenient when checking invisibility of text with no buffer position
-(e.g. in before/after-strings).
-
+This is convenient when checking invisibility of text with no buffer
+position (e.g. in before/after-strings).
 +++
 *** `clear-image-cache' can be told to flush only images of a specific file.
-
++++
 *** `vertical-motion' can now be given a goal column.
 It now accepts a cons cell (COLS . LINES) in its first argument, which
 says to stop, where possible, at a pixel x-position equal to COLS
@@ -1729,51 +1879,63 @@ times the default column width.
 *** redisplay-end-trigger-functions, set-window-redisplay-end-trigger,
 and window-redisplay-end-trigger are obsolete.  Use `jit-lock-register'
 instead.
++++
+*** The new variables `wrap-prefix' and `line-prefix' specify display
+specs which are appended at display-time to every continuation line
+and non-continuation line, respectively.  In addition, Emacs
+recognizes the `wrap-prefix' and `line-prefix' text or overlay
+properties; these have the same effects as the variables of the same
+name, but take precedence.
 
 ** The Lisp interpreter now treats non-breaking space as whitespace.
 
 ** Miscellaneous new functions
 
-+++
-*** `format-seconds' converts a number of seconds into a readable
-string of days, hours, etc.
-
 +++
 *** `apply-partially' performs a "curried" application of a function.
 
-+++
-*** `read-shell-command' does what its name says, with completion.  It
-uses the minibuffer-local-shell-command-map for that.
-
 +++
 *** `buffer-swap-text' swaps text between two buffers.  This can be
 useful for modes such as tar-mode, archive-mode, RMAIL.
 
-*** New variable `buffer-swapped-with' lets the modes that use
-`buffer-swap-text' arrange to save the file from the proper buffer.
-
 +++
-*** `read-color' reads a color name using the minibuffer.
+*** `combine-and-quote-strings' produces a single string from a list of strings
+sticking a separator string in between each pair, and quoting those
+strings that include the separator as their substring.  Useful for
+consing shell command lines from the individual arguments.
+
+---
+*** `custom-note-var-changed' tells Custom to treat the change in a
+certain variable as having been made within Custom.
 
 +++
 *** `face-all-attributes' returns an alist describing all the basic
 attributes of a given face.
 
 +++
-*** `split-string-and-unquote' splits a string into a list of substrings
-on the boundaries of a given delimiter, and unquotes the substrings that
-are quoted.  Useful for taking apart shell commands.
-
-+++
-*** `combine-and-quote-strings' produces a single string from a list of strings
-sticking a separator string in between each pair, and quoting those
-strings that include the separator as their substring.  Useful for
-consing shell command lines from the individual arguments.
+*** `format-seconds' converts a number of seconds into a readable
+string of days, hours, etc.
 
 +++
 *** `image-refresh' refreshes all images associated with a given image
 specification.
 
+*** `locate-user-emacs-file' helps packages to select the appropriate
+place to save user-specific files.  It defaults to `user-emacs-directory'
+unless the file already exists at $HOME.
+
++++
+*** `read-color' reads a color name using the minibuffer.
+
++++
+*** `read-shell-command' does what its name says, with completion.  It
+uses the minibuffer-local-shell-command-map for that.
+
++++
+*** `split-string-and-unquote' splits a string into a list of substrings
+on the boundaries of a given delimiter, and unquotes the substrings that
+are quoted.  Useful for taking apart shell commands.
+
 +++
 *** The two new functions `looking-at-p' and `string-match-p' can do
 the same matching as `looking-at' and `string-match' without changing
@@ -1784,12 +1946,12 @@ the match data.
 `serial-process-configure' provide a Lisp interface to the new serial
 port support (see Emacs changes, above).
 
-*** `locate-user-emacs-file' helps packages to select the appropriate
-place to save user-specific files.  It defaults to `user-emacs-directory'
-unless the file already exists at $HOME.
-
 ** Miscellaneous new variables
 
++++
+*** `read-circle', if nil, disables the reading of recursive Lisp
+structures using the #N= and #N# syntax.
+
 +++
 *** `this-command-keys-shift-translated' is non-nil if the key
 sequence invoking the current command was found by shift-translation.
@@ -1802,12 +1964,10 @@ marker used for window-point.
 modes like Info can teach bookmark.el how to save and restore the
 relevant data.
 
++++
 *** `fill-forward-paragraph-function' specifies which function the
 filling code should use to find paragraph boundaries.
 
-*** `custom-note-var-changed' tells Custom to treat the change in a
-certain variable as having been made within Custom.
-
 \f
 * New Packages for Lisp Programming in Emacs 23.1
 
@@ -1827,6 +1987,7 @@ of multiple buffers.  Top-level commands `multi-isearch-buffers',
 `multi-isearch-files-regexp' accept a single argument that specifies
 a list of buffers/files to search for a string/regexp.
 
++++
 ** The new major mode `special-mode' is intended as a parent for
 major modes such as those that set the "'mode-class 'special" property.