---
** 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,
+no arrow is displayed and a value of nil means display the message at the top
+of the window.
+
** Occur mode changes:
+++
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 now been split up into specialized modes for automake,
-gmake, makepp and BSD make. The former two couldn't be differentiated before,
-and the latter two are new. Font-locking is robust now and offers new
-customizable faces.
+---
+** Makefile mode has submodes for automake, gmake, makepp and BSD make.
+
+The former two couldn't be differentiated before, and the latter two
+are new. Font-locking is robust now and offers new customizable
+faces.
+++
-** In Outline mode, hide-body no longer hides lines at the top
+** In Outline mode, `hide-body' no longer hides lines at the top
of the file that precede the first header line.
+++
** Telnet now prompts you for a port number with C-u M-x telnet.
---
-** The terminal emulation code in term.el has been improved, it can
+** The terminal emulation code in term.el has been improved; it can
run most curses applications now.
+++
-** M-x diff uses diff-mode instead of compilation-mode.
+** M-x diff uses Diff mode instead of Compilation mode.
+++
-** You can now customize fill-nobreak-predicate to control where
+** You can now customize `fill-nobreak-predicate' to control where
filling can break lines. The value is now normally a list of
functions, but it can also be a single function, for compatibility.
-We provide two sample predicates, fill-single-word-nobreak-p and
-fill-french-nobreak-p, for use in the value of fill-nobreak-predicate.
+Emacs provide two predicates, `fill-single-word-nobreak-p' and
+`fill-french-nobreak-p', for use as the value of
+`fill-nobreak-predicate'.
---
** M-x view-file and commands that use it now avoid interfering
with special modes such as Tar mode.
---
-** Commands winner-redo and winner-undo, from winner.el, are now bound to
-C-c <left> and C-c <right>, respectively. This is an incompatible change.
+** Commands `winner-redo' and `winner-undo', from winner.el, are now
+bound to C-c <left> and C-c <right>, respectively. This is an
+incompatible change.
---
-** global-whitespace-mode is a new alias for whitespace-global-mode.
+** `global-whitespace-mode' is a new alias for `whitespace-global-mode'.
+++
** M-x compare-windows now can automatically skip non-matching text to
+++
** New user option `add-log-always-start-new-record'.
+
When this option is enabled, M-x add-change-log-entry always
starts a new record regardless of when the last record is.
+++
*** A numeric prefix argument of `info' selects an Info buffer
-with the number appended to the *info* buffer name (e.g. "*info*<2>").
+with the number appended to the `*info*' buffer name (e.g. "*info*<2>").
---
*** isearch in Info uses Info-search and searches through multiple nodes.
+
Before leaving the initial Info node isearch fails once with the error
message [initial node], and with subsequent C-s/C-r continues through
other nodes. When isearch fails for the rest of the manual, it wraps
+++
*** Info now hides node names in menus and cross references by default.
+
If you prefer the old behavior, you can set the new user option
`Info-hide-note-references' to nil.
---
*** Images in Info pages are supported.
+
Info pages show embedded images, in Emacs frames with image support.
Info documentation that includes images, processed with makeinfo
version 4.7 or newer, compiles to Info pages with embedded images.
*** The default value for `Info-scroll-prefer-subnodes' is now nil.
---
-*** Info-index offers completion.
+*** `Info-index' offers completion.
** Lisp mode changes:
---
-*** Lisp mode now uses font-lock-doc-face for the docstrings.
+*** Lisp mode now uses `font-lock-doc-face' for doc strings.
+++
-*** A prefix argument of C-M-q in Emacs Lisp mode pretty-printifies the
-list starting after point.
+*** C-u C-M-q in Emacs Lisp mode pretty-prints the list after point.
*** New features in evaluation commands
+++
-*** The function `eval-defun' (C-M-x) called on defface reinitializes
+**** The function `eval-defun' (C-M-x) called on defface reinitializes
the face to the value specified in the defface expression.
+++
-*** Typing C-x C-e twice prints the value of the integer result
+**** Typing C-x C-e twice prints the value of the integer result
in additional formats (octal, hexadecimal, character) specified
by the new function `eval-expression-print-format'. The same
function also defines the result format for `eval-expression' (M-:),
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
composition-close, and incomposition.
*** New functions to do hungry delete without enabling hungry delete mode.
-The functions c-hungry-backspace and c-hungry-delete-forward can be
+The functions `c-hungry-backspace' and `c-hungry-delete-forward' can be
bound to keys to get this feature without toggling a mode.
-Contributed by Kevin Ryde.
-*** Better control over require-final-newline. The variable that
-controls how to handle a final newline when the buffer is saved,
-require-final-newline, is now customizable on a per-mode basis through
-c-require-final-newline. That is a list of modes, and only those
-modes set require-final-newline. By default that's C, C++ and
-Objective-C.
+*** Better control over `require-final-newline'.
+
+The variable `c-require-final-newline' specifies which of the modes
+implemented by CC mode should insert final newlines. Its value is a
+list of modes, and only those modes should do it. By default the list
+includes C, C++ and Objective-C modes.
-The specified modes set require-final-newline based on
-mode-require-final-newline, as usual.
+Whichever modes are in this list will set `require-final-newline'
+based on `mode-require-final-newline'.
*** Format change for syntactic context elements.
-The elements in the syntactic context returned by c-guess-basic-syntax
-and stored in c-syntactic-context has been changed somewhat to allow
+
+The elements in the syntactic context returned by `c-guess-basic-syntax'
+and stored in `c-syntactic-context' has been changed somewhat to allow
attaching more information. They are now lists instead of single cons
cells. E.g. a line that previously had the syntactic analysis
((inclass . 11) (topmost-intro . 13))
-is now analysed as
+is now analyzed as
((inclass 11) (topmost-intro 13))
In some cases there are more than one position given for a syntactic
symbol.
-This change might affect code that call c-guess-basic-syntax directly,
-and custom lineup functions if they use c-syntactic-context. However,
+This change might affect code that call `c-guess-basic-syntax' directly,
+and custom lineup functions if they use `c-syntactic-context'. However,
the argument given to lineup functions is still a single cons cell
with nil or an integer in the cdr.
*** API changes for derived modes.
+
There have been extensive changes "under the hood" which can affect
derived mode writers. Some of these changes are likely to cause
incompatibilities with existing derived modes, but on the other hand
**** New initialization functions.
The initialization procedure has been split up into more functions to
-give better control: c-basic-common-init, c-font-lock-init, and
-c-init-language-vars.
+give better control: `c-basic-common-init', `c-font-lock-init', and
+`c-init-language-vars'.
*** Changes in analysis of nested syntactic constructs.
The syntactic analysis engine has better handling of cases where
**** Syntactic indentation inside macros.
The contents of multiline #define's are now analyzed and indented
syntactically just like other code. This can be disabled by the new
-variable c-syntactic-indentation-in-macros. A new syntactic symbol
-cpp-define-intro has been added to control the initial indentation
-inside #define's.
+variable `c-syntactic-indentation-in-macros'. A new syntactic symbol
+`cpp-define-intro' has been added to control the initial indentation
+inside `#define's.
+
+**** New lineup function `c-lineup-cpp-define'.
-**** New lineup function c-lineup-cpp-define.
Now used by default to line up macro continuation lines. The behavior
of this function closely mimics the indentation one gets if the macro
is indented while the line continuation backslashes are temporarily
removed. If syntactic indentation in macros is turned off, it works
-much line c-lineup-dont-change, which was used earlier, but handles
+much line `c-lineup-dont-change', which was used earlier, but handles
empty lines within the macro better.
**** Automatically inserted newlines continues the macro if used within one.
This applies to the newlines inserted by the auto-newline mode, and to
-c-context-line-break and c-context-open-line.
+`c-context-line-break' and `c-context-open-line'.
**** Better alignment of line continuation backslashes.
-c-backslash-region tries to adapt to surrounding backslashes. New
-variable c-backslash-max-column which put a limit on how far out
+`c-backslash-region' tries to adapt to surrounding backslashes. New
+variable `c-backslash-max-column' which put a limit on how far out
backslashes can be moved.
**** Automatic alignment of line continuation backslashes.
-This is controlled by the new variable c-auto-align-backslashes. It
-affects c-context-line-break, c-context-open-line and newlines
-inserted in auto-newline mode.
-
+This is controlled by the new variable `c-auto-align-backslashes'. It
+affects `c-context-line-break', `c-context-open-line' and newlines
+inserted in Auto-Newline mode.
**** Line indentation works better inside macros.
+
Regardless whether syntactic indentation and syntactic indentation
inside macros are enabled or not, line indentation now ignores the
line continuation backslashes. This is most noticeable when syntactic
*** indent-for-comment is more customizable.
The behavior of M-; (indent-for-comment) is now configurable through
-the variable c-indent-comment-alist. The indentation behavior based
+the variable `c-indent-comment-alist'. The indentation behavior based
on the preceding code on the line, e.g. to get two spaces after #else
-and #endif but indentation to comment-column in most other cases
+and #endif but indentation to `comment-column' in most other cases
(something which was hardcoded earlier).
-*** New function c-context-open-line.
-It's the open-line equivalent of c-context-line-break.
+*** New function `c-context-open-line'.
+It's the open-line equivalent of `c-context-line-break'.
*** New lineup functions
-**** c-lineup-string-cont
+**** `c-lineup-string-cont'
This lineup function lines up a continued string under the one it
continues. E.g:
result = prefix + "A message "
"string."; <- c-lineup-string-cont
-**** c-lineup-cascaded-calls
+**** `c-lineup-cascaded-calls'
Lines up series of calls separated by "->" or ".".
-**** c-lineup-knr-region-comment
+**** `c-lineup-knr-region-comment'
Gives (what most people think is) better indentation of comments in
the "K&R region" between the function header and its body.
-**** c-lineup-gcc-asm-reg
-Provides better indentation inside asm blocks. Contributed by Kevin
-Ryde.
+**** `c-lineup-gcc-asm-reg'
+Provides better indentation inside asm blocks.
-**** c-lineup-argcont
+**** `c-lineup-argcont'
Lines up continued function arguments after the preceding comma.
-Contributed by Kevin Ryde.
*** Better caching of the syntactic context.
CC Mode caches the positions of the opening parentheses (of any kind)
"invalid" context, e.g. in a function argument. In practice that can
happen when macros are involved.
-*** Improved the way c-indent-exp chooses the block to indent.
+*** Improved the way `c-indent-exp' chooses the block to indent.
It now indents the block for the closest sexp following the point
whose closing paren ends on a different line. This means that the
point doesn't have to be immediately before the block to indent.
line is left untouched.
*** Added toggle for syntactic indentation.
-The function c-toggle-syntactic-indentation can be used to toggle
+The function `c-toggle-syntactic-indentation' can be used to toggle
syntactic indentation.
---
`fortran-beginning-of-block'.
---
-*** F90 mode and Fortran mode have support for hs-minor-mode (hideshow).
+*** F90 mode and Fortran mode have support for `hs-minor-mode' (hideshow).
It cannot deal with every code format, but ought to handle a sizeable
majority.
and super/sub-scripts are made into super/sub-scripts.
+++
-*** New major mode doctex-mode for *.dtx files.
+*** New major mode Doctex mode, for *.dtx files.
** BibTeX mode:
-*** The new command bibtex-url browses a URL for the BibTeX entry at
+
+*** The new command `bibtex-url' browses a URL for the BibTeX entry at
point (bound to C-c C-l and mouse-2, RET on clickable fields).
-*** The new command bibtex-entry-update (bound to C-c C-u) updates
+*** The new command `bibtex-entry-update' (bound to C-c C-u) updates
an existing BibTeX entry.
*** New `bibtex-entry-format' option `required-fields', enabled by default.
-*** bibtex-maintain-sorted-entries can take values `plain',
+*** `bibtex-maintain-sorted-entries' can take values `plain',
`crossref', and `entry-class' which control the sorting scheme used
for BibTeX entries. `bibtex-sort-entry-class' controls the sorting
scheme `entry-class'. TAB completion for reference keys and
automatic detection of duplicates does not require anymore that
-bibtex-maintain-sorted-entries is non-nil.
+`bibtex-maintain-sorted-entries' is non-nil.
-*** If the new variable bibtex-parse-keys-fast is non-nil,
+*** If the new variable `bibtex-parse-keys-fast' is non-nil,
use fast but simplified algorithm for parsing BibTeX keys.
-*** If the new variable bibtex-autoadd-commas is non-nil,
+*** If the new variable `bibtex-autoadd-commas' is non-nil,
automatically add missing commas at end of BibTeX fields.
-*** The new variable bibtex-autofill-types contains a list of entry
+*** The new variable `bibtex-autofill-types' contains a list of entry
types for which fields are filled automatically (if possible).
-*** The new command bibtex-complete completes word fragment before
+*** The new command `bibtex-complete' completes word fragment before
point according to context (bound to M-tab).
-*** The new commands bibtex-find-entry and bibtex-find-crossref
+*** The new commands `bibtex-find-entry' and `bibtex-find-crossref'
locate entries and crossref'd entries (bound to C-c C-s and C-c C-x).
Crossref fields are clickable (bound to mouse-2, RET).
-*** In BibTeX mode the command fill-paragraph (bound to M-q) fills
+*** In BibTeX mode the command `fill-paragraph' (M-q) fills
individual fields of a BibTeX entry.
-*** The new variables bibtex-files and bibtex-file-path define a set
+*** The new variables `bibtex-files' and `bibtex-file-path' define a set
of BibTeX files that are searched for entry keys.
-*** The new command bibtex-validate-globally checks for duplicate keys
+*** The new command `bibtex-validate-globally' checks for duplicate keys
in multiple BibTeX files.
-*** The new command bibtex-copy-summary-as-kill pushes summary
+*** The new command `bibtex-copy-summary-as-kill' pushes summary
of BibTeX entry to kill ring (bound to C-c C-t).
+++
*** The new package gdb-ui.el provides an enhanced graphical interface to
GDB. You can interact with GDB through the GUD buffer in the usual way, but
there are also further buffers which control the execution and describe the
-state of your program. It separates the input/output of your program from
+state of your program. It can separate the input/output of your program from
that of GDB and watches expressions in the speedbar. It also uses features of
-Emacs 21 such as the display margin for breakpoints, and the toolbar.
+Emacs 21/22 such as the the toolbar, and bitmaps in the fringe to indicate
+breakpoints.
-Use M-x gdba to start GDB-UI.
+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
*** The previous method of searching for source files has been
preserved in case someone still wants/needs to use it.
- Set gud-jdb-use-classpath to nil.
+ Set `gud-jdb-use-classpath' to nil.
Added Customization Variables
-*** gud-jdb-command-name. What command line to use to invoke jdb.
+*** `gud-jdb-command-name'. What command line to use to invoke jdb.
-*** gud-jdb-use-classpath. Allows selection of java source file searching
- method: set to t for new method, nil to scan gud-jdb-directories for
+*** `gud-jdb-use-classpath'. Allows selection of java source file searching
+ method: set to t for new method, nil to scan `gud-jdb-directories' for
java sources (previous method).
-*** gud-jdb-directories. List of directories to scan and search for java
- classes using the original gud-jdb method (if gud-jdb-use-classpath
+*** `gud-jdb-directories'. List of directories to scan and search for java
+ classes using the original gud-jdb method (if `gud-jdb-use-classpath'
is nil).
Minor Improvements
*** The STARTTLS wrapper (starttls.el) can now use GNUTLS
-instead of the OpenSSL based "starttls" tool. For backwards
-compatibility, it prefers "starttls", but you can toggle
+instead of the OpenSSL based `starttls' tool. For backwards
+compatibility, it prefers `starttls', but you can toggle
`starttls-use-gnutls' to switch to GNUTLS (or simply remove the
-"starttls" tool).
+`starttls' tool).
*** Do not allow debugger output history variable to grow without bounds.
+++
*** You can now use Auto Revert mode to `tail' a file.
+
If point is at the end of a file buffer before reverting, Auto Revert
mode keeps it at the end after reverting. Similarly if point is
displayed at the end of a file buffer in any window, it stays at
** Desktop package
+++
-*** Desktop saving is now a minor mode, desktop-save-mode. Variable
-desktop-enable is obsolete. Customize desktop-save-mode to enable desktop
-saving.
+*** Desktop saving is now a minor mode, `desktop-save-mode'.
+
++++
+*** The variable `desktop-enable' is obsolete.
+
+Customize `desktop-save-mode' to enable desktop saving.
---
*** Buffers are saved in the desktop file in the same order as that in the
buffer list.
+++
-*** The desktop package can be customized to restore only some buffers immediately,
-remaining buffers are restored lazily (when Emacs is idle).
+*** The desktop package can be customized to restore only some buffers
+immediately, remaining buffers are restored lazily (when Emacs is
+idle).
+++
*** New commands:
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