Documented define-obsolete-face-alias.
[bpt/emacs.git] / etc / NEWS.22
index 4fc69ac..cd0123c 100644 (file)
@@ -1,6 +1,6 @@
 GNU Emacs NEWS -- history of user-visible changes.
 
-Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
           Free Software Foundation, Inc.
 See the end of the file for license conditions.
 
@@ -14,107 +14,228 @@ in older Emacs versions.
 
 You can narrow news to a specific version by calling `view-emacs-news'
 with a prefix argument or by typing C-u C-h C-n.
+\f
+* About external Lisp packages
 
-Temporary note:
- +++ indicates that the appropriate manual has already been updated.
- --- means no change in the manuals is called for.
-When you add a new item, please add it without either +++ or ---
-so we will look at it and add it to the manual.
+When you upgrade to Emacs 22 from a previous version, some older
+versions of external Lisp packages are known to behave badly.
+So in general, it is recommended that you upgrade to the latest
+versions of any external Lisp packages that you are using.
 
-Fixme: The notes about Emacs 23 are quite incomplete.
+You should also be aware that many Lisp packages have been included
+with Emacs 22 (see the extensive list below), and you should remove
+any older versions of these packages to ensure that the Emacs 22
+version is used.  You can use M-x list-load-path-shadows to find such
+older packages.
+
+Some specific packages that are known to cause problems are given
+below.  Emacs tries to warn you about these through `bad-packages-alist'.
+
+** Semantic (used by CEDET, ECB, JDEE): upgrade to latest version.
+
+** cua.el, cua-mode.el: remove old versions.
 
 \f
-* Changes in Emacs 23.1
+* Changes in Emacs 22.3
+
+** Support for several obsolete platforms will be removed in the next
+major version of Emacs: Apollo, Acorn, Alliant, Amdahl, Altos 3068,
+Bull DPX/2, Bull SPS-7, AT&T UNIX 7300, AT&T 3b, Aviion Berkeley 4.1
+to 4.3, Celerity, Clipper, Convergent S series, Convex, Cydra, DG/UX,
+Dual, Elxsi, ESIX, Fujitsu F301, GEC 63, Gould, Honeywell XPS100,
+i860, IBM ps/2 aix386, Harris CXUX, Harris Night Hawk 1200/3000,
+Harris Power PC, HP 9000 series 200 or 300, HLH Orion, Hitachi
+SR2001/SR2201, IBM PS/2, Integrated Solutions 386, Integrated
+Solutions Optimum V, Iris, Irix < v6, ISC Unix, ISI 68000, Masscomp
+5000, Megatest 68000, Motorola System V/88, ns16000, National
+Semiconductor 32000, osf1 (s/osf*) Paragon i860, PFU A-series, Plexus,
+Pyramid, RTU 3.0, RISCiX SCO 3.2, sh3el, Sinix, Stride, Sun 1-3, Sun
+RoadRunner, Sequent Symmetry, Sony News, SunOS 4, System V rel 0 to 3,
+Tadpole 68k machines, tahoe, Tandem Integrity S2, targon31, Tektronix,
+TI Nu, NCR Tower 32, U-station, Ultrix, UMAX, UniPlus 5.2, Whitechapel
+Computer Works MG1, Wicat, and Xenix.
+
+*** Support for systems without alloca will be removed.
+
+*** Support for Sun windows will be removed.
+
+*** Support for VMS will be removed.
+
+* Incompatible Editing Changes in Emacs 22.3
+
+** The following input methods were removed in Emacs 22.2, but this was
+not advertised: danish-alt-postfix, esperanto-alt-postfix,
+finnish-alt-postfix, german-alt-postfix, icelandic-alt-postfix,
+norwegian-alt-postfix, scandinavian-alt-postfix, spanish-alt-postfix,
+and swedish-alt-postfix.  Use the versions without "alt-", which are
+identical.
 
-** The Emacs character set is now a superset of Unicode.  
-(It has about four times the code space, which should be plenty).
+\f
+* Installation Changes in Emacs 22.2
 
-The internal encoding used for buffers and strings is now
-Unicode-based and called `utf-8-emacs'.  utf-8-emacs is backwards
-compatible with the UTF-8 encoding of Unicode.  The `emacs-mule'
-coding system can still read and write data in the old internal
-encoding.
+** Emacs is now licensed under the GNU GPL version 3 (or later).
 
-There are still charsets which contain disjoint sets of characters
-where this is necessary or useful, especially for various Far Eastern
-sets which are problematic with Unicode.
+** Support for GNU/kFreeBSD (GNU userland and FreeBSD kernel) was added.
 
-Since the internal encoding is also used by default for byte-compiled
-files -- i.e. the normal coding system for byte-compiled Lisp files is
-now utf-8-Emacs -- Lisp containing non-ASCII characters which is
-compiled by Emacs 23 can't be read by earlier versions of Emacs.  Files
-compiled by Emacs 20, 21, or 22 are loaded correctly as emacs-mule
-(whether or not they contain multibyte characters), which makes loading
-them somewhat slower than Emacs 23-compiled files.  Thus it may be worth
-recompiling existing .elc files which don't need to be shared with older
-Emacsen.
+** Deprecated machine types and operating systems
 
-** There are assorted new coding systems/aliases -- see
-M-x list-coding-systems.
+Certain machine types and operating systems have been deprecated.  On
+these systems, configure will print a warning and exit, and you must
+edit the configure script for compilation to proceed.  The deprecated
+systems will not be supported at all in Emacs 23.  We are not aware of
+anyone running Emacs on these systems; if you are, please email
+emacs-devel@gnu.org to take it off the list of deprecated systems.
 
-** New charset implementation with many new charsets.
-See M-x list-character-sets.  New charsets can be defined conveniently
-as tables of unicodes.
+*** Deprecated machine types
+pmax, hp9000s300, ibm370aix, ncr386, ews4800, mips-siemens, powerpcle,
+and tandem-s2
 
-The dimension of a charset is now 0, 1, 2, or 3, and the size of each
-dimension is no longer limited to 94 or 96.
+*** Deprecated operating systems
+bsd386, bsdos2-1, bsdos2, bsdos3, bsdos4, bsd4-1, bsd4-2, bsd4-3,
+usg5-0, usg5-2-2, usg5-2, usg5-3, ultrix4-3, 386bsd, hpux, hpux8,
+hpux9, hpux9shr, hpux10, hpux10-20, aix3-1, aix3-2-5, aix3-2, aix4-1,
+nextstep, ux4800, uxpds, and uxpv
 
-Generic characters no longer exist.  
+* Changes in Emacs 22.2
 
-A dynamic charset priority list is used to infer the charset of
-unicodes for display &c.
+** `describe-project' is renamed to `describe-gnu-project'.
 
-** The following facilities are obsolete:
+** `view-todo' is renamed to `view-emacs-todo'.
 
-Minor modes: unify-8859-on-encoding-mode, unify-8859-on-decoding-mode
+** `find-name-dired' now uses -iname rather than -name
+for case-insensitive filesystems.  The default behavior is determined
+by the value of `read-file-name-completion-ignore-case'; if you don't
+like that, customize the value of the new option `find-name-arg'.
 
-\f
-* Lisp changes in Emacs 23.1
+** In Image mode, whenever the displayed image is wider and/or higher
+than the window, the usual keys for moving the cursor cause the image
+to be scrolled horizontally or vertically instead.
 
-map-char-table's behaviour has changed.
+** Emacs can use stock icons in the tool bar when compiled with Gtk+.
+However, this feature is disabled by default.  To enable it, put
 
-New functions: characterp, max-char, map-charset-chars,
-define-charset-alias, primary-charset, set-primary-charset,
-unify-charset, clear-charset-maps, charset-priority-list,
-set-charset-priority, define-coding-system,
-define-coding-system-alias, coding-system-aliases, langinfo,
-string-to-multibyte.
+  (setq icon-map-list '(x-gtk-stock-map))
 
-Changed functions: copy-sequence, decode-char, encode-char,
-set-fontset-font, new-fontset, modify-syntax-entry, define-charset,
-modify-category-entry
+in your .emacs or some other startup file.  For more information, see
+the documentation for the two variables icon-map-list and x-gtk-stock-map.
 
-Obsoleted: char-bytes, chars-in-region, set-coding-priority,
-char-valid-p
+** Scrollbars follow the system theme on Windows XP and later.
+Windows XP introduced themed scrollbars, but applications have to take
+special steps to use them. Emacs now has the appropriate resources linked
+in to make it use the scrollbars from the system theme.
 
-\f
-* Incompatible Lisp changes
+** focus-follows-mouse defaults to nil on MS Windows.
+Previously this variable was incorrectly documented as having no effect
+on MS Windows, and the default was inappropriate for the majority of
+Windows installations. Users of software which modifies the behavior of
+Windows to cause focus to follow the mouse will now need to explicitly set
+this variable.
 
-Deleted functions: make-coding-system, register-char-codings,
-coding-system-spec
+** `bad-packages-alist' will warn about external packages that are known
+to cause problems in this version of Emacs.
 
-** The character codes for characters from the
-eight-bit-control/eight-bit-graphic charsets aren't now in the range
-128-255.
-\f
-* About external Lisp packages
+** The values of `dired-recursive-deletes' and `dired-recursive-copies'
+have been changed to `top'.  This means that the user is asked once,
+before deleting/copying the indicated directory recursively.
 
-When you upgrade to Emacs 22 from a previous version, some older
-versions of external Lisp packages are known to behave badly.
-So in general, it is recommended that you upgrade to the latest
-versions of any external Lisp packages that you are using.
+** `browse-url-emacs' loads a URL into an Emacs buffer.  Handy for *.el URLs.
 
-You should also be aware that many Lisp packages have been included
-with Emacs 22 (see the extensive list below), and you should remove
-any older versions of these packages to ensure that the Emacs 22
-version is used.  You can use M-x list-load-path-shadows to find such
-older packages.
+** The command gdba has been removed as gdb works now for those cases where it
+was needed.  In text command mode, if you have problems before execution has
+started, use M-x gud-gdb.
 
-Some specific packages that are known to cause problems are:
+** desktop.el now detects conflicting uses of the desktop file.
+When loading the desktop, desktop.el can now detect that the file is already
+in use.  The default behavior is to ask the user what to do, but you can
+customize it with the new option `desktop-load-locked-desktop'.  When saving,
+desktop.el warns about attempts to overwrite a desktop file if it determines
+that the desktop being saved is not an update of the one on disk.
 
-** Semantic (used by CEDET, ECB, JDEE): upgrade to latest version.
+** Compilation mode now correctly respects the value of
+`compilation-scroll-output' between invocations.  Previously, output
+was mistakenly scrolled on compiles after the first.  Customize
+`compilation-scroll-output' if you want to retain the scrolling.
 
-** cua.el, cua-mode.el: remove old versions.
+** `font-lock-comment-face' no longer differs from the default on
+displays with fewer than 16 colors and dark background (e.g. older
+xterms and the Linux console).  On such displays, only the comment
+delimiters will appear to be fontified (in the new face
+`font-lock-comment-delimiter-face').  To restore the old appearance,
+customize `font-lock-comment-face'. Another alternative is to use a
+newer terminal emulator that supports more colors (256 is now common).
+For example, for xterm compatible emulators that support 256 colors,
+you can run emacs like this: 
+env TERM=xterm-256color emacs -nw
+(This was new in Emacs 22.1, but was not described.  In Emacs 22.1
+this also happened for terminals with a light background, that is not
+the case anymore).
+
+* New Modes and Packages in Emacs 22.2
+
+** bibtex-style-mode helps you write BibTeX's *.bst files.
+
+** The new package css-mode.el provides a major mode for editing CSS files.
+
+** The new package vera-mode.el provides a major mode for editing Vera files.
+
+** The new package verilog-mode.el provides a major mode for editing Verilog files.
+
+** The new package socks.el implements the SOCKS v5 protocol.
+
+** VC
+
+*** VC backends can provide completion of revision names.
+
+*** VC backends can provide extra menu entries to the "Version Control" menu.
+This can be used to add menu entries for backend specific functions.
+
+*** VC has some support for Mercurial (Hg).
+
+*** VC has some support for Monotone (Mtn).
+
+*** VC has some support for Bazaar (Bzr).
+
+*** VC has some support for Git.
+
+* Incompatible Lisp Changes in Emacs 22.2
+
+** shell.el no longer defines the aliases `dirtrack-toggle' and
+`dirtrack-mode' for `shell-dirtrack-mode'.  These names were removed
+because they clash with commands provided by dirtrack.el.  Use
+`shell-dirtrack-mode' instead.
+
+* Lisp Changes in Emacs 22.2.
+
+** Frame-local variables are deprecated and are slated for removal.
+They can easily be emulated.  Rather than calling `make-variable-frame-local'
+and accessing the variable value directly, explicitly check for a
+frame-parameter, and if there is one, use its value in preference to
+that of the variable.  Note that buffer-local values should take
+precedence over frame-local ones, so you may wish to check `local-variable-p'
+first.
+
+** The function invisible-p returns non-nil if the character
+after a specified position is invisible.
+
+** inhibit-modification-hooks is bound to t while running modification hooks.
+As a happy consequence, after-change-functions and before-change-functions
+are not bound to nil any more while running an (after|before)-change-function.
+
+** New function `window-full-width-p' returns t if a window is as wide
+as its frame.
+
+** The new function `image-refresh' refreshes all images associated
+with a given image specification.
+
+** The new function `combine-and-quote-strings' concatenates a list of strings
+using a specified separator.  If a string contains double quotes, they
+are escaped in the output.
+
+** The new function `split-string-and-unquote' performs the inverse operation to
+`combine-and-quote-strings', i.e. splits a single string into a list
+of strings, undoing any quoting added by `combine-and-quote-strings'.
+(For some separator/string combinations, the original strings cannot
+be recovered.)
 
 \f
 * Installation Changes in Emacs 22.1
@@ -323,6 +444,14 @@ need to quote the space with a C-q.  The underlying changes in the
 keymaps that are active in the minibuffer are described below under
 "New keymaps for typing file names".
 
+If you want the old behavior back, add these two key bindings to your
+~/.emacs init file:
+
+  (define-key minibuffer-local-filename-completion-map
+             " " 'minibuffer-complete-word)
+  (define-key minibuffer-local-must-match-filename-map
+             " " 'minibuffer-complete-word)
+
 ** The completion commands TAB, SPC and ? in the minibuffer apply only
 to the text before point.  If there is text in the buffer after point,
 it remains unchanged.
@@ -362,11 +491,6 @@ too.  If you want to use just plain `*' as a wildcard, type `*""'; the
 doublequotes make no difference in the shell, but they prevent
 special treatment in `dired-do-shell-command'.
 
-** A prefix argument is no longer required to repeat a jump to a
-previous mark if you set `set-mark-command-repeat-pop' to t.  I.e. C-u
-C-SPC C-SPC C-SPC ... cycles through the mark ring.  Use C-u C-u C-SPC
-to set the mark immediately after a jump.
-
 ** The info-search bindings on C-h C-f, C-h C-k and C-h C-i
 have been moved to C-h F, C-h K and C-h S.
 
@@ -524,7 +648,7 @@ same string that would be displayed on mouse-over using the
 `help-echo' property, but, in certain cases, it can display a more
 keyboard oriented alternative.
 
-*** New user option `help-at-pt-display-when-idle' allows to
+*** New user option `help-at-pt-display-when-idle' allows you to
 automatically show the help provided by `display-local-help' on
 point-over, after suitable idle time.  The amount of idle time is
 determined by the user option `help-at-pt-timer-delay' and defaults
@@ -533,8 +657,9 @@ to one second.  This feature is turned off by default.
 ** Mark command changes:
 
 *** A prefix argument is no longer required to repeat a jump to a
-previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the
-mark ring.  Use C-u C-u C-SPC to set the mark immediately after a jump.
+previous mark if you set `set-mark-command-repeat-pop' to t.  I.e. C-u
+C-SPC C-SPC C-SPC ... cycles through the mark ring.  Use C-u C-u C-SPC
+to set the mark immediately after a jump.
 
 *** Marking commands extend the region when invoked multiple times.
 
@@ -920,6 +1045,8 @@ fontification in Info, remove `turn-on-font-lock' from
 `Info-mode-hook'.
 
 *** New standard font-lock face `font-lock-comment-delimiter-face'.
+This is used for the characters that indicate the start of a comment,
+e.g. `;' in Lisp mode.
 
 *** New standard font-lock face `font-lock-preprocessor-face'.
 
@@ -1663,7 +1790,7 @@ It also contains a plain-text table editor with spreadsheet-like
 capabilities.
 
 The Org mode table editor can be integrated into any major mode by
-activating the minor Orgtbl-mode.
+activating the minor mode, Orgtbl mode.
 
 The documentation for org-mode is in a separate manual; within Emacs,
 type "C-h i m org RET" to read that manual.  A reference card is
@@ -2031,11 +2158,11 @@ old name remains available as alias, but has been marked obsolete.
 
 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
-the end of the buffer in that window.  This allows to tail a file:
-just put point at the end of the buffer and it stays there.  This
-rule applies to file buffers.  For non-file buffers, the behavior can
-be mode dependent.
+displayed at the end of a file buffer in any window, it stays at the end
+of the buffer in that window.  This allows you to "tail" a file: just
+put point at the end of the buffer and it stays there.  This rule
+applies to file buffers.  For non-file buffers, the behavior can be mode
+dependent.
 
 If you are sure that the file will only change by growing at the end,
 then you can tail the file more efficiently by using the new minor
@@ -2382,7 +2509,7 @@ Emacs 21/22 such as the toolbar, and bitmaps in the fringe to indicate
 breakpoints.
 
 To use this package just type M-x gdb.  See the Emacs manual if you want the
-old behaviour.
+old behavior.
 
 *** GUD mode has its own tool bar for controlling execution of the inferior
 and other common debugger commands.
@@ -3116,11 +3243,6 @@ be used (only once) in place of a file name on the command line.  Etags
 reads from standard input and marks the produced tags as belonging to
 the file FILE.
 
-*** The --members option is now the default.
-
-Use --no-members if you want the old default behaviour of not tagging
-struct members in C, members variables in C++ and variables in PHP.
-
 ** Ctags changes.
 
 *** Ctags now allows duplicate tags
@@ -3129,7 +3251,7 @@ struct members in C, members variables in C++ and variables in PHP.
 
 *** Support for `movemail' from GNU mailutils was added to Rmail.
 
-This version of `movemail' allows to read mail from a wide range of
+This version of `movemail' allows you to read mail from a wide range of
 mailbox formats, including remote POP3 and IMAP4 mailboxes with or
 without TLS encryption.  If GNU mailutils is installed on the system
 and its version of `movemail' can be found in exec-path, it will be
@@ -3593,8 +3715,8 @@ that is, floats are compared by value and other elements with `eq'.
 
 *** New functions `string-or-null-p' and `booleanp'.
 
-`string-or-null-p' returns non-nil iff OBJECT is a string or nil.
-`booleanp' returns non-nil iff OBJECT is t or nil.
+`string-or-null-p' returns non-nil if OBJECT is a string or nil.
+`booleanp' returns non-nil if OBJECT is t or nil.
 
 *** `makehash' is now obsolete.  Use `make-hash-table' instead.
 
@@ -5466,10 +5588,10 @@ an error if the argument actually returns differing values.
 ----------------------------------------------------------------------
 This file is part of GNU Emacs.
 
-GNU Emacs is free software; you can redistribute it and/or modify
+GNU Emacs is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
 
 GNU Emacs is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -5477,9 +5599,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
-along with GNU Emacs; see the file COPYING.  If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA.
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 \f
 Local variables: