]> code.delx.au - gnu-emacs/blobdiff - etc/NEWS
help--binding-locus: Document argument POSITION.
[gnu-emacs] / etc / NEWS
index cabd0087d92c11c65152a336ab07ee1e316f46a4..844181c334d2a882939d9adea37c464636e6853e 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -40,9 +40,16 @@ or by sticking with Emacs 24.4.
 If gnustep-config is not available, the old heuristics are used.
 
 ---
-** The configure option `--with-pkg-config-prog' has been removed.
+** The configure option '--with-pkg-config-prog' has been removed.
 Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to.
 
+---
+** The configure option '--with-mmdf' has been removed.
+It was no longer useful, as it relied on libraries that are no longer
+supported, and its presence led to confusion during configuration.
+This affects only the 'movemail' utility; Emacs itself can still
+process MMDF-format files as before.
+
 ** The configure option '--enable-silent-rules' is now the default,
 and silent rules are now quieter.  To get the old behavior where
 'make' chatters a lot, configure with '--disable-silent-rules' or
@@ -173,9 +180,37 @@ possible inaccuracies in the end position.
 In particular, it now returns the average width of the font's
 characters, which can be used for geometry-related calculations.
 
+** A new function `default-font-width' returns the average width of a
+character in the current buffer's default font.  If the default face
+is remapped (see `face-remapping-alist'), the value for the remapped
+face is returned.  This function complements the existing function
+`default-font-height'.
+
+** New functions `window-font-height' and `window-font-width' return
+the height and average width of characters in a specified face and
+window.  If FACE is remapped (see `face-remapping-alist'), the
+function returns the information for the remapped face.
+
+** A new function `window-max-chars-per-line' returns the maximal
+number of characters that can be displayed on one line.  If a face
+and/or window are provided, these values are used for the
+calculation.  This function is different from `window-body-width' in
+that it accounts for (i) continuation glyphs, (ii) the size of the
+font, and (iii) the specified window.
+
+** New possible value for `system-type': nacl.
+
++++
+** New variable `inhibit-message', when bound to non-nil, inhibits
+   `message' and related functions from displaying messages the Echo
+   Area.  The output is still logged to the *Messages* buffer.
+
 \f
 * Editing Changes in Emacs 25.1
 
+** Successive single-char deletions are collapsed in the undo-log just like
+successive char insertions.
+
 ** Unicode names entered via C-x 8 RET now use substring completion by default.
 
 ** New minor mode global-eldoc-mode is enabled by default.
@@ -197,9 +232,62 @@ Unicode standards.
 
 ** You can access `mouse-buffer-menu' (C-down-mouse-1) using C-f10.
 
++++
+** New buffer-local `electric-pair-local-mode'.
+
 \f
 * Changes in Specialized Modes and Packages in Emacs 25.1
+
+** New `xterm-screen-extra-capabilities' config.
+
+** The `save-place' variable is replaced by a `save-place-mode'.
+
+** Midnight-mode
+*** `midnight-mode' is a proper minor mode.
+*** clean-buffer-*-regexps can now specify buffers via predicate functions.
+
+** In xterms, killing text now also sets the CLIPBOARD/PRIMARY selection
+in the surrounding GUI (using the OSC-52 escape sequence).  This only works
+if your xterm supports it and enables the `allowWindowOps' options (disabled
+by default at least in Debian, for security reasons).
+
+** xterm-mouse-mode now supports mouse-tracking (if your xterm supports it).
+
 ** package.el
+
+*** New "external" package status.
+An external package is any installed package that's not built-in and
+not from `package-user-dir', which usually means it's from an entry in
+`package-directory-list'.  They are treated much like built-in
+packages, in that they cannot be deleted through the package menu and
+are not considered for upgrades.
+
+The effect, is that a user can manually place a specific version of a
+package inside `package-directory-list' and the package menu will
+always respect that.
+
+*** If a package is available on multiple archives and one has higher
+priority (as per `package-archive-priorities') only that one is
+listed. This can be configured with `package-menu-hide-low-priority'.
+
+*** `package-menu-hide-obsolete' now toggles the hiding of packages.
+This includes the above-mentioned low-priority packages, as well as
+available packages whose version is lower than the currently installed
+version (which were previously impossible to display).
+This allows users to downgrade a package if a lower version is
+available.
+
+*** When filtering the package menu, keywords starting with "arc:" or
+"status:" represent package archive or status, respectively, instead
+of actual keywords.
+
+*** Most functions which involve downloading information now take an
+ASYNC argument.  If it is non-nil, package.el performs the download(s)
+asynchronously.
+
+*** New variable `package-menu-async' controls whether the
+package-menu uses asynchronous downloads.
+
 *** `package-install-from-buffer' and `package-install-file' work on directories.
 This follows the same rules as installing from a .tar file, except the
 -pkg file is optional.
@@ -228,13 +316,19 @@ the old behavior -- *shell* buffer displays in current window -- use
 
 
 ** EIEIO
++++
 *** The `:protection' slot option is not obeyed any more.
++++
 *** The `newname' argument to constructors is optional&deprecated.
 If you need your objects to be named, do it by inheriting from `eieio-named'.
++++
 *** The <class>-list-p and <class>-child-p functions are declared obsolete.
++++
 *** The <class> variables are declared obsolete.
++++
 *** The <initarg> variables are declared obsolete.
 *** defgeneric and defmethod are declared obsolete.
++++
 *** `constructor' is now an obsolete alias for `make-instance'.
 
 ** ido
@@ -328,7 +422,7 @@ invalid certificates are marked in red.
 transformed into multipart/related messages before sending.
 
 ** pcase
-*** New UPatterns `quote' and `app'.
+*** New UPatterns `quote', `app', `cl-struct', and `eieio'.
 *** New UPatterns can be defined with `pcase-defmacro'.
 +++
 *** New vector QPattern.
@@ -469,6 +563,11 @@ allows to customize this.
 *** Two new faces `compare-windows-removed' and `compare-windows-added'
 replace the obsolete face `compare-windows'.
 
+---
+*** `log-edit-insert-changelog' converts "(tiny change)" to
+"Copyright-paperwork-exempt: yes".  Set `log-edit-rewrite-tiny-change'
+nil to disable this.
+
 ** VHDL mode supports VHDL'08.
 
 ** Calculator: decimal display mode uses "," groups, so it's more
@@ -552,17 +651,25 @@ to avoid interfering with the kill ring.
 *** Custom variable `eudc-inline-expansion-format' defaults to
 "Firstname Surname <mail-address>".
 
+*** Custom variable `eudc-options-file' defaults to
+"~/.emacs.d/eudc-options".
+
 *** New custom variable `ldap-ldapsearch-password-prompt-regexp' to
 allow overriding the regular expression that recognizes the ldapsearch
 command line's password prompt.
 
 ** Eshell
 
++++
 *** The new built-in command `clear' can scroll window contents out of sight.
+If provided with an optional non-nil argument, the scrollback contents will be cleared.
 
 ** Browse-url
 
-*** browse-url now supports the Conkeror Web Browser.
+*** Support for the Conkeror web browser.
+
+---
+*** Support for several ancient browsers is now officially obsolete.
 
 +++
 ** tar-mode: new `tar-new-entry' command, allowing for new members to
@@ -576,6 +683,14 @@ notifications, if Emacs is compiled with file notification support.
 ---
 *** gulp.el
 
++++
+** The character classes [:graph:] and [:print:] in regular expressions
+no longer match every multibyte character.  Instead, Emacs now
+consults the Unicode character properties to determine which
+characters are graphic or printable.  In particular, surrogates and
+unassigned codepoints are now rejected.  If you want the old behavior,
+use [:multibyte:] instead.
+
 \f
 * New Modes and Packages in Emacs 25.1
 
@@ -594,6 +709,16 @@ a typographically-correct documents.
 \f
 * Incompatible Lisp Changes in Emacs 25.1
 
+** `indirect-function' does not signal `void-function' any more.
+This is mostly a bug-fix, since this change was missed back in 24.4 when
+symbol-function was changed not to signal `void-function' any more.
+*** As a consequence, the second arg of `indirect-function' is now obsolete.
+
+** Comint, term, and compile do not set the EMACS env var any more.
+Use the INSIDE_EMACS environment variable instead.
+
+** `save-excursion' does not save&restore the mark any more.
+
 ** read-buffer-function can now be called with a 4th argument (`predicate').
 
 ** completion-table-dynamic stays in the minibuffer.
@@ -610,6 +735,9 @@ active region handling.
 
 ** `cl-the' now asserts that its argument is of the given type.
 
+** `process-running-child-p` may now return a numeric process
+group ID instead of `t'.
+
 +++
 ** Mouse click events on mode line or header line no longer include
 any reference to a buffer position.  The 6th member of the mouse
@@ -630,9 +758,33 @@ now match multibyte characters using Unicode character properties.
 If you want the old behavior where they matched any character with
 word syntax, use `\sw' instead.
 
++++
+** The `diff' command uses the unified format now.  To restore the old
+behavior, set `diff-switches' to `-c'.
+
 \f
 * Lisp Changes in Emacs 25.1
 
+** The default value of `load-read-function' is now `read'.
+
+** New hook `pre-redisplay-functions', a bit easier to use than pre-redisplay-function.
+
+** The second arg of `looking-back' should always be provided explicitly.
+
+** Obsolete text properties `intangible', `point-entered', and `point-left'.
+Replaced by properties `cursor-intangible' and `cursor-sensor-functions',
+implemented by the new `cursor-intangible-mode' and
+`cursor-sensor-mode' minor modes.
+
+** New process type `pipe', which can be used in combination with the
+`:stderr' keyword of make-process to handle standard error output
+of subprocess.
+
+** New function `make-process' provides an alternative interface to
+`start-process'.  It allows programs to set process parameters such as
+process filter, sentinel, etc., through keyword arguments (similar to
+`make-network-process').
+
 ** `read-buffer' takes a new `predicate' argument.
 
 ** Emacs Lisp now supports generators.
@@ -690,6 +842,9 @@ name.  The variable `system-name' is now obsolete.
 +++
 ** Function `write-region' no longer outputs "Wrote FILE" in batch mode.
 
+** If `pwd' is called with a prefix argument, insert the current default
+directory at point.
+
 ---
 ** New utilities in subr-x.el:
 *** New macros `if-let' and `when-let' allow defining bindings and to
@@ -720,6 +875,12 @@ integers.
 ** New function `set-binary-mode' allows to switch a standard stream
 of the Emacs process to binary I/O mode.
 
+** Miscellaneous name change
+
+For consistency with the usual Emacs spelling, the Lisp variable
+`hfy-optimisations' has been renamed to `hfy-optimizations'.
+The old name should still work, as an obsolescent alias.
+
 \f
 * Changes in Frames and Windows Code in Emacs 25.1