** Support for systems without alloca has been removed.
+** The `emacstool' utility has been removed.
+
\f
* Changes in Emacs 23.1
+** Emacs now supports using both X displays and ttys in one session.
+You can also use any number of different ttys.
+
+You can test for the presence of this feature in your Lisp code by
+testing for the `multi-tty' feature.
+
** Emacs comes with a new set of icons for Mac OS X.
OS-X-style icons (an application icon and a relevant document icon)
were contributed by Kentaro Ohkouchi.
** split-window-preferred-function specifies whether display-buffer should
split windows vertically or horizontally.
-** Support for multiple terminal devices and simultaneous graphical
-and tty frames has been added. You can test for the presence of this
-feature in your Lisp code by testing for the `multi-tty' feature.
-
** Emacsclient has been extended to support opening a new terminal
frame. Its behavior has been changed to open a new Emacs frame by
default. Use the -c option to get the old behavior of opening files in
** Emacs now supports the SVG image format through librsvg2.
-** The Gtk+ build now uses stock tool bar icons, so that a theme change
-is visible in Emacs tool bar.
-
** If you set find-file-confirm-nonexistent-file to t, then C-x C-f
requires confirmation before opening a non-existent file.
recenter the visited source file. Its value can be a number (for example,
0 for top line, -1 for bottom line), or nil for no recentering.
-** The mode-line display a `@' if the default-directory for the current buffer
+** The mode-line displays a `@' if the default-directory for the current buffer
is on a remote machine, or a hyphen otherwise.
-** The new command balance-window-area balances windows both vertically
+** The new command balance-windows-area balances windows both vertically
and horizontally.
** The new command close-display-connection can be used to close a connection
** The command shell prompts for the default directory, when it is
called with a prefix, and the default directory is a remote file name.
-This is because some file name handler (like ange-ftp) are not able to
+This is because some file name handlers (like ange-ftp) are not able to
run processes remotely.
** The new command `display-time-world' starts an updating time display
after starting Emacs: startup screen, *scratch* buffer, visiting a
file or directory.
+** New alias `argv' for `command-line-args-left'
+This is a convenience alias, so that one can write `(pop argv)'
+inside of --eval command line arguments in order to access
+following arguments.
+
+** The abbrev file is no longer read at startup in batch mode.
\f
* Incompatible Editing Changes in Emacs 23.1
\f
* Editing Changes in Emacs 23.1
++++
+** M-q now fills the region if the region is active and
+`transient-mark-mode' is turned on. Otherwise, it fills the current
+paragraph. The new command bound to M-q is `fill-paragraph-or-region'.
+
+** M-$ now checks spelling of the region if the region is active and
+`transient-mark-mode' is turned on. Otherwise, it checks spelling of the
+word at point.
+
+** TAB now indents the region if the region is active and
+`transient-mark-mode' is turned on.
+
** C-z now invokes `suspend-frame', C-x C-c now invokes
`save-buffers-kill-terminal'.
\f
* Changes in Specialized Modes and Packages in Emacs 23.1
+** diff-fine-highlight highlights char-level details of changes in a diff hunk.
+** archive-mode has basic support to browse Rar archives.
** talk.el has been extended for multiple tty support.
** compilation-auto-jump-to-first-error tells `compile' to jump to
*** VC now supports applying VC operations to a set of files at a time.
+This enables VC to work much more effectively with changeset-oriented
+version-control systems such as Subversion, GNU Arch, Mercurial, and
+Bzr. VC will now pass a multiple-file commit to these systems
+as a single changeset.
+
** sgml-electric-tag-pair-mode lets you simultaneously edit matched tag pairs.
+** The appearance of superscript and subscript in TeX is more customizable.
+See the documentation of the variables: tex-fontify-script,
+tex-font-script-display, tex-suscript-height-ratio, and
+tex-suscript-height-minimum.
+
** BibTeX mode:
*** New `bibtex-entry-format' options `whitespace', `braces', and
** Miscellaneous programming mode changes
+*** The file etc/emacs.py now supports both Python 2 and 3, meaning
+that either version can be used as inferior Python by python.el.
+
*** The variable `fortran-line-length' can change the fixed-form line-length.
** Miscellaneous
\f
* Lisp Changes in Emacs 23.1
+** `frame-inherited-parameters' lets new frames inherit parameters from
+the selected frame.
+** New keymap `input-decode-map' overrides like key-translation-map, but
+applies before function-key-map. Also it is terminal-local contrary to
+key-translation-map. Terminal-specific key-sequences are generally added to
+this map rather than to function-key-map now.
+
** Changes related to multiple tty support.
*** $TERM is now set to `dumb' for subprocesses. If you want to know the
$TERM inherited by Emacs you will have to look inside initial-environment.
+*** $DISPLAY is now dynamically inherited from the frame's `display'.
+
*** The `window-system' variable has been made frame-local. The new
`initial-window-system' variable contains the `window-system' value
for the first frame.
*** New functions: `delete-tty', `suspend-tty', `resume-tty'.
-*** New functions: `terminal-id', `terminal-parameters',
-`terminal-parameter', `set-terminal-parameter',
-`modify-terminal-parameters'.
+*** A new data type for terminals with functions: `get-device-terminal',
+`terminal-parameters', `terminal-parameter', `set-terminal-parameter'.
*** New hooks: `suspend-tty-functions' and `resume-tty-functions'
are called after a tty frame has been suspended or resumed,
-respectively. The functions are called with the terminal id of the frame
+respectively. The functions are called with the terminal id of the frame
being suspended/resumed as a parameter.
-*** New functions: `environment', `let-environment'.
+*** New function: `environment'.
-*** New variables: `local-key-translation-map', `local-function-key-map'.
-These are in addition to the global key-translation-map and
-function-key-map variables that already existed.
-
-??? How do the new variables relate to the old ones?
+*** New variable: `local-function-key-map'.
+This in addition to the global function-key-map variable that
+already existed. The global variable is not used directly any more;
+instead, the local-function-key-map is initialized so as to inherit from
+function-key-map.
*** `initial-environment' holds the environment inherited from Emacs's parent.
-*** New frame parameter `display-environment-variable'.
-
*** The `keyboard-translate-table' variable and the terminal and
keyboard coding systems have been made terminal-local.
-*** In addition to the global key-translation-map and
-function-key-map, Emacs has terminal-local local-key-translation-map
-and local-function-key-map variables, and uses them instead of the
+*** In addition to the global function-key-map, Emacs has terminal-local
+local-function-key-map variables, and uses them instead of the
global keymaps to set up translations and function key sequences
relevant to a specific terminal device.