]> code.delx.au - gnu-emacs/blobdiff - etc/NEWS
Remove unused variable EMACS_HEAPSIZE from src/Makefile.in.
[gnu-emacs] / etc / NEWS
index cc29c69a689ace368078b93d41276e9e2bb05805..796d093568373baa6e52cd96a7735602ad3c8a2a 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -40,10 +40,8 @@ or by sticking with Emacs 24.4.
 ** The configure option `--with-pkg-config-prog' has been removed.
 Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to.
 
----
-** Building Emacs for MS-Windows requires at least Windows XP
-or Windows Server 2003.  The built binaries still run on all versions
-of Windows starting with Windows 9X.
+** The configure option '--enable-silent-rules' and the command
+'make V=0' now do a better job of suppressing chatter.
 
 \f
 * Startup Changes in Emacs 24.5
@@ -51,6 +49,8 @@ of Windows starting with Windows 9X.
 \f
 * Changes in Emacs 24.5
 
+** New var `truncate-string-ellipsis' to choose how to indicate truncation.
+
 ---
 ** The default value of `history-length' has increased to 100.
 
@@ -64,38 +64,76 @@ when deciding what terminal-specific initialization code to run.
 main features that Emacs was compiled with.  This is mainly intended
 for use in Emacs bug reports.
 
++++
+** A password is now hidden also when typed in batch mode.  Another
+hiding character but the default `.' can be used by let-binding the
+variable `read-hide-char'.
+
+** The new functions `string-collate-lessp' and `string-collate-equalp'
+preserve the collation order as defined by the system's locale(1)
+environment.  For the time being this is implemented for modern POSIX
+systems and for MS-Windows, for other systems they fall back to their
+counterparts `string-lessp' and `string-equal'.
+
+*** The ls-lisp package uses `string-collate-lessp' to sort file names.
+If you want the old, locale-independent sorting, customize the new
+option `ls-lisp-use-string-collate' to a nil value.
+
+*** The MS-Windows specific variable `w32-collate-ignore-punctuation',
+if set to a non-nil value, causes the above 2 functions to ignore
+symbol and punctuation characters when collating strings.  This
+emulates the behavior of modern Posix platforms when the locale's
+codeset is "UTF-8" (as in "en_US.UTF-8").  This is needed because
+MS-Windows doesn't support UTF-8 as codeset in its locales.
+
 \f
 * Editing Changes in Emacs 24.5
 
-Emacs now supports "bracketed paste mode" when running on a terminal
+** Emacs now supports "bracketed paste mode" when running on a terminal
 that supports it.  This facility allows Emacs to understand pasted
-chunks of text as strings to be inserted instead of interpreting each
-character in the pasted text as actual user input, resulting in a
-paste experience similar to that under a window system and significant
+chunks of text as strings to be inserted, instead of interpreting each
+character in the pasted text as actual user input.  This results in a
+paste experience similar to that under a window system, and significant
 performance improvements when pasting large amounts of text.
 
 \f
 * Changes in Specialized Modes and Packages in Emacs 24.5
 
-** font-lock
-*** New functions font-lock-ensure and font-lock-flush that should be used
-instead of font-lock-fontify-buffer when called from Elisp.
+** Lisp mode
+*** Strings after `:documentation' are highlighted as docstrings.
 
----
-** The Rmail commands d, C-d and u now handle repeat counts
-to delete or undelete multiple messages.
+** Rectangle editing
+*** Rectangle Mark mode can have corners past EOL or in the middle of a TAB.
+*** C-x C-x in rectangle-mark-mode now cycles through the four corners.
+*** `string-rectangle' provides on-the-fly preview of the result.
+
++++
+** Macro `pcase' now supports vector qpattern.
+
+** New font-lock functions font-lock-ensure and font-lock-flush, which
+should be used instead of font-lock-fontify-buffer when called from Elisp.
+
+** Macro `minibuffer-with-setup-hook' takes (:append FUN) to mean
+appending FUN to `minibuffer-setup-hook'.
 
 ** Calendar and diary
 
 +++
 *** New commands to insert diary entries with Chinese dates:
 `diary-chinese-insert-anniversary-entry' `diary-chinese-insert-entry'
-`diary-chinese-insert-monthly-entry'
-`diary-chinese-insert-yearly-entry'
+`diary-chinese-insert-monthly-entry', `diary-chinese-insert-yearly-entry'.
 
 +++
-*** Calendar can list and mark diary entries with Chinese dates:
-`diary-chinese-list-entries' and `diary-chinese-mark-entries'.
+*** Calendar can list and mark diary entries with Chinese dates.
+See `diary-chinese-list-entries' and `diary-chinese-mark-entries'.
+
+** New ERT function `ert-summarize-tests-batch-and-exit'.
+
+---
+** The Rmail commands d, C-d and u now handle repeat counts to delete or
+undelete multiple messages.
+
+** SES now supports local printer functions; see `ses-define-local-printer'.
 
 ** In sh-mode, you can now use `sh-shell' as a file-local variable to
 specify the type of shell in use (bash, csh, etc).
@@ -104,33 +142,62 @@ specify the type of shell in use (bash, csh, etc).
 When `url-handler-mode' is enabled, file operations for these
 protocols as well as for "telnet" and "ftp" are passed to Tramp.
 
+** Tramp
+
+*** New connection method "nc", which allows to access dumb busyboxes.
+
+** VC and related modes
+
+*** New option `vc-annotate-background-mode' controls whether
+the color range from `vc-annotate-color-map' is applied to the
+background or to the foreground.
+
+** Calculator: decimal display mode uses "," groups, so it's more
+fitting for use in money calculations; factorial works with
+non-integer inputs.
+
+** HideIfDef mode now support full C/C++ expressions, argumented macro expansions
+, interactive macro evaluation and automatic scanning of #defined symbols.
+
+*** New custom variable `hide-ifdef-header-regexp' to define C/C++ header file
+name patterns. Default case-insensitive .h, .hh, .hpp and .hxx.
+*** New custom variable `hide-ifdef-expand-reinclusion-protection' to prevent
+reinclusion protected header files from being fully hidden.
+*** New custom variable `hide-ifdef-exclude-define-regexp' to define symbol
+name patterns (e.x. all "FOR_DOXYGEN_ONLY_*") to be excluded.
+
+** TeX mode
+
+*** New custom variable `tex-print-file-extension' to help users who
+use PDF instead of DVI.
+
 ** Obsolete packages
 
 ---
 *** gulp.el
 
----
-*** vi.el, vip.el (try M-x viper instead)
-
 ---
 *** crisp.el, tpu-edt.el, ws-mode.el
 These emulations of old editors are believed to be no longer relevant
  - contact emacs-devel@gnu.org if you disagree.
 
+---
+*** vi.el, vip.el (try M-x viper instead)
+
 \f
 * New Modes and Packages in Emacs 24.5
 
 \f
 * Incompatible Lisp Changes in Emacs 24.5
 
-** window-configurations do not record the buffers's marks any more.
+** window-configurations no longer record the buffers's marks.
 
-** inhibit-modification-hooks now also inhibits lock-file checks as well as
+** inhibit-modification-hooks now also inhibits lock-file checks, as well as
 active region handling.
 
 ** deactivate-mark is now buffer-local.
 
-** cl-the now asserts that its argument is of the given type.
+** `cl-the' now asserts that its argument is of the given type.
 
 +++
 ** Mouse click events on mode line or header line no longer include
@@ -141,6 +208,9 @@ position list returned for such events is now nil.
 \f
 * Lisp Changes in Emacs 24.5
 
+*** call-process-shell-command and process-file-shell-command
+don't take "&rest args" an more.
+
 ** New function `funcall-interactively', which works like `funcall'
 but makes `called-interactively-p' treat the function as (you guessed it)
 called interactively.
@@ -149,7 +219,7 @@ called interactively.
 
 +++
 ** New properties that can be specified with `declare':
-*** (interactive-only INSTEAD), tells to use INSTEAD for non-interactive use.
+*** (interactive-only INSTEAD), says to use INSTEAD for non-interactive use.
 *** (pure VAL), if VAL is non-nil, indicates the function is pure.
 *** (side-effect-free VAL), if VAL is non-nil, indicates the function does not
 have side effects.
@@ -163,9 +233,57 @@ permissions set to temporary values (e.g., for creating private files).
 ** Functions `rmail-delete-forward' and `rmail-delete-backward' take an
 optional repeat-count argument.
 
+** Function `sort' can deal with vectors.
+
+---
+** New utilities in subr-x.el:
+*** New macros `if-let' and `when-let' allow defining bindings and to
+    execute code depending whether all values are true.
+*** New macros `thread-first' and `thread-last' allow threading a form
+    as the first or last argument of subsequent forms.
+
+\f
+* Changes in Frames and Windows Code in Emacs 24.5
+
+** Emacs can now draw horizontal scroll bars on some platforms that
+provide toolkit scroll bars, namely Gtk, Lucid, Motif and Windows.
+Horizontal scroll bars are turned off by default.
+*** New function `horizontal-scroll-bars-available-p' telling whether
+    horizontal scroll bars are available on the underlying system.
+*** New mode `horizontal-scroll-bar-mode' to toggle horizontal scroll
+    bars on all existing and future frames.
+*** New frame parameters `horizontal-scroll-bars' and
+    `scroll-bar-height' to set horizontal scroll bars and their height
+    for individual frames and in `default-frame-alist'.
+*** New function `frame-scroll-bar-height' to return the height of
+    horizontal scroll bars on a specific frame.
+*** `set-window-scroll-bars' now accepts five parameters where the last
+    two specify height and type of the window's horizontal scroll bar.
+
+** The height of a frame's menu and tool bar are no more counted in the
+frame's text height.  This means that the text height stands only for
+the height of the frame's root window plus that of the echo area (if
+present).  This was already the behavior for frames with external tool
+and menu bars (like in the Gtk builds) but has now been extended to all
+builds.
+
+** Frames now do not necessarily preserve the number of columns or lines
+they display when setting default font, menu bar, fringe width, or
+scroll bars.  In particular, maximized and fullscreen frames are
+conceptually never resized if such settings change.  For fullheight and
+fullwidth frames, the behavior may depend on the toolkit used.
+*** New option `frame-inhibit-implied-resize' if non-nil, means that
+   setting default font, menu bar, fringe width, or scroll bars of a
+   specific frame does not resize that frame in order to preserve the
+   number of columns or lines it displays.
 \f
 * Changes in Emacs 24.5 on Non-Free Operating Systems
 
+---
+** Building Emacs for MS-Windows requires at least Windows XP
+or Windows Server 2003.  The built binaries still run on all versions
+of Windows starting with Windows 9X.
+
 \f
 * Installation Changes in Emacs 24.4
 
@@ -306,16 +424,7 @@ removed.
 *** The function `quail-help' is no longer an interactive command.
 Use `C-h C-\' (`describe-input-method') instead.
 
-** ImageMagick
-
-*** ImageMagick images now support the :max-width and :max-height keywords.
-
-*** When using `create-image' with image data, you can pass a :format
-attribute (via the property-list argument) in order to help
-ImageMagick detect the image type.  The value should be a MIME
-content-type that is found in the new variable `image-format-suffixes'.
-
-** Frame and window changes
+** Frame and window handling
 
 *** New commands `toggle-frame-fullscreen' and `toggle-frame-maximized',
 bound to <f11> and M-<f10>, respectively.
@@ -413,7 +522,7 @@ bottom of the selected frame.
 caller of `display-buffer' is ready to handle the case of not displaying
 the buffer in a window.
 
-** Lisp evaluation changes
+** Lisp evaluation
 
 *** `eval-defun' on an already defined defcustom calls the :set function,
 if there is one.
@@ -447,7 +556,7 @@ simply disabling Transient Mark mode does the same thing.
 \f
 * Editing Changes in Emacs 24.4
 
-** Indentation changes
+** Indentation
 
 *** `electric-indent-mode' is now enabled by default.
 Typing RET reindents the current line and indents the new line.
@@ -705,8 +814,7 @@ the symbol near point.
 *** New option `hi-lock-auto-select-face'.  When non-nil, hi-lock commands
 will cycle through faces in `hi-lock-face-defaults' without prompting.
 
-** Icomplete
-Icomplete is now more similar to Ido.
+** 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)
@@ -832,6 +940,22 @@ display a "Homepage" header.)
 ** In Prolog mode, `prolog-use-smie' has been removed,
 along with the non-SMIE indentation code.
 
+** Python mode
+
+*** Out of the box support for CPython, iPython and readline based shells.
+**** `python-shell-completion-module-string-code' is no longer used.
+
+*** Automatic shell prompt detection.  New user options:
+**** `python-shell-interpreter-interactive-arg'.
+**** `python-shell-prompt-detect-enabled'.
+**** `python-shell-prompt-detect-failure-warning'.
+**** `python-shell-prompt-input-regexps'.
+**** `python-shell-prompt-output-regexps'.
+
+*** Python shell support for remote hosts via tramp.
+
+*** Correct display of line numbers for code sent to the Python shell.
+
 ** Remember
 
 *** The new command `remember-notes' creates a buffer that is saved on exit.
@@ -1063,8 +1187,8 @@ Also the following files used by the now obsolete otodo-mode.el:
 \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 package eww.el provides a built-in web browser.
+This requires Emacs to have been compiled with libxml2 support.
 
 ** New package nadvice.el offers lighter-weight advice facilities.
 It is layered as:
@@ -1075,11 +1199,10 @@ any function-carrying place, such as process filters or `<foo>-function' hooks.
 *** `advice-add'/`advice-remove' to add/remove a piece of advice on a named
 function, much like `defadvice' does.
 
-** New package frameset.el.
-It provides a set of operations to save a frameset (the state of all
-or a subset of the existing frames and windows, somewhat similar to a
-frame configuration), both in-session and persistently, and restore it
-at some point in the future.
+** New package frameset.el provides a set of operations to save a frameset
+(the state of all or a subset of the existing frames and windows, somewhat
+similar to a frame configuration), both in-session and persistently, and
+restore it at some point in the future.
 
 ** New package filenotify.el provides an interface for file system
 notifications.  It requires that Emacs be compiled with one of the
@@ -1089,9 +1212,9 @@ low-level libraries gfilenotify.c, inotify.c or w32notify.c.
 display specified symbols as composed characters.  E.g., in Emacs Lisp mode,
 this replaces the string "lambda" with the Greek lambda character.
 
-** 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 minor mode `superword-mode', which overrides the default word motion
+commands to treat "symbol_words" as a single word, similar to what
+`subword-mode' does.
 
 \f
 * Incompatible Lisp Changes in Emacs 24.4
@@ -1134,11 +1257,11 @@ The new optional CHECK-TIMERS parameter allows for the prior behavior.
 Some languages match those as »...«, and others as «...», so it is
 better for Emacs to stay neutral by default.
 
-** `read-event' does not return decoded chars in ttys any more.
-As was the case in Emacs 22 and before, the decoding of terminal
-input, according to `keyboard-coding-system', is not performed in
-`read-event' any more.  But unlike in Emacs 22, this decoding is still
-done before `input-decode-map', `function-key-map', etc.
+** `read-event' does not always decode chars in ttys any more.  As was the case
+in Emacs 22 and before, `read-event' (and `read-char') by default read raw
+bytes from the terminal.  If you want to read decoded chars instead (as was
+always the case in Emacs-23, for example), pass a non-nil
+`inherit-input-method' argument.
 
 ** In `symbol-function', nil and "unbound" are indistinguishable.
 `symbol-function' does not signal a `void-function' error any more.
@@ -1329,6 +1452,15 @@ animated images which do not specify a frame delay.
 *** New functions `image-current-frame' and `image-show-frame' for getting
 and setting the current frame of a multi-frame image.
 
+** ImageMagick
+
+*** ImageMagick images now support the :max-width and :max-height keywords.
+
+*** When using `create-image' with image data, you can pass a :format
+attribute (via the property-list argument) in order to help
+ImageMagick detect the image type.  The value should be a MIME
+content-type that is found in the new variable `image-format-suffixes'.
+
 ** Revert and Autorevert
 
 *** If Emacs is compiled with file notification support, it uses notifications
@@ -1478,10 +1610,13 @@ edited in another Emacs session or by another user.  See the node
 "Interlocking" in the Emacs User Manual for the details.  To disable
 file locking, customize `create-lockfiles' to nil.
 
-** The "generate a backtrace on fatal error" feature now works on MS Windows.
+** The "generate a backtrace on fatal error" feature now works on MS-Windows.
 The backtrace is written to the 'emacs_backtrace.txt' file in the
 directory where Emacs was running.
 
+** The `network-interface-list' and `network-interface-info' functions
+are now available on MS-Windows.
+
 ** The variable `buffer-file-type' is no longer supported.
 Setting it has no effect, and %t in the mode-line format is ignored.
 Likewise, `file-name-buffer-file-type-alist' is now obsolete, and