diff options
| author | Chong Yidong | 2009-06-19 17:09:32 +0000 |
|---|---|---|
| committer | Chong Yidong | 2009-06-19 17:09:32 +0000 |
| commit | 16e8227107e57469f985517b56b732c0ddff3571 (patch) | |
| tree | b475222256a11e1ccbfc2f1f9599d8ab303bbcbc | |
| parent | 7ddbf42de8ed3c60654696e51ca99bdc2210b904 (diff) | |
| download | emacs-16e8227107e57469f985517b56b732c0ddff3571.tar.gz emacs-16e8227107e57469f985517b56b732c0ddff3571.zip | |
Remove +++ and --- lines; minor copyedits.
| -rw-r--r-- | etc/NEWS | 527 |
1 files changed, 183 insertions, 344 deletions
| @@ -14,12 +14,6 @@ for changes in older Emacs versions. | |||
| 14 | You can narrow news to a specific version by calling `view-emacs-news' | 14 | You can narrow news to a specific version by calling `view-emacs-news' |
| 15 | with a prefix argument or by typing C-u C-h C-n. | 15 | with a prefix argument or by typing C-u C-h C-n. |
| 16 | 16 | ||
| 17 | Temporary note: | ||
| 18 | +++ indicates that the appropriate manual has already been updated. | ||
| 19 | --- means no change in the manuals is called for. | ||
| 20 | When you add a new item, please add it without either +++ or --- | ||
| 21 | so we will look at it and add it to the manual. | ||
| 22 | |||
| 23 | 17 | ||
| 24 | * Installation Changes in Emacs 23.1 | 18 | * Installation Changes in Emacs 23.1 |
| 25 | 19 | ||
| @@ -30,7 +24,7 @@ default toolkit, but you can use --with-x-toolkit=gtk if necessary. | |||
| 30 | ** New font code. | 24 | ** New font code. |
| 31 | Fonts are handled by new code capable of dealing with multiple font | 25 | Fonts are handled by new code capable of dealing with multiple font |
| 32 | backends. This uses the freetype and fontconfig libraries. | 26 | backends. This uses the freetype and fontconfig libraries. |
| 33 | +++ | 27 | |
| 34 | *** Emacs now accepts font names supplied in the fontconfig format | 28 | *** Emacs now accepts font names supplied in the fontconfig format |
| 35 | (e.g. "monospace-12:bold") and GTK format (e.g. "Monospace Bold 12"). | 29 | (e.g. "monospace-12:bold") and GTK format (e.g. "Monospace Bold 12"). |
| 36 | 30 | ||
| @@ -45,10 +39,10 @@ OpenType fonts. | |||
| 45 | *** Added support for the m17n library for text shaping. | 39 | *** Added support for the m17n library for text shaping. |
| 46 | 40 | ||
| 47 | ** Changes to image support | 41 | ** Changes to image support |
| 48 | --- | 42 | |
| 49 | *** configure now checks for libgif before libungif when searching for | 43 | *** configure now checks for libgif before libungif when searching for |
| 50 | a GIF library. | 44 | a GIF library. |
| 51 | +++ | 45 | |
| 52 | *** Emacs now supports the SVG image format through librsvg2. | 46 | *** Emacs now supports the SVG image format through librsvg2. |
| 53 | 47 | ||
| 54 | *** Emacs now supports multi-page TIFF images. | 48 | *** Emacs now supports multi-page TIFF images. |
| @@ -70,11 +64,11 @@ bindings for Emacs. | |||
| 70 | 64 | ||
| 71 | ** Support for many obsolete platforms has been removed. | 65 | ** Support for many obsolete platforms has been removed. |
| 72 | See the list at the end of etc/MACHINES for details. | 66 | See the list at the end of etc/MACHINES for details. |
| 73 | --- | 67 | |
| 74 | *** Support for systems without alloca has been removed. | 68 | *** Support for systems without alloca has been removed. |
| 75 | --- | 69 | |
| 76 | *** Support for Sun windows has been removed. | 70 | *** Support for Sun windows has been removed. |
| 77 | --- | 71 | |
| 78 | *** The `emacstool' utility has been removed. | 72 | *** The `emacstool' utility has been removed. |
| 79 | 73 | ||
| 80 | ** The following platforms will be removed in a future Emacs version: | 74 | ** The following platforms will be removed in a future Emacs version: |
| @@ -97,18 +91,15 @@ emacs-devel@gnu.org to inform the Emacs developers. | |||
| 97 | *** Platforms not supporting shared libraries (i.e., requiring the | 91 | *** Platforms not supporting shared libraries (i.e., requiring the |
| 98 | NO_SHARED_LIBS compilation flag). | 92 | NO_SHARED_LIBS compilation flag). |
| 99 | 93 | ||
| 100 | --- | ||
| 101 | ** The configure options `--with-gcc', `--without-gcc' have been removed. | 94 | ** The configure options `--with-gcc', `--without-gcc' have been removed. |
| 102 | Configure will use gcc by default. Set the CC environment variable if | 95 | Configure will use gcc by default. Set the CC environment variable if |
| 103 | you need control over which C compiler is used. | 96 | you need control over which C compiler is used. |
| 104 | 97 | ||
| 105 | ** The refcards are now shipped as PDF files. | 98 | ** The refcards are now shipped as PDF files. |
| 106 | 99 | ||
| 107 | --- | ||
| 108 | ** The manuals are now licensed under the GNU Free Documentation License v1.3, | 100 | ** The manuals are now licensed under the GNU Free Documentation License v1.3, |
| 109 | or any later version. | 101 | or any later version. |
| 110 | 102 | ||
| 111 | --- | ||
| 112 | ** Emacs 23 comes with a new set of default icons. | 103 | ** Emacs 23 comes with a new set of default icons. |
| 113 | Various resolutions are available as etc/images/icons/hicolor/*/apps/emacs.png. | 104 | Various resolutions are available as etc/images/icons/hicolor/*/apps/emacs.png. |
| 114 | The Emacs 22 icon is available as `emacs22.png' in the same location. | 105 | The Emacs 22 icon is available as `emacs22.png' in the same location. |
| @@ -116,7 +107,7 @@ The Emacs 22 icon is available as `emacs22.png' in the same location. | |||
| 116 | * Changes in Emacs 23.1 | 107 | * Changes in Emacs 23.1 |
| 117 | 108 | ||
| 118 | ** Improved X Window System support | 109 | ** Improved X Window System support |
| 119 | +++ | 110 | |
| 120 | *** Emacs now supports using both X displays and ttys in one session. | 111 | *** Emacs now supports using both X displays and ttys in one session. |
| 121 | With an Emacs server active (M-x server-start), `emacsclient -t' | 112 | With an Emacs server active (M-x server-start), `emacsclient -t' |
| 122 | creates a tty frame connected to the running emacs server. You can | 113 | creates a tty frame connected to the running emacs server. You can |
| @@ -127,12 +118,12 @@ with Gtk+, see etc/PROBLEMS. | |||
| 127 | 118 | ||
| 128 | You can test for the presence of this feature in your Lisp code by | 119 | You can test for the presence of this feature in your Lisp code by |
| 129 | testing for the `multi-tty' feature. | 120 | testing for the `multi-tty' feature. |
| 130 | +++ | 121 | |
| 131 | *** Emacs can now start in background, as a daemon when using the | 122 | *** Emacs starts in the background, as a daemon, when given the |
| 132 | --daemon command line argument. It disconnects from the terminal and | 123 | --daemon command line argument. It disconnects from the terminal and |
| 133 | starts the server. Clients can connect and create graphical or | 124 | starts the server. Clients can connect and create graphical or |
| 134 | terminal frames using emacsclient. | 125 | terminal frames using emacsclient. |
| 135 | +++ | 126 | |
| 136 | **** emacsclient starts emacs in daemon mode and connects to it when | 127 | **** emacsclient starts emacs in daemon mode and connects to it when |
| 137 | --alternate-editor="" is used (or when the evironment variable | 128 | --alternate-editor="" is used (or when the evironment variable |
| 138 | ALTERNATE_EDITOR is set to "") and emacsclient cannot connect to an | 129 | ALTERNATE_EDITOR is set to "") and emacsclient cannot connect to an |
| @@ -146,7 +137,7 @@ You can embed Emacs in another application on X11. The new command line | |||
| 146 | option --parent-id is used to pass the parent window id to Emacs. See | 137 | option --parent-id is used to pass the parent window id to Emacs. See |
| 147 | http://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html | 138 | http://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html |
| 148 | for details about XEmbed. | 139 | for details about XEmbed. |
| 149 | +++ | 140 | |
| 150 | *** Emacs can now set the frame opacity. | 141 | *** Emacs can now set the frame opacity. |
| 151 | The opacity of a frame can be controlled by setting the `alpha' frame | 142 | The opacity of a frame can be controlled by setting the `alpha' frame |
| 152 | parameter. This only takes effect on a compositing window manager for | 143 | parameter. This only takes effect on a compositing window manager for |
| @@ -162,23 +153,23 @@ The variable `frame-alpha-lower-limit' defines a lower bound for the | |||
| 162 | opacity; the default is 20. | 153 | opacity; the default is 20. |
| 163 | 154 | ||
| 164 | ** Internationalization changes | 155 | ** Internationalization changes |
| 165 | +++ | 156 | |
| 166 | *** The Emacs character set is now a superset of Unicode. | 157 | *** The Emacs character set is now a superset of Unicode. |
| 167 | (It has about four times the code space, which should be plenty). | 158 | (It has about four times the code space, which should be plenty). |
| 168 | 159 | ||
| 169 | The internal encoding used for buffers and strings is now | 160 | The internal encoding used for buffers and strings is now |
| 170 | Unicode-based and called `utf-8-emacs'. This encoding is backwards | 161 | Unicode-based and called `utf-8-emacs' (`emacs-internal' is an alias |
| 171 | compatible with Unicode's UTF-8 encoding. The encoding | 162 | for this). This encoding is backward-compatible with Unicode's UTF-8 |
| 172 | `emacs-internal' is an alias for this. The internal encoding | 163 | encoding. The internal encoding previously used by Emacs, |
| 173 | previously used by Emacs, `emacs-mule', is still available. | 164 | `emacs-mule', is still available for reading and writing files. |
| 174 | 165 | ||
| 175 | During byte-compilation, Emacs 23 uses `utf-8-emacs' to write files. | 166 | During byte-compilation, Emacs 23 uses `utf-8-emacs' to write files. |
| 176 | As a result, byte-compiled files containing non-ASCII characters can't | 167 | As a result, byte-compiled files containing non-ASCII characters can't |
| 177 | be read by earlier versions of Emacs. Files compiled by Emacs 20, 21, | 168 | be read by earlier versions of Emacs. Files compiled by Emacs 20, 21, |
| 178 | or 22 are loaded correctly as emacs-mule (whether or not they contain | 169 | or 22 are loaded correctly as `emacs-mule' (whether or not they |
| 179 | multibyte characters). This takes somewhat more time, so it may be | 170 | contain multibyte characters). This takes somewhat more time, so it |
| 180 | worth recompiling existing .elc files which don't need to be shared | 171 | may be worth recompiling existing .elc files which don't need to be |
| 181 | with older Emacsen. | 172 | shared with older Emacsen. |
| 182 | 173 | ||
| 183 | *** There are new coding systems/aliases; see M-x list-coding-systems. | 174 | *** There are new coding systems/aliases; see M-x list-coding-systems. |
| 184 | 175 | ||
| @@ -186,23 +177,17 @@ with older Emacsen. | |||
| 186 | See M-x list-character-sets. New charsets can be defined conveniently | 177 | See M-x list-character-sets. New charsets can be defined conveniently |
| 187 | as tables of unicodes. | 178 | as tables of unicodes. |
| 188 | 179 | ||
| 189 | **** The dimension of a charset is now 1, 2, 3, or 4, and the size of | ||
| 190 | each dimension is no longer limited to 94 or 96. | ||
| 191 | |||
| 192 | **** A dynamic charset priority list is used to infer the charset of | ||
| 193 | characters for display. | ||
| 194 | +++ | ||
| 195 | *** There are new language environments for Chinese-GBK, | 180 | *** There are new language environments for Chinese-GBK, |
| 196 | Chinese-GB18030, Khmer, Bengali, Punjabi, Gujarati, Oriya, Telugu, | 181 | Chinese-GB18030, Khmer, Bengali, Punjabi, Gujarati, Oriya, Telugu, |
| 197 | Sinhala, and TaiViet. | 182 | Sinhala, and TaiViet. |
| 198 | +++ | 183 | |
| 199 | *** The minor modes unify-8859-on-encoding-mode and | 184 | *** The minor modes unify-8859-on-encoding-mode and |
| 200 | unify-8859-on-decoding-mode are obsolete. | 185 | unify-8859-on-decoding-mode are obsolete. |
| 201 | +++ | 186 | |
| 202 | *** `ucs-insert' is bound to `C-x 8 RET' and in addition to hex numbers | 187 | *** `ucs-insert' is bound to `C-x 8 RET' and in addition to hex numbers |
| 203 | accepts numbers in hash notation (e.g. #o21430 for octal, or #10r8984 for | 188 | accepts numbers in hash notation (e.g. #o21430 for octal, or #10r8984 for |
| 204 | decimal). It also accepts Unicode character names with completion. | 189 | decimal). It also accepts Unicode character names with completion. |
| 205 | --- | 190 | |
| 206 | *** The `cyrillic-translit' input method supports many new characters. | 191 | *** The `cyrillic-translit' input method supports many new characters. |
| 207 | Common typographical characters available from Unicode were added to | 192 | Common typographical characters available from Unicode were added to |
| 208 | `cyrillic-translit': punctuation marks, accented characters, fractions, | 193 | `cyrillic-translit': punctuation marks, accented characters, fractions, |
| @@ -214,52 +199,50 @@ on a serial port. The serial port can be configured at runtime with | |||
| 214 | the mode-line mouse menu. | 199 | the mode-line mouse menu. |
| 215 | 200 | ||
| 216 | ** Menu Bar changes | 201 | ** Menu Bar changes |
| 217 | --- | 202 | |
| 218 | *** In the Options menu, the "Set Default Font" item applies the | 203 | *** In the Options menu, the "Set Default Font" item applies the |
| 219 | selected font to the `default' face on all frames, not just the | 204 | selected font to the `default' face on all frames, not just the |
| 220 | current frame. Furthermore, if Emacs is compiled with both GTK and | 205 | current frame. Furthermore, if Emacs is compiled with both GTK and |
| 221 | Fontconfig support, the "Set Default Font" item uses the GTK font | 206 | Fontconfig support, the "Set Default Font" item uses the GTK font |
| 222 | selection dialog instead of an Emacs pop-up menu. | 207 | selection dialog instead of an Emacs pop-up menu. |
| 223 | --- | 208 | |
| 224 | *** The font setting chosen by "Set Default Font" is saved if the | 209 | *** The font setting chosen by "Set Default Font" is saved if the |
| 225 | "Save Options" item is used. | 210 | "Save Options" item is used. |
| 226 | 211 | ||
| 227 | *** The Tools menu contains a new Encryption/Decryption submenu. | 212 | *** The Tools menu contains a new Encryption/Decryption submenu. |
| 228 | This contains commands provided by EasyPG, the newly-included | 213 | This contains commands provided by EasyPG, the newly-included |
| 229 | interface to GnuPG (see New Modes and Packages). | 214 | interface to GnuPG (see New Modes and Packages). |
| 230 | --- | 215 | |
| 231 | *** In the Options menu, the "Truncate Long Lines in the Buffer" entry | 216 | *** In the Options menu, the "Truncate Long Lines in the Buffer" entry |
| 232 | has been replaced with a submenu offering three different ways to | 217 | has been replaced with a submenu offering three different ways to |
| 233 | handle long lines: truncation, continuation at the window edge, and | 218 | handle long lines: truncation, continuation at the window edge, and |
| 234 | the new word wrapping behavior (see Editing Changes, below). | 219 | the new word wrapping behavior (see Editing Changes, below). |
| 235 | --- | 220 | |
| 236 | *** Improvements to menus for major and minor modes | 221 | *** Improvements to menus for major and minor modes |
| 237 | More major and minor modes now have a mode specific menu, and existing | 222 | More major and minor modes now have a mode specific menu, and existing |
| 238 | mode menus have been improved to include more functionality. | 223 | mode menus have been improved to include more functionality. |
| 239 | 224 | ||
| 240 | ** Mode-line changes | 225 | ** Mode-line changes |
| 241 | +++ | 226 | |
| 242 | *** The mode-line displays a `@', instead of `-', if the | 227 | *** The mode-line displays a `@', instead of `-', if the |
| 243 | default-directory for the current buffer is on a remote machine. | 228 | default-directory for the current buffer is on a remote machine. |
| 244 | --- | 229 | |
| 245 | *** The mode-line displays a mode menu when mouse-1 is clicked on a | 230 | *** The mode-line displays a mode menu when mouse-1 is clicked on a |
| 246 | minor mode, in the same way as it already did for major modes. | 231 | minor mode, in the same way as it already did for major modes. |
| 247 | --- | 232 | |
| 248 | *** The `mode-line-emphasis' face is used to highlight certain | 233 | *** The `mode-line-emphasis' face is used to highlight certain |
| 249 | mode-line information (e.g. waiting for a VC command to finish). | 234 | mode-line information (e.g. waiting for a VC command to finish). |
| 250 | --- | 235 | |
| 251 | *** The mode-line tooltips have been improved to provide more details. | 236 | *** The mode-line tooltips have been improved to provide more details. |
| 252 | +++ | 237 | |
| 253 | *** The VC, line/colum number and minor mode indicators on the mode | 238 | *** The VC, line/colum number and minor mode indicators on the mode |
| 254 | line are now interactive: mouse-1 can be used on them to pop up a menu. | 239 | line are now interactive: mouse-1 can be used on them to pop up a menu. |
| 255 | 240 | ||
| 256 | +++ | ||
| 257 | ** File deletion can make use of the Recycle Bin or system Trash folder. | 241 | ** File deletion can make use of the Recycle Bin or system Trash folder. |
| 258 | Set `delete-by-moving-to-trash' non-nil to use this. Deleted files | 242 | Set `delete-by-moving-to-trash' non-nil to use this. Deleted files |
| 259 | and directories will then be sent to the Recycle Bin on Windows, and | 243 | and directories will then be sent to the Recycle Bin on Windows, and |
| 260 | to `trash-directory' on other systems. | 244 | to `trash-directory' on other systems. |
| 261 | 245 | ||
| 262 | +++ | ||
| 263 | ** Directory-local variables can now be defined. | 246 | ** Directory-local variables can now be defined. |
| 264 | By default, Emacs looks in .dir-locals.el for directory-local | 247 | By default, Emacs looks in .dir-locals.el for directory-local |
| 265 | variables. For more information, see `dir-locals-set-directory-class' | 248 | variables. For more information, see `dir-locals-set-directory-class' |
| @@ -275,28 +258,23 @@ in *Messages* with the password blanked out. | |||
| 275 | 258 | ||
| 276 | * Startup Changes in Emacs 23.1 | 259 | * Startup Changes in Emacs 23.1 |
| 277 | 260 | ||
| 278 | +++ | ||
| 279 | ** The option `inhibit-startup-screen' (with aliases to old names | 261 | ** The option `inhibit-startup-screen' (with aliases to old names |
| 280 | `inhibit-splash-screen' and `inhibit-startup-message') doesn't inhibit | 262 | `inhibit-splash-screen' and `inhibit-startup-message') doesn't inhibit |
| 281 | display of the initial message in the *scratch* buffer. If you don't | 263 | display of the initial message in the *scratch* buffer. If you don't |
| 282 | want to display the initial message in the *scratch* buffer at startup, | 264 | want to display the initial message in the *scratch* buffer at startup, |
| 283 | you can set the option `initial-scratch-message' to nil. | 265 | you can set the option `initial-scratch-message' to nil. |
| 284 | 266 | ||
| 285 | +++ | ||
| 286 | ** New user option `initial-buffer-choice' specifies what to display | 267 | ** New user option `initial-buffer-choice' specifies what to display |
| 287 | after starting Emacs: startup screen, *scratch* buffer, visiting a | 268 | after starting Emacs: startup screen, *scratch* buffer, visiting a |
| 288 | file or directory. | 269 | file or directory. |
| 289 | 270 | ||
| 290 | +++ | ||
| 291 | ** New alias `argv' for `command-line-args-left' | 271 | ** New alias `argv' for `command-line-args-left' |
| 292 | This is a convenience alias, so that one can write `(pop argv)' | 272 | This is a convenience alias, so that one can write `(pop argv)' |
| 293 | inside of --eval command line arguments in order to access | 273 | inside of --eval command line arguments in order to access |
| 294 | following arguments. | 274 | following arguments. |
| 295 | 275 | ||
| 296 | +++ | ||
| 297 | ** The abbrev file is no longer read at startup in batch mode. | 276 | ** The abbrev file is no longer read at startup in batch mode. |
| 298 | 277 | ||
| 299 | +++ | ||
| 300 | ** Emacs now supports invocation by an X session manager. | 278 | ** Emacs now supports invocation by an X session manager. |
| 301 | It can save a session and restore it later. See the documentation of | 279 | It can save a session and restore it later. See the documentation of |
| 302 | the functions `emacs-session-save' and `emacs-session-restore'. | 280 | the functions `emacs-session-save' and `emacs-session-restore'. |
| @@ -305,16 +283,13 @@ documented.) | |||
| 305 | 283 | ||
| 306 | * Incompatible Editing Changes in Emacs 23.1 | 284 | * Incompatible Editing Changes in Emacs 23.1 |
| 307 | 285 | ||
| 308 | +++ | ||
| 309 | ** In Dired, `dired-flag-garbage-files' is rebound from `&' to `%&' | 286 | ** In Dired, `dired-flag-garbage-files' is rebound from `&' to `%&' |
| 310 | on the regexp command prefix map. | 287 | on the regexp command prefix map. |
| 311 | 288 | ||
| 312 | +++ | ||
| 313 | ** In Dired-x, all command guesses for ! are now added to the default | 289 | ** In Dired-x, all command guesses for ! are now added to the default |
| 314 | list accessible by M-n instead of pushing all guesses temporarily into | 290 | list accessible by M-n instead of pushing all guesses temporarily into |
| 315 | the history list. | 291 | the history list. |
| 316 | 292 | ||
| 317 | +++ | ||
| 318 | ** In Isearch mode, a special case of typing `C-w' at the beginning of | 293 | ** In Isearch mode, a special case of typing `C-w' at the beginning of |
| 319 | the minibuffer that toggles word search (i.e. using key sequences | 294 | the minibuffer that toggles word search (i.e. using key sequences |
| 320 | `C-s RET C-w' or `C-s M-e C-w') is obsolete. You can use the global key | 295 | `C-s RET C-w' or `C-s M-e C-w') is obsolete. You can use the global key |
| @@ -322,7 +297,6 @@ the minibuffer that toggles word search (i.e. using key sequences | |||
| 322 | toggle word search. To start nonincremental word search you can now use | 297 | toggle word search. To start nonincremental word search you can now use |
| 323 | `M-s w RET' and `M-s w C-r RET' instead of `C-s RET C-w' and `C-r RET C-w'. | 298 | `M-s w RET' and `M-s w C-r RET' instead of `C-s RET C-w' and `C-r RET C-w'. |
| 324 | 299 | ||
| 325 | +++ | ||
| 326 | ** In Info, `Info-search' is unbound from `M-s' to allow using `M-s w' | 300 | ** In Info, `Info-search' is unbound from `M-s' to allow using `M-s w' |
| 327 | for word search as well as other search commands from the global prefix | 301 | for word search as well as other search commands from the global prefix |
| 328 | key `M-s'. `Info-search' is still bound to `s', and also incremental | 302 | key `M-s'. `Info-search' is still bound to `s', and also incremental |
| @@ -330,12 +304,10 @@ search commands `C-s', `C-M-s', `C-r', `C-M-r' are available for searching | |||
| 330 | through multiple Info nodes, together with their nonincremental versions | 304 | through multiple Info nodes, together with their nonincremental versions |
| 331 | `C-s RET', `C-r RET', `C-M-s RET', `C-M-r RET', `M-s w RET'. | 305 | `C-s RET', `C-r RET', `C-M-s RET', `C-M-r RET', `M-s w RET'. |
| 332 | 306 | ||
| 333 | --- | 307 | ** In Text mode, `center-line' and `center-paragraph' are rebound from |
| 334 | ** In Text mode, `center-line' and `center-paragraph' are rebound | 308 | `M-s' and `M-S' to global keys `M-o M-s' and `M-o M-S' on the global |
| 335 | from `M-s' and `M-S' to global keys `M-o M-s' and `M-o M-S' on the | 309 | prefix map `M-o', which is intended for such formatting commands. |
| 336 | global prefix map `M-o' intended for such formatting commands. | ||
| 337 | 310 | ||
| 338 | --- | ||
| 339 | ** The following input methods were removed in Emacs 22.2, but this was | 311 | ** The following input methods were removed in Emacs 22.2, but this was |
| 340 | not advertised: danish-alt-postfix, esperanto-alt-postfix, | 312 | not advertised: danish-alt-postfix, esperanto-alt-postfix, |
| 341 | finnish-alt-postfix, german-alt-postfix, icelandic-alt-postfix, | 313 | finnish-alt-postfix, german-alt-postfix, icelandic-alt-postfix, |
| @@ -343,58 +315,49 @@ norwegian-alt-postfix, scandinavian-alt-postfix, spanish-alt-postfix, | |||
| 343 | and swedish-alt-postfix. Use the versions without "alt-", which are | 315 | and swedish-alt-postfix. Use the versions without "alt-", which are |
| 344 | identical. | 316 | identical. |
| 345 | 317 | ||
| 346 | +++ | ||
| 347 | ** If a function in write-region-annotate-functions returns with a | ||
| 348 | different buffer current, Emacs no longer kills that buffer | ||
| 349 | automatically. This behavior existed in previous versions of Emacs, | ||
| 350 | but was undocumented. To kill a buffer after write-region, give the | ||
| 351 | variable `write-region-post-annotation-function' a buffer-local value | ||
| 352 | of `kill-buffer'. | ||
| 353 | |||
| 354 | 318 | ||
| 355 | * Editing Changes in Emacs 23.1 | 319 | * Editing Changes in Emacs 23.1 |
| 356 | 320 | ||
| 357 | +++ | ||
| 358 | ** The C-n and C-p line-motion commands now move by screen lines, | 321 | ** The C-n and C-p line-motion commands now move by screen lines, |
| 359 | taking continued lines and variable-width characters into account. | 322 | taking continued lines and variable-width characters into account. |
| 360 | Setting `line-move-visual' to nil reverts this to the previous | 323 | Setting `line-move-visual' to nil reverts this to the previous |
| 361 | behavior (motion by logical lines based on buffer contents alone). | 324 | behavior (i.e., motion by logical lines based on buffer contents |
| 325 | alone). | ||
| 362 | 326 | ||
| 363 | +++ | ||
| 364 | ** C-x C-c now invokes `save-buffers-kill-terminal', and C-z now | 327 | ** C-x C-c now invokes `save-buffers-kill-terminal', and C-z now |
| 365 | invokes `suspend-frame'. This change is for compatibility with the | 328 | invokes `suspend-frame'. These changes are for compatibility with the |
| 366 | new multi-tty support (see `Improved X Window System support' above). | 329 | new multi-tty support (see `Improved X Window System support' above). |
| 367 | 330 | ||
| 368 | ** Mark changes | 331 | ** Mark changes |
| 369 | +++ | 332 | |
| 370 | *** Transient Mark mode is now on by default. | 333 | *** Transient Mark mode is now on by default. |
| 371 | +++ | 334 | |
| 372 | *** mark-even-if-inactive now defaults to t | 335 | *** mark-even-if-inactive now defaults to t |
| 373 | +++ | 336 | |
| 374 | *** When Transient Mark mode is on, C-SPC C-SPC pushes a mark without | 337 | *** When Transient Mark mode is on, C-SPC C-SPC pushes a mark without |
| 375 | activating it. | 338 | activating it. |
| 376 | +++ | 339 | |
| 377 | *** When Transient Mark mode is on, M-q now fills the region if the | 340 | *** When Transient Mark mode is on, M-q now fills the region if the |
| 378 | region is active. Otherwise, it fills the current paragraph. | 341 | region is active. Otherwise, it fills the current paragraph. |
| 379 | +++ | 342 | |
| 380 | *** When Transient Mark mode is on, M-$ now checks spelling of the | 343 | *** When Transient Mark mode is on, M-$ now checks spelling of the |
| 381 | region if the region is active. Otherwise, it checks spelling of the | 344 | region if the region is active. Otherwise, it checks spelling of the |
| 382 | word at point. | 345 | word at point. |
| 383 | +++ | 346 | |
| 384 | *** When Transient Mark mode is on, TAB now indents the region if the | 347 | *** When Transient Mark mode is on, TAB now indents the region if the |
| 385 | region is active. | 348 | region is active. |
| 386 | +++ | 349 | |
| 387 | *** `use-empty-active-region' controls whether an empty active region | 350 | *** The variable `use-empty-active-region' controls whether an empty |
| 388 | in Transient Mark mode should make commands operate on that empty | 351 | active region in Transient Mark mode should make commands operate on |
| 389 | region. | 352 | that empty region. |
| 390 | 353 | ||
| 391 | ** Temporarily active regions | 354 | ** Temporarily active regions |
| 392 | +++ | 355 | |
| 393 | *** The new variable shift-select-mode, non-nil by default, controls | 356 | *** The new variable shift-select-mode, non-nil by default, controls |
| 394 | shift-selection. When Shift Select mode is on, shift-translated | 357 | shift-selection. When Shift Select mode is on, shift-translated |
| 395 | motion keys (e.g. S-left and S-down) activate and extend a temporary | 358 | motion keys (e.g. S-left and S-down) activate and extend a temporary |
| 396 | region, similar to mouse-selection. | 359 | region, similar to mouse-selection. |
| 397 | +++ | 360 | |
| 398 | *** Temporarily active regions, created using shift-selection or | 361 | *** Temporarily active regions, created using shift-selection or |
| 399 | mouse-selection, are not necessarily deactivated in the next command. | 362 | mouse-selection, are not necessarily deactivated in the next command. |
| 400 | They are only deactivated after point motion commands that are not | 363 | They are only deactivated after point motion commands that are not |
| @@ -403,7 +366,7 @@ the mark in Transient Mark mode (e.g., any command that modifies the | |||
| 403 | buffer). | 366 | buffer). |
| 404 | 367 | ||
| 405 | ** Minibuffer and completion changes | 368 | ** Minibuffer and completion changes |
| 406 | +++ | 369 | |
| 407 | *** Emacs may ask for confirmation before opening a non-existent file | 370 | *** Emacs may ask for confirmation before opening a non-existent file |
| 408 | or buffer. By default, Emacs requests confirmation if you type RET | 371 | or buffer. By default, Emacs requests confirmation if you type RET |
| 409 | immediately after TAB, and the resulting input is not an existing file | 372 | immediately after TAB, and the resulting input is not an existing file |
| @@ -416,7 +379,7 @@ The new variable confirm-nonexistent-file-or-buffer determines whether | |||
| 416 | Emacs asks for confirmation. The default value is `after-completion'. | 379 | Emacs asks for confirmation. The default value is `after-completion'. |
| 417 | If you change it to t, Emacs always asks for confirmation; if you | 380 | If you change it to t, Emacs always asks for confirmation; if you |
| 418 | change it to nil, Emacs never asks for confirmation. | 381 | change it to nil, Emacs never asks for confirmation. |
| 419 | +++ | 382 | |
| 420 | *** The rules for performing completion have been changed. | 383 | *** The rules for performing completion have been changed. |
| 421 | When generating completion alternatives, Emacs now takes the | 384 | When generating completion alternatives, Emacs now takes the |
| 422 | minibuffer text after point, if any, into account: this text is | 385 | minibuffer text after point, if any, into account: this text is |
| @@ -429,16 +392,16 @@ performing completion. | |||
| 429 | 392 | ||
| 430 | The new variable `completion-styles' can be customized to choose your | 393 | The new variable `completion-styles' can be customized to choose your |
| 431 | favorite completion style. | 394 | favorite completion style. |
| 432 | +++ | 395 | |
| 433 | *** When M-n in the minibuffer reaches the end of the list of defaults, | 396 | *** When M-n in the minibuffer reaches the end of the list of defaults, |
| 434 | it adds the completion list to the end, so next M-n continues putting | 397 | it adds the completion list to the end, so next M-n continues putting |
| 435 | completion items to the minibuffer. The same principle applies to | 398 | completion items to the minibuffer. The same principle applies to |
| 436 | incremental search commands as well: C-s or C-M-s starts searching | 399 | incremental search commands as well: C-s or C-M-s starts searching |
| 437 | the default values and after the end of defaults they continue | 400 | the default values and after the end of defaults they continue |
| 438 | searching minibuffer completion items. | 401 | searching minibuffer completion items. |
| 439 | --- | 402 | |
| 440 | *** Minibuffer input of shell commands now comes with completion. | 403 | *** Minibuffer input of shell commands now comes with completion. |
| 441 | +++ | 404 | |
| 442 | *** In the `C-x d' (Dired) prompt, typing M-n gives the visited file | 405 | *** In the `C-x d' (Dired) prompt, typing M-n gives the visited file |
| 443 | name of the current buffer. | 406 | name of the current buffer. |
| 444 | 407 | ||
| @@ -452,13 +415,13 @@ similarly, using the file displayed on the current line. | |||
| 452 | `keep-lines', `flush-lines' and `how-many'. This list includes the active | 415 | `keep-lines', `flush-lines' and `how-many'. This list includes the active |
| 453 | region in transient-mark-mode, the word under the cursor, the last Isearch | 416 | region in transient-mark-mode, the word under the cursor, the last Isearch |
| 454 | regexp, the last Isearch string and the last replacement regexp. | 417 | regexp, the last Isearch string and the last replacement regexp. |
| 455 | --- | 418 | |
| 456 | *** When enable-recursive-minibuffers is non-nil, operations which use | 419 | *** When enable-recursive-minibuffers is non-nil, operations which use |
| 457 | switch-to-buffer (such as C-x b and C-x C-f) do not fail any more when | 420 | switch-to-buffer (such as C-x b and C-x C-f) do not fail any more when |
| 458 | used in a minibuffer or a dedicated window. Instead, they fallback on | 421 | used in a minibuffer or a dedicated window. Instead, they fallback on |
| 459 | using pop-to-buffer, which will use some other window. This change | 422 | using pop-to-buffer, which will use some other window. This change |
| 460 | has no effect when enable-recursive-minibuffers is nil (the default). | 423 | has no effect when enable-recursive-minibuffers is nil (the default). |
| 461 | +++ | 424 | |
| 462 | *** Isearch started in the minibuffer searches in the minibuffer history. | 425 | *** Isearch started in the minibuffer searches in the minibuffer history. |
| 463 | Reverse Isearch commands (C-r, C-M-r) search in previous minibuffer | 426 | Reverse Isearch commands (C-r, C-M-r) search in previous minibuffer |
| 464 | history elements, and forward Isearch commands (C-s, C-M-s) search in | 427 | history elements, and forward Isearch commands (C-s, C-M-s) search in |
| @@ -466,26 +429,26 @@ next history elements. When the reverse search reaches the first history | |||
| 466 | element, it wraps to the last history element, and the forward search | 429 | element, it wraps to the last history element, and the forward search |
| 467 | wraps to the first history element. When the search is terminated, the | 430 | wraps to the first history element. When the search is terminated, the |
| 468 | history element containing the search string becomes the current. | 431 | history element containing the search string becomes the current. |
| 469 | +++ | 432 | |
| 470 | *** The variable read-file-name-completion-ignore-case overrides | 433 | *** The variable read-file-name-completion-ignore-case overrides |
| 471 | completion-ignore-case for file name completion. | 434 | completion-ignore-case for file name completion. |
| 472 | +++ | 435 | |
| 473 | *** The variable read-buffer-completion-ignore-case overrides | 436 | *** The variable read-buffer-completion-ignore-case overrides |
| 474 | completion-ignore-case for buffer name completion. | 437 | completion-ignore-case for buffer name completion. |
| 475 | --- | 438 | |
| 476 | *** The new command `minibuffer-force-complete' chooses one of the | 439 | *** The new command `minibuffer-force-complete' chooses one of the |
| 477 | possible completions, rather than stopping at the common prefix. | 440 | possible completions, rather than stopping at the common prefix. |
| 478 | +++ | 441 | |
| 479 | *** If `completion-auto-help' is `lazy', Emacs shows the completions | 442 | *** If `completion-auto-help' is `lazy', Emacs shows the completions |
| 480 | buffer only on the second attempt to complete. This was already | 443 | buffer only on the second attempt to complete. This was already |
| 481 | supported in `partial-completion-mode'. | 444 | supported in `partial-completion-mode'. |
| 482 | 445 | ||
| 483 | ** Face changes | 446 | ** Face changes |
| 484 | +++ | 447 | |
| 485 | *** S-down-mouse-1 now pops up a menu for changing the font and text | 448 | *** S-down-mouse-1 now pops up a menu for changing the font and text |
| 486 | size of the default face in the current buffer. The face is changed | 449 | size of the default face in the current buffer. The face is changed |
| 487 | via face remapping (see Lisp changes, below). | 450 | via face remapping (see Lisp changes, below). |
| 488 | +++ | 451 | |
| 489 | *** New commands to change the default face size in the current buffer. | 452 | *** New commands to change the default face size in the current buffer. |
| 490 | To increase it, type `C-x C-+' or `C-x C-='. To decrease it, type | 453 | To increase it, type `C-x C-+' or `C-x C-='. To decrease it, type |
| 491 | `C-x C--'. To restore the default (global) face size, type `C-x C-0'. | 454 | `C-x C--'. To restore the default (global) face size, type `C-x C-0'. |
| @@ -501,16 +464,15 @@ remap the default face in the current buffer. See "Buffer Face mode", | |||
| 501 | under New Modes and Packages. | 464 | under New Modes and Packages. |
| 502 | 465 | ||
| 503 | ** Primary selection changes | 466 | ** Primary selection changes |
| 504 | +++ | 467 | |
| 505 | *** If `select-active-regions' is t, setting the mark automatically | 468 | *** If `select-active-regions' is t, setting the mark automatically |
| 506 | makes the new region into the primary selection (for interaction with | 469 | makes the new region into the primary selection (for interaction with |
| 507 | other window applications). If you enable this, you might want to | 470 | other window applications). If you enable this, you might want to |
| 508 | bind `mouse-yank-primary' to Mouse-2. | 471 | bind `mouse-yank-primary' to Mouse-2. |
| 509 | +++ | 472 | |
| 510 | *** You can disable kill ring commands from accessing the primary | 473 | *** You can disable kill ring commands from accessing the primary |
| 511 | selection by setting `x-select-enable-primary' to nil. | 474 | selection by setting `x-select-enable-primary' to nil. |
| 512 | 475 | ||
| 513 | --- | ||
| 514 | ** Continuation lines can now be wrapped at word boundaries | 476 | ** Continuation lines can now be wrapped at word boundaries |
| 515 | (word-wrapping). This is controlled by the new per-buffer variable | 477 | (word-wrapping). This is controlled by the new per-buffer variable |
| 516 | `word-wrap'. Word wrapping does not take place if continuation lines | 478 | `word-wrap'. Word wrapping does not take place if continuation lines |
| @@ -521,29 +483,29 @@ editing commands to work on screen lines rather than text lines. See | |||
| 521 | New Modes and Packages, below. | 483 | New Modes and Packages, below. |
| 522 | 484 | ||
| 523 | ** Window management changes | 485 | ** Window management changes |
| 524 | +++ | 486 | |
| 525 | *** truncate-partial-width-windows now accepts integer values, which | 487 | *** truncate-partial-width-windows now accepts integer values, which |
| 526 | specify a minimum window width for partial-width windows, below which | 488 | specify a minimum window width for partial-width windows, below which |
| 527 | lines are truncated. The default has been changed to 50. | 489 | lines are truncated. The default has been changed to 50. |
| 528 | 490 | ||
| 529 | *** The new command balance-windows-area balances windows both | 491 | *** The new command balance-windows-area balances windows both |
| 530 | vertically and horizontally. | 492 | vertically and horizontally. |
| 531 | --- | 493 | |
| 532 | *** pop-to-buffer now always sets input focus when the popped-to window | 494 | *** pop-to-buffer now always sets input focus when the popped-to window |
| 533 | is on a different frame. | 495 | is on a different frame. |
| 534 | 496 | ||
| 535 | ** Miscellaneous changes: | 497 | ** Miscellaneous changes: |
| 536 | +++ | 498 | |
| 537 | *** C-l is bound to the new command recenter-top-bottom, rather than recenter. | 499 | *** C-l is bound to the new command recenter-top-bottom, rather than recenter. |
| 538 | This moves the current line to window center, top and bottom on | 500 | This moves the current line to window center, top and bottom on |
| 539 | successive invocations. | 501 | successive invocations. |
| 540 | +++ | 502 | |
| 541 | *** scroll-preserve-screen-position also preserves the column position. | 503 | *** scroll-preserve-screen-position also preserves the column position. |
| 542 | +++ | 504 | |
| 543 | *** If `yank-pop-change-selection' is t, rotating the kill ring also | 505 | *** If `yank-pop-change-selection' is t, rotating the kill ring also |
| 544 | updates the selection or clipboard to the current yank, just as M-w | 506 | updates the selection or clipboard to the current yank, just as M-w |
| 545 | would do so with the text it copies to the kill ring. | 507 | would do so with the text it copies to the kill ring. |
| 546 | +++ | 508 | |
| 547 | *** C-M-% now shows replacement as it would look in the buffer, with | 509 | *** C-M-% now shows replacement as it would look in the buffer, with |
| 548 | `\N' and `\&' substituted according to the match. Old behavior can be | 510 | `\N' and `\&' substituted according to the match. Old behavior can be |
| 549 | restored by customizing `query-replace-show-replacement'. | 511 | restored by customizing `query-replace-show-replacement'. |
| @@ -552,17 +514,17 @@ restored by customizing `query-replace-show-replacement'. | |||
| 552 | called with a prefix and the default directory is a remote file name. | 514 | called with a prefix and the default directory is a remote file name. |
| 553 | This is because some file name handlers (like ange-ftp) are not able to | 515 | This is because some file name handlers (like ange-ftp) are not able to |
| 554 | run processes remotely. | 516 | run processes remotely. |
| 555 | +++ | 517 | |
| 556 | *** The new command kill-matching-buffers kills buffers whose name | 518 | *** The new command kill-matching-buffers kills buffers whose name |
| 557 | matches a regexp. | 519 | matches a regexp. |
| 558 | --- | 520 | |
| 559 | *** The value of comment-style now defaults to `indent'. | 521 | *** The value of comment-style now defaults to `indent'. |
| 560 | Thefore, comment-start markers are inserted at the current indentation | 522 | Thefore, comment-start markers are inserted at the current indentation |
| 561 | of the region to comment, rather than the leftmost column. | 523 | of the region to comment, rather than the leftmost column. |
| 562 | --- | 524 | |
| 563 | *** The new commands `pp-macroexpand-expression' and | 525 | *** The new commands `pp-macroexpand-expression' and |
| 564 | `pp-macroexpand-last-sexp' pretty-print macro expansions. | 526 | `pp-macroexpand-last-sexp' pretty-print macro expansions. |
| 565 | +++ | 527 | |
| 566 | *** The new command `set-file-modes' allows to set file's mode bits. | 528 | *** The new command `set-file-modes' allows to set file's mode bits. |
| 567 | The mode bits can be specified in symbolic notation, like with GNU | 529 | The mode bits can be specified in symbolic notation, like with GNU |
| 568 | Coreutils, in addition to an octal number. `chmod' is a new | 530 | Coreutils, in addition to an octal number. `chmod' is a new |
| @@ -571,13 +533,13 @@ convenience alias for this function. | |||
| 571 | *** `next-error-recenter' specifies how next-error should recenter the | 533 | *** `next-error-recenter' specifies how next-error should recenter the |
| 572 | visited source file. Its value can be a number (for example, 0 for | 534 | visited source file. Its value can be a number (for example, 0 for |
| 573 | top line, -1 for bottom line), or nil for no recentering. | 535 | top line, -1 for bottom line), or nil for no recentering. |
| 574 | +++ | 536 | |
| 575 | *** When typing in a password in the echo area, C-y yanks the current | 537 | *** When typing in a password in the echo area, C-y yanks the current |
| 576 | kill into the password. | 538 | kill into the password. |
| 577 | --- | 539 | |
| 578 | *** Tooltip frame parameters `font' and `color' in `tooltip-frame-parameters' | 540 | *** Tooltip frame parameters `font' and `color' in `tooltip-frame-parameters' |
| 579 | are ignored. Customize the `tooltip' face instead. | 541 | are ignored. Customize the `tooltip' face instead. |
| 580 | +++ | 542 | |
| 581 | *** `mkdir' is a new convenience alias for `make-directory'. | 543 | *** `mkdir' is a new convenience alias for `make-directory'. |
| 582 | 544 | ||
| 583 | * New Modes and Packages in Emacs 23.1 | 545 | * New Modes and Packages in Emacs 23.1 |
| @@ -595,7 +557,6 @@ face name, sets `buffer-face-mode-face' to it, and enables | |||
| 595 | buffer-face-mode. See "Face changes", under Editing Changes, for a | 557 | buffer-face-mode. See "Face changes", under Editing Changes, for a |
| 596 | description of face remapping. | 558 | description of face remapping. |
| 597 | 559 | ||
| 598 | --- | ||
| 599 | ** butterfly flips the desired bit on the drive platter. | 560 | ** butterfly flips the desired bit on the drive platter. |
| 600 | See http://xkcd.com/378/ | 561 | See http://xkcd.com/378/ |
| 601 | 562 | ||
| @@ -605,7 +566,6 @@ See http://xkcd.com/378/ | |||
| 605 | D-Bus is an inter-process communication mechanism for applications | 566 | D-Bus is an inter-process communication mechanism for applications |
| 606 | residing on the same host. See the manual for details. | 567 | residing on the same host. See the manual for details. |
| 607 | 568 | ||
| 608 | +++ | ||
| 609 | ** DocView mode allows viewing of PDF, PostScript and DVI documents. | 569 | ** DocView mode allows viewing of PDF, PostScript and DVI documents. |
| 610 | One can also search for a regular expression in the document. For | 570 | One can also search for a regular expression in the document. For |
| 611 | details, see the commentary in doc-view.el. | 571 | details, see the commentary in doc-view.el. |
| @@ -623,7 +583,6 @@ details, see the EasyPG Assistant User's Manual. | |||
| 623 | ** json.el is a library for parsing and generating JSON | 583 | ** json.el is a library for parsing and generating JSON |
| 624 | (JavaScript Object Notation), a lightweight data-interchange format. | 584 | (JavaScript Object Notation), a lightweight data-interchange format. |
| 625 | 585 | ||
| 626 | +++ | ||
| 627 | ** linum.el is a new minor mode to display line numbers for the | 586 | ** linum.el is a new minor mode to display line numbers for the |
| 628 | current buffer. | 587 | current buffer. |
| 629 | 588 | ||
| @@ -635,7 +594,6 @@ Maildir/MH setups. | |||
| 635 | 594 | ||
| 636 | ** minibuffer-depth-indicate-mode shows the minibuffer depth in the prompt. | 595 | ** minibuffer-depth-indicate-mode shows the minibuffer depth in the prompt. |
| 637 | 596 | ||
| 638 | +++ | ||
| 639 | ** nXML Mode | 597 | ** nXML Mode |
| 640 | This is a new mode for editing XML documents. It allows a schema to | 598 | This is a new mode for editing XML documents. It allows a schema to |
| 641 | be associated with the XML document being edited, using Relax NG as | 599 | be associated with the XML document being edited, using Relax NG as |
| @@ -661,10 +619,8 @@ Manual. | |||
| 661 | 619 | ||
| 662 | ** RST mode is a major mode for editing reStructuredText files. | 620 | ** RST mode is a major mode for editing reStructuredText files. |
| 663 | 621 | ||
| 664 | +++ | ||
| 665 | ** Ruby mode is a major mode for Ruby files. | 622 | ** Ruby mode is a major mode for Ruby files. |
| 666 | 623 | ||
| 667 | +++ | ||
| 668 | ** Visual Line mode provides support for editing by visual lines. | 624 | ** Visual Line mode provides support for editing by visual lines. |
| 669 | It turns on word-wrapping in the current buffer, and rebinds C-a, C-e, | 625 | It turns on word-wrapping in the current buffer, and rebinds C-a, C-e, |
| 670 | and C-k to commands that operate by visual lines instead of logical | 626 | and C-k to commands that operate by visual lines instead of logical |
| @@ -695,36 +651,36 @@ specifies what to do when a buffer is visited, killed, or written. | |||
| 695 | * Changes in Specialized Modes and Packages in Emacs 23.1 | 651 | * Changes in Specialized Modes and Packages in Emacs 23.1 |
| 696 | 652 | ||
| 697 | ** Abbrev has been rewritten in Elisp and extended with more flexibility. | 653 | ** Abbrev has been rewritten in Elisp and extended with more flexibility. |
| 698 | +++ | 654 | |
| 699 | *** New functions: abbrev-get, abbrev-put, abbrev-table-get, abbrev-table-put, | 655 | *** New functions: abbrev-get, abbrev-put, abbrev-table-get, abbrev-table-put, |
| 700 | abbrev-table-p, abbrev-insert, abbrev-table-menu. | 656 | abbrev-table-p, abbrev-insert, abbrev-table-menu. |
| 701 | +++ | 657 | |
| 702 | *** Special hook `abbrev-expand-functions' obsoletes `pre-abbrev-expand-hook'. | 658 | *** Special hook `abbrev-expand-functions' obsoletes `pre-abbrev-expand-hook'. |
| 703 | +++ | 659 | |
| 704 | *** `make-abbrev-table', `define-abbrev', `define-abbrev-table' all take | 660 | *** `make-abbrev-table', `define-abbrev', `define-abbrev-table' all take |
| 705 | extra arguments for arbitrary properties. | 661 | extra arguments for arbitrary properties. |
| 706 | +++ | 662 | |
| 707 | *** New variable `abbrev-minor-mode-table-alist'. | 663 | *** New variable `abbrev-minor-mode-table-alist'. |
| 708 | +++ | 664 | |
| 709 | *** `local-abbrev-table' can hold a list of abbrev-tables. | 665 | *** `local-abbrev-table' can hold a list of abbrev-tables. |
| 710 | +++ | 666 | |
| 711 | *** Abbrevs have now the following special properties: | 667 | *** Abbrevs have now the following special properties: |
| 712 | `:count', `:system', `:enable-function', `:case-fixed'. | 668 | `:count', `:system', `:enable-function', `:case-fixed'. |
| 713 | +++ | 669 | |
| 714 | *** Abbrev-tables have now the following special properties: | 670 | *** Abbrev-tables have now the following special properties: |
| 715 | `:parents', `:case-fixed', `:enable-function', `:regexp', | 671 | `:parents', `:case-fixed', `:enable-function', `:regexp', |
| 716 | `abbrev-table-modiff'. | 672 | `abbrev-table-modiff'. |
| 717 | 673 | ||
| 718 | ** Apropos | 674 | ** Apropos |
| 675 | |||
| 719 | *** `apropos-library' describes the elements defined in a given library. | 676 | *** `apropos-library' describes the elements defined in a given library. |
| 677 | |||
| 720 | *** Set `apropos-compact-layout' is you want a more compact (but wider) layout. | 678 | *** Set `apropos-compact-layout' is you want a more compact (but wider) layout. |
| 721 | 679 | ||
| 722 | +++ | ||
| 723 | ** Archive Mode has basic support to browse Rar archives. | 680 | ** Archive Mode has basic support to browse Rar archives. |
| 724 | Note, however, that the free version of the unrar command only handles | 681 | Note, however, that the free version of the unrar command only handles |
| 725 | versions 1 and 2 of the Rar format. | 682 | versions 1 and 2 of the Rar format. |
| 726 | 683 | ||
| 727 | --- | ||
| 728 | ** BibTeX mode | 684 | ** BibTeX mode |
| 729 | 685 | ||
| 730 | *** New command `bibtex-initialize' (re)initializes BibTeX buffers. | 686 | *** New command `bibtex-initialize' (re)initializes BibTeX buffers. |
| @@ -739,13 +695,11 @@ identify cited keys in BibTeX entries, used by `bibtex-find-crossref'. | |||
| 739 | 695 | ||
| 740 | ** Calendar and diary | 696 | ** Calendar and diary |
| 741 | 697 | ||
| 742 | +++ | ||
| 743 | *** There is a new date style, `iso', essentially year/month/day. | 698 | *** There is a new date style, `iso', essentially year/month/day. |
| 744 | The variable `european-calendar-style' is obsolete - use `calendar-date-style'. | 699 | The variable `european-calendar-style' is obsolete - use `calendar-date-style'. |
| 745 | Similarly, the commands `american-calendar' and `european-calendar' | 700 | Similarly, the commands `american-calendar' and `european-calendar' |
| 746 | should be replaced by `calendar-set-date-style'. | 701 | should be replaced by `calendar-set-date-style'. |
| 747 | 702 | ||
| 748 | +++ | ||
| 749 | *** The calendar namespace has been rationalized. | 703 | *** The calendar namespace has been rationalized. |
| 750 | All functions and variables now begin with a `calendar-', `diary-', or | 704 | All functions and variables now begin with a `calendar-', `diary-', or |
| 751 | `holiday-' prefix. The various calendar systems have secondary | 705 | `holiday-' prefix. The various calendar systems have secondary |
| @@ -753,21 +707,17 @@ prefixes, eg `calendar-french-'. The old names you are likely to use | |||
| 753 | directly still exist, for the time being, as aliases, but please start | 707 | directly still exist, for the time being, as aliases, but please start |
| 754 | using the new names. | 708 | using the new names. |
| 755 | 709 | ||
| 756 | +++ | ||
| 757 | *** The whitespace in the calendar layout can be customized. | 710 | *** The whitespace in the calendar layout can be customized. |
| 758 | See the variables: | 711 | See the variables: |
| 759 | calendar-left-margin, calendar-intermonth-spacing, calendar-column-width, | 712 | calendar-left-margin, calendar-intermonth-spacing, calendar-column-width, |
| 760 | calendar-day-header-width, and calendar-day-digit-width. | 713 | calendar-day-header-width, and calendar-day-digit-width. |
| 761 | 714 | ||
| 762 | +++ | ||
| 763 | *** Text (e.g. ISO weeks) can be displayed between the calendar months. | 715 | *** Text (e.g. ISO weeks) can be displayed between the calendar months. |
| 764 | See the variables calendar-intermonth-header and calendar-intermonth-text. | 716 | See the variables calendar-intermonth-header and calendar-intermonth-text. |
| 765 | 717 | ||
| 766 | +++ | ||
| 767 | *** The function `holiday-chinese' computes holidays on the Chinese calendar. | 718 | *** The function `holiday-chinese' computes holidays on the Chinese calendar. |
| 768 | It has been used to add items to the list `holiday-oriental-holidays'. | 719 | It has been used to add items to the list `holiday-oriental-holidays'. |
| 769 | 720 | ||
| 770 | --- | ||
| 771 | *** `diary-remind' accepts a negative number -DAYS as a shorthand for | 721 | *** `diary-remind' accepts a negative number -DAYS as a shorthand for |
| 772 | the list (1 2 ... DAYS). | 722 | the list (1 2 ... DAYS). |
| 773 | 723 | ||
| @@ -780,17 +730,17 @@ associated with the current log entry. | |||
| 780 | source code associated with a log entry. | 730 | source code associated with a log entry. |
| 781 | 731 | ||
| 782 | ** Compile and grep modes | 732 | ** Compile and grep modes |
| 783 | --- | 733 | |
| 784 | *** The mode-line entry for the *compilation* and *grep* buffer is color coded. | 734 | *** The mode-line entry for the *compilation* and *grep* buffer is color coded. |
| 785 | It has different colors for to show that: (a) the command is still | 735 | It has different colors for to show that: (a) the command is still |
| 786 | running, (b) successful completion, (c) error. | 736 | running, (b) successful completion, (c) error. |
| 787 | +++ | 737 | |
| 788 | *** compilation-auto-jump-to-first-error tells `compile' to jump to | 738 | *** compilation-auto-jump-to-first-error tells `compile' to jump to |
| 789 | the first error encountered during compilations. | 739 | the first error encountered during compilations. |
| 790 | +++ | 740 | |
| 791 | *** compilation-scroll-output accepts a new value, `first-error', which | 741 | *** compilation-scroll-output accepts a new value, `first-error', which |
| 792 | says to stop auto scrolling at the first error that occurs. | 742 | says to stop auto scrolling at the first error that occurs. |
| 793 | --- | 743 | |
| 794 | *** The `cc' alias for C++ files in `grep-file-aliases' has been | 744 | *** The `cc' alias for C++ files in `grep-file-aliases' has been |
| 795 | improved. `hh' can be used to match C++ header files and `cchh' both | 745 | improved. `hh' can be used to match C++ header files and `cchh' both |
| 796 | C++ sources and headers. | 746 | C++ sources and headers. |
| @@ -805,34 +755,34 @@ considered for update. | |||
| 805 | This is controlled by `copyright-at-end-flag' (used by, e.g., change-log-mode). | 755 | This is controlled by `copyright-at-end-flag' (used by, e.g., change-log-mode). |
| 806 | 756 | ||
| 807 | ** Custom | 757 | ** Custom |
| 808 | +++ | 758 | |
| 809 | *** defcustom accepts new keyword arguments, `:safe' and `:risky', which | 759 | *** defcustom accepts new keyword arguments, `:safe' and `:risky', which |
| 810 | set a variable's `safe-local-variable' and `risky-local-variable' property. | 760 | set a variable's `safe-local-variable' and `risky-local-variable' property. |
| 811 | 761 | ||
| 812 | ** Diff mode | 762 | ** Diff mode |
| 813 | +++ | 763 | |
| 814 | *** diff-refine-hunk highlights word-level details of changes in a diff hunk. | 764 | *** diff-refine-hunk highlights word-level details of changes in a diff hunk. |
| 815 | It's used automatically as you move through hunks, see | 765 | It's used automatically as you move through hunks, see |
| 816 | diff-auto-refine-mode. It is bound to `C-c C-b'. | 766 | diff-auto-refine-mode. It is bound to `C-c C-b'. |
| 817 | +++ | 767 | |
| 818 | *** diff-add-change-log-entries-other-window iterates through the diff | 768 | *** diff-add-change-log-entries-other-window iterates through the diff |
| 819 | buffer and tries to create ChangeLog entries for each change. | 769 | buffer and tries to create ChangeLog entries for each change. |
| 820 | It is bound to `C-x 4 A'. | 770 | It is bound to `C-x 4 A'. |
| 821 | +++ | 771 | |
| 822 | *** Turning on `whitespace-mode' in a diff buffer will show trailing | 772 | *** Turning on `whitespace-mode' in a diff buffer will show trailing |
| 823 | whitespace problems in the modified lines. | 773 | whitespace problems in the modified lines. |
| 824 | 774 | ||
| 825 | ** Dired | 775 | ** Dired |
| 826 | +++ | 776 | |
| 827 | *** In Dired, C-x C-q now runs the command wdired-change-to-wdired-mode, | 777 | *** In Dired, C-x C-q now runs the command wdired-change-to-wdired-mode, |
| 828 | and C-x C-q in wdired-mode exits it with asking a question about | 778 | and C-x C-q in wdired-mode exits it with asking a question about |
| 829 | saving changes. | 779 | saving changes. |
| 830 | +++ | 780 | |
| 831 | *** `&' runs the command `dired-do-async-shell-command' that executes | 781 | *** `&' runs the command `dired-do-async-shell-command' that executes |
| 832 | the command asynchronously without the need to manually add ampersand | 782 | the command asynchronously without the need to manually add ampersand |
| 833 | to the end of the command. Its output appears in the buffer `*Async Shell | 783 | to the end of the command. Its output appears in the buffer `*Async Shell |
| 834 | Command*'. | 784 | Command*'. |
| 835 | +++ | 785 | |
| 836 | *** `M-s f C-s' and `M-s f M-C-s' run Isearch that matches only at file names. | 786 | *** `M-s f C-s' and `M-s f M-C-s' run Isearch that matches only at file names. |
| 837 | When a new user option `dired-isearch-filenames' is t, then even ordinary | 787 | When a new user option `dired-isearch-filenames' is t, then even ordinary |
| 838 | Isearch started with `C-s' and `C-M-s' matches only at file names in the | 788 | Isearch started with `C-s' and `C-M-s' matches only at file names in the |
| @@ -841,11 +791,11 @@ file name Isearch depends on the position of point - if point is on a file | |||
| 841 | name initially, then Isearch matches only file names, otherwise it matches | 791 | name initially, then Isearch matches only file names, otherwise it matches |
| 842 | everywhere in the Dired buffer. You can toggle file names matching on or | 792 | everywhere in the Dired buffer. You can toggle file names matching on or |
| 843 | off by typing `M-s f' in Isearch mode. | 793 | off by typing `M-s f' in Isearch mode. |
| 844 | +++ | 794 | |
| 845 | *** `M-s a C-s' and `M-s a M-C-s' run multi-file Isearch on the marked files. | 795 | *** `M-s a C-s' and `M-s a M-C-s' run multi-file Isearch on the marked files. |
| 846 | They visit the first marked file in the sequence and display the usual Isearch | 796 | They visit the first marked file in the sequence and display the usual Isearch |
| 847 | prompt for a string or a regexp where all Isearch commands are available. | 797 | prompt for a string or a regexp where all Isearch commands are available. |
| 848 | --- | 798 | |
| 849 | *** `Q' in Dired provides two new keys for multi-file replacement. | 799 | *** `Q' in Dired provides two new keys for multi-file replacement. |
| 850 | The upper case key `Y' replaces all remaining matches in all remaining files | 800 | The upper case key `Y' replaces all remaining matches in all remaining files |
| 851 | with no more questions. The upper case key `N' stops doing replacements | 801 | with no more questions. The upper case key `N' stops doing replacements |
| @@ -855,15 +805,13 @@ including `dired-do-query-replace-regexp', `vc-dir-query-replace-regexp', | |||
| 855 | `reftex-query-replace-document'. | 805 | `reftex-query-replace-document'. |
| 856 | 806 | ||
| 857 | ** Fortran | 807 | ** Fortran |
| 858 | +++ | 808 | |
| 859 | *** The line length of fixed-form Fortran is not fixed at 72 any more. | 809 | *** The line length of fixed-form Fortran is not fixed at 72 any more. |
| 860 | Customize the variable `fortran-line-length' to change it. | 810 | Customize the variable `fortran-line-length' to change it. |
| 861 | 811 | ||
| 862 | +++ | ||
| 863 | *** In Fortran mode, M-; is now bound to the standard comment-dwim, | 812 | *** In Fortran mode, M-; is now bound to the standard comment-dwim, |
| 864 | rather than fortran-indent-comment. | 813 | rather than fortran-indent-comment. |
| 865 | 814 | ||
| 866 | +++ | ||
| 867 | *** (The increasingly misnamed) F90 mode supports Fortran 2003 syntax. | 815 | *** (The increasingly misnamed) F90 mode supports Fortran 2003 syntax. |
| 868 | 816 | ||
| 869 | ** Gnus | 817 | ** Gnus |
| @@ -883,7 +831,7 @@ Gnus can use `auth-source' for POP and IMAP passwords. Also see that | |||
| 883 | authentication respectively. | 831 | authentication respectively. |
| 884 | 832 | ||
| 885 | ** Help mode | 833 | ** Help mode |
| 886 | +++ | 834 | |
| 887 | *** New macro `with-help-window' should set up help windows better | 835 | *** New macro `with-help-window' should set up help windows better |
| 888 | than `with-output-to-temp-buffer' with `print-help-return-message'. | 836 | than `with-output-to-temp-buffer' with `print-help-return-message'. |
| 889 | 837 | ||
| @@ -894,7 +842,7 @@ window shall be automatically selected when invoking help. | |||
| 894 | position for point in help window (for example in `view-lossage'). | 842 | position for point in help window (for example in `view-lossage'). |
| 895 | 843 | ||
| 896 | ** Isearch | 844 | ** Isearch |
| 897 | +++ | 845 | |
| 898 | *** New command `isearch-forward-word' bound globally to `M-s w' starts | 846 | *** New command `isearch-forward-word' bound globally to `M-s w' starts |
| 899 | incremental word search. New command `isearch-toggle-word' bound to the | 847 | incremental word search. New command `isearch-toggle-word' bound to the |
| 900 | same key `M-s w' in Isearch mode toggles word searching on or off | 848 | same key `M-s w' in Isearch mode toggles word searching on or off |
| @@ -905,11 +853,11 @@ mode runs `highlight-regexp' (`hi-lock-face-buffer') with the current | |||
| 905 | search string as its regexp argument. The same key `M-s h r' and | 853 | search string as its regexp argument. The same key `M-s h r' and |
| 906 | other keys on the `M-s h' prefix are bound globally to the command | 854 | other keys on the `M-s h' prefix are bound globally to the command |
| 907 | `highlight-regexp' and other hi-lock commands. | 855 | `highlight-regexp' and other hi-lock commands. |
| 908 | +++ | 856 | |
| 909 | *** New command `isearch-occur' bound to `M-s o' in Isearch mode | 857 | *** New command `isearch-occur' bound to `M-s o' in Isearch mode |
| 910 | runs `occur' with the current search string. The same key `M-s o' | 858 | runs `occur' with the current search string. The same key `M-s o' |
| 911 | is bound globally to the command `occur'. | 859 | is bound globally to the command `occur'. |
| 912 | --- | 860 | |
| 913 | *** Isearch can now search through multiple ChangeLog files. | 861 | *** Isearch can now search through multiple ChangeLog files. |
| 914 | When running Isearch in a ChangeLog file, if the search fails, | 862 | When running Isearch in a ChangeLog file, if the search fails, |
| 915 | then another C-s tries searching the previous ChangeLog, | 863 | then another C-s tries searching the previous ChangeLog, |
| @@ -919,7 +867,7 @@ This is enabled if multi-isearch-search is non-nil. | |||
| 919 | *** Two new commands to start Isearch on a list of marked buffers | 867 | *** Two new commands to start Isearch on a list of marked buffers |
| 920 | for buff-menu.el and ibuffer.el are bound to the keys `M-s a C-s' and | 868 | for buff-menu.el and ibuffer.el are bound to the keys `M-s a C-s' and |
| 921 | `M-s a M-C-s'. | 869 | `M-s a M-C-s'. |
| 922 | +++ | 870 | |
| 923 | *** The part of an Isearch that failed to match is highlighted in | 871 | *** The part of an Isearch that failed to match is highlighted in |
| 924 | `isearch-fail' face. | 872 | `isearch-fail' face. |
| 925 | 873 | ||
| @@ -928,11 +876,10 @@ for buff-menu.el and ibuffer.el are bound to the keys `M-s a C-s' and | |||
| 928 | documentation of the given Isearch key sequence, `C-h m' displays | 876 | documentation of the given Isearch key sequence, `C-h m' displays |
| 929 | documentation of Isearch mode. All the rest Help commands exit Isearch mode | 877 | documentation of Isearch mode. All the rest Help commands exit Isearch mode |
| 930 | and execute their global definitions. | 878 | and execute their global definitions. |
| 931 | +++ | 879 | |
| 932 | *** When started in the minibuffer, Isearch searches in the minibuffer | 880 | *** When started in the minibuffer, Isearch searches in the minibuffer |
| 933 | history. See `Minibuffer changes', above. | 881 | history. See `Minibuffer changes', above. |
| 934 | 882 | ||
| 935 | +++ | ||
| 936 | ** MH-E | 883 | ** MH-E |
| 937 | 884 | ||
| 938 | *** Upgraded to MH-E version 8.2. See MH-E-NEWS for details. | 885 | *** Upgraded to MH-E version 8.2. See MH-E-NEWS for details. |
| @@ -954,7 +901,6 @@ corresponding remote host. | |||
| 954 | 901 | ||
| 955 | ** Rmail | 902 | ** Rmail |
| 956 | 903 | ||
| 957 | +++ | ||
| 958 | *** Rmail no longer converts the messages to Babyl format. | 904 | *** Rmail no longer converts the messages to Babyl format. |
| 959 | Instead, it uses UNIX mbox format, both on disk and in Rmail buffers, | 905 | Instead, it uses UNIX mbox format, both on disk and in Rmail buffers, |
| 960 | and does conversion and decoding when a message is displayed. | 906 | and does conversion and decoding when a message is displayed. |
| @@ -994,48 +940,42 @@ message header, whether or not it is currently visible. | |||
| 994 | function (with arguments) which you specify on the full text of a given | 940 | function (with arguments) which you specify on the full text of a given |
| 995 | message. To further narrow to just the headers, search forward for "\n\n". | 941 | message. To further narrow to just the headers, search forward for "\n\n". |
| 996 | 942 | ||
| 997 | +++ | ||
| 998 | *** The new command `rmail-mime' displays MIME messages. | 943 | *** The new command `rmail-mime' displays MIME messages. |
| 999 | It is bound to `v' in Rmail buffers and summaries. It displays plain | 944 | It is bound to `v' in Rmail buffers and summaries. It displays plain |
| 1000 | text and multipart messages in a temporary buffer, and offers buttons | 945 | text and multipart messages in a temporary buffer, and offers buttons |
| 1001 | to save attachments. | 946 | to save attachments. |
| 1002 | 947 | ||
| 1003 | --- | ||
| 1004 | *** The command `rmail-redecode-body' no longer accepts the optional arg RAW. | 948 | *** The command `rmail-redecode-body' no longer accepts the optional arg RAW. |
| 1005 | Since Rmail now holds messages in their original undecoded form in a | 949 | Since Rmail now holds messages in their original undecoded form in a |
| 1006 | separate buffer, `rmail-redecode-body' no longer encodes the original | 950 | separate buffer, `rmail-redecode-body' no longer encodes the original |
| 1007 | message, and therefore there should be no need to avoid encoding it. | 951 | message, and therefore there should be no need to avoid encoding it. |
| 1008 | 952 | ||
| 1009 | +++ | ||
| 1010 | *** The o command is now `rmail-output'. It is an all-purpose command | 953 | *** The o command is now `rmail-output'. It is an all-purpose command |
| 1011 | for copying messages from Rmail and appending them to files. It | 954 | for copying messages from Rmail and appending them to files. It |
| 1012 | handles Babyl-format files as well as mbox-format files, and it | 955 | handles Babyl-format files as well as mbox-format files, and it |
| 1013 | handles both kinds properly when they are visited in Emacs. It always | 956 | handles both kinds properly when they are visited in Emacs. It always |
| 1014 | copies the full headers of the message. | 957 | copies the full headers of the message. |
| 1015 | 958 | ||
| 1016 | +++ | ||
| 1017 | *** The C-o command is now `rmail-output-as-seen'. It uses | 959 | *** The C-o command is now `rmail-output-as-seen'. It uses |
| 1018 | the message as displayed, appending it to an mbox file. | 960 | the message as displayed, appending it to an mbox file. |
| 1019 | 961 | ||
| 1020 | --- | ||
| 1021 | *** The modified status of the Rmail buffer is reported in the mode-line. | 962 | *** The modified status of the Rmail buffer is reported in the mode-line. |
| 1022 | Previously, this information was hidden. | 963 | Previously, this information was hidden. |
| 1023 | 964 | ||
| 1024 | ** TeX modes | 965 | ** TeX modes |
| 1025 | --- | 966 | |
| 1026 | *** New option latex-indent-within-escaped-parens | 967 | *** New option latex-indent-within-escaped-parens |
| 1027 | permits to customize indentation of LaTeX environments delimited | 968 | permits to customize indentation of LaTeX environments delimited |
| 1028 | by escaped parens. | 969 | by escaped parens. |
| 1029 | 970 | ||
| 1030 | ** T-mouse Mode | 971 | ** T-mouse Mode |
| 1031 | --- | 972 | |
| 1032 | *** If the gpm mouse server is running and t-mouse-mode is enabled, | 973 | *** If the gpm mouse server is running and t-mouse-mode is enabled, |
| 1033 | Emacs uses a Unix socket in a GNU/Linux console to talk to server, | 974 | Emacs uses a Unix socket in a GNU/Linux console to talk to server, |
| 1034 | rather than faking events using the client program mev. This C level | 975 | rather than faking events using the client program mev. This C level |
| 1035 | approach provides mouse highlighting and help echoing in the | 976 | approach provides mouse highlighting and help echoing in the |
| 1036 | minibuffer. | 977 | minibuffer. |
| 1037 | 978 | ||
| 1038 | +++ | ||
| 1039 | ** Tramp | 979 | ** Tramp |
| 1040 | 980 | ||
| 1041 | *** New connection methods. | 981 | *** New connection methods. |
| @@ -1073,17 +1013,17 @@ Tramp uses the package `auth-source' to read passwords from a file, if | |||
| 1073 | necessary. | 1013 | necessary. |
| 1074 | 1014 | ||
| 1075 | ** VC and related modes | 1015 | ** VC and related modes |
| 1076 | +++ | 1016 | |
| 1077 | *** VC now supports applying VC operations to a set of files at a time. | 1017 | *** VC now supports applying VC operations to a set of files at a time. |
| 1078 | This enables VC to work much more effectively with changeset-oriented | 1018 | This enables VC to work much more effectively with changeset-oriented |
| 1079 | version-control systems such as Subversion, GNU Arch, Mercurial, Git | 1019 | version-control systems such as Subversion, GNU Arch, Mercurial, Git |
| 1080 | and Bzr. VC will now pass a multiple-file commit to these systems as | 1020 | and Bzr. VC will now pass a multiple-file commit to these systems as |
| 1081 | a single changeset. | 1021 | a single changeset. |
| 1082 | +++ | 1022 | |
| 1083 | *** vc-dir is a new command that displays file names and their VC | 1023 | *** vc-dir is a new command that displays file names and their VC |
| 1084 | status. It allows to apply various VC operations to a file, a | 1024 | status. It allows to apply various VC operations to a file, a |
| 1085 | directory or a set of files/directories. | 1025 | directory or a set of files/directories. |
| 1086 | +++ | 1026 | |
| 1087 | *** VC switches are no longer appended, rather the first non-nil value is used. | 1027 | *** VC switches are no longer appended, rather the first non-nil value is used. |
| 1088 | (This was for the most part true in Emacs 22, but was not advertised). | 1028 | (This was for the most part true in Emacs 22, but was not advertised). |
| 1089 | This is because there is an increasing variety of VC systems, and they | 1029 | This is because there is an increasing variety of VC systems, and they |
| @@ -1091,40 +1031,40 @@ do not all accept the same "common" options. For example, a CVS diff | |||
| 1091 | command used to append the values of `vc-cvs-diff-switches', | 1031 | command used to append the values of `vc-cvs-diff-switches', |
| 1092 | `vc-diff-switches', and `diff-switches'. Now the first non-nil value | 1032 | `vc-diff-switches', and `diff-switches'. Now the first non-nil value |
| 1093 | from that sequence is used. The special value `t' means "no switches". | 1033 | from that sequence is used. The special value `t' means "no switches". |
| 1094 | +++ | 1034 | |
| 1095 | *** Clicking on the VC mode-line entry now pops the VC menu. | 1035 | *** Clicking on the VC mode-line entry now pops the VC menu. |
| 1096 | +++ | 1036 | |
| 1097 | *** The VC mode-line entry now has a tooltip that explains the VC file status. | 1037 | *** The VC mode-line entry now has a tooltip that explains the VC file status. |
| 1098 | 1038 | ||
| 1099 | *** In VC Annotate mode, the key bindings have changed to use lower | 1039 | *** In VC Annotate mode, the key bindings have changed to use lower |
| 1100 | case keys instead of the upper case keys used in the past. | 1040 | case keys instead of the upper case keys used in the past. |
| 1101 | +++ | 1041 | |
| 1102 | *** In VC Annotate mode, for VC systems that support changesets, you can | 1042 | *** In VC Annotate mode, for VC systems that support changesets, you can |
| 1103 | see the diff for the whole changeset (not only for the current file) | 1043 | see the diff for the whole changeset (not only for the current file) |
| 1104 | by typing the D key. Using the "Show changeset diff of revision at | 1044 | by typing the D key. Using the "Show changeset diff of revision at |
| 1105 | line" menu entry does the same thing. | 1045 | line" menu entry does the same thing. |
| 1106 | +++ | 1046 | |
| 1107 | *** In VC Annotate mode, you can type v to toggle the annotation visibility. | 1047 | *** In VC Annotate mode, you can type v to toggle the annotation visibility. |
| 1108 | +++ | 1048 | |
| 1109 | *** In VC Annotate mode, you can type f to show the file revision on | 1049 | *** In VC Annotate mode, you can type f to show the file revision on |
| 1110 | the current line. | 1050 | the current line. |
| 1111 | --- | 1051 | |
| 1112 | *** Asynchronous VC commands display [Waiting...] in the mode-line | 1052 | *** Asynchronous VC commands display [Waiting...] in the mode-line |
| 1113 | of the corresponding buffer as long as the asynchronous process is | 1053 | of the corresponding buffer as long as the asynchronous process is |
| 1114 | active. | 1054 | active. |
| 1115 | +++ | 1055 | |
| 1116 | *** Log entries can be modified using the key "e" in log-view. | 1056 | *** Log entries can be modified using the key "e" in log-view. |
| 1117 | For now only CVS, RCS, SCCS and SVN support this functionality. | 1057 | For now only CVS, RCS, SCCS and SVN support this functionality. |
| 1118 | This is done by the `modify-change-comment' backend function. | 1058 | This is done by the `modify-change-comment' backend function. |
| 1119 | +++ | 1059 | |
| 1120 | *** In log-view-mode, for VC systems that support changesets, you can | 1060 | *** In log-view-mode, for VC systems that support changesets, you can |
| 1121 | see the diff for the whole changeset (not only for the current file) | 1061 | see the diff for the whole changeset (not only for the current file) |
| 1122 | by typing the D key or using the "Changeset Diff" menu entry. | 1062 | by typing the D key or using the "Changeset Diff" menu entry. |
| 1123 | +++ | 1063 | |
| 1124 | *** In Log Edit mode, C-c C-d now shows the diff for the files involved. | 1064 | *** In Log Edit mode, C-c C-d now shows the diff for the files involved. |
| 1125 | 1065 | ||
| 1126 | *** vc-git supports the "git grep" command. | 1066 | *** vc-git supports the "git grep" command. |
| 1127 | +++ | 1067 | |
| 1128 | *** VC Support for Meta-CVS has been removed for lack of a maintainer able | 1068 | *** VC Support for Meta-CVS has been removed for lack of a maintainer able |
| 1129 | to update it to the new VC. | 1069 | to update it to the new VC. |
| 1130 | 1070 | ||
| @@ -1133,14 +1073,14 @@ to update it to the new VC. | |||
| 1133 | *** comint-mode uses `start-file-process' now (see Lisp Changes). | 1073 | *** comint-mode uses `start-file-process' now (see Lisp Changes). |
| 1134 | If `default-directory' is a remote file name, subprocesses are started | 1074 | If `default-directory' is a remote file name, subprocesses are started |
| 1135 | on the corresponding remote system. | 1075 | on the corresponding remote system. |
| 1136 | --- | 1076 | |
| 1137 | *** Eldoc highlights the function argument under point | 1077 | *** Eldoc highlights the function argument under point |
| 1138 | with the face `eldoc-highlight-function-argument'. | 1078 | with the face `eldoc-highlight-function-argument'. |
| 1139 | +++ | 1079 | |
| 1140 | *** In Etags, the --members option is now the default. | 1080 | *** In Etags, the --members option is now the default. |
| 1141 | Use --no-members if you want the old default behavior of not tagging | 1081 | Use --no-members if you want the old default behavior of not tagging |
| 1142 | struct members in C, members variables in C++ and variables in PHP. | 1082 | struct members in C, members variables in C++ and variables in PHP. |
| 1143 | +++ | 1083 | |
| 1144 | *** The `gdb' command only works with the graphical interface now. | 1084 | *** The `gdb' command only works with the graphical interface now. |
| 1145 | Use `gud-gdb' if you want the (old) text command mode. | 1085 | Use `gud-gdb' if you want the (old) text command mode. |
| 1146 | 1086 | ||
| @@ -1151,7 +1091,7 @@ goto-address-prog-mode, which buttonize URLS and email addresses. | |||
| 1151 | 1091 | ||
| 1152 | *** The new variable `ffap-rfc-directories' specifies a list of local | 1092 | *** The new variable `ffap-rfc-directories' specifies a list of local |
| 1153 | directories in which `ffap-rfc' will first search for RFCs. | 1093 | directories in which `ffap-rfc' will first search for RFCs. |
| 1154 | +++ | 1094 | |
| 1155 | *** hide-ifdef-mode allows shadowing ifdef-blocks instead of hiding them. | 1095 | *** hide-ifdef-mode allows shadowing ifdef-blocks instead of hiding them. |
| 1156 | See option `hide-ifdef-shadow' and function `hide-ifdef-toggle-shadowing'. | 1096 | See option `hide-ifdef-shadow' and function `hide-ifdef-toggle-shadowing'. |
| 1157 | 1097 | ||
| @@ -1184,7 +1124,7 @@ tex-suscript-height-minimum. | |||
| 1184 | 1124 | ||
| 1185 | *** view-remove-frame-by-deleting is now by default t | 1125 | *** view-remove-frame-by-deleting is now by default t |
| 1186 | since users found iconification of view-mode frames distracting. | 1126 | since users found iconification of view-mode frames distracting. |
| 1187 | --- | 1127 | |
| 1188 | *** WoMan tries to add locale-specific manual page directories to the | 1128 | *** WoMan tries to add locale-specific manual page directories to the |
| 1189 | search path. This can be disabled by setting `woman-locale' to nil. | 1129 | search path. This can be disabled by setting `woman-locale' to nil. |
| 1190 | 1130 | ||
| @@ -1197,19 +1137,16 @@ MS-Windows, the same as it is for other operating systems. The | |||
| 1197 | variable doesn't apply to reading a file name -- in that case Emacs | 1137 | variable doesn't apply to reading a file name -- in that case Emacs |
| 1198 | heeds `read-file-name-completion-ignore-case' instead. | 1138 | heeds `read-file-name-completion-ignore-case' instead. |
| 1199 | 1139 | ||
| 1200 | --- | ||
| 1201 | ** IPv6 is supported on MS-Windows. | 1140 | ** IPv6 is supported on MS-Windows. |
| 1202 | Emacs now supports IPv6 on Windows XP and later, and earlier versions | 1141 | Emacs now supports IPv6 on Windows XP and later, and earlier versions |
| 1203 | of Windows with third party IPv6 stacks installed. In Emacs 22, IPv6 was | 1142 | of Windows with third party IPv6 stacks installed. In Emacs 22, IPv6 was |
| 1204 | supported on other platforms, but not on Windows due to using the winsock | 1143 | supported on other platforms, but not on Windows due to using the winsock |
| 1205 | 1.1 header file, even though Emacs was linking to the winsock 2 library. | 1144 | 1.1 header file, even though Emacs was linking to the winsock 2 library. |
| 1206 | 1145 | ||
| 1207 | --- | ||
| 1208 | ** Busy cursor (hourglass) now displays on MS-Windows. | 1146 | ** Busy cursor (hourglass) now displays on MS-Windows. |
| 1209 | When Emacs is busy, an hourglass mouse cursor is displayed on Windows. | 1147 | When Emacs is busy, an hourglass mouse cursor is displayed on Windows. |
| 1210 | In Emacs 22 only X supported the busy cursor. | 1148 | In Emacs 22 only X supported the busy cursor. |
| 1211 | 1149 | ||
| 1212 | --- | ||
| 1213 | ** Battery status is available on MS-Windows | 1150 | ** Battery status is available on MS-Windows |
| 1214 | Emacs can now display the battery status in the mode-line when enabled with | 1151 | Emacs can now display the battery status in the mode-line when enabled with |
| 1215 | display-battery-mode or from the Options menu. More verbose battery | 1152 | display-battery-mode or from the Options menu. More verbose battery |
| @@ -1242,28 +1179,24 @@ freetype library, giving access to a wider range of font formats. | |||
| 1242 | 1179 | ||
| 1243 | * Incompatible Lisp Changes in Emacs 23.1 | 1180 | * Incompatible Lisp Changes in Emacs 23.1 |
| 1244 | 1181 | ||
| 1245 | +++ | ||
| 1246 | ** Variables cannot be both buffer-local and frame-local any more. | 1182 | ** Variables cannot be both buffer-local and frame-local any more. |
| 1247 | 1183 | ||
| 1248 | +++ | ||
| 1249 | ** `functionp' returns nil for special forms. | 1184 | ** `functionp' returns nil for special forms. |
| 1250 | I.e., it only returns t for objects that can be passed to `funcall'. | 1185 | I.e., it only returns t for objects that can be passed to `funcall'. |
| 1251 | 1186 | ||
| 1252 | +++ | ||
| 1253 | ** The behavior of map-char-table has changed. It may call the | 1187 | ** The behavior of map-char-table has changed. It may call the |
| 1254 | specified function with a cons (FROM . TO) as a key if characters in | 1188 | specified function with a cons (FROM . TO) as a key if characters in |
| 1255 | that range have the same value. | 1189 | that range have the same value. |
| 1256 | 1190 | ||
| 1257 | ** Process changes | 1191 | ** Process changes |
| 1258 | +++ | 1192 | |
| 1259 | *** The function `dired-call-process' has been removed. | 1193 | *** The function `dired-call-process' has been removed. |
| 1260 | +++ | 1194 | |
| 1261 | *** The multibyteness of process filters is now determined by the | 1195 | *** The multibyteness of process filters is now determined by the |
| 1262 | coding-system used for decoding. The functions | 1196 | coding-system used for decoding. The functions |
| 1263 | `process-filter-multibyte-p' and `set-process-filter-multibyte' are | 1197 | `process-filter-multibyte-p' and `set-process-filter-multibyte' are |
| 1264 | obsolete. | 1198 | obsolete. |
| 1265 | 1199 | ||
| 1266 | --- | ||
| 1267 | ** The variable `byte-compile-warnings' can now be a list starting with `not', | 1200 | ** The variable `byte-compile-warnings' can now be a list starting with `not', |
| 1268 | meaning to disable the specified warnings. The meaning of this list | 1201 | meaning to disable the specified warnings. The meaning of this list |
| 1269 | may therefore be the reverse of what you expect (of course, this is | 1202 | may therefore be the reverse of what you expect (of course, this is |
| @@ -1272,25 +1205,23 @@ checking/manipulating elements directly, use the new functions | |||
| 1272 | `byte-compile-warning-enabled-p', `byte-compile-disable-warning', and | 1205 | `byte-compile-warning-enabled-p', `byte-compile-disable-warning', and |
| 1273 | `byte-compile-enable-warning.' | 1206 | `byte-compile-enable-warning.' |
| 1274 | 1207 | ||
| 1275 | +++ | ||
| 1276 | ** `mode-name' is no longer guaranteed to be a string. | 1208 | ** `mode-name' is no longer guaranteed to be a string. |
| 1277 | Use `(format-mode-line mode-name)' to ensure a string value. | 1209 | Use `(format-mode-line mode-name)' to ensure a string value. |
| 1278 | 1210 | ||
| 1279 | +++ | ||
| 1280 | ** The function x-font-family-list has been removed. | 1211 | ** The function x-font-family-list has been removed. |
| 1281 | Use the new function font-family-list (see Lisp Changes, below). | 1212 | Use the new function font-family-list (see Lisp Changes, below). |
| 1282 | 1213 | ||
| 1283 | ** Internationalization changes | 1214 | ** Internationalization changes |
| 1284 | 1215 | ||
| 1285 | *** The value of the function `charset-id' is now always 0. | 1216 | *** The value of the function `charset-id' is now always 0. |
| 1286 | +++ | 1217 | |
| 1287 | *** The functions `register-char-codings' and `coding-system-spec' | 1218 | *** The functions `register-char-codings' and `coding-system-spec' |
| 1288 | have been removed. | 1219 | have been removed. |
| 1289 | +++ | 1220 | |
| 1290 | *** The cpXXX coding systems are now supported automatically. | 1221 | *** The cpXXX coding systems are now supported automatically. |
| 1291 | The functions cp-...-codepage, which you had to use in Emacs 22 to | 1222 | The functions cp-...-codepage, which you had to use in Emacs 22 to |
| 1292 | enable support for these coding systems, have been deleted. | 1223 | enable support for these coding systems, have been deleted. |
| 1293 | --- | 1224 | |
| 1294 | *** The following features have been removed. They were used for | 1225 | *** The following features have been removed. They were used for |
| 1295 | displaying various scripts with specific fonts, and are no longer | 1226 | displaying various scripts with specific fonts, and are no longer |
| 1296 | needed now that OpenType font support is available: | 1227 | needed now that OpenType font support is available: |
| @@ -1315,12 +1246,17 @@ the fontset of the selected frame and t is for the default fontset. | |||
| 1315 | Now, nil is for the fontset of the selected frame and t is for the | 1246 | Now, nil is for the fontset of the selected frame and t is for the |
| 1316 | default fontset. | 1247 | default fontset. |
| 1317 | 1248 | ||
| 1318 | --- | 1249 | ** If a function in write-region-annotate-functions returns with a |
| 1250 | different buffer current, Emacs no longer kills that buffer | ||
| 1251 | automatically. This behavior existed in previous versions of Emacs, | ||
| 1252 | but was undocumented. To kill a buffer after write-region, give the | ||
| 1253 | variable `write-region-post-annotation-function' a buffer-local value | ||
| 1254 | of `kill-buffer'. | ||
| 1255 | |||
| 1319 | ** The variable temp-file-name-pattern has been removed. | 1256 | ** The variable temp-file-name-pattern has been removed. |
| 1320 | This variable was only used by call-process-region, which now uses | 1257 | This variable was only used by call-process-region, which now uses |
| 1321 | temporary-file-directory instead. | 1258 | temporary-file-directory instead. |
| 1322 | 1259 | ||
| 1323 | +++ | ||
| 1324 | ** The COUNT and SYSTEM-FLAG arguments to define-abbrev have been | 1260 | ** The COUNT and SYSTEM-FLAG arguments to define-abbrev have been |
| 1325 | removed. The function now takes extra arguments for specifying | 1261 | removed. The function now takes extra arguments for specifying |
| 1326 | arbitrary abbrev properties. | 1262 | arbitrary abbrev properties. |
| @@ -1333,7 +1269,6 @@ whitespace after calling it. | |||
| 1333 | 1269 | ||
| 1334 | * Lisp Changes in Emacs 23.1 | 1270 | * Lisp Changes in Emacs 23.1 |
| 1335 | 1271 | ||
| 1336 | +++ | ||
| 1337 | ** The new variable `generate-autoload-cookie' controls the magic comment | 1272 | ** The new variable `generate-autoload-cookie' controls the magic comment |
| 1338 | string used by `update-file-autoloads' to find autoloaded forms. The | 1273 | string used by `update-file-autoloads' to find autoloaded forms. The |
| 1339 | variable `generated-autoload-file' similarly controls the name of the | 1274 | variable `generated-autoload-file' similarly controls the name of the |
| @@ -1341,41 +1276,33 @@ file where `update-file-autoloads' writes the calls to `autoload'. | |||
| 1341 | The default values are ";;;###autoload" and `loaddefs.el', | 1276 | The default values are ";;;###autoload" and `loaddefs.el', |
| 1342 | respectively. | 1277 | respectively. |
| 1343 | 1278 | ||
| 1344 | +++ | ||
| 1345 | ** New primitives `list-system-processes' and `process-attributes' | 1279 | ** New primitives `list-system-processes' and `process-attributes' |
| 1346 | let Lisp programs access the processes that are running on the local | 1280 | let Lisp programs access the processes that are running on the local |
| 1347 | machine. See the doc strings of these functions for more details. | 1281 | machine. See the doc strings of these functions for more details. |
| 1348 | Not all platforms support accessing this information; on those that | 1282 | Not all platforms support accessing this information; on those that |
| 1349 | don't, these primitives will return nil. | 1283 | don't, these primitives will return nil. |
| 1350 | 1284 | ||
| 1351 | +++ | ||
| 1352 | ** New variable `user-emacs-directory'. | 1285 | ** New variable `user-emacs-directory'. |
| 1353 | Use this instead of "~/.emacs.d". | 1286 | Use this instead of "~/.emacs.d". |
| 1354 | 1287 | ||
| 1355 | +++ | ||
| 1356 | ** If a local hook function has a non-nil `permanent-local-hook' | 1288 | ** If a local hook function has a non-nil `permanent-local-hook' |
| 1357 | property, `kill-all-local-variables' does not remove it from the local | 1289 | property, `kill-all-local-variables' does not remove it from the local |
| 1358 | value of the hook variable; it remains even if you change major modes. | 1290 | value of the hook variable; it remains even if you change major modes. |
| 1359 | 1291 | ||
| 1360 | +++ | ||
| 1361 | ** `frame-inherited-parameters' lets new frames inherit parameters from | 1292 | ** `frame-inherited-parameters' lets new frames inherit parameters from |
| 1362 | the selected frame. | 1293 | the selected frame. |
| 1363 | 1294 | ||
| 1364 | +++ | ||
| 1365 | ** New keymap `input-decode-map' overrides like key-translation-map, but | 1295 | ** New keymap `input-decode-map' overrides like key-translation-map, but |
| 1366 | applies before function-key-map. Also it is terminal-local contrary to | 1296 | applies before function-key-map. Also it is terminal-local contrary to |
| 1367 | key-translation-map. Terminal-specific key-sequences are generally added to | 1297 | key-translation-map. Terminal-specific key-sequences are generally added to |
| 1368 | this map rather than to function-key-map now. | 1298 | this map rather than to function-key-map now. |
| 1369 | 1299 | ||
| 1370 | +++ | ||
| 1371 | ** `ignore-errors' is now a standard macro (does not require the CL package). | 1300 | ** `ignore-errors' is now a standard macro (does not require the CL package). |
| 1372 | 1301 | ||
| 1373 | +++ | ||
| 1374 | ** `interprogram-paste-function' can now return one string or a list | 1302 | ** `interprogram-paste-function' can now return one string or a list |
| 1375 | of strings. In the latter case, Emacs puts the second and following | 1303 | of strings. In the latter case, Emacs puts the second and following |
| 1376 | strings on the kill ring. | 1304 | strings on the kill ring. |
| 1377 | 1305 | ||
| 1378 | +++ | ||
| 1379 | ** In `condition-case', a handler can specify "let the debugger run first". | 1306 | ** In `condition-case', a handler can specify "let the debugger run first". |
| 1380 | You do this by writing `debug' in the list of conditions to be handled, | 1307 | You do this by writing `debug' in the list of conditions to be handled, |
| 1381 | like this: | 1308 | like this: |
| @@ -1384,44 +1311,36 @@ like this: | |||
| 1384 | (foo bar) | 1311 | (foo bar) |
| 1385 | ((debug error) nil)) | 1312 | ((debug error) nil)) |
| 1386 | 1313 | ||
| 1387 | +++ | ||
| 1388 | ** clone-indirect-buffer now runs the clone-indirect-buffer-hook. | 1314 | ** clone-indirect-buffer now runs the clone-indirect-buffer-hook. |
| 1389 | 1315 | ||
| 1390 | +++ | ||
| 1391 | ** `beginning-of-defun-function' now takes one argument, the count given to | 1316 | ** `beginning-of-defun-function' now takes one argument, the count given to |
| 1392 | `beginning-of-defun'. (N.B. `end-of-defun-function' doesn't take any | 1317 | `beginning-of-defun'. (N.B. `end-of-defun-function' doesn't take any |
| 1393 | arguments.) | 1318 | arguments.) |
| 1394 | 1319 | ||
| 1395 | +++ | ||
| 1396 | ** `file-remote-p' has new optional parameters IDENTIFICATION and CONNECTED. | 1320 | ** `file-remote-p' has new optional parameters IDENTIFICATION and CONNECTED. |
| 1397 | IDENTIFICATION specifies which part of the remote identifier has to be | 1321 | IDENTIFICATION specifies which part of the remote identifier has to be |
| 1398 | returned. With CONNECTED passed non-nil, it is checked whether a | 1322 | returned. With CONNECTED passed non-nil, it is checked whether a |
| 1399 | remote connection has been established already. | 1323 | remote connection has been established already. |
| 1400 | 1324 | ||
| 1401 | +++ | ||
| 1402 | ** The new macro `declare-function' suppresses compiler warnings about | 1325 | ** The new macro `declare-function' suppresses compiler warnings about |
| 1403 | undefined functions. | 1326 | undefined functions. |
| 1404 | 1327 | ||
| 1405 | ** Changes to interactive function handling | 1328 | ** Changes to interactive function handling |
| 1406 | 1329 | ||
| 1407 | +++ | ||
| 1408 | *** The new interactive spec code ^ says to first call | 1330 | *** The new interactive spec code ^ says to first call |
| 1409 | handle-shift-selection if shift-select-mode is non-nil, before reading | 1331 | handle-shift-selection if shift-select-mode is non-nil, before reading |
| 1410 | the command arguments. This is used for shift-selection (see above). | 1332 | the command arguments. This is used for shift-selection (see above). |
| 1411 | 1333 | ||
| 1412 | +++ | ||
| 1413 | *** Built-in functions can now have an interactive specification that | 1334 | *** Built-in functions can now have an interactive specification that |
| 1414 | is not a prompt string. If the `intspec' parameter of a `DEFUN' | 1335 | is not a prompt string. If the `intspec' parameter of a `DEFUN' |
| 1415 | starts with a `(', the string is evaluated as a Lisp form. | 1336 | starts with a `(', the string is evaluated as a Lisp form. |
| 1416 | 1337 | ||
| 1417 | +++ | ||
| 1418 | *** The interactive-form of a function can be added post-facto via the | 1338 | *** The interactive-form of a function can be added post-facto via the |
| 1419 | `interactive-form' symbol property. Mostly useful to add complex | 1339 | `interactive-form' symbol property. Mostly useful to add complex |
| 1420 | interactive forms to subroutines. | 1340 | interactive forms to subroutines. |
| 1421 | 1341 | ||
| 1422 | ** Region changes | 1342 | ** Region changes |
| 1423 | 1343 | ||
| 1424 | +++ | ||
| 1425 | *** Commands should use `use-region-p' to test whether there is | 1344 | *** Commands should use `use-region-p' to test whether there is |
| 1426 | an active region that they should operate on. | 1345 | an active region that they should operate on. |
| 1427 | 1346 | ||
| @@ -1431,7 +1350,6 @@ the active region in Transient Mark mode should use `use-region-p' | |||
| 1431 | instead of `region-active-p', because `use-region-p' obeys the new | 1350 | instead of `region-active-p', because `use-region-p' obeys the new |
| 1432 | user option `use-empty-active-region' (see Editing Changes, above). | 1351 | user option `use-empty-active-region' (see Editing Changes, above). |
| 1433 | 1352 | ||
| 1434 | +++ | ||
| 1435 | *** If a command sets `transient-mark-mode' to (only . OLDVAL), that | 1353 | *** If a command sets `transient-mark-mode' to (only . OLDVAL), that |
| 1436 | means to activate transient-mark-mode temporarily, until the next | 1354 | means to activate transient-mark-mode temporarily, until the next |
| 1437 | unshifted point motion command or mark deactivation. Afterwards, | 1355 | unshifted point motion command or mark deactivation. Afterwards, |
| @@ -1440,19 +1358,16 @@ reset transient-mark-mode to the value OLDVAL. The values `only' and | |||
| 1440 | 1358 | ||
| 1441 | ** Emacs session information | 1359 | ** Emacs session information |
| 1442 | 1360 | ||
| 1443 | +++ | ||
| 1444 | *** The new variables `before-init-time' and `after-init-time' record the | 1361 | *** The new variables `before-init-time' and `after-init-time' record the |
| 1445 | value of `current-time' before and after Emacs loads the init files. | 1362 | value of `current-time' before and after Emacs loads the init files. |
| 1446 | 1363 | ||
| 1447 | +++ | ||
| 1448 | *** The new function `emacs-uptime' returns the uptime of an Emacs instance. | 1364 | *** The new function `emacs-uptime' returns the uptime of an Emacs instance. |
| 1449 | 1365 | ||
| 1450 | +++ | ||
| 1451 | *** The new function `emacs-init-time' returns the duration of the | 1366 | *** The new function `emacs-init-time' returns the duration of the |
| 1452 | Emacs initialization. | 1367 | Emacs initialization. |
| 1453 | 1368 | ||
| 1454 | ** Changes affecting display-buffer | 1369 | ** Changes affecting display-buffer |
| 1455 | +++ | 1370 | |
| 1456 | *** display-buffer tries to be smarter when splitting windows. | 1371 | *** display-buffer tries to be smarter when splitting windows. |
| 1457 | The new option split-window-preferred-function lets you specify your own | 1372 | The new option split-window-preferred-function lets you specify your own |
| 1458 | function to pop up new windows. Its default value split-window-sensibly | 1373 | function to pop up new windows. Its default value split-window-sensibly |
| @@ -1465,11 +1380,9 @@ nil inhibits horizontal splitting and gets you the behavior of Emacs 22 | |||
| 1465 | in this respect. In any case, display-buffer may now split the largest | 1380 | in this respect. In any case, display-buffer may now split the largest |
| 1466 | window vertically even when it is not as wide as the containing frame. | 1381 | window vertically even when it is not as wide as the containing frame. |
| 1467 | 1382 | ||
| 1468 | +++ | ||
| 1469 | *** If pop-up-frames has the value `graphic-only', display-buffer only | 1383 | *** If pop-up-frames has the value `graphic-only', display-buffer only |
| 1470 | makes a separate frame on graphic displays. | 1384 | makes a separate frame on graphic displays. |
| 1471 | 1385 | ||
| 1472 | +++ | ||
| 1473 | *** select-frame and set-frame-selected-window have a new optional | 1386 | *** select-frame and set-frame-selected-window have a new optional |
| 1474 | argument NORECORD. If non-nil, this will avoid messing with the order | 1387 | argument NORECORD. If non-nil, this will avoid messing with the order |
| 1475 | of recently selected windows and the buffer list. | 1388 | of recently selected windows and the buffer list. |
| @@ -1477,64 +1390,55 @@ of recently selected windows and the buffer list. | |||
| 1477 | ** Window parameters can now be defined. | 1390 | ** Window parameters can now be defined. |
| 1478 | These are analogous to frame parameters, but are associated with | 1391 | These are analogous to frame parameters, but are associated with |
| 1479 | individual windows. | 1392 | individual windows. |
| 1480 | +++ | 1393 | |
| 1481 | *** The new functions window-parameters, window-parameter, and | 1394 | *** The new functions window-parameters, window-parameter, and |
| 1482 | set-window-parameter are used to query and set window parameters. | 1395 | set-window-parameter are used to query and set window parameters. |
| 1483 | 1396 | ||
| 1484 | ** Minibuffer and completion changes | 1397 | ** Minibuffer and completion changes |
| 1485 | +++ | 1398 | |
| 1486 | *** A list of default values can be specified for the DEFAULT argument of | 1399 | *** A list of default values can be specified for the DEFAULT argument of |
| 1487 | functions `read-from-minibuffer', `read-string', `read-command', | 1400 | functions `read-from-minibuffer', `read-string', `read-command', |
| 1488 | `read-variable', `read-buffer', `completing-read'. Elements of this list | 1401 | `read-variable', `read-buffer', `completing-read'. Elements of this list |
| 1489 | are available for inserting into the minibuffer by typing `M-n'. | 1402 | are available for inserting into the minibuffer by typing `M-n'. |
| 1490 | For empty input these functions return the first element of this list. | 1403 | For empty input these functions return the first element of this list. |
| 1491 | 1404 | ||
| 1492 | +++ | ||
| 1493 | *** New function `read-regexp' uses the regexp history and some useful | 1405 | *** New function `read-regexp' uses the regexp history and some useful |
| 1494 | regexp defaults (string at point, last Isearch/replacement regexp/string) | 1406 | regexp defaults (string at point, last Isearch/replacement regexp/string) |
| 1495 | via M-n when reading a regexp in the minibuffer. | 1407 | via M-n when reading a regexp in the minibuffer. |
| 1496 | 1408 | ||
| 1497 | +++ | ||
| 1498 | *** minibuffer-local-must-match-filename-map is now named | 1409 | *** minibuffer-local-must-match-filename-map is now named |
| 1499 | minibuffer-local-filename-must-match-map. | 1410 | minibuffer-local-filename-must-match-map. |
| 1500 | 1411 | ||
| 1501 | +++ | ||
| 1502 | *** The `require-match' argument to `completing-read' accepts the new | 1412 | *** The `require-match' argument to `completing-read' accepts the new |
| 1503 | values `confirm-only' and `confirm-after-completion'. | 1413 | values `confirm-only' and `confirm-after-completion'. |
| 1504 | 1414 | ||
| 1505 | ** Search and replacement changes | 1415 | ** Search and replacement changes |
| 1506 | +++ | 1416 | |
| 1507 | *** The regexp form \(?<num>:<regexp>\) specifies the group number explicitly. | 1417 | *** The regexp form \(?<num>:<regexp>\) specifies the group number explicitly. |
| 1508 | +++ | 1418 | |
| 1509 | *** New function `match-substitute-replacement' returns the result of | 1419 | *** New function `match-substitute-replacement' returns the result of |
| 1510 | `replace-match' without actually using it in the buffer. | 1420 | `replace-match' without actually using it in the buffer. |
| 1511 | 1421 | ||
| 1512 | +++ | ||
| 1513 | *** The new variable `replace-search-function' determines the function | 1422 | *** The new variable `replace-search-function' determines the function |
| 1514 | to use for searching in query-replace and replace-string. The | 1423 | to use for searching in query-replace and replace-string. The |
| 1515 | function it specifies is called by `perform-replace' when its 4th | 1424 | function it specifies is called by `perform-replace' when its 4th |
| 1516 | argument is nil. | 1425 | argument is nil. |
| 1517 | 1426 | ||
| 1518 | +++ | ||
| 1519 | *** The new variable `replace-re-search-function' determines the | 1427 | *** The new variable `replace-re-search-function' determines the |
| 1520 | function to use for searching in `query-replace-regexp', | 1428 | function to use for searching in `query-replace-regexp', |
| 1521 | `replace-regexp', `query-replace-regexp-eval', and | 1429 | `replace-regexp', `query-replace-regexp-eval', and |
| 1522 | `map-query-replace-regexp'. The function it specifies is called by | 1430 | `map-query-replace-regexp'. The function it specifies is called by |
| 1523 | `perform-replace' when its 4th argument is non-nil. | 1431 | `perform-replace' when its 4th argument is non-nil. |
| 1524 | 1432 | ||
| 1525 | +++ | ||
| 1526 | *** New keymap `search-map' bound to `M-s' provides global bindings | 1433 | *** New keymap `search-map' bound to `M-s' provides global bindings |
| 1527 | for search related commands. | 1434 | for search related commands. |
| 1528 | 1435 | ||
| 1529 | +++ | ||
| 1530 | *** New keymap `multi-query-replace-map' contains additonal keys bound | 1436 | *** New keymap `multi-query-replace-map' contains additonal keys bound |
| 1531 | to `automatic-all' and `exit-current' for multi-buffer interactive replacement. | 1437 | to `automatic-all' and `exit-current' for multi-buffer interactive replacement. |
| 1532 | 1438 | ||
| 1533 | --- | ||
| 1534 | *** The variable `inhibit-changing-match-data', if non-nil, prevents | 1439 | *** The variable `inhibit-changing-match-data', if non-nil, prevents |
| 1535 | the search and match primitives from changing the match data. | 1440 | the search and match primitives from changing the match data. |
| 1536 | 1441 | ||
| 1537 | +++ | ||
| 1538 | *** New functions `word-search-forward-lax' and `word-search-backward-lax'. | 1442 | *** New functions `word-search-forward-lax' and `word-search-backward-lax'. |
| 1539 | These are like `word-search-forward and `word-search-backward', except | 1443 | These are like `word-search-forward and `word-search-backward', except |
| 1540 | that the end of the search string need not match a word boundary, | 1444 | that the end of the search string need not match a word boundary, |
| @@ -1542,15 +1446,14 @@ unless it ends in whitespace. | |||
| 1542 | 1446 | ||
| 1543 | ** File handling changes | 1447 | ** File handling changes |
| 1544 | 1448 | ||
| 1545 | +++ | ||
| 1546 | *** set-file-modes is now interactive and can take the mode value in | 1449 | *** set-file-modes is now interactive and can take the mode value in |
| 1547 | symbolic notation thanks to auxiliary functions. | 1450 | symbolic notation thanks to auxiliary functions. |
| 1548 | +++ | 1451 | |
| 1549 | *** file-local-variables-alist stores an alist of file-local | 1452 | *** file-local-variables-alist stores an alist of file-local |
| 1550 | variables defined in the current buffer. | 1453 | variables defined in the current buffer. |
| 1551 | 1454 | ||
| 1552 | ** Face-remapping | 1455 | ** Face-remapping |
| 1553 | +++ | 1456 | |
| 1554 | *** Each face can be remapped to a different face definition using the | 1457 | *** Each face can be remapped to a different face definition using the |
| 1555 | variable `face-remapping-alist'. This is an alist that maps faces to | 1458 | variable `face-remapping-alist'. This is an alist that maps faces to |
| 1556 | replacement definitions (which can be face names, lists of face names, | 1459 | replacement definitions (which can be face names, lists of face names, |
| @@ -1563,64 +1466,59 @@ menu and the new `C-x C-+', `C-x C--', and `C-x C-0' commands (see | |||
| 1563 | Editing Changes, above). | 1466 | Editing Changes, above). |
| 1564 | 1467 | ||
| 1565 | *** New functions: | 1468 | *** New functions: |
| 1566 | +++ | 1469 | |
| 1567 | **** `face-remap-add-relative' adds a face remapping entry to the | 1470 | **** `face-remap-add-relative' adds a face remapping entry to the |
| 1568 | current buffer. | 1471 | current buffer. |
| 1569 | +++ | 1472 | |
| 1570 | **** ``face-remap-remove-relative' removes a face remapping entry from | 1473 | **** ``face-remap-remove-relative' removes a face remapping entry from |
| 1571 | the current buffer. | 1474 | the current buffer. |
| 1572 | +++ | 1475 | |
| 1573 | **** `face-remap-reset-base' restores a face to its global definition. | 1476 | **** `face-remap-reset-base' restores a face to its global definition. |
| 1574 | +++ | 1477 | |
| 1575 | **** `face-remap-set-base' sets the base remapping of a face. | 1478 | **** `face-remap-set-base' sets the base remapping of a face. |
| 1576 | 1479 | ||
| 1577 | ** Process changes | 1480 | ** Process changes |
| 1578 | +++ | 1481 | |
| 1579 | *** The new function `start-file-process' is similar to `start-process', | 1482 | *** The new function `start-file-process' is similar to `start-process', |
| 1580 | but obeys file handlers. The file handler is chosen based on | 1483 | but obeys file handlers. The file handler is chosen based on |
| 1581 | `default-directory'. The functions `start-file-process-shell-command' | 1484 | `default-directory'. The functions `start-file-process-shell-command' |
| 1582 | and `process-file-shell-command' are also new; they call internally | 1485 | and `process-file-shell-command' are also new; they call internally |
| 1583 | `start-file-process' and `process-file', respectively. | 1486 | `start-file-process' and `process-file', respectively. |
| 1584 | 1487 | ||
| 1585 | +++ | ||
| 1586 | *** The new function `process-lines' executes an external program and | 1488 | *** The new function `process-lines' executes an external program and |
| 1587 | returns its output as a list of lines. | 1489 | returns its output as a list of lines. |
| 1588 | 1490 | ||
| 1589 | ** Character code, representation, and charset changes. | 1491 | ** Character code, representation, and charset changes. |
| 1590 | 1492 | ||
| 1591 | +++ | 1493 | *** In multibyte buffers and strings, characters are represented by |
| 1592 | The character code space is now 0x0..0x3FFFFF with no gap. | 1494 | UTF-8 byte sequences. The character code space is now 0x0..0x3FFFFF |
| 1593 | Characters of code 0x0..0x10FFFF are Unicode characters of the same code points. | 1495 | with no gap; code points 0x0..0x10FFFF are Unicode characters of the |
| 1594 | Characters of code 0x3FFF80..0x3FFFFF are raw 8-bit bytes. | 1496 | same code points, while code points 0x3FFF80..0x3FFFFF are raw 8-bit |
| 1595 | 1497 | bytes. | |
| 1596 | +++ | ||
| 1597 | Generic characters no longer exist. | ||
| 1598 | 1498 | ||
| 1599 | +++ | 1499 | *** Generic characters no longer exist. |
| 1600 | In buffers and strings, characters are represented by UTF-8 byte | ||
| 1601 | sequences in a multibyte buffer/string. | ||
| 1602 | 1500 | ||
| 1603 | +++ | 1501 | *** The concept of a charset has changed. A single character may |
| 1604 | The concept of a charset has changed. A single character may belong | 1502 | belong to multiple charsets (e.g. a-grave, U+00E0, belongs to charsets |
| 1605 | to multiple charsets (e.g. a-grave, U+00E0, belongs to charsets | ||
| 1606 | unicode, iso-8859-1, iso-8859-3, etc). | 1503 | unicode, iso-8859-1, iso-8859-3, etc). |
| 1607 | 1504 | ||
| 1608 | --- | 1505 | **** The dimension of a charset is now 1, 2, 3, or 4, and the size of |
| 1506 | each dimension is no longer limited to 94 or 96. | ||
| 1507 | |||
| 1508 | **** A dynamic charset priority list is used to infer the charset of | ||
| 1509 | characters for display. | ||
| 1510 | |||
| 1609 | *** The functions `split-char' and `make-char' now accept up to 4 | 1511 | *** The functions `split-char' and `make-char' now accept up to 4 |
| 1610 | positional codes instead of just 2. | 1512 | positional codes instead of just 2. |
| 1611 | 1513 | ||
| 1612 | +++ | ||
| 1613 | *** The functions `encode-char' and `decode-char' now accept any character sets. | 1514 | *** The functions `encode-char' and `decode-char' now accept any character sets. |
| 1614 | 1515 | ||
| 1615 | --- | ||
| 1616 | *** The function `define-charset' now accepts a completely different | 1516 | *** The function `define-charset' now accepts a completely different |
| 1617 | form of arguments (old-style arguments still work). | 1517 | form of arguments (old-style arguments still work). |
| 1618 | 1518 | ||
| 1619 | +++ | ||
| 1620 | *** The value of the function `char-charset' depends on the current | 1519 | *** The value of the function `char-charset' depends on the current |
| 1621 | priorities of charsets. | 1520 | priorities of charsets. |
| 1622 | 1521 | ||
| 1623 | +++ | ||
| 1624 | *** The function get-char-code-property now accepts many Unicode base | 1522 | *** The function get-char-code-property now accepts many Unicode base |
| 1625 | character properties. They are `name', `general-category', | 1523 | character properties. They are `name', `general-category', |
| 1626 | `canonical-combining-class', `bidi-class', `decomposition', | 1524 | `canonical-combining-class', `bidi-class', `decomposition', |
| @@ -1628,41 +1526,31 @@ character properties. They are `name', `general-category', | |||
| 1628 | `old-name', `iso-10646-comment', `uppercase', `lowercase', and | 1526 | `old-name', `iso-10646-comment', `uppercase', `lowercase', and |
| 1629 | `titlecase'. | 1527 | `titlecase'. |
| 1630 | 1528 | ||
| 1631 | +++ | ||
| 1632 | *** The functions `modify-syntax-entry' and `modify-category-entry' now | 1529 | *** The functions `modify-syntax-entry' and `modify-category-entry' now |
| 1633 | accept a cons of characters as the first argument, and modify all | 1530 | accept a cons of characters as the first argument, and modify all |
| 1634 | entries in that range of characters. | 1531 | entries in that range of characters. |
| 1635 | 1532 | ||
| 1636 | +++ | ||
| 1637 | *** Use of `translation-table-for-input' for character code unification | 1533 | *** Use of `translation-table-for-input' for character code unification |
| 1638 | is now obsolete, since Emacs 23.1 and later uses Unicode as basis for | 1534 | is now obsolete, since Emacs 23.1 and later uses Unicode as basis for |
| 1639 | internal representation of characters. | 1535 | internal representation of characters. |
| 1640 | 1536 | ||
| 1641 | *** New functions: | 1537 | *** New functions: |
| 1642 | 1538 | ||
| 1643 | +++ | ||
| 1644 | **** `characterp' returns t if and only if the argument is a character. | 1539 | **** `characterp' returns t if and only if the argument is a character. |
| 1645 | This replaces `char-valid-p', which is now obsolete. | 1540 | This replaces `char-valid-p', which is now obsolete. |
| 1646 | 1541 | ||
| 1647 | +++ | ||
| 1648 | **** `max-char' returns the maximum character code (currently #x3FFFFF). | 1542 | **** `max-char' returns the maximum character code (currently #x3FFFFF). |
| 1649 | 1543 | ||
| 1650 | --- | ||
| 1651 | **** `define-charset-alias' defines an alias of a charset. | 1544 | **** `define-charset-alias' defines an alias of a charset. |
| 1652 | 1545 | ||
| 1653 | +++ | ||
| 1654 | **** `set-charset-priority' sets priorities of charsets. | 1546 | **** `set-charset-priority' sets priorities of charsets. |
| 1655 | 1547 | ||
| 1656 | +++ | ||
| 1657 | **** `charset-priority-list' returns a prioritized list of charsets. | 1548 | **** `charset-priority-list' returns a prioritized list of charsets. |
| 1658 | 1549 | ||
| 1659 | +++ | ||
| 1660 | **** `unibyte-string' makes a unibyte string from bytes. | 1550 | **** `unibyte-string' makes a unibyte string from bytes. |
| 1661 | 1551 | ||
| 1662 | --- | ||
| 1663 | **** `define-char-code-property' defines a character code property. | 1552 | **** `define-char-code-property' defines a character code property. |
| 1664 | 1553 | ||
| 1665 | +++ | ||
| 1666 | **** `char-code-property-description' returns the description string of | 1554 | **** `char-code-property-description' returns the description string of |
| 1667 | a character code property. | 1555 | a character code property. |
| 1668 | 1556 | ||
| @@ -1671,66 +1559,51 @@ a character code property. | |||
| 1671 | **** `find-word-boundary-function-table' is a char-table of functions to | 1559 | **** `find-word-boundary-function-table' is a char-table of functions to |
| 1672 | search for a word boundary. | 1560 | search for a word boundary. |
| 1673 | 1561 | ||
| 1674 | +++ | ||
| 1675 | **** `char-script-table' is a char-table of script names. | 1562 | **** `char-script-table' is a char-table of script names. |
| 1676 | 1563 | ||
| 1677 | +++ | ||
| 1678 | **** `char-width-table' is a char-table of character widths. | 1564 | **** `char-width-table' is a char-table of character widths. |
| 1679 | 1565 | ||
| 1680 | --- | ||
| 1681 | **** `print-charset-text-property' controls how to handle `charset' text | 1566 | **** `print-charset-text-property' controls how to handle `charset' text |
| 1682 | property on printing a string. | 1567 | property on printing a string. |
| 1683 | 1568 | ||
| 1684 | +++ | ||
| 1685 | **** `printable-chars' is a char-table of printable characters. | 1569 | **** `printable-chars' is a char-table of printable characters. |
| 1686 | 1570 | ||
| 1687 | ** Code conversion changes | 1571 | ** Code conversion changes |
| 1688 | 1572 | ||
| 1689 | --- | ||
| 1690 | *** The new function `define-coding-system' should be used to define a | 1573 | *** The new function `define-coding-system' should be used to define a |
| 1691 | coding system instead of `make-coding-system' (which is now obsolete). | 1574 | coding system instead of `make-coding-system' (which is now obsolete). |
| 1692 | 1575 | ||
| 1693 | +++ | ||
| 1694 | *** The functions `encode-coding-region' and `decode-coding-region' | 1576 | *** The functions `encode-coding-region' and `decode-coding-region' |
| 1695 | have an optional 4th argument to specify where the result of | 1577 | have an optional 4th argument to specify where the result of |
| 1696 | conversion should go. | 1578 | conversion should go. |
| 1697 | 1579 | ||
| 1698 | +++ | ||
| 1699 | *** The functions `encode-coding-string' and `decode-coding-string' | 1580 | *** The functions `encode-coding-string' and `decode-coding-string' |
| 1700 | have an optional 4th argument specifying a buffer to store the result | 1581 | have an optional 4th argument specifying a buffer to store the result |
| 1701 | of conversion. | 1582 | of conversion. |
| 1702 | 1583 | ||
| 1703 | +++ | ||
| 1704 | *** The new variable `inhibit-null-byte-detection' controls whether to | 1584 | *** The new variable `inhibit-null-byte-detection' controls whether to |
| 1705 | consider text with null bytes as binary data. By default, it is | 1585 | consider text with null bytes as binary data. By default, it is |
| 1706 | `nil', and Emacs uses `no-conversion' for any text containing null | 1586 | `nil', and Emacs uses `no-conversion' for any text containing null |
| 1707 | bytes. | 1587 | bytes. |
| 1708 | 1588 | ||
| 1709 | --- | ||
| 1710 | *** The functions `set-coding-priority' and `make-coding-system' are obsolete. | 1589 | *** The functions `set-coding-priority' and `make-coding-system' are obsolete. |
| 1711 | 1590 | ||
| 1712 | *** New functions: | 1591 | *** New functions: |
| 1713 | 1592 | ||
| 1714 | +++ | ||
| 1715 | **** `with-coding-priority' executes Lisp code using the specified | 1593 | **** `with-coding-priority' executes Lisp code using the specified |
| 1716 | coding system priority order. | 1594 | coding system priority order. |
| 1717 | 1595 | ||
| 1718 | +++ | ||
| 1719 | **** `check-coding-systems-region' checks if the text in the region is | 1596 | **** `check-coding-systems-region' checks if the text in the region is |
| 1720 | encodable by the specified coding systems. | 1597 | encodable by the specified coding systems. |
| 1721 | 1598 | ||
| 1722 | +++ | ||
| 1723 | **** `coding-system-aliases' returns a list of aliases of a coding system. | 1599 | **** `coding-system-aliases' returns a list of aliases of a coding system. |
| 1724 | 1600 | ||
| 1725 | +++ | ||
| 1726 | **** `coding-system-charset-list' returns a list of charsets supported | 1601 | **** `coding-system-charset-list' returns a list of charsets supported |
| 1727 | by a coding system. | 1602 | by a coding system. |
| 1728 | 1603 | ||
| 1729 | +++ | ||
| 1730 | **** `coding-system-priority-list' returns a list of coding systems | 1604 | **** `coding-system-priority-list' returns a list of coding systems |
| 1731 | ordered by their priorities. | 1605 | ordered by their priorities. |
| 1732 | 1606 | ||
| 1733 | +++ | ||
| 1734 | **** `set-coding-system-priority' sets priorities of coding systems. | 1607 | **** `set-coding-system-priority' sets priorities of coding systems. |
| 1735 | 1608 | ||
| 1736 | **** `coding-system-from-name' returns a coding system matching with | 1609 | **** `coding-system-from-name' returns a coding system matching with |
| @@ -1751,13 +1624,12 @@ robin rule can hold the original ASCII sequence as a char-code-property) | |||
| 1751 | *** The new function `robin-use-package' starts using a Robin package | 1624 | *** The new function `robin-use-package' starts using a Robin package |
| 1752 | as an input method. | 1625 | as an input method. |
| 1753 | 1626 | ||
| 1754 | +++ | ||
| 1755 | *** The new function `string-to-unibyte' is like `string-as-unibyte' | 1627 | *** The new function `string-to-unibyte' is like `string-as-unibyte' |
| 1756 | but signals an error if STRING contains a non-ASCII, non-eight-bit | 1628 | but signals an error if STRING contains a non-ASCII, non-eight-bit |
| 1757 | character. | 1629 | character. |
| 1758 | 1630 | ||
| 1759 | ** Changes related to the new font backend | 1631 | ** Changes related to the new font backend |
| 1760 | +++ | 1632 | |
| 1761 | *** Which font backends to use can be specified by the X resource | 1633 | *** Which font backends to use can be specified by the X resource |
| 1762 | "FontBackend". For instance, to use both X core fonts and Xft fonts: | 1634 | "FontBackend". For instance, to use both X core fonts and Xft fonts: |
| 1763 | 1635 | ||
| @@ -1765,7 +1637,7 @@ Emacs.FontBackend: x,xft | |||
| 1765 | 1637 | ||
| 1766 | If this resource is not set, Emacs tries to use all font backends | 1638 | If this resource is not set, Emacs tries to use all font backends |
| 1767 | available on your graphic device. | 1639 | available on your graphic device. |
| 1768 | +++ | 1640 | |
| 1769 | *** New frame parameter `font-backend' specifies a list of | 1641 | *** New frame parameter `font-backend' specifies a list of |
| 1770 | font-backends supported by the frame's graphic device. On X, they are | 1642 | font-backends supported by the frame's graphic device. On X, they are |
| 1771 | currently `x' and `xft'. | 1643 | currently `x' and `xft'. |
| @@ -1775,117 +1647,102 @@ second argument, and has an optional 5th argument to control how to | |||
| 1775 | set the font. | 1647 | set the font. |
| 1776 | 1648 | ||
| 1777 | *** New functions: | 1649 | *** New functions: |
| 1778 | +++ | 1650 | |
| 1779 | **** `fontp' checks if the argument is a font-spec or font-entity. | 1651 | **** `fontp' checks if the argument is a font-spec or font-entity. |
| 1780 | +++ | 1652 | |
| 1781 | **** `font-spec' creates a new font-spec object. | 1653 | **** `font-spec' creates a new font-spec object. |
| 1782 | +++ | 1654 | |
| 1783 | **** `font-get' returns a font property value. | 1655 | **** `font-get' returns a font property value. |
| 1784 | +++ | 1656 | |
| 1785 | **** `font-put' sets a font property value. | 1657 | **** `font-put' sets a font property value. |
| 1786 | +++ | 1658 | |
| 1787 | **** `font-face-attributes' returns a plist of face attributes set by a font. | 1659 | **** `font-face-attributes' returns a plist of face attributes set by a font. |
| 1788 | +++ | 1660 | |
| 1789 | **** `list-fonts' returns a list of font-entities matching a font spec. | 1661 | **** `list-fonts' returns a list of font-entities matching a font spec. |
| 1790 | +++ | 1662 | |
| 1791 | **** `find-font' returns the font-entity best matching the given font spec. | 1663 | **** `find-font' returns the font-entity best matching the given font spec. |
| 1792 | +++ | 1664 | |
| 1793 | **** `font-family-list' returns a list of family names of available fonts. | 1665 | **** `font-family-list' returns a list of family names of available fonts. |
| 1794 | +++ | 1666 | |
| 1795 | **** `font-xlfd-name' returns an XLFD name of a given font spec, font | 1667 | **** `font-xlfd-name' returns an XLFD name of a given font spec, font |
| 1796 | entity, or font object. | 1668 | entity, or font object. |
| 1797 | --- | 1669 | |
| 1798 | **** `clear-font-cache' clears all font caches. | 1670 | **** `clear-font-cache' clears all font caches. |
| 1799 | 1671 | ||
| 1800 | ** Changes related to multiple-terminal (multi-tty) support | 1672 | ** Changes related to multiple-terminal (multi-tty) support |
| 1801 | 1673 | ||
| 1802 | --- | ||
| 1803 | *** $TERM is now set to `dumb' for subprocesses. If you want to know the | 1674 | *** $TERM is now set to `dumb' for subprocesses. If you want to know the |
| 1804 | $TERM inherited by Emacs you will have to look inside initial-environment. | 1675 | $TERM inherited by Emacs you will have to look inside initial-environment. |
| 1805 | 1676 | ||
| 1806 | --- | ||
| 1807 | *** $DISPLAY is now dynamically inherited from the frame's `display'. | 1677 | *** $DISPLAY is now dynamically inherited from the frame's `display'. |
| 1808 | 1678 | ||
| 1809 | +++ | ||
| 1810 | *** The `window-system' variable is now frame-local. The new | 1679 | *** The `window-system' variable is now frame-local. The new |
| 1811 | `initial-window-system' variable contains the `window-system' value | 1680 | `initial-window-system' variable contains the `window-system' value |
| 1812 | for the first frame. `window-system' is also now a function that | 1681 | for the first frame. `window-system' is also now a function that |
| 1813 | takes a frame argument. | 1682 | takes a frame argument. |
| 1814 | 1683 | ||
| 1815 | +++ | ||
| 1816 | *** The `keyboard-translate-table' variable and the terminal and | 1684 | *** The `keyboard-translate-table' variable and the terminal and |
| 1817 | keyboard coding systems are now terminal-local. | 1685 | keyboard coding systems are now terminal-local. |
| 1818 | 1686 | ||
| 1819 | --- | ||
| 1820 | *** You can specify a terminal device (`tty' parameter) and a terminal | 1687 | *** You can specify a terminal device (`tty' parameter) and a terminal |
| 1821 | type (`tty-type' parameter) to `make-terminal-frame'. | 1688 | type (`tty-type' parameter) to `make-terminal-frame'. |
| 1822 | 1689 | ||
| 1823 | --- | ||
| 1824 | *** The function `make-frame-on-display' now works during a tty | 1690 | *** The function `make-frame-on-display' now works during a tty |
| 1825 | session. | 1691 | session. |
| 1826 | 1692 | ||
| 1827 | +++ | ||
| 1828 | *** A new `terminal' data type. | 1693 | *** A new `terminal' data type. |
| 1829 | The functions `get-device-terminal', `terminal-parameters', | 1694 | The functions `get-device-terminal', `terminal-parameters', |
| 1830 | `terminal-parameter', `set-terminal-parameter' use this data type. | 1695 | `terminal-parameter', `set-terminal-parameter' use this data type. |
| 1831 | 1696 | ||
| 1832 | +++ | ||
| 1833 | *** Function key sequences are now mapped using `local-function-key-map', | 1697 | *** Function key sequences are now mapped using `local-function-key-map', |
| 1834 | a new variable. This inherits from the global variable function-key-map, | 1698 | a new variable. This inherits from the global variable function-key-map, |
| 1835 | which is not used directly any more. | 1699 | which is not used directly any more. |
| 1836 | 1700 | ||
| 1837 | *** New hooks: | 1701 | *** New hooks: |
| 1838 | 1702 | ||
| 1839 | +++ | ||
| 1840 | **** before-hack-local-variables-hook is called after setting new | 1703 | **** before-hack-local-variables-hook is called after setting new |
| 1841 | variable file-local-variables-alist, and before actually applying the | 1704 | variable file-local-variables-alist, and before actually applying the |
| 1842 | file-local variables. | 1705 | file-local variables. |
| 1843 | 1706 | ||
| 1844 | +++ | ||
| 1845 | **** `suspend-tty-functions' and `resume-tty-functions' are called | 1707 | **** `suspend-tty-functions' and `resume-tty-functions' are called |
| 1846 | after a tty frame has been suspended or resumed, respectively. The | 1708 | after a tty frame has been suspended or resumed, respectively. The |
| 1847 | functions are called with the terminal id of the frame being | 1709 | functions are called with the terminal id of the frame being |
| 1848 | suspended/resumed as a parameter. | 1710 | suspended/resumed as a parameter. |
| 1849 | 1711 | ||
| 1850 | +++ | ||
| 1851 | **** The special hook `delete-terminal-functions' is called before | 1712 | **** The special hook `delete-terminal-functions' is called before |
| 1852 | deleting a terminal. | 1713 | deleting a terminal. |
| 1853 | 1714 | ||
| 1854 | *** New functions: | 1715 | *** New functions: |
| 1855 | 1716 | ||
| 1856 | +++ | ||
| 1857 | **** `delete-terminal' | 1717 | **** `delete-terminal' |
| 1858 | 1718 | ||
| 1859 | +++ | ||
| 1860 | **** `suspend-tty' | 1719 | **** `suspend-tty' |
| 1861 | 1720 | ||
| 1862 | +++ | ||
| 1863 | **** `resume-tty'. | 1721 | **** `resume-tty'. |
| 1864 | 1722 | ||
| 1865 | +++ | ||
| 1866 | *** `initial-environment' holds the environment inherited from Emacs's parent. | 1723 | *** `initial-environment' holds the environment inherited from Emacs's parent. |
| 1867 | 1724 | ||
| 1868 | ** Redisplay changes | 1725 | ** Redisplay changes |
| 1869 | +++ | 1726 | |
| 1870 | *** For underlined characters, the distance between the underline and | 1727 | *** For underlined characters, the distance between the underline and |
| 1871 | the baseline is controlled by a new variable, `underline-minimum-offset'. | 1728 | the baseline is controlled by a new variable, `underline-minimum-offset'. |
| 1872 | +++ | 1729 | |
| 1873 | *** You can now pass the value of the `invisible' property to | 1730 | *** You can now pass the value of the `invisible' property to |
| 1874 | invisible-p to check whether it would cause the text to be invisible. | 1731 | invisible-p to check whether it would cause the text to be invisible. |
| 1875 | This is convenient when checking invisibility of text with no buffer | 1732 | This is convenient when checking invisibility of text with no buffer |
| 1876 | position (e.g. in before/after-strings). | 1733 | position (e.g. in before/after-strings). |
| 1877 | +++ | 1734 | |
| 1878 | *** `clear-image-cache' can be told to flush only images of a specific file. | 1735 | *** `clear-image-cache' can be told to flush only images of a specific file. |
| 1879 | +++ | 1736 | |
| 1880 | *** `vertical-motion' can now be given a goal column. | 1737 | *** `vertical-motion' can now be given a goal column. |
| 1881 | It now accepts a cons cell (COLS . LINES) in its first argument, which | 1738 | It now accepts a cons cell (COLS . LINES) in its first argument, which |
| 1882 | says to stop, where possible, at a pixel x-position equal to COLS | 1739 | says to stop, where possible, at a pixel x-position equal to COLS |
| 1883 | times the default column width. | 1740 | times the default column width. |
| 1884 | +++ | 1741 | |
| 1885 | *** redisplay-end-trigger-functions, set-window-redisplay-end-trigger, | 1742 | *** redisplay-end-trigger-functions, set-window-redisplay-end-trigger, |
| 1886 | and window-redisplay-end-trigger are obsolete. Use `jit-lock-register' | 1743 | and window-redisplay-end-trigger are obsolete. Use `jit-lock-register' |
| 1887 | instead. | 1744 | instead. |
| 1888 | +++ | 1745 | |
| 1889 | *** The new variables `wrap-prefix' and `line-prefix' specify display | 1746 | *** The new variables `wrap-prefix' and `line-prefix' specify display |
| 1890 | specs which are appended at display-time to every continuation line | 1747 | specs which are appended at display-time to every continuation line |
| 1891 | and non-continuation line, respectively. In addition, Emacs | 1748 | and non-continuation line, respectively. In addition, Emacs |
| @@ -1897,32 +1754,25 @@ name, but take precedence. | |||
| 1897 | 1754 | ||
| 1898 | ** Miscellaneous new functions | 1755 | ** Miscellaneous new functions |
| 1899 | 1756 | ||
| 1900 | +++ | ||
| 1901 | *** `apply-partially' performs a "curried" application of a function. | 1757 | *** `apply-partially' performs a "curried" application of a function. |
| 1902 | 1758 | ||
| 1903 | +++ | ||
| 1904 | *** `buffer-swap-text' swaps text between two buffers. This can be | 1759 | *** `buffer-swap-text' swaps text between two buffers. This can be |
| 1905 | useful for modes such as tar-mode, archive-mode, RMAIL. | 1760 | useful for modes such as tar-mode, archive-mode, RMAIL. |
| 1906 | 1761 | ||
| 1907 | +++ | ||
| 1908 | *** `combine-and-quote-strings' produces a single string from a list of strings | 1762 | *** `combine-and-quote-strings' produces a single string from a list of strings |
| 1909 | sticking a separator string in between each pair, and quoting those | 1763 | sticking a separator string in between each pair, and quoting those |
| 1910 | strings that include the separator as their substring. Useful for | 1764 | strings that include the separator as their substring. Useful for |
| 1911 | consing shell command lines from the individual arguments. | 1765 | consing shell command lines from the individual arguments. |
| 1912 | 1766 | ||
| 1913 | --- | ||
| 1914 | *** `custom-note-var-changed' tells Custom to treat the change in a | 1767 | *** `custom-note-var-changed' tells Custom to treat the change in a |
| 1915 | certain variable as having been made within Custom. | 1768 | certain variable as having been made within Custom. |
| 1916 | 1769 | ||
| 1917 | +++ | ||
| 1918 | *** `face-all-attributes' returns an alist describing all the basic | 1770 | *** `face-all-attributes' returns an alist describing all the basic |
| 1919 | attributes of a given face. | 1771 | attributes of a given face. |
| 1920 | 1772 | ||
| 1921 | +++ | ||
| 1922 | *** `format-seconds' converts a number of seconds into a readable | 1773 | *** `format-seconds' converts a number of seconds into a readable |
| 1923 | string of days, hours, etc. | 1774 | string of days, hours, etc. |
| 1924 | 1775 | ||
| 1925 | +++ | ||
| 1926 | *** `image-refresh' refreshes all images associated with a given image | 1776 | *** `image-refresh' refreshes all images associated with a given image |
| 1927 | specification. | 1777 | specification. |
| 1928 | 1778 | ||
| @@ -1930,47 +1780,38 @@ specification. | |||
| 1930 | place to save user-specific files. It defaults to `user-emacs-directory' | 1780 | place to save user-specific files. It defaults to `user-emacs-directory' |
| 1931 | unless the file already exists at $HOME. | 1781 | unless the file already exists at $HOME. |
| 1932 | 1782 | ||
| 1933 | +++ | ||
| 1934 | *** `read-color' reads a color name using the minibuffer. | 1783 | *** `read-color' reads a color name using the minibuffer. |
| 1935 | 1784 | ||
| 1936 | +++ | ||
| 1937 | *** `read-shell-command' does what its name says, with completion. It | 1785 | *** `read-shell-command' does what its name says, with completion. It |
| 1938 | uses the minibuffer-local-shell-command-map for that. | 1786 | uses the minibuffer-local-shell-command-map for that. |
| 1939 | 1787 | ||
| 1940 | +++ | ||
| 1941 | *** `split-string-and-unquote' splits a string into a list of substrings | 1788 | *** `split-string-and-unquote' splits a string into a list of substrings |
| 1942 | on the boundaries of a given delimiter, and unquotes the substrings that | 1789 | on the boundaries of a given delimiter, and unquotes the substrings that |
| 1943 | are quoted. Useful for taking apart shell commands. | 1790 | are quoted. Useful for taking apart shell commands. |
| 1944 | 1791 | ||
| 1945 | +++ | ||
| 1946 | *** The two new functions `looking-at-p' and `string-match-p' can do | 1792 | *** The two new functions `looking-at-p' and `string-match-p' can do |
| 1947 | the same matching as `looking-at' and `string-match' without changing | 1793 | the same matching as `looking-at' and `string-match' without changing |
| 1948 | the match data. | 1794 | the match data. |
| 1949 | 1795 | ||
| 1950 | +++ | ||
| 1951 | *** The two new functions `make-serial-process' and | 1796 | *** The two new functions `make-serial-process' and |
| 1952 | `serial-process-configure' provide a Lisp interface to the new serial | 1797 | `serial-process-configure' provide a Lisp interface to the new serial |
| 1953 | port support (see Emacs changes, above). | 1798 | port support (see Emacs changes, above). |
| 1954 | 1799 | ||
| 1955 | ** Miscellaneous new variables | 1800 | ** Miscellaneous new variables |
| 1956 | 1801 | ||
| 1957 | +++ | ||
| 1958 | *** `read-circle', if nil, disables the reading of recursive Lisp | 1802 | *** `read-circle', if nil, disables the reading of recursive Lisp |
| 1959 | structures using the #N= and #N# syntax. | 1803 | structures using the #N= and #N# syntax. |
| 1960 | 1804 | ||
| 1961 | +++ | ||
| 1962 | *** `this-command-keys-shift-translated' is non-nil if the key | 1805 | *** `this-command-keys-shift-translated' is non-nil if the key |
| 1963 | sequence invoking the current command was found by shift-translation. | 1806 | sequence invoking the current command was found by shift-translation. |
| 1964 | 1807 | ||
| 1965 | *** `window-point-insertion-type' determines the insertion-type of the | 1808 | *** `window-point-insertion-type' determines the insertion-type of the |
| 1966 | marker used for window-point. | 1809 | marker used for window-point. |
| 1967 | 1810 | ||
| 1968 | --- | ||
| 1969 | *** bookmark provides `bookmark-make-record-function' so special major | 1811 | *** bookmark provides `bookmark-make-record-function' so special major |
| 1970 | modes like Info can teach bookmark.el how to save and restore the | 1812 | modes like Info can teach bookmark.el how to save and restore the |
| 1971 | relevant data. | 1813 | relevant data. |
| 1972 | 1814 | ||
| 1973 | +++ | ||
| 1974 | *** `fill-forward-paragraph-function' specifies which function the | 1815 | *** `fill-forward-paragraph-function' specifies which function the |
| 1975 | filling code should use to find paragraph boundaries. | 1816 | filling code should use to find paragraph boundaries. |
| 1976 | 1817 | ||
| @@ -1979,7 +1820,6 @@ filling code should use to find paragraph boundaries. | |||
| 1979 | 1820 | ||
| 1980 | ** The new package avl-tree.el deals with the AVL tree data structure. | 1821 | ** The new package avl-tree.el deals with the AVL tree data structure. |
| 1981 | 1822 | ||
| 1982 | +++ | ||
| 1983 | ** The new package check-declare.el verifies the accuracy of | 1823 | ** The new package check-declare.el verifies the accuracy of |
| 1984 | declare-function macros (see Lisp Changes, above). | 1824 | declare-function macros (see Lisp Changes, above). |
| 1985 | 1825 | ||
| @@ -1993,7 +1833,6 @@ of multiple buffers. Top-level commands `multi-isearch-buffers', | |||
| 1993 | `multi-isearch-files-regexp' accept a single argument that specifies | 1833 | `multi-isearch-files-regexp' accept a single argument that specifies |
| 1994 | a list of buffers/files to search for a string/regexp. | 1834 | a list of buffers/files to search for a string/regexp. |
| 1995 | 1835 | ||
| 1996 | +++ | ||
| 1997 | ** The new major mode `special-mode' is intended as a parent for | 1836 | ** The new major mode `special-mode' is intended as a parent for |
| 1998 | major modes such as those that set the "'mode-class 'special" property. | 1837 | major modes such as those that set the "'mode-class 'special" property. |
| 1999 | 1838 | ||