** Emacs can now be compiled with file notification support.
This happens by default if a suitable system library is found at
build time. To prevent this, use the configure option
-`--with-file-notification-no'. See below for file-notify features.
+`--without-file-notification'. See below for file-notify features.
FIXME? This feature is not available for the Nextstep port. (?)
---
If you want the previous behavior, whereby F10 invoked `tmm-menubar',
customize the option `tty-menu-open-use-tmm' to a non-nil value.
-(Typing M-` will always invoke `tmm-menubar', even if
-`tty-menu-open-use-tmm' is nil.)
+(Typing M-` always invokes `tmm-menubar', even if `tty-menu-open-use-tmm'
+is nil.)
+++
** The *Messages* buffer is created in `messages-buffer-mode',
*** New commands `toggle-frame-fullscreen' and `toggle-frame-maximized',
bound to <f11> and M-<f10>, respectively.
-*** New command `frameset-to-register' is now bound to `C-x r f', replacing
-`frame-configuration-to-register'. It offers similar functionality,
-plus enhancements like the ability to restore deleted frames. The
-command `frame-configuration-to-register' still exists, but is unbound.
-
+++
*** New hooks `focus-in-hook', `focus-out-hook'.
These are normal hooks run when an Emacs frame gains or loses input focus.
---
-*** Emacs can now draw dividers between adjacent windows. To put
-dividers between side-by-side windows customize the frame parameter
-right-divider-width to some positive integer. To put dividers between
-vertically stacked windows set the frame parameter bottom-divider-width
-to some positive integer. Dividers can be dragged with the mouse and
-show a corresponding cursor when the mouse hovers over them. The
-appearance of dividers can be changed by customizing the basic faces
-window-divider, window-divider-first-pixel and window-divider-last-pixel
-where the latter two are useful to provide a 3D effect or to better set
-dividers apart from surrounding display objects.
+*** Emacs can now draw dividers between adjacent windows.
+To put dividers between side-by-side/vertically stacked windows
+customize the frame parameter `right-divider-width'/`bottom-divider-width'
+to some positive integer. You can drag dividers with the mouse
+(they show a corresponding cursor when the mouse hovers over them).
+You can change the appearance of dividers by customizing the faces
+`window-divider', `window-divider-first-pixel', and
+`window-divider-last-pixel'. The last two are useful to provide a 3D
+effect, or to better distinguish dividers from surrounding display objects.
---
*** `split-window' is now a non-interactive function, not a command.
`(eval-expression-)print-level' to nil. Additionally, it causes integers
to be printed in other formats (octal, hexadecimal, and character).
+---
*** New hook `eval-expression-minibuffer-setup-hook' run by
`eval-expression' on entering the minibuffer.
** `write-region-inhibit-fsync' now defaults to t in batch mode.
+++
-** `cache-long-line-scans' has been renamed to `cache-long-scans'
+** `cache-long-line-scans' is now non-nil, and renamed to `cache-long-scans',
because it affects caching of paragraph scanning results as well.
-Also, it is now enabled by default.
+There is no reason to set this to nil except for debugging purposes.
---
** The option `set-mark-default-inactive' has been deleted.
** `emacs-bzr-version' has been renamed to `emacs-repository-version',
and works for git too, if you fetch the repository notes.
-** `read-regexp-defaults-function' defines a function to provide default
-values for reading regexps by commands like `rgrep', `lgrep' `occur',
-`highlight-regexp', etc. You can customize this to specify a function
-that provides a default value from the regexp last history element,
-or from the symbol found at point.
-
+++
** New option `load-prefer-newer' affects how the `load' function chooses
the file to load. If this is non-nil, then when both .el and .elc
Interactive commands that read registers and want to make use of this
should use `register-read-with-preview' to read register names.
+*** New command `frameset-to-register' bound to `C-x r f', replacing
+`frame-configuration-to-register'. It offers similar functionality,
+plus enhancements like the ability to restore deleted frames.
+(`frame-configuration-to-register' still exists, but no longer has a
+key binding.)
+
+++
*** New command `C-x C-k x' (`kmacro-to-register') stores keyboard
macros in registers.
-*** New command `C-x r f' (`frameset-to-register').
-See Changes in Emacs 24.4, above.
-
+++
** New command `delete-duplicate-lines'.
This searches the region for identical lines, and removes all but one
** Backtrace and debugger
-*** The Lisp debugger's `e' command now includes the lexical environment
-when evaluating the code in the context at point. Hence, it now lets
-you access lexical variables.
-
+++
-*** New command `v' (`debugger-toggle-locals') displays local vars.
+*** New Lisp debugger command `v' (`debugger-toggle-locals') toggles the
+display of local variables of the current stack frame.
+
+*** The Lisp debugger's `e' command (`debugger-eval-expression') now includes
+the lexical environment when evaluating the code in the context at point
+(and so allows you to access lexical variables).
-*** New minor mode `jit-lock-debug-mode' lets you use the debuggers on
-code run via JIT Lock.
+---
+*** New minor mode `jit-lock-debug-mode' helps you debug code run via JIT Lock.
---
** Battery information can now be retrieved from BSD's `apm' utility.
`electric-pair-text-syntax-table' to tweak pairing behavior inside
strings and comments.
++++
** New EPA option `epa-mail-aliases'.
-You can set this to a list of email address aliases for keys to use
-`epa-mail-encrypt'.
+You can set this to a list of email address aliases that `epa-mail-encrypt'
+should use to find keys.
---
** New ERC option `erc-accidental-paste-threshold-seconds'.
---
** New F90 mode option `f90-smart-end-names'.
-** Icomplete is a bit more like Ido.
+** Icomplete
+Icomplete is now more similar to Ido.
+
+---
+*** Icomplete by default now applies to all forms of minibuffer completion.
+The variable `icomplete-with-completion-tables' (now a user option)
+controls this. To restore the old behavior, set it back to
+'(internal-complete-buffer).
-*** Key bindings to navigate through and select the completions.
++++
+*** You can navigate through and select completions using the keys
+from `icomplete-minibuffer-map'.
-*** The icomplete-separator is customizable, and its default has changed.
+---
+*** The string that separates potential completions is now a customizable
+option (`icomplete-separator'). The default is " | " rather than ",".
-*** Removed `icomplete-show-key-bindings'.
+---
+*** New face `icomplete-first-match'; and new options
+`icomplete-hide-common-prefix' and `icomplete-show-matches-on-no-input'.
-*** Icomplete-mode by defaults applies to all forms of minibuffer completion.
-(setq icomplete-with-completion-tables '(internal-complete-buffer))
-will revert to the old behavior.
+---
+*** The option `icomplete-show-key-bindings' has been removed.
** Ido
** Hi-Lock
-*** New option `hi-lock-auto-select-face'. When non-nil, hi-lock commands
-will cycle through faces in `hi-lock-face-defaults' without prompting.
++++
+*** New global command `M-s h .' (`highlight-symbol-at-point') highlights
+the symbol found near point.
+++
-*** New global command `M-s h .' (`highlight-symbol-at-point')
-highlights the symbol found near point without prompting,
-using the next face automatically.
+*** New option `hi-lock-auto-select-face'. When non-nil, hi-lock commands
+will cycle through faces in `hi-lock-face-defaults' without prompting.
** New Imenu option `imenu-generic-skip-comments-and-strings'.
+** Info
+
---
-** New Info face `info-index-match', used to highlight matches in index
+*** New Info face `info-index-match', used to highlight matches in index
entries displayed by `Info-index-next', `Info-virtual-index' and
`info-apropos'.
+---
+*** The Info-edit command is obsolete. Editing Info nodes by hand
+has not been relevant for some time.
+
** JS Mode
---
** Package
++++
+*** In the `list-packages' buffer, you can use `f' (`package-menu-filter')
+to filter the list of packages by a keyword.
+
++++
+*** In the `describe-package' buffer, there are now buttons listing the
+keywords related to the package. Click on a button to see other packages
+related to that keyword.
+
+---
*** The format of `archive-contents' files, generated by package
repositories, has changed to allow a new (fifth) element in the data
vectors, containing an associative list with extra properties.
-
-*** `describe-package' buffer uses the `:url' extra property to
-display a `Homepage' header, if it's present.
-
-*** In the buffer produced by `describe-package', there are now buttons
-listing the keywords related to that package. You can click on them
-to see other packages related to any given keyword.
-
-*** In the *Packages* buffer, `f' or the Package->Filter menu filters
-the packages by a keyword.
+(For example, `describe-package' uses the `:url' extra property to
+display a "Homepage" header.)
---
** In Prolog mode, `prolog-use-smie' has been removed,
Emacs can learn the appropriate indentation settings if you provide it
with an indented sample file.
+---
+** SQL
+Improved login monitoring and appropriate response to login failures.
+Includes `sql-login-delay' to define maximum wait for a connection.
+
+*** Oracle support
+SQL*Plus script placeholders are properly highlighted and identified
+in `sql-placeholders-filter' correctly. When SQL*Plus is started,
+options specified in `sql-oracle-options' are passed before the logon
+parameter, as SQL*Plus expects. The default setting for
+`sql-oracle-options' has been altered to pass the `-L' option to limit
+the number of logon attempts per invocation.
+
---
** New Term mode option `term-suppress-hard-newline'.
** Obsolete packages
-*** Iswitchb is made obsolete by icomplete-mode.
++++
+*** iswitchb.el; use icomplete-mode.
+
+---
+*** longlines.el; use visual-line-mode.
-*** longlines.el is obsolete; use visual-line-mode instead.
+---
+*** meese.el.
+++
*** sup-mouse.el.
---
-*** terminal.el is obsolete; use term.el instead.
+*** terminal.el; use term.el instead.
---
-*** The previous version of todo-mode.el is obsolete and renamed otodo-mode.el.
+*** the old version of todo-mode.el (renamed to otodo-mode.el).
---
-*** xesam.el is obsolete, because the XESAM project has been canceled.
+*** xesam.el (owing to the cancellation of the XESAM project).
+++
-*** yow.el is obsolete; use fortune.el or cookie1.el instead.
-
----
-*** The Info-edit command is obsolete. Editing Info nodes by hand
-has not been relevant for some time.
+*** yow.el; use fortune.el or cookie1.el instead.
\f
* New Modes and Packages in Emacs 24.4
** New package `eww' is a built-in web browser.
It is only available if Emacs is compiled with libxml2 support.
++++
** New minor mode `superword-mode'.
This overrides the default word motion commands to treat "symbol_words"
as a single word, similar to what `subword-mode' does.
+++
** New function `get-pos-property'.
+** `read-regexp' now uses the new variable `read-regexp-defaults-function'
+as a function to call to provide default values.
+
** Completion changes
*** The separator for `completing-read-multiple' can now be a regexp.
strings (including for partial or substring completion), or call
`completion-hilit-commonality' to add the highlight.
+*** New function `completion-table-with-cache' is a wrapper for
+`completion-table-dynamic' that caches the result of the last lookup.
+
+*** New function `completion-table-merge' to combine several
+completion tables by merging their completions.
+
** New minor modes `prettify-symbols-mode' and `global-prettify-symbols-mode'
let you enable symbol prettification (replacing a string like "lambda" with
the Greek lambda character).
see the `apropos' Custom group for details.
*** The old options whose values specified faces to use have been removed
-(i.e. `apropos-symbol-face', `apropos-keybinding-face', etc.).
+(i.e. `apropos-symbol-face', `apropos-keybinding-face', `apropos-label-face',
+`apropos-match-face' and `apropos-property-face'.).
** Buffer Menu