\f
* Changes in Emacs 24.1
-** Completion in a non-minibuffer now tries to detect the end of completion
-and pops down the *Completions* buffer accordingly.
-
** emacsclient changes
*** New emacsclient argument --parent-id ID can be used to open a
*** If emacsclient shuts down as a result of Emacs signalling an
error, its exit status is 1.
-** Completion can cycle, depending on completion-cycle-threshold.
+** Completion
+*** Many packages have been changed to use completion-at-point rather than
+their own completion code.
+
+*** Completion in a non-minibuffer now tries to detect the end of completion
+and pops down the *Completions* buffer accordingly.
+
+*** Completion can cycle, depending on completion-cycle-threshold.
+
+*** New completion style `substring'.
+
+*** Completion style can be set per-category `completion-category-overrides'.
-** `completing-read' can be customized using the new variable
+*** Completion of buffers now uses substring completion by default.
+
+*** `completing-read' can be customized using the new variable
`completing-read-function'.
** auto-mode-case-fold is now enabled by default.
+** Internationalization changes
+
+++
-** Emacs now supports display and editing of bidirectional text.
+*** Emacs now supports display and editing of bidirectional text.
See the node "Bidirectional Editing" in the Emacs Manual for some
initial documentation.
`display' text properties, do not yet work correctly when
bidirectional text is reordered for display.
++++
+*** Enhanced support for characters that have no glyphs in available fonts.
+If a character has no glyphs in any of the available fonts, Emacs by
+default will display it either as a hexadecimal code in a box or as a
+thin 1-pixel space. In addition to these two methods, Emacs can
+display these characters as empty box, as an acronym, or not display
+them at all. To change how these characters are displayed, customize
+the variable `glyphless-char-display-control'.
+
+On character terminals these methods are used for characters that
+cannot be encoded by the `terminal-coding-system'.
+
+*** There are two new input methods for Persian/Farsi: farsi and farsi-translit.
+
** GTK scroll-bars are now placed on the right by default.
Use `set-scroll-bar-mode' to change this.
with Xft. To change font, use the X resource font, for example:
Emacs.pane.menubar.font: Courier-12
-+++
-** Enhanced support for characters that have no glyphs in available fonts.
-If a character has no glyphs in any of the available fonts, Emacs by
-default will display it either as a hexadecimal code in a box or as a
-thin 1-pixel space. In addition to these two methods, Emacs can
-display these characters as empty box, as an acronym, or not display
-them at all. To change how these characters are displayed, customize
-the variable `glyphless-char-display-control'.
-
-On character terminals these methods are used for characters that
-cannot be encoded by the `terminal-coding-system'.
-
** On graphical displays, the mode-line no longer ends in dashes.
+Also, the first dash (which does not indicate anything) is just
+displayed as a space.
** On Nextstep/OSX, the menu bar can be hidden by customizing
ns-auto-hide-menu-bar.
** The user option `remote-file-name-inhibit-cache' controls whether
the remote file-name cache is used for read access.
++++
+** The use of a "mode: minor" specification in a file local variables section
+to enable a minor-mode is deprecated. Instead, use "eval: (minor-mode)".
+
** The standalone programs lib-src/digest-doc and sorted-doc have been
replaced with Lisp commands `doc-file-to-man' and `doc-file-to-info'.
+---
+** The standalone program `fakemail' has been removed.
+If you need it, feedmail.el ought to provide a superset of the functionality.
+
** The variable `focus-follows-mouse' now always defaults to nil.
+** Function `sha1' is now implemented in C for speed.
+The elisp implementation sha1.el is removed. Feature sha1 is provided
+by default.
+
\f
* Editing Changes in Emacs 24.1
*** Support for X cut buffers has been removed.
+*** Support for X clipboard managers has been added.
+
** New command `rectangle-number-lines', bound to `C-x r N', numbers
the lines in the current rectangle. With an prefix argument, this
prompts for a number to count from and for a format string.
** comint and modes derived from it use the generic completion code.
-** The compile.el mode can be used without font-lock-mode.
+** Compilation mode
+
+*** Compilation mode can be used without font-lock-mode.
`compilation-parse-errors-function' is now obsolete.
+*** `compilation-filter-start' is let-bound to the start of the text
+inserted by the compilation filter function, when calling
+compilation-filter-hook.
+
** The Landmark game is now invoked with `landmark', not `lm'.
** Prolog mode has been completely revamped, with lots of additional
** Calendar, Diary, and Appt
++++
+*** Diary entries can contain non-printing `comments'.
+See the variable `diary-comment-start'.
+
++++
+*** Appointments can specify their individual warning times.
+See the variable `appt-warning-time-regexp'.
+
++++
*** New function `diary-hebrew-birthday'.
+---
+*** Elements of `calendar-day-abbrev-array' and `calendar-month-abbrev-array'
+may no longer be nil, but must all be strings.
+
---
*** The obsolete (since Emacs 22.1) method of enabling the appt package
by adding appt-make-list to diary-hook has been removed. Use appt-activate.
*** The following access methods are discontinued: "ssh1_old",
"ssh2_old", "scp1_old", "scp2_old", "imap", "imaps" and "fish".
+*** The option `ange-ftp-binary-file-name-regexp' has changed its
+default value to "".
+
** VC and related modes
*** Support for pulling on distributed version control systems.
\f
* New Modes and Packages in Emacs 24.1
+** Occur Edit mode applies edits made in *Occur* buffers to the
+original buffers. It is bound to C-x C-q in Occur mode.
+
** New global minor modes electric-pair-mode, electric-indent-mode,
and electric-layout-mode.
\f
* Lisp changes in Emacs 24.1
+** Completion
+*** New variable completion-extra-properties used to specify extra properties
+of the current completion:
+- :annotate-function, same as the old completion-annotate-function.
+- :exit-function, function to call after completion took place.
+
+*** Functions on completion-at-point-functions can return any of the properties
+valid for completion-extra-properties.
+
+*** completion-annotate-function is obsolete.
+
+*** New `metadata' method for completion tables. The metadata thus returned
+can specify various details of the data returned by `all-completions':
+- `category' is the kind of objects returned (e.g., `buffer', `file', ...),
+ used to select a style in completion-category-overrides.
+- `annotation-function' to add annotations in *Completions*.
+- `display-sort-function' to specify how to sort entries in *Completions*.
+- `cycle-sort-function' to specify how to sort entries when cycling.
+
** `glyphless-char-display' can now distinguish between graphical and
text terminal display, via a char-table entry that is a cons cell.
** buffer-substring-filters is obsoleted by filter-buffer-substring-functions.
-** New completion style `substring'.
-
** `facemenu-read-color' is now an alias for `read-color'.
The command `read-color' now requires a match for a color name or RGB
triplet, instead of signalling an error if the user provides a invalid
** New variables `delayed-warnings-list' and `delayed-warnings-hook' allow
deferring warnings until the main command loop is executed.
++++
+** `set-auto-mode' now respects mode: local variables at the end of files,
+as well as those in the -*- line.
+
\f
* Changes in Emacs 24.1 on non-free operating systems