]> code.delx.au - gnu-emacs/blobdiff - etc/NEWS
* lisp/replace.el (replace-lax-whitespace): New defcustom.
[gnu-emacs] / etc / NEWS
index 3435a839a74a7b3d38495cbc71b6ea3887e2d04b..ed59f3264abfa4f9035fabef3b78e94d8be14197 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -21,7 +21,13 @@ 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
-* Installation Changes in Emacs 24.2
+* Installation Changes in Emacs 24.3
+
+** New configure option '--without-all' to disable additional features.
+This disables most of the features that are normally enabled by default.
+
+** New configure option '--enable-link-time-optimization' to utilize
+an appropriate feature provided by GCC since version 4.5.0.
 
 ** New configure option '--enable-gcc-warnings', intended for developers.
 If building with GCC, this enables compile-time checks that warn about
@@ -32,6 +38,11 @@ may be useful.
 ** The configure option '--disable-maintainer-mode' has been removed,
 as it was confusingly-named and rarely useful.
 
+---
+** You can use `NO_BIN_LINK=t make install' to prevent the installation
+overwriting "emacs" in the installation bin/ directory with a link
+to emacs-VERSION.
+
 ---
 ** Emacs uses libtinfo in preference to libncurses, if available.
 
@@ -55,7 +66,7 @@ Lisp_Object type no longer uses a union to implement the compile time
 check that this option enables.
 
 \f
-* Startup Changes in Emacs 24.2
+* Startup Changes in Emacs 24.3
 
 ** Emacs no longer searches for `leim-list.el' files beneath the standard
 lisp/ directory.  There should not be any there anyway.  If you have
@@ -65,7 +76,7 @@ been adding them there, put them somewhere else, eg site-lisp.
 ** The `--no-site-lisp' command line option now works for Nextstep builds.
 
 \f
-* Changes in Emacs 24.2
+* Changes in Emacs 24.3
 
 ** Help changes
 
@@ -86,6 +97,11 @@ machines.  Other functions that use this format, such as
 file-attributes and format-time-string, have been changed accordingly.
 Old-format time stamps are still accepted.
 
+** Emacs now generates backtraces on fatal errors.
+On encountering a fatal error, Emacs now outputs a textual description
+of the fatal signal, and a short backtrace on platforms like glibc
+that support backtraces.
+
 ** New functions `system-users', `system-groups' return lists of the user
 name, group names known to the system (where possible).
 
@@ -110,6 +126,10 @@ treated as images.
 *** Images displayed via ImageMagick now support transparency and the
 :background image spec property.
 
+** Internationalization changes
+
+*** New language environment: Persian.
+
 ** Face underlining can now use a wave.
 See the "Face Attributes" section of the Elisp manual.
 
@@ -144,8 +164,23 @@ local variables on remote hosts.
 ** `insert-char' is now a command, and `ucs-insert' an obsolete alias
 for it.
 
+** The entry for PCL-CVS has been removed from the Tools menu.
+The PCL-CVS commands are still available via the keyboard.
+
 \f
-* Editing Changes in Emacs 24.2
+* Editing Changes in Emacs 24.3
+
+** The `z' key no longer has a binding in most special modes.
+It used to be bound to `kill-this-buffer', but `z' is too easy to
+accidentally type.
+
+** New option `yank-handled-properties' allows processing of text
+properties on yanked text, in more ways that are more general than
+just removing them, as done by `yank-excluded-properties'.
+
+** New option `delete-trailing-lines' specifies whether the M-x
+delete-trailing-whitespace command should delete trailing lines at the
+end of the buffer.  It defaults to t.
 
 ** Search changes
 
@@ -153,12 +188,30 @@ for it.
 and `M-s _' in Isearch toggles symbol search mode.
 `M-s c' in Isearch toggles search case-sensitivity.
 
+*** `M-s SPC' in Isearch toggles whitespace matching mode
+in both ordinary and regexp incremental search, so that each
+sequence of spaces in the search string matches any combination
+of one or more whitespace characters defined by the variable
+`search-whitespace-regexp'.  In ordinary incremental search,
+`isearch-toggle-lax-whitespace' toggles the value of the variable
+`isearch-lax-whitespace'.  In regexp incremental search, it toggles
+the value of the variable `isearch-regexp-lax-whitespace'.
+
+** query-replace changes
+
+*** When new option `replace-lax-whitespace' is non-nil,
+and you enter a space or spaces in the strings or regexps
+to be replaced, `query-replace' will match any sequence matched
+by the regexp `search-whitespace-regexp'.
+
 ** M-x move-to-column, if called interactively with no prefix arg, now
 prompts for a column number.
 
 ** `mouse-avoidance-banish-position' can now be used to customize
 `mouse-avoidance-mode' further.
 
+** `C-u M-=' now counts lines/words/characters in the entire buffer.
+
 ** `C-M-f' and `C-M-b' will now move to the path name separator
 character when doing minibuffer filename prompts.
 
@@ -170,7 +223,9 @@ It copies the region-rectangle as the last rectangle kill.
 ** New input method `vietnamese-vni'.
 
 \f
-* Changes in Specialized Modes and Packages in Emacs 24.2
+* Changes in Specialized Modes and Packages in Emacs 24.3
+
+** Compilation has a new `compilation-always-kill' configuration variable.
 
 ** Term changes
 
@@ -181,18 +236,32 @@ ANSI terminal colors and styles by customizing the corresponding
 `term-color-<COLOR>', `term-color-underline' and `term-color-bold'
 faces.
 
-** CL's main entry is now (require 'cl-lib).
+** CL
+*** CL's main entry is now (require 'cl-lib).
 `cl-lib' is like the old `cl' except that it uses the namespace cleanly,
-i.e. all its definitions have the "cl-" prefix.
+i.e. all its definitions have the "cl-" prefix (and internal definitions use
+the "cl--" prefix).
 
 If `cl' provided a feature under the name `foo', then `cl-lib' provides it
 under the name `cl-foo' instead, with the exceptions of the few definitions
 that had to use `foo*' to avoid conflicts with pre-existing Elisp entities,
 which have not been renamed to `cl-foo*' but just `cl-foo'.
 
-The old `cl' is now deprecated and is nothing more than a bunch of aliases that
+The old `cl' is now deprecated and is just a bunch of aliases that
 provide the old non-prefixed names.
 
+*** `cl-flet' is not like `flet' (which is deprecated).
+Instead it obeys the behavior of Common-Lisp's `flet'.
+
+*** `cl-labels' is slightly different from `labels'.
+The difference is that it relies on the `lexical-binding' machinery (as opposed
+to the `lexical-let' machinery used previously) to capture definitions in
+closures, so such closures will only work if `lexical-binding' is in use.
+
+*** `progv' was rewritten to use the `let' machinery.
+A side effect is that vars without corresponding value are bound to nil
+rather than making them unbound.
+
 ** Desktop
 
 *** `desktop-path' no longer includes the "." directory.  Desktop
@@ -352,7 +421,13 @@ channel keys found, if any.
 
 *** `dired-do-async-shell-command' executes each file sequentially
 if the command ends in `;' (when operating on multiple files).
-Othwerwise, it executes the command on each file in parallel.
+Otherwise, it executes the command on each file in parallel.
+
+** Shell
+
+*** New option `async-shell-command-buffer' specifies what buffer to use
+for a new asynchronous shell command when the default output buffer
+`*Async Shell Command*' is already taken by another running command.
 
 ** FFAP
 
@@ -463,9 +538,22 @@ inefficiency, and not namespace-clean.
 *** cust-print.el
 
 \f
-* New Modes and Packages in Emacs 24.2
+* New Modes and Packages in Emacs 24.3
 \f
-* Incompatible Lisp Changes in Emacs 24.2
+* Incompatible Lisp Changes in Emacs 24.3
+
+** (random) by default now returns a different random sequence in
+every Emacs run.  Use (random S), where S is a string, to set the
+random seed to a value based on S, in order to get a repeatable
+sequence in later calls.
+
+** The function `x-select-font' can return a font spec, instead of a
+font name as a string.  Whether it returns a font spec or a font name
+depends on the graphical library.
+
+** If the NEWTEXT arg to `replace-match' contains a substring "\?",
+that substring is inserted literally even if the LITERAL arg is
+non-nil, instead of causing an error to be signaled.
 
 +++
 ** Docstrings starting with `*' no longer indicate user options.
@@ -487,13 +575,58 @@ third argument is a frame (that usage was obsolete since Emacs 22.2).
 but keywords or keyword-string pairs.  The old argument list will
 still be supported for Emacs 24.x.
 
+** Spelling changes.
+Some Lisp symbols have been renamed to avoid problems with spelling
+that is incorrect or inconsistent with how Emacs normally spells a word.
+
+*** Renamed functions
+
+**** hangul-input-method-inactivate -> hangul-input-method-deactivate
+**** inactivate-input-method -> deactivate-input-method
+**** quail-inactivate -> quail-deactivate
+**** robin-inactivate -> robin-deactivate
+**** viper-inactivate-input-method -> viper-deactivate-input-method
+**** viper-inactivate-input-method-action ->
+     viper-deactivate-input-method-action
+**** ucs-input-inactivate -> ucs-input-deactivate
+
+*** Renamed hooks
+The old hooks are still supported for backward compatibility, but they
+are deprecated and will be removed eventually.
+
+**** input-method-inactivate-hook -> input-method-deactivate-hook
+**** robin-inactivate-hook -> robin-deactivate-hook
+**** quail-inactivate-hook -> quail-deactivate-hook
+
+*** Renamed Lisp variables
+
+**** follow-deactive-menu -> follow-inactive-menu
+**** inactivate-current-input-method-function ->
+     deactivate-current-input-method-function
+
 ** The following obsolete variables and varaliases have been removed:
 
 *** `facemenu-unlisted-faces'
 *** `rmail-decode-mime-charset'
+*** `last-input-char' and `last-command-char'
 
 \f
-* Lisp changes in Emacs 24.2
+* Lisp changes in Emacs 24.3
+
+** Interpreted files get eagerly macro-expanded during load.
+This can significantly speed up execution of non-byte-compiled code, but can
+also bump into harmless and previously unnoticed cyclic dependencies.
+These should not be fatal: they will simply cause the macro-calls to be left
+for later expansion (as before), but will also result in a warning describing
+the cycle.
+
+** New minor mode `read-only-mode' to replace toggle-read-only (now obsolete).
+
+** New functions `autoloadp' and `autoload-do-load'.
+
+** New function `posnp' to test if an object is a `posn'.
+
+** `function-get' fetches the property of a function, following aliases.
 
 ** `toggle-read-only' accepts a second argument specifying whether to
 print a message, if called from Lisp.
@@ -512,9 +645,36 @@ The interpretation of the DECLS is determined by `defun-declarations-alist'.
 
 ** New error type and new function `user-error'.  Doesn't trigger the debugger.
 
-** The functions get-lru-window, get-mru-window and get-largest-window
+** Window changes
+
+*** The functions get-lru-window, get-mru-window and get-largest-window
 now accept a third argument to avoid choosing the selected window.
 
+*** New macro with-temp-buffer-window.
+
+*** New option temp-buffer-resize-frames.
+
+*** New function fit-frame-to-buffer and new option
+    fit-frame-to-buffer-bottom-margin.
+
+*** New display action function display-buffer-below-selected.
+
+*** New display action alist `inhibit-switch-frame', if non-nil, tells
+display action functions to avoid changing which frame is selected.
+
+*** New display action alist `pop-up-frame-parameters', if non-nil,
+specifies frame parameters to give any newly-created frame.
+
+*** The following variables are obsolete, as they can be replaced by
+appropriate entries in the `display-buffer-alist' function introduced
+in Emacs 24.1:
+
+**** `display-buffer-reuse-frames'
+**** `special-display-regexps'
+**** `special-display-frame-alist'
+**** `special-display-buffer-names'
+**** `special-display-function'
+
 ** Completion
 
 *** New function `completion-table-with-quoting' to handle completion
@@ -536,7 +696,7 @@ by the underlying C implementation.
 ** `automount-dir-prefix' is obsolete.
 ** `buffer-has-markers-at' is obsolete.
 \f
-* Changes in Emacs 24.2 on non-free operating systems
+* Changes in Emacs 24.3 on non-free operating systems
 
 ** New configure.bat options on MS-Windows:
 
@@ -547,6 +707,12 @@ is detected.
 Emacs now supports mouse highlight, help-echo (in the echo area), and
 mouse-autoselect-window.
 
+** On MS-Windows Vista and later Emacs now supports symbolic links.
+\f
+* Changes in Emacs 24.2
+
+** This is mainly a bug-fix release.
+
 \f
 * Installation Changes in Emacs 24.1
 
@@ -1115,7 +1281,7 @@ buffer was used.
 The search is performed using `customize-apropos'.
 To turn off the search field, set `custom-search-field' to nil.
 
-*** Custom options now start out hidden if at their default values.
+*** Options in customize group buffers start out hidden if not customized.
 Use the arrow to the left of the option name to toggle visibility.
 
 *** custom-buffer-sort-alphabetically now defaults to t.
@@ -1261,6 +1427,10 @@ If you had that set, you need to put
 
 in your ~/.authinfo file instead.
 
+*** SMTPmail defaults to using the address in the From: header as the
+SMTP MAIL FROM envelope.  To override this, set `mail-envelope-from'
+to the address you wish to use instead.
+
 ** SQL mode
 
 *** New options `sql-port', `sql-connection-alist', `sql-send-terminator',
@@ -1758,6 +1928,10 @@ instead of jumping all the way to the top-level.
 *** Set `debug-on-event' to enter the debugger on events like SIGUSR1.
 This can be useful when `inhibit-quit' is set.
 
+*** Set `debug-on-message' to enter the debugger when a certain
+message is displayed in the echo area.  This can be useful when trying
+to work out which code is doing something.
+
 ** The new function `server-eval-at' allows evaluation of Lisp forms on
 named Emacs server instances.