]> code.delx.au - gnu-emacs/blobdiff - etc/NEWS
Add prefix arg to more isearch commands.
[gnu-emacs] / etc / NEWS
index 8ae8ae3bf16b25f70b7aa62c710ae12544f7fa38..8bf1d17005e67112e652ba90ff8ab2e5bb0f3b1f 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -23,13 +23,39 @@ so we will look at it and add it to the manual.
 \f
 * Installation Changes in Emacs 24.4
 
-** Emacs can be compiled with POSIX ACL support.
+** Emacs can be compiled with ACL support.
 This happens by default if a suitable support library is found at
 build time, like libacl on GNU/Linux.  To prevent this, use the
-configure option `--without-acl'.
+configure option `--disable-acl'.
+
+** Emacs can be compiled with file notification support.
+The configure option `--with-file-notification=LIB' enables file
+notification support in Emacs. This option's value should be `yes',
+`no', `gfile', `inotify' or `w32'.  `yes' is a synonym for `w32' on
+MS-Windows, and for `gfile' otherwise.  The default value is `yes'.
 
 ** The configure option --with-crt-dir has been removed.
-It is no longer needed, as the crt*.o files are no longer linked specially.
+It is no longer needed, as the crt*.o files are no longer linked
+specially.
+
+** Emacs for MS-Windows can now be built by running the configure script
+using the MSYS environment and MinGW development tools.
+This is from now on the preferred method of building Emacs on
+MS-Windows.  The Windows-specific configure.bat and makefile.w32-in
+files are deprecated.  See the file nt/INSTALL.MSYS for detailed
+instructions.
+
+Using the Posix configure script and Makefile's also means a change in
+the directory structure of the Emacs installation on Windows.  It is
+now the same as on GNU and Unix systems.  In particular, the auxiliary
+programs, such as cmdproxy.exe and hexl.exe, are in
+libexec/emacs/VERSION/i686-pc-mingw32 (where VERSION is the Emacs
+version), version-independent site-lisp is in share/emacs/site-lisp,
+version-specific Lisp files are in share/emacs/VERSION/lisp and in
+share/emacs/VERSION/site-lisp, Info docs are in share/info, and data
+files are in share/emacs/VERSION/etc.  (Emacs knows about all these
+directories and will find the files in there automatically; there's no
+need to set any variables due to this change.)
 
 \f
 * Startup Changes in Emacs 24.4
@@ -37,6 +63,8 @@ It is no longer needed, as the crt*.o files are no longer linked specially.
 \f
 * Changes in Emacs 24.4
 
+** Key ? also describes prefix bindings like C-h.
+
 +++
 ** `apropos-variable' is now `apropos-user-option'
 `apropos-user-option' shows all user options while `apropos-variable'
@@ -59,6 +87,8 @@ simply disabling Transient Mark mode does the same thing.
 ** `initial-buffer-choice' can now specify a function to set up the
 initial buffer.
 
+** `write-region-inhibit-fsync' now defaults to t in batch mode.
+
 ** ACL support has been added.
 +++
 *** Emacs preserves the ACL entries of files when backing up.
@@ -73,24 +103,86 @@ Available only on X, this option allows to control over-scrolling
 using the scroll bar (i.e. dragging the thumb down even when the end
 of the buffer is visible).
 
+** In compiled Lisp files, the header no longer includes a timestamp.
+
+** Multi-monitor support has been added.
+
+*** New functions `display-monitor-attributes-list' and
+`frame-monitor-attributes' can be used to obtain information about
+each physical monitor on multi-monitor setups.
+
 \f
 * Editing Changes in Emacs 24.4
 
+** `split-window' is no longer a command, just a non-interactive function.
+As a command it was a special case of `split-window-below', and as such
+superfluous.  After being reimplemented in Lisp, its interactive form
+was mistakenly retained.
+
 ** New commands `toggle-frame-fullscreen' and `toggle-frame-maximized',
 bound to <f11> and M-<f10>, respectively.
 
 ** In keymaps where SPC scrolls, S-SPC now scrolls in the reverse direction.
 Eg View mode, etc.
 
+** New command `kmacro-to-register' to store keyboard macros in registers.
+
+** Shell Script mode
+
+*** `sh-mode' now has the mode own `add-log-current-defun-function'.
+You can pick the name of the function and the variables with `C-x 4 a'.
+
 \f
 * Changes in Specialized Modes and Packages in Emacs 24.4
 
+** `eshell' now supports visual subcommands and options
+Eshell has been able to handle "visual" commands (interactive,
+non-line oriented commands such as top that require display
+capabilities not provided by eshell) by running them in an Emacs
+terminal emulator.  See `eshell-visual-commands'.
+
+This feature has been extended to subcommands and options that make a
+usually line-oriented command a visual command.  Typical examples are
+"git log" and "git <command> --help" which display their output in a
+pager by default.  See `eshell-visual-subcommands' and
+`eshell-visual-options'.
+
+** `remember' can now store notes in separates files
+You can use the new function `remember-store-in-files' within the
+`remember-handler-functions' option.
+
+See `remember-data-directory' and `remember-directory-file-name-format'
+for new options related to this function.
+** `ido-decorations' has been slightly extended to give a bit more control.
+
+** More packages look for ~/.emacs.d/<foo> additionally to ~/.<foo>.
+Affected files:
+~/.emacs.d/timelog     replaces  ~/.timelog
+~/.emacs.d/todo-do     replaces  ~/.todo-do
+~/.emacs.d/todo-done   replaces  ~/.todo-done
+~/.emacs.d/todo-top    replaces  ~/.todo-top
+~/.emacs.d/vip         replaces  ~/.vip
+~/.emacs.d/viper       replaces  ~/.viper
+~/.emacs.d/ido.last    replaces  ~/.ido.last
+~/.emacs.d/kkcrc       replaces  ~/.kkcrc
+~/.emacs.d/quickurls   replaces  ~/.quickurls
+~/.emacs.d/idlwave     replaces  ~/.idlwave
+~/.emacs.d/bdfcache.el replaces  ~/.bdfcache.el
+~/.emacs.d/places      replaces  ~/.emacs-places
+~/.emacs.d/shadows     replaces  ~/.shadows
+~/.emacs.d/shadow_todo replaces  ~/.shadow_todo
+~/.emacs.d/strokes     replaces  ~/.strokes
+~/.emacs.d/notes       replaces  ~/.notes
+~/.emacs.d/type-break  replaces  ~/.type-break
+
 ** Delphi mode is now called OPascal mode.
 *** All delphi-* variables and functions have been renamed to opascal-*.
 *** `delphi-newline-always-indents' is not supported any more
 use `electric-indent-mode' instead.
 *** `delphi-tab' is gone, replaced by `indent-for-tab-command'.
 
+** Eldoc Mode works properly in the minibuffer.
+
 ** jit-lock-debug-mode lets you use the debuggers on code run via jit-lock.
 
 ** completing-read-multiple's separator can now be a regexp.
@@ -100,6 +192,12 @@ The default separator is changed to allow surrounding spaces around the comma.
 
 *** Battery information via the BSD `apm' utility is now supported.
 
+** Calendar and Diary
+
++++
+*** New variable `diary-from-outlook-function', used by the command
+`diary-from-outlook'.
+
 ** cl-lib
 
 *** New macro cl-tagbody.
@@ -123,6 +221,11 @@ on the given date.
 
 *** Support for ISO 8601 dates.
 
+** Desktop
+
+*** `desktop-auto-save-timeout' defines the number of seconds between
+auto-saves of the desktop.
+
 ** Dired
 
 *** New minor mode `dired-hide-details-mode' hides details.
@@ -133,6 +236,9 @@ on the given date.
 If set to a number, this can be used to avoid accidentally paste large
 amounts of data into the ERC input.
 
+---
+** New F90 mode option `f90-smart-end-names'.
+
 ** Icomplete is a bit more like IDO.
 *** key bindings to navigate through and select the completions.
 *** The icomplete-separator is customizable, and its default has changed.
@@ -154,11 +260,46 @@ When toggling, it restores the frame's previous window configuration.
 It also has an optional frame argument, which can be used by Lisp
 callers to fit the image to a frame other than the selected frame.
 
-** Isearch
+** Info
+
+*** New face `info-index-match' is used to highlight matches in index
+entries displayed by `Info-index-next', `Info-virtual-index' and
+`info-apropos'.
+
+** 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 without prompting,
+using the next face automatically.
+
+** Search and Replace
+
+*** New global command `M-s .' (`isearch-forward-symbol-at-point')
+starts a symbol (identifier) incremental search forward with the
+symbol found near point added to the search string initially.
 
 *** `C-x 8 RET' in Isearch mode reads a character by its Unicode name
 and adds it to the search string.
 
+*** `M-s i' in Isearch mode toggles the variable `isearch-invisible'
+between nil and the value of the option `search-invisible' (or `open'
+when it's nil).
+
+*** `query-replace' skips invisible text when `search-invisible' is nil,
+and opens overlays with hidden text when `search-invisible' is `open'.
+
++++
+*** By default, prefix arguments do not now terminate Isearch mode.
+Set `isearch-allow-prefix' to nil to restore old behavior.
+
+*** More Isearch commands accept prefix arguments, namely
+`isearch-printing-char', `isearch-quote-char', `isearch-yank-word',
+`isearch-yank-line'.
+
 ** MH-E has been updated to MH-E version 8.5.
 See MH-E-NEWS for details.
 
@@ -182,10 +323,12 @@ New features include:
   name and arguments.  Useful to trace the value of (current-buffer) or
   (point) when the function is invoked.
 
-** New command `delete-duplicate-lines' has two types of operation:
-when its arg ADJACENT is non-nil (when called interactively with C-u C-u)
+** New command `delete-duplicate-lines' has new types of operation:
+When its arg ADJACENT is non-nil (when called interactively with C-u C-u)
 it works like the utility `uniq'.  Otherwise by default it deletes
 duplicate lines everywhere in the region without regard to adjacency.
+When it arg KEEP-BLANKS is non-nil (when called interactively with C-u C-u C-u),
+duplicate blank lines are preserved.
 
 ** New `cycle-spacing' command allows cycling between having just one
 space, no spaces, or reverting to the original spacing.  Like
@@ -208,17 +351,37 @@ when possible.
 *** Handlers for `file-acl' and `set-file-acl' for remote machines
 which support POSIX ACLs.
 
+** VHDL mode
+
+*** New options: `vhdl-actual-generic-name', `vhdl-beautify-options'.
+
+*** New commands: `vhdl-fix-statement-region', `vhdl-fix-statement-buffer'.
+
 ** Woman
 
 *** The commands `woman-default-faces' and `woman-monochrome-faces'
 are obsolete.  Customize the `woman-* faces instead.
 
+** Eshell
+
+*** Added Eshell-TRAMP module
+External su and sudo commands are now the default; the internal,
+TRAMP-using variants can still be used by enabling the eshell-tramp
+module.
+
+** New term.el option `term-suppress-hard-newline'.
+
 ** Obsolete packages:
 
 *** longlines.el is obsolete; use visual-line-mode instead.
 
++++
+*** sup-mouse.el.
+
 *** terminal.el is obsolete; use term.el instead.
 
+*** xesam.el.
+
 +++
 *** yow.el is obsolete; use fortune.el or cookie1.el instead.
 
@@ -228,6 +391,11 @@ has not been relevant for some time.
 
 \f
 * New Modes and Packages in Emacs 24.4
+** New `superword-mode' in subword.el
+`superword-mode' overrides the default word motion commands to treat
+symbol_words as a single word, similar to what `subword-mode' does and
+using the same internal functions.
+
 ** New nadvice.el package offering lighter-weight advice facilities.
 It is layered as:
 - add-function/remove-function which can be used to add/remove code on any
@@ -238,6 +406,18 @@ It is layered as:
 \f
 * Incompatible Lisp Changes in Emacs 24.4
 
+** overriding-terminal-local-map does not replace the local keymaps any more.
+It used to disable the minor mode, major mode, and text-property keymaps,
+whereas now it simply has higher precedence.
+
+** Default process filters and sentinels are not nil any more.
+Instead they default to a function which does what the nil value used to do.
+
+** `read-event' does not return decoded chars in ttys any more.
+Just as was the case in Emacs-22 and before, decoding of tty input according to
+keyboard-coding-system is not performed in read-event any more.  But contrary
+to that past, it is still done before input-decode-map/function-key-map/...
+
 ** Removed inhibit-local-menu-bar-menus.
 
 ** frame-local variables that affect redisplay do not work any more.
@@ -264,11 +444,39 @@ file using `set-file-extended-attributes'.
 \f
 * Lisp Changes in Emacs 24.4
 
+FIXME - someone who knows what they are talking about, please improve
+this - see http://debbugs.gnu.org/14596
+** The default file coding for Emacs Lisp files is now utf-8.
+(See file-coding-system-alist.)  In most cases, this change is
+totally transparent.  Files that contain unusual characters but do
+not specify an explicit coding system may fail to load with obscure
+errors.  You should either convert them to utf-8 or add an explicit
+coding: cookie.
+
+** Obsoleted functions:
+*** `dont-compile'
+*** `lisp-complete-symbol'
+*** `field-complete'
+*** `minibuffer-completion-contents'
+*** `isearch-nonincremental-exit-minibuffer'
+*** `isearch-filter-visible'
+*** `generic-make-keywords-list'
+
+** `with-wrapper-hook' is obsoleted by `add-function'.
+The few hooks that used with-wrapper-hook are replaced as follows:
+*** `abbrev-expand-function' obsoletes `abbrev-expand-functions'.
+*** `completion-in-region-function' obsoletes `completion-in-region-functions'.
+*** `filter-buffer-substring-function' obsoletes `filter-buffer-substring-functions'.
+
+
+** `get-upcase-table' is obsoleted by the new `case-table-get-table'.
+
 ** Support for filesystem notifications.
 Emacs now supports notifications of filesystem changes, such as
 creation, modification, and deletion of files.  This requires the
-'inotify' API on GNU/Linux systems.  On MS-Windows systems, this is
-supported for Windows XP and newer versions.
+`glib' API, or the 'inotify' API (on GNU/Linux systems only).  On
+MS-Windows systems, this is supported for Windows XP and newer
+versions.
 
 ** Changes in autorevert.el
 
@@ -320,7 +528,7 @@ text-property on the first char.
 ** The `defalias-fset-function' property lets you catch calls to defalias
 and redirect them to your own function instead of `fset'.
 
-** The lock for 'DIR/FILE' is now 'DIR/.#FILE' or 'DIR/.#-FILE'.
+** The lock for 'DIR/FILE' is now 'DIR/.#FILE' and may be a regular file.
 When you edit DIR/FILE, Emacs normally creates a symbolic link
 DIR/.#FILE as a lock that warns other instances of Emacs that DIR/FILE
 is being edited.  Formerly, if there was already a non-symlink file
@@ -328,9 +536,8 @@ named DIR/.#FILE, Emacs fell back on the lock names DIR/.#FILE.0
 through DIR/.#FILE.9.  These fallbacks have been removed, so that
 Emacs now no longer locks DIR/FILE in that case.
 
-On MS-Windows the lock is a regular file DIR/.#-FILE, not a symlink.
-MS-Windows and non-MS-Windows implementations of Emacs ignore each
-other's locks.
+On file systems that do not support symbolic links, the lock is now a
+regular file with contents being what would have been in the symlink.
 
 ** The 9th element returned by `file-attributes' is now unspecified.
 Formerly, it was t if the file's gid would change if file were deleted
@@ -347,6 +554,12 @@ used in place of the 9th element of `file-attributes'.
 `preserve-extended-attributes' as it now handles both SELinux context
 and ACL entries.
 
+** Changes to the Emacs Lisp Coding Conventions in Emacs 24.4
+
+*** The package descriptor and name of global variables, constants,
+and functions should be separated by two hyphens if the symbol is not
+meant to be used by other packages.
+
 \f
 * Changes in Emacs 24.4 on Non-Free Operating Systems
 
@@ -2645,6 +2858,11 @@ should be derived.
 modes, e.g. (add-hook 'prog-mode-hook 'flyspell-prog-mode) to enable
 on-the-fly spell checking for comments and strings.
 
+**** New option, `prog-prettify-symbols' lets the user control symbol
+prettify (replacing a string like "lambda" with the Greek lambda
+character.  The mode derived from `prog-mode' must call
+`prog-prettify-install' with its own custom alist, which can be empty.
+
 *** New hook `change-major-mode-after-body-hook', run by
 `run-mode-hooks' just before any other mode hooks.