]> code.delx.au - gnu-emacs/blobdiff - etc/NEWS
*** empty log message ***
[gnu-emacs] / etc / NEWS
index 101736b818c6db683e54e2abe4948ee580fce4aa..4c9564b24eaf69e21eb2dce498e683400c94f183 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -16,6 +16,11 @@ so we will look at it and add it to the manual.
 \f
 * Installation Changes in Emacs 21.4
 
 \f
 * Installation Changes in Emacs 21.4
 
+** Emacs includes now support for loading image libraries on demand.
+(Currently this feature is only used on MS Windows.)  You can configure
+the supported image types and their associated dynamic libraries by
+setting the variable `image-library-alist'.
+
 ---
 ** A Bulgarian translation of the Emacs Tutorial is available.
 
 ---
 ** A Bulgarian translation of the Emacs Tutorial is available.
 
@@ -90,8 +95,32 @@ types any more.  Add -DUSE_LISP_UNION_TYPE if you want union types.
 \f
 * Changes in Emacs 21.4
 
 \f
 * Changes in Emacs 21.4
 
-** New command quail-show-key shows what key to type to input a
-character at point.
+** Passing resources on the command line now works on MS Windows.
+You can use --xrm to pass resource settings to Emacs, overriding any
+existing values.  For example:
+
+  emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20"
+
+will start up Emacs on an initial frame of 100x20 with red background,
+irrespective of geometry or background setting on the Windows registry.
+
+** New features in evaluation commands
+
++++
+*** 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
+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-:),
+`eval-print-last-sexp' (C-j) and some edebug evaluation functions.
+
+** New input method chinese-sisheng for inputting Chinese Pinyin
+characters.
+
+** New command quail-show-key shows what key (or key sequence) to type
+in the current input method to input a character at point.
 
 ** Convenient commands to switch buffers in a cyclic order are C-x <left>
 (prev-buffer) and C-x <right> (next-buffer).
 
 ** Convenient commands to switch buffers in a cyclic order are C-x <left>
 (prev-buffer) and C-x <right> (next-buffer).
@@ -99,9 +128,10 @@ character at point.
 ** 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.
 
-** Help commands `describe-funcion' and `describe-key' now show function
-arguments in lowercase italics.  To change the default, customize the face
-`help-argument-name' or see variable `help-arg-highlighting-function'.
+** Help commands `describe-function' and `describe-key' now show function
+arguments in lowercase italics on displays that support it.  To change the
+default, customize face `help-argument-name' or redefine the function
+`help-default-arg-highlight'.
 
 ---
 ** The comint prompt can now be made read-only, using the new user
 
 ---
 ** The comint prompt can now be made read-only, using the new user
@@ -207,6 +237,37 @@ This is like `strokes-global-set-stroke', but it allows you to bind
 the stroke directly to a string to insert.  This is convenient for
 using strokes as an input method.
 
 the stroke directly to a string to insert.  This is convenient for
 using strokes as an input method.
 
++++
+** 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.
+
+*** Buffers are saved in the desktop file in the same order as that in the
+buffer list.
+
+*** New commands:
+  - desktop-revert reverts to the last loaded desktop.
+  - desktop-change-dir kills current desktop and loads a new.
+  - desktop-save-in-desktop-dir saves desktop in the directory from which
+    it was loaded.
+
+*** New customizable variables:
+  - desktop-save. Determins whether the desktop should be saved when it is
+    killed.
+  - desktop-file-name-format.
+  - desktop-path. List of directories in which to lookup the desktop file.
+  - desktop-locals-to-save.
+  - desktop-globals-to-clear.
+  - desktop-clear-preserve-buffers-regexp.
+
+*** New command line option --no-desktop
+
+*** New hooks:
+  - desktop-after-read-hook run after a desktop is loaded.
+  - desktop-no-desktop-file-hook run when no desktop file is found.
+
 ---
 ** The saveplace.el package now filters out unreadable files.
 When you exit Emacs, the saved positions in visited files no longer
 ---
 ** The saveplace.el package now filters out unreadable files.
 When you exit Emacs, the saved positions in visited files no longer
@@ -390,14 +451,24 @@ restores the previous value of `buffer-invisibility-spec'.
 ** New command `kill-whole-line' kills an entire line at once.
 By default, it is bound to C-S-<backspace>.
 
 ** New command `kill-whole-line' kills an entire line at once.
 By default, it is bound to C-S-<backspace>.
 
+** New commands to operate on pairs of open and close characters:
+`insert-pair', `delete-pair', `raise-sexp'.
+
+** A prefix argument of C-M-q in Emacs Lisp mode pretty-printifies the
+list starting after point.
+
 ** Dired mode:
 
 *** New faces dired-header, dired-mark, dired-marked, dired-flagged,
 dired-ignored, dired-directory, dired-symlink, dired-warning
 introduced for Dired mode instead of font-lock faces.
 
 ** Dired mode:
 
 *** New faces dired-header, dired-mark, dired-marked, dired-flagged,
 dired-ignored, dired-directory, dired-symlink, dired-warning
 introduced for Dired mode instead of font-lock faces.
 
-*** New Dired command `dired-compare-directories' to mark files with
-different file attributes in two dired buffers.
+*** New Dired command `dired-compare-directories' marks files
+with different file attributes in two dired buffers.
+
++++
+*** New Dired command `dired-do-touch' (bound to T) changes timestamps
+of marked files with the value entered in the minibuffer.
 
 +++
 *** In Dired's ! command (dired-do-shell-command), `*' and `?' now
 
 +++
 *** In Dired's ! command (dired-do-shell-command), `*' and `?' now
@@ -413,18 +484,50 @@ types of files.  The variable `dired-view-command-alist' controls
 what external viewers to use and when.
 
 *** In Dired, the w command now copies the current line's file name
 what external viewers to use and when.
 
 *** In Dired, the w command now copies the current line's file name
-into the kill ring.
+into the kill ring.  With a zero prefix arg, copies absolute file names.
+
++++
+** Dired-x:
+
+*** Omitting files is now a minor mode, dired-omit-mode. The mode toggling
+command is bound to M-o. A new command dired-mark-omitted, bound to M-O,
+marks omitted files. The variable dired-omit-files-p is obsoleted, use the
+mode toggling function instead.
 
 ** Info mode:
 
 ** Info mode:
+
+*** A numeric prefix argument of `info' selects an Info buffer
+with the number appended to the *info* buffer name.
+
+*** New command `Info-history' (bound to L) displays a menu of visited nodes.
+
+*** New command `Info-toc' (bound to T) creates a node with table of contents
+from the tree structure of menus of the current Info file.
+
+*** New command `info-apropos' searches the indices of the known
+Info files on your system for a string, and builds a menu of the
+possible matches.
+
+*** New command `Info-copy-current-node-name' (bound to w) copies
+the current Info node name into the kill ring.  With a zero prefix
+arg, puts the node name inside the `info' function call.
+
+*** New command `Info-search-case-sensitively' (bound to S).
+
+*** New command `Info-search-next' (unbound) repeats the last search
+without prompting for a new search string.
+
+*** New face `info-xref-visited' distinguishes visited nodes from unvisited
+and a new option `Info-fontify-visited-nodes' to control this.
+
+*** http and ftp links in Info are now operational: they look like cross
+references and following them calls `browse-url'.
+
 +++
 *** 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.
 
 +++
 *** 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.
 
-*** The new command `info-apropos' searches the indices of the known
-Info files on your system for a string, and builds a menu of the
-possible matches.
-
 *** 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
 *** 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
@@ -654,11 +757,12 @@ and windows-1251 are preloaded since the former is so common and the
 latter is used by GNU locales.
 
 ** The utf-8/16 coding systems have been enhanced.
 latter is used by GNU locales.
 
 ** The utf-8/16 coding systems have been enhanced.
-By default, untranslatable utf-8 sequences (mostly representing CJK
-characters) are simply composed into single quasi-characters.  User
-option `utf-translate-cjk' arranges to translate many utf-8 CJK
-character sequences into real Emacs characters in a similar way to the
-Mule-UCS system.  This uses significant space, so is not the default.
+By default, untranslatable utf-8 sequences are simply composed into
+single quasi-characters.  User option `utf-translate-cjk-mode' (it is
+turned on by default) arranges to translate many utf-8 CJK character
+sequences into real Emacs characters in a similar way to the Mule-UCS
+system.  As this loads a fairly big data on demand, people who are not
+interested in CJK characters may want to customize it to nil.
 You can augment/amend the CJK translation via hash tables
 `ucs-mule-cjk-to-unicode' and `ucs-unicode-to-mule-cjk'.  The utf-8
 coding system now also encodes characters from most of Emacs's
 You can augment/amend the CJK translation via hash tables
 `ucs-mule-cjk-to-unicode' and `ucs-unicode-to-mule-cjk'.  The utf-8
 coding system now also encodes characters from most of Emacs's
@@ -798,9 +902,9 @@ to give it focus.
 +++
 ** The new command `describe-char' (C-u C-x =) pops up a buffer with
 description various information about a character, including its
 +++
 ** The new command `describe-char' (C-u C-x =) pops up a buffer with
 description various information about a character, including its
-encodings and syntax, its text properties, overlays, and widgets at
-point.  You can get more information about some of them, by clicking
-on mouse-sensitive areas or moving there and pressing RET.
+encodings and syntax, its text properties, how to input, overlays, and
+widgets at point.  You can get more information about some of them, by
+clicking on mouse-sensitive areas or moving there and pressing RET.
 
 +++
 ** The new command `multi-occur' is just like `occur', except it can
 
 +++
 ** The new command `multi-occur' is just like `occur', except it can
@@ -1042,6 +1146,12 @@ counter to the specified source line (the one where point is).
 
   Minor Improvements
 
 
   Minor Improvements
 
+*** The STARTTLS elisp wrapper (starttls.el) can now use GNUTLS
+instead of the OpenSSL based "starttls" tool.  For backwards
+compatibility, it will prefer "starttls", but you can toggle
+`starttls-use-gnutls' to switch to GNUTLS (or simply remove the
+"starttls" tool).
+
 *** Do not allow debugger output history variable to grow without bounds.
 
 +++
 *** Do not allow debugger output history variable to grow without bounds.
 
 +++
@@ -1647,6 +1757,10 @@ Lines that match are never indented, and are given distinctive font-locking.
 ** F90 mode has new navigation commands `f90-end-of-block',
 `f90-beginning-of-block', `f90-next-block', `f90-previous-block'.
 
 ** F90 mode has new navigation commands `f90-end-of-block',
 `f90-beginning-of-block', `f90-next-block', `f90-previous-block'.
 
+** F90 mode now has support for hs-minor-mode (hideshow).
+It cannot deal with every code format, but ought to handle a sizeable
+majority.
+
 ---
 ** Prolog mode has a new variable `prolog-font-lock-keywords'
 to support use of font-lock.
 ---
 ** Prolog mode has a new variable `prolog-font-lock-keywords'
 to support use of font-lock.
@@ -1739,7 +1853,7 @@ depend on external libraries.  All of these libraries have been ported
 to Windows, and can be found in both source and binary form at
 http://gnuwin32.sourceforge.net/.  Note that libpng also depends on
 zlib, and tiff depends on the version of jpeg that it was compiled
 to Windows, and can be found in both source and binary form at
 http://gnuwin32.sourceforge.net/.  Note that libpng also depends on
 zlib, and tiff depends on the version of jpeg that it was compiled
-against.
+against.  For additional information, see nt/INSTALL.
 
 ---
 ** Sound is now supported on MS Windows.
 
 ---
 ** Sound is now supported on MS Windows.
@@ -1791,9 +1905,22 @@ to view diffs or log entries directly from vc-annotate-mode:
     D:  shows the diff of the revision at line with its previous revision
     L:  shows the log of the revision at line
     W:  annotates the workfile (most up to date) version
     D:  shows the diff of the revision at line with its previous revision
     L:  shows the log of the revision at line
     W:  annotates the workfile (most up to date) version
+
++++
+** In pcl-cvs mode, there is a new `d y' command to view the diffs
+between the local version of the file and yesterday's head revision
+in the repository.
+
 \f
 * New modes and packages in Emacs 21.4
 
 \f
 * New modes and packages in Emacs 21.4
 
+** The new package flymake.el does on-the-fly syntax checking of program
+source files.  See the Flymake's Info manual for more details.
+
+** The library tree-widget.el provides a new widget to display a set
+of hierarchical data as an outline.  For example, the tree-widget is
+well suited to display a hierarchy of directories and files.
+
 ** The wdired.el package allows you to use normal editing commands on dired
 buffers to change filenames, permissions, etc...
 
 ** The wdired.el package allows you to use normal editing commands on dired
 buffers to change filenames, permissions, etc...
 
@@ -1884,6 +2011,7 @@ where the keys work like (shifted) arrow keys, home/end, etc., and
 are left unspecified and can be bound individually through the global
 or local keymaps.
 
 are left unspecified and can be bound individually through the global
 or local keymaps.
 
++++
 ** The new kmacro package provides a simpler user interface to
 emacs' keyboard macro facilities.
 
 ** The new kmacro package provides a simpler user interface to
 emacs' keyboard macro facilities.
 
@@ -2022,10 +2150,41 @@ configuration files.
 \f
 * Lisp Changes in Emacs 21.4
 
 \f
 * Lisp Changes in Emacs 21.4
 
-** New functions posn-at-point and posn-at-x-y returns
+** If a command sets transient-mark-mode to `only', that 
+enables Transient Mark mode for the following command, only.
+
++++
+** Cleaner way to enter key sequences.
+
+You can enter a constant key sequence in a more natural format, the
+same one used for saving keyboard macros, using the macro `kbd'.  For
+example,
+
+(kbd "C-x C-f") => "\^x\^f"
+
+** The sentinel is now called when a network process is deleted with
+delete-process.  The status message passed to the sentinel for a
+deleted network process is "deleted".  The message passed to the
+sentinel when the connection is closed by the remote peer has been
+changed to "connection broken by remote peer".
+
+** If the buffer's undo list for the current command gets longer than
+undo-outer-limit, garbage collection empties it.  This is to prevent
+it from using up the available memory and choking Emacs.
+
+---
+** New function quail-find-key returns a list of keys to type in the
+current input method to input a character.
+
++++
+** New functions posn-at-point and posn-at-x-y return
 click-event-style position information for a given visible buffer
 position or for a given window pixel coordinate.
 
 click-event-style position information for a given visible buffer
 position or for a given window pixel coordinate.
 
+** skip-chars-forward and skip-chars-backward now handle
+character classes such as [:alpha:], along with individual characters
+and ranges.
+
 ** Function pos-visible-in-window-p now returns the pixel coordinates
 and partial visiblity state of the corresponding row, if the PARTIALLY
 arg is non-nil.
 ** Function pos-visible-in-window-p now returns the pixel coordinates
 and partial visiblity state of the corresponding row, if the PARTIALLY
 arg is non-nil.
@@ -3005,6 +3164,10 @@ A new predicate `supports' has also been added to the `defface' face
 specification language, which can be used to do this test for faces
 defined with defface.
 
 specification language, which can be used to do this test for faces
 defined with defface.
 
+** The function face-differs-from-default-p now truly checks whether the
+given face displays differently from the default face or not (previously
+it did only a very cursory check).
+
 +++
 ** face-attribute, face-foreground, face-background, and face-stipple now
 accept a new optional argument, INHERIT, which controls how face
 +++
 ** face-attribute, face-foreground, face-background, and face-stipple now
 accept a new optional argument, INHERIT, which controls how face
@@ -3014,6 +3177,13 @@ inheritance is used when determining the value of a face attribute.
 ** New functions face-attribute-relative-p and merge-face-attribute
 help with handling relative face attributes.
 
 ** New functions face-attribute-relative-p and merge-face-attribute
 help with handling relative face attributes.
 
+** The priority of faces in an :inherit attribute face-list is reversed.
+If a face contains an :inherit attribute with a list of faces, earlier
+faces in the list override later faces in the list; in previous releases
+of Emacs, the order was the opposite.  This change was made so that
+:inherit face-lists operate identically to face-lists in text `face'
+properties.
+
 +++
 ** Enhancements to process support
 
 +++
 ** Enhancements to process support