---
** When pure storage overflows while dumping, Emacs now prints how
much pure storage it will approximately need.
+
+** The script etc/emacs-buffer.gdb can be used with gdb to retrieve the
+contents of buffers from a core dump and save them to files easily, should
+emacs crash.
+
\f
* Startup Changes in Emacs 22.1
++++
** New command line option -Q or --quick.
This is like using -q --no-site-file, but in addition it also disables
the fancy startup screen.
** The default for the paper size (variable ps-paper-type) is taken
from the locale.
+** The command `list-faces-display' now accepts a prefix arg.
+When passed, the function prompts for a regular expression and lists
+only faces matching this regexp.
+
** Mark command changes:
+++
*** New face `escape-glyph' highlights control characters and escape glyphs.
+++
-*** Non-breaking space and hyphens are now prefixed with an escape
-character, unless the new user variable `show-nonbreak-escape' is set
-to nil.
+*** Non-breaking space and hyphens are now displayed with a special
+face, either nobreak-space or escape-glyph. You can turn this off or
+specify a different mode by setting the variable `nobreak-char-display'.
+++
*** The parameters of automatic hscrolling can now be customized.
The variable `automatic-hscrolling' was renamed to
`auto-hscroll-mode'. The old name is still available as an alias.
+---
*** Moving or scrolling through images (and other lines) taller that
the window now works sensibly, by automatically adjusting the window's
vscroll property.
If value is `left' or `right', both angle and arrow bitmaps are
displayed in the left or right fringe, resp.
-The value can also be an alist which specifies the presense and
+The value can also be an alist which specifies the presence and
position of each bitmap individually.
For example, ((top . left) (t . right)) places the top angle bitmap
*** The variable `cursor-in-non-selected-windows' can now be set to any
of the recognized cursor types.
+** New faces:
+
++++
+*** `mode-line-highlight' is the standard face indicating mouse sensitive
+elements on mode-line (and header-line) like `highlight' face on text
+areas.
+
++++
+*** `shadow' face defines the appearance of the "shadowed" text, i.e.
+the text which should be less noticeable than the surrounding text.
+This can be achieved by using shades of grey in contrast with either
+black or white default foreground color. This generic shadow face
+allows customization of the appearance of shadowed text in one place,
+so package-specific faces can inherit from it.
+
** Font-Lock changes:
+++
+++
*** New standard font-lock face `font-lock-preprocessor-face'.
++++
*** New standard font-lock face `font-lock-comment-delimiter-face'.
-*** Easy to overlook single character negation is now font-locked.
++++
+*** Easy to overlook single character negation can now be font-locked.
You can use the new variable `font-lock-negation-char-face' and the face of
the same name to customize this. Currently the cc-modes, sh-script-mode,
cperl-mode and make-mode support this.
like bash's `ESC .' binding. It is bound by default to `C-c .', but
otherwise behaves quite similarly to the bash version.
++++
*** `comint-use-prompt-regexp-instead-of-fields' has been renamed
`comint-use-prompt-regexp'. The old name has been kept as an alias,
but declared obsolete.
matches, compilation errors, etc. This minor mode can be toggled with
C-c C-f.
++++
*** When the left fringe is displayed, an arrow points to current message in
the compilation buffer.
++++
*** The new variable `compilation-context-lines' controls lines of leading
context before the current message. If nil and the left fringe is displayed,
it doesn't scroll the compilation output window. If there is no left fringe,
cua-mode. Customize the variable `cua-mode' to enable cua.
In addition, cua provides unified rectangle support with visible
-rectangle highlighting: Use S-return to start a rectangle, extend it
+rectangle highlighting: Use C-return to start a rectangle, extend it
using the movement commands (or mouse-3), and cut or copy it using C-x
or C-c (using C-w and M-w also works).
similar to Refill mode, but more reliable. To turn the word wrap
feature off, set `longlines-auto-wrap' to nil.
++++
** The printing package is now part of the Emacs distribution.
If you enable the printing package by including (require 'printing) in
\f
* Changes in Specialized Modes and Packages in Emacs 22.1:
+---
** Makefile mode has submodes for automake, gmake, makepp and BSD make.
The former two couldn't be differentiated before, and the latter two
The notion of "defun" has been augmented to include AWK pattern-action
pairs. C-M-a (c-awk-beginning-of-defun) and C-M-e (c-awk-end-of-defun)
-recognise these pattern-action pairs, as well as user defined
+recognize these pattern-action pairs, as well as user defined
functions.
**** Auto-newline Insertion and Clean-ups
((inclass . 11) (topmost-intro . 13))
-is now analysed as
+is now analyzed as
((inclass 11) (topmost-intro 13))
Use M-x gdb to start GDB-UI.
-*** GUD tooltips can be toggled independently of normal tooltips
-with the minor mode `gud-tooltip-mode'.
+*** The variable tooltip-gud-tips-p has been removed. GUD tooltips can now be
+toggled independently of normal tooltips with the minor mode
+`gud-tooltip-mode'.
+++
*** In graphical mode, with a C program, GUD Tooltips have been extended to
+++
*** Desktop saving is now a minor mode, `desktop-save-mode'.
++++
*** The variable `desktop-enable' is obsolete.
Customize `desktop-save-mode' to enable desktop saving.
then it reverts to the old behavior and asks the user to select regions for
comparison.
++++
*** The new command `ediff-backup' compares a file with its most recent
backup using `ediff'. If you specify the name of a backup file,
`ediff-backup' compares it with the file of which it is a backup.
Previously, only the `template' and `class' keywords had this effect.
-**** The GCC __attribute__ keyword is now recognised and ignored.
+**** The GCC __attribute__ keyword is now recognized and ignored.
**** New language HTML.
---
** MH-E changes.
-Upgraded to MH-E version 7.82. There have been major changes since
+Upgraded to MH-E version 7.84. There have been major changes since
version 5.0.2; see MH-E-NEWS for details.
** Calendar changes:
\f
* Incompatible Lisp Changes in Emacs 22.1
+---
+** The variables post-command-idle-hook and post-command-idle-delay have
+ been removed. Use run-with-idle-timer instead.
+
+++
** `suppress-keymap' now works by remapping `self-insert-command' to
the command `undefined'. (In earlier Emacs versions, it used
list instead of at the beginning. This change actually occurred in
Emacs 21.1, but was not documented then.
++++
+*** New function `add-to-ordered-list' is like `add-to-list' but
+associates a numeric ordering of each element added to the list.
+
+++
*** New function `copy-tree' makes a copy of a tree.
dangerous; otherwise it returns a reason why the form might be unsafe
(calls unknown function, alters global variable, etc).
+*** `list-faces-display' takes an optional argument, REGEXP.
+
+If it is non-nil, the function lists only faces matching this regexp.
+
** Lisp code indentation features:
+++
---
*** The function `insert-string' is now obsolete.
+** Filling changes.
+
++++
+*** In determining an adaptive fill prefix, Emacs now tries the function in
+`adaptive-fill-function' _before_ matching the buffer line against
+`adaptive-fill-regexp' rather than _after_ it.
+
+++
** Atomic change groups.
element, if the last match was on a buffer. `set-match-data'
accepts such a list for restoring the match state.
++++
+*** Functions `match-data' and `set-match-data' now have an optional
+argument `reseat'. When non-nil, all markers in the match data list
+passed to these function will be reseated to point to nowhere.
+
+++
*** The default value of `sentence-end' is now defined using the new
variable `sentence-end-without-space', which contains such characters
*** `syntax-class' extracts the class of a syntax code (as returned
by `syntax-after').
++++
*** The new function `syntax-ppss' rovides an efficient way to find the
current syntactic context at point.
`save-some-buffers' will always save that buffer without asking (if
it's modified).
++++
*** New function `locate-file' searches for a file in a list of directories.
`locate-file' accepts a name of a file to search (a string), and two
lists: a list of directories to search in and a list of suffixes to
functions.
*** Function `signal-process' now accepts a process object or process
-name in addition to a process id to identify the signalled process.
+name in addition to a process id to identify the signaled process.
*** Processes now have an associated property list where programs can
maintain process state and other per-process related information.
*** The old `open-network-stream' now uses `make-network-process'.
-*** New function `open-network-stream-nowait'.
-
-This function initiates a non-blocking connect and returns immediately
-without waiting for the connection to be established. It takes the
-filter and sentinel functions as arguments; when the non-blocking
-connect completes, the sentinel is called with a status string
-matching "open" or "failed".
-
-*** New function `open-network-stream-server'.
-
-This function creates a network server process for a TCP service.
-When a client connects to the specified service, a new subprocess
-is created to handle the new connection, and the sentinel function
-is called for the new process.
-
*** New functions `process-datagram-address', `set-process-datagram-address'.
These functions are used with datagram-based network processes to get
+++
*** The new macro `with-selected-window' temporarily switches the
selected window without impacting the order of `buffer-list'.
+It saves and restores the current buffer, too.
+++
*** `select-window' takes an optional second argument NORECORD.
+++
*** `save-selected-window' now saves and restores the selected window
of every frame. This way, it restores everything that can be changed
-by calling `select-window'.
+by calling `select-window'. It also saves and restores the current
+buffer.
+++
*** `set-window-buffer' has an optional argument KEEP-MARGINS.
to display the size of the accessible part of the buffer on the mode
line.
++++
+*** Mouse-face on mode-line (and header-line) is now supported.
+
** Menu manipulation changes:
---
of hierarchical data as an outline. For example, the tree-widget is
well suited to display a hierarchy of directories and files.
++++
** The new library bindat.el provides functions to unpack and pack
binary data structures, such as network packets, to and from Lisp
data structures.
*** C++ member functions are now recognized as tags.
*** Java is tagged like C++. In addition, "extends" and "implements"
-constructs are tagged. Files are recognised by the extension .java.
+constructs are tagged. Files are recognized by the extension .java.
*** Etags can now handle programs written in Postscript. Files are
-recognised by the extensions .ps and .pdb (Postscript with C syntax).
+recognized by the extensions .ps and .pdb (Postscript with C syntax).
In Postscript, tags are lines that start with a slash.
*** Etags now handles Objective C and Objective C++ code. The usual C and
recognizes special Objective C syntax for classes, class categories,
methods and protocols.
-*** Etags also handles Cobol. Files are recognised by the extension
+*** Etags also handles Cobol. Files are recognized by the extension
.cobol. The tagged lines are those containing a word that begins in
column 8 and ends in a full stop, i.e. anything that could be a
paragraph name.
----------------------------------------------------------------------
Copyright information:
-Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1999, 2000, 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
Permission is granted to anyone to make or distribute verbatim copies
of this document as received, in any medium, provided that the