creates a tty frame connected to the running emacs server. You can
use any number of different ttys. `emacsclient -c' creates a new X11
frame on the current $DISPLAY (or a tty frame if $DISPLAY is not set).
+There may be problems if a display exits unexpectedly and Emacs is compiled
+with Gtk+, see etc/PROBLEMS.
You can test for the presence of this feature in your Lisp code by
testing for the `multi-tty' feature.
--daemon command line argument. It disconnects from the terminal and
starts the server. Clients can connect and create graphical or
terminal frames using emacsclient.
-
++++
**** emacsclient starts emacs in daemon mode and connects to it when
--alternate-editor="" is used (or when the evironment variable
ALTERNATE_EDITOR is set to "") and emacsclient cannot connect to an
The alpha parameter should be an integer between 0 (transparent) and
100 (opaque), or a float number between 0.0 and 1.0. It can also be a
cons cell (ACTIVE . INACTIVE), where ACTIVE is the opacity of an
-active frame and INACTIVE is the opactity of non-active frames.
+active frame and INACTIVE is the opacity of non-active frames.
The variable `frame-alpha-lower-limit' defines a lower bound for the
opacity; the default is 20.
** Internationalization changes
-
++++
*** The Emacs character set is now a superset of Unicode.
(It has about four times the code space, which should be plenty).
The internal encoding used for buffers and strings is now
Unicode-based and called `utf-8-emacs'. This encoding is backwards
-compatible with Unicode's UTF-8 encoding. The internal encoding
+compatible with Unicode's UTF-8 encoding. The encoding
+`emacs-internal' is an alias for this. The internal encoding
previously used by Emacs, `emacs-mule', is still available.
During byte-compilation, Emacs 23 uses `utf-8-emacs' to write files.
**** A dynamic charset priority list is used to infer the charset of
characters for display.
-
++++
*** There are new language environments for Chinese-GBK,
Chinese-GB18030, Khmer, Bengali, Punjabi, Gujarati, Oriya, Telugu,
Sinhala, and TaiViet.
-
++++
*** The minor modes unify-8859-on-encoding-mode and
unify-8859-on-decoding-mode are obsolete.
-
++++
*** `ucs-insert' is bound to `C-x 8 RET' and in addition to hex numbers
accepts numbers in hash notation (e.g. #o21430 for octal, or #10r8984 for
decimal). It also accepts Unicode character names with completion.
-
+---
*** The `cyrillic-translit' input method supports many new characters.
Common typographical characters available from Unicode were added to
`cyrillic-translit': punctuation marks, accented characters, fractions,
want to display the initial message in the *scratch* buffer at startup,
you can set the option `initial-scratch-message' to nil.
++++
** New user option `initial-buffer-choice' specifies what to 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
+++
** The abbrev file is no longer read at startup in batch mode.
++++
** Emacs now supports invocation by an X session manager.
It can save a session and restore it later. See the documentation of
the functions `emacs-session-save' and `emacs-session-restore'.
three steps. Each step scales the height of the default face by the
value of the variable `text-scale-mode-step'.
-*** The command `buffer-face-mode' prompts for a face name, and remaps
-the default face in the current buffer to that specified face. The
-command `variable-pitch-mode' turns on Buffer Face mode for the
-`variable-pitch' face.
+*** The commands buffer-face-mode and buffer-face-set can be used to
+remap the default face in the current buffer. See "Buffer Face mode",
+under New Modes and Packages.
** Primary selection changes
+++
*** The new command kill-matching-buffers kills buffers whose name
matches a regexp.
---
+*** The value of comment-style now defaults to `indent'.
+Thefore, comment-start markers are inserted at the current indentation
+of the region to comment, rather than the leftmost column.
+---
*** The new commands `pp-macroexpand-expression' and
`pp-macroexpand-last-sexp' pretty-print macro expansions.
+++
+++
*** When typing in a password in the echo area, C-y yanks the current
kill into the password.
-
+---
+*** Tooltip frame parameters `font' and `color' in `tooltip-frame-parameters'
+are ignored. Customize the `tooltip' face instead.
++++
*** `mkdir' is a new convenience alias for `make-directory'.
\f
* New Modes and Packages in Emacs 23.1
-** FIXME add details of new packages imported from lisp/gnus.
-[Maybe some information from doc/misc/gnus-coding.texi can be reused]
-
** Auto Composition Mode is a minor mode that composes characters
automatically when they are displayed. It is globally on by default.
It uses `auto-composition-function' (default `auto-compose-chars').
** Bubbles, a new game, is similar to SameGame.
+
+** Buffer Face mode is a minor mode for remapping the default face in
+the current buffer. The variable `buffer-face-mode-face' specifies
+the face to remap to. The command `buffer-face-set' prompts for a
+face name, sets `buffer-face-mode-face' to it, and enables
+buffer-face-mode. See "Face changes", under Editing Changes, for a
+description of face remapping.
+
---
** butterfly flips the desired bit on the drive platter.
See http://xkcd.com/378/
* Changes in Specialized Modes and Packages in Emacs 23.1
** Abbrev has been rewritten in Elisp and extended with more flexibility.
++++
*** New functions: abbrev-get, abbrev-put, abbrev-table-get, abbrev-table-put,
abbrev-table-p, abbrev-insert, abbrev-table-menu.
++++
*** Special hook `abbrev-expand-functions' obsoletes `pre-abbrev-expand-hook'.
++++
*** `make-abbrev-table', `define-abbrev', `define-abbrev-table' all take
extra arguments for arbitrary properties.
++++
*** New variable `abbrev-minor-mode-table-alist'.
++++
*** `local-abbrev-table' can hold a list of abbrev-tables.
++++
*** Abbrevs have now the following special properties:
`:count', `:system', `:enable-function', `:case-fixed'.
++++
*** Abbrev-tables have now the following special properties:
`:parents', `:case-fixed', `:enable-function', `:regexp',
`abbrev-table-modiff'.
correctly in Emacs 22 and below. If you want to Gnus across different Emacs
versions, you may set `mm-auto-save-coding-system' to `emacs-mule'.
-*** Password are consistently loaded through `auth-source'
+*** Passwords are consistently loaded through `auth-source'
Gnus can use `auth-source' for POP and IMAP passwords. Also see that
`smtpmail' and `url' support `auth-source' for SMTP and HTTP/HTTPS/RSS
authentication respectively.
** Help mode
++++
*** New macro `with-help-window' should set up help windows better
than `with-output-to-temp-buffer' with `print-help-return-message'.
*** New option `help-window-select' permits to customize whether help
window shall be automatically selected when invoking help.
-*** New variable `help-window-point-marker' permits to specify new
-position of point in help window (for example in `view-lossage').
+*** New variable `help-window-point-marker' permits one to specify a new
+position for point in help window (for example in `view-lossage').
** Isearch
+++
*** Isearch can now search through multiple ChangeLog files.
When running Isearch in a ChangeLog file, if the search fails,
then another C-s tries searching the previous ChangeLog,
-if there is one (e.g. go from ChangeLog to ChangeLog.12).
+if there is one (e.g. going from ChangeLog to ChangeLog.12).
This is enabled if multi-isearch-search is non-nil.
*** Two new commands to start Isearch on a list of marked buffers
in square brackets, like in "/ssh:[::1]:".
*** Multihop syntax has been removed.
-The pseudo-method "multi" has been removed. Instead of, multi hops
+The pseudo-method "multi" has been removed. Instead, multi hops
can be specified by the new variable `tramp-default-proxies-alist'.
*** More default settings.
*** Connection information is cached.
In order to reduce connection setup, information about used
-connections are kept persistent in a file. The name of this file is
+connections is kept persistently in a file. The name of this file is
defined in the variable `tramp-persistency-file-name'.
*** Control of remote processes.
*** vc-git supports the "git grep" command.
+++
-*** VC Support for Meta-CVS has been removed for lack of maintainer able
+*** VC Support for Meta-CVS has been removed for lack of a maintainer able
to update it to the new VC.
** Miscellaneous
** Internationalization changes
*** The value of the function `charset-id' is now always 0.
-
++++
*** The functions `register-char-codings' and `coding-system-spec'
have been removed.
-
++++
*** The cpXXX coding systems are now supported automatically.
The functions cp-...-codepage, which you had to use in Emacs 22 to
enable support for these coding systems, have been deleted.
-
+---
*** The following features have been removed. They were used for
displaying various scripts with specific fonts, and are no longer
needed now that OpenType font support is available:
This variable was only used by call-process-region, which now uses
temporary-file-directory instead.
++++
+** The COUNT and SYSTEM-FLAG arguments to define-abbrev have been
+removed. The function now takes extra arguments for specifying
+arbitrary abbrev properties.
+
\f
* Lisp Changes in Emacs 23.1
-** New coding system alias `emacs-internal'.
-
+++
** The new variable `generate-autoload-cookie' controls the magic comment
string used by `update-file-autoloads' to find autoloaded forms. The
Emacs initialization.
** Changes affecting display-buffer
-
+++
-*** New value nil for split-height-threshold inhibits vertical splitting
-unless there's no other window.
-
-+++
-*** New option split-width-threshold controls horizontal splitting.
-
-+++
-*** A window can be split horizontally even when it's not full-width.
-
-+++
-*** New option split-window-preferred-function can be set to a function
-to override the default splitting mechanism of display-buffer.
+*** display-buffer tries to be smarter when splitting windows.
+The new option split-window-preferred-function lets you specify your own
+function to pop up new windows. Its default value split-window-sensibly
+can split a window either vertically or horizontally, whichever seems
+more suitable in the current configuration. You can tune the behavior
+of split-window-sensibly by customizing split-height-threshold and the
+new option split-width-threshold. Both options now take the value nil
+to inhibit splitting in one direction. Setting split-width-threshold to
+nil inhibits horizontal splitting and gets you the behavior of Emacs 22
+in this respect. In any case, display-buffer may now split the largest
+window vertically even when it is not as wide as the containing frame.
+++
*** If pop-up-frames has the value `graphic-only', display-buffer only
makes a separate frame on graphic displays.
+++
-*** select-frame and set-frame-selected-window have new optional
+*** select-frame and set-frame-selected-window have a new optional
argument NORECORD. If non-nil, this will avoid messing with the order
of recently selected windows and the buffer list.
*** The variable `inhibit-changing-match-data', if non-nil, prevents
the search and match primitives from changing the match data.
----
++++
*** New functions `word-search-forward-lax' and `word-search-backward-lax'.
These are like `word-search-forward and `word-search-backward', except
that the end of the search string need not match a word boundary,
`old-name', `iso-10646-comment', `uppercase', `lowercase', and
`titlecase'.
++++
*** The functions `modify-syntax-entry' and `modify-category-entry' now
accept a cons of characters as the first argument, and modify all
entries in that range of characters.
character.
** Changes related to the new font backend
-
-Which font backends to use can be specified by the X resource "FontBackend".
-For instance, to use both X core fonts and Xft fonts:
++++
+*** Which font backends to use can be specified by the X resource
+"FontBackend". For instance, to use both X core fonts and Xft fonts:
Emacs.FontBackend: x,xft
If this resource is not set, Emacs tries to use all font backends
available on your graphic device.
-
++++
*** New frame parameter `font-backend' specifies a list of
font-backends supported by the frame's graphic device. On X, they are
currently `x' and `xft'.
*** `initial-environment' holds the environment inherited from Emacs's parent.
** Redisplay changes
-
++++
*** For underlined characters, the distance between the underline and
the baseline is controlled by a new variable, `underline-minimum-offset'.
-
++++
*** You can now pass the value of the `invisible' property to
invisible-p to check whether it would cause the text to be invisible.
-Convenient when checking invisibility of text with no buffer position
-(e.g. in before/after-strings).
-
+This is convenient when checking invisibility of text with no buffer
+position (e.g. in before/after-strings).
+++
*** `clear-image-cache' can be told to flush only images of a specific file.
-
++++
*** `vertical-motion' can now be given a goal column.
It now accepts a cons cell (COLS . LINES) in its first argument, which
says to stop, where possible, at a pixel x-position equal to COLS
*** redisplay-end-trigger-functions, set-window-redisplay-end-trigger,
and window-redisplay-end-trigger are obsolete. Use `jit-lock-register'
instead.
++++
+*** The new variables `wrap-prefix' and `line-prefix' specify display
+specs which are appended at display-time to every continuation line
+and non-continuation line, respectively. In addition, Emacs
+recognizes the `wrap-prefix' and `line-prefix' text or overlay
+properties; these have the same effects as the variables of the same
+name, but take precedence.
** The Lisp interpreter now treats non-breaking space as whitespace.
** Miscellaneous new variables
++++
+*** `read-circle', if nil, disables the reading of recursive Lisp
+structures using the #N= and #N# syntax.
+
+++
*** `this-command-keys-shift-translated' is non-nil if the key
sequence invoking the current command was found by shift-translation.
modes like Info can teach bookmark.el how to save and restore the
relevant data.
++++
*** `fill-forward-paragraph-function' specifies which function the
filling code should use to find paragraph boundaries.