diff options
| author | Chong Yidong | 2007-04-20 21:39:32 +0000 |
|---|---|---|
| committer | Chong Yidong | 2007-04-20 21:39:32 +0000 |
| commit | 89b6fd250267a8e52e75e7fd785d5b07955fc04c (patch) | |
| tree | b6401d2445f324b1eebf816237166756ba483e4a | |
| parent | 923721f42588eae79a7f79cce5b411301f9451b4 (diff) | |
| download | emacs-89b6fd250267a8e52e75e7fd785d5b07955fc04c.tar.gz emacs-89b6fd250267a8e52e75e7fd785d5b07955fc04c.zip | |
Remove +++ and --- lines.
| -rw-r--r-- | etc/NEWS | 714 |
1 files changed, 0 insertions, 714 deletions
| @@ -14,13 +14,6 @@ in older Emacs versions. | |||
| 14 | 14 | ||
| 15 | You can narrow news to a specific version by calling `view-emacs-news' | 15 | You can narrow news to a specific version by calling `view-emacs-news' |
| 16 | with a prefix argument or by typing C-u C-h C-n. | 16 | with a prefix argument or by typing C-u C-h C-n. |
| 17 | |||
| 18 | Temporary note: | ||
| 19 | +++ indicates that the appropriate manual has already been updated. | ||
| 20 | --- means no change in the manuals is called for. | ||
| 21 | When you add a new item, please add it without either +++ or --- | ||
| 22 | so we will look at it and add it to the manual. | ||
| 23 | |||
| 24 | 17 | ||
| 25 | * About external Lisp packages | 18 | * About external Lisp packages |
| 26 | 19 | ||
| @@ -43,7 +36,6 @@ Some specific packages that are known to cause problems are: | |||
| 43 | 36 | ||
| 44 | * Installation Changes in Emacs 22.1 | 37 | * Installation Changes in Emacs 22.1 |
| 45 | 38 | ||
| 46 | --- | ||
| 47 | ** Emacs comes with a new set of icons. | 39 | ** Emacs comes with a new set of icons. |
| 48 | These icons are displayed on the taskbar and/or titlebar when Emacs | 40 | These icons are displayed on the taskbar and/or titlebar when Emacs |
| 49 | runs in a graphical environment. Source files for these icons can be | 41 | runs in a graphical environment. Source files for these icons can be |
| @@ -52,27 +44,21 @@ Emacs by changing these files directly. On X, the icon is compiled | |||
| 52 | into the Emacs executable; see gnu.h in the source tree. On MS | 44 | into the Emacs executable; see gnu.h in the source tree. On MS |
| 53 | Windows, see nt/icons/emacs.ico.) | 45 | Windows, see nt/icons/emacs.ico.) |
| 54 | 46 | ||
| 55 | --- | ||
| 56 | ** Emacs now supports new configure options `--program-prefix', | 47 | ** Emacs now supports new configure options `--program-prefix', |
| 57 | `--program-suffix' and `--program-transform-name' that affect the names of | 48 | `--program-suffix' and `--program-transform-name' that affect the names of |
| 58 | installed programs. | 49 | installed programs. |
| 59 | 50 | ||
| 60 | --- | ||
| 61 | ** Emacs can now be built without sound support. | 51 | ** Emacs can now be built without sound support. |
| 62 | 52 | ||
| 63 | --- | ||
| 64 | ** You can build Emacs with Gtk+ widgets by specifying `--with-x-toolkit=gtk' | 53 | ** You can build Emacs with Gtk+ widgets by specifying `--with-x-toolkit=gtk' |
| 65 | when you run configure. This requires Gtk+ 2.4 or newer. This port | 54 | when you run configure. This requires Gtk+ 2.4 or newer. This port |
| 66 | provides a way to display multilingual text in menus (with some caveats). | 55 | provides a way to display multilingual text in menus (with some caveats). |
| 67 | 56 | ||
| 68 | --- | ||
| 69 | ** The `emacsserver' program has been removed, replaced with Lisp code. | 57 | ** The `emacsserver' program has been removed, replaced with Lisp code. |
| 70 | 58 | ||
| 71 | --- | ||
| 72 | ** The `yow' program has been removed. | 59 | ** The `yow' program has been removed. |
| 73 | Use the corresponding Emacs feature instead. | 60 | Use the corresponding Emacs feature instead. |
| 74 | 61 | ||
| 75 | --- | ||
| 76 | ** By default, Emacs now uses a setgid helper program to update game | 62 | ** By default, Emacs now uses a setgid helper program to update game |
| 77 | scores. The directory ${localstatedir}/games/emacs is the normal | 63 | scores. The directory ${localstatedir}/games/emacs is the normal |
| 78 | place for game scores to be stored. You can control this with the | 64 | place for game scores to be stored. You can control this with the |
| @@ -81,12 +67,10 @@ to own the game scores is controlled by `--with-game-user'. If access | |||
| 81 | to a game user is not available, then scores will be stored separately | 67 | to a game user is not available, then scores will be stored separately |
| 82 | in each user's home directory. | 68 | in each user's home directory. |
| 83 | 69 | ||
| 84 | --- | ||
| 85 | ** Leim is now part of the Emacs distribution. | 70 | ** Leim is now part of the Emacs distribution. |
| 86 | You no longer need to download a separate tarball in order to build | 71 | You no longer need to download a separate tarball in order to build |
| 87 | Emacs with Leim. | 72 | Emacs with Leim. |
| 88 | 73 | ||
| 89 | +++ | ||
| 90 | ** The Emacs Lisp Reference Manual is now part of the distribution. | 74 | ** The Emacs Lisp Reference Manual is now part of the distribution. |
| 91 | 75 | ||
| 92 | The Emacs Lisp Reference Manual in Info format is built as part of the | 76 | The Emacs Lisp Reference Manual in Info format is built as part of the |
| @@ -94,7 +78,6 @@ Emacs build procedure and installed together with the Emacs User | |||
| 94 | Manual. A menu item was added to the menu bar to make it easily | 78 | Manual. A menu item was added to the menu bar to make it easily |
| 95 | accessible (Help->More Manuals->Emacs Lisp Reference). | 79 | accessible (Help->More Manuals->Emacs Lisp Reference). |
| 96 | 80 | ||
| 97 | --- | ||
| 98 | ** The Introduction to Programming in Emacs Lisp manual is now part of | 81 | ** The Introduction to Programming in Emacs Lisp manual is now part of |
| 99 | the distribution. | 82 | the distribution. |
| 100 | 83 | ||
| @@ -103,101 +86,79 @@ together with the Emacs User Manual, into the Info directory. A menu | |||
| 103 | item was added to the menu bar to make it easily accessible | 86 | item was added to the menu bar to make it easily accessible |
| 104 | (Help->More Manuals->Introduction to Emacs Lisp). | 87 | (Help->More Manuals->Introduction to Emacs Lisp). |
| 105 | 88 | ||
| 106 | --- | ||
| 107 | ** New translations of the Emacs Tutorial are available in the | 89 | ** New translations of the Emacs Tutorial are available in the |
| 108 | following languages: Brasilian Portuguese, Bulgarian, Chinese (both | 90 | following languages: Brasilian Portuguese, Bulgarian, Chinese (both |
| 109 | with simplified and traditional characters), French, Russian, and | 91 | with simplified and traditional characters), French, Russian, and |
| 110 | Italian. Type `C-u C-h t' to choose one of them in case your language | 92 | Italian. Type `C-u C-h t' to choose one of them in case your language |
| 111 | setup doesn't automatically select the right one. | 93 | setup doesn't automatically select the right one. |
| 112 | 94 | ||
| 113 | --- | ||
| 114 | ** New translations of the Emacs reference card are available in the | 95 | ** New translations of the Emacs reference card are available in the |
| 115 | Brasilian Portuguese and Russian. The corresponding PostScript files | 96 | Brasilian Portuguese and Russian. The corresponding PostScript files |
| 116 | are also included. | 97 | are also included. |
| 117 | 98 | ||
| 118 | --- | ||
| 119 | ** A French translation of the `Emacs Survival Guide' is available. | 99 | ** A French translation of the `Emacs Survival Guide' is available. |
| 120 | 100 | ||
| 121 | --- | ||
| 122 | ** Emacs now includes support for loading image libraries on demand. | 101 | ** Emacs now includes support for loading image libraries on demand. |
| 123 | (Currently this feature is only used on MS Windows.) You can configure | 102 | (Currently this feature is only used on MS Windows.) You can configure |
| 124 | the supported image types and their associated dynamic libraries by | 103 | the supported image types and their associated dynamic libraries by |
| 125 | setting the variable `image-library-alist'. | 104 | setting the variable `image-library-alist'. |
| 126 | 105 | ||
| 127 | --- | ||
| 128 | ** Support for a Cygwin build of Emacs was added. | 106 | ** Support for a Cygwin build of Emacs was added. |
| 129 | 107 | ||
| 130 | --- | ||
| 131 | ** Support for FreeBSD/Alpha has been added. | 108 | ** Support for FreeBSD/Alpha has been added. |
| 132 | 109 | ||
| 133 | --- | ||
| 134 | ** Support for GNU/Linux systems on S390 machines was added. | 110 | ** Support for GNU/Linux systems on S390 machines was added. |
| 135 | 111 | ||
| 136 | --- | ||
| 137 | ** Support for GNU/Linux systems on Tensilica Xtensa machines was added. | 112 | ** Support for GNU/Linux systems on Tensilica Xtensa machines was added. |
| 138 | 113 | ||
| 139 | --- | ||
| 140 | ** Support for MacOS X was added. | 114 | ** Support for MacOS X was added. |
| 141 | See the files mac/README and mac/INSTALL for build instructions. | 115 | See the files mac/README and mac/INSTALL for build instructions. |
| 142 | 116 | ||
| 143 | --- | ||
| 144 | ** Support for GNU/Linux systems on X86-64 machines was added. | 117 | ** Support for GNU/Linux systems on X86-64 machines was added. |
| 145 | 118 | ||
| 146 | --- | ||
| 147 | ** Mac OS 9 port now uses the Carbon API by default. You can also | 119 | ** Mac OS 9 port now uses the Carbon API by default. You can also |
| 148 | create a non-Carbon build by specifying `NonCarbon' as a target. See | 120 | create a non-Carbon build by specifying `NonCarbon' as a target. See |
| 149 | the files mac/README and mac/INSTALL for build instructions. | 121 | the files mac/README and mac/INSTALL for build instructions. |
| 150 | 122 | ||
| 151 | --- | ||
| 152 | ** Building with -DENABLE_CHECKING does not automatically build with union | 123 | ** Building with -DENABLE_CHECKING does not automatically build with union |
| 153 | types any more. Add -DUSE_LISP_UNION_TYPE if you want union types. | 124 | types any more. Add -DUSE_LISP_UNION_TYPE if you want union types. |
| 154 | 125 | ||
| 155 | --- | ||
| 156 | ** When pure storage overflows while dumping, Emacs now prints how | 126 | ** When pure storage overflows while dumping, Emacs now prints how |
| 157 | much pure storage it will approximately need. | 127 | much pure storage it will approximately need. |
| 158 | 128 | ||
| 159 | --- | ||
| 160 | ** The script etc/emacs-buffer.gdb can be used with gdb to retrieve the | 129 | ** The script etc/emacs-buffer.gdb can be used with gdb to retrieve the |
| 161 | contents of buffers from a core dump and save them to files easily, should | 130 | contents of buffers from a core dump and save them to files easily, should |
| 162 | Emacs crash. | 131 | Emacs crash. |
| 163 | 132 | ||
| 164 | --- | ||
| 165 | ** The Emacs terminal emulation in term.el uses a different terminfo name. | 133 | ** The Emacs terminal emulation in term.el uses a different terminfo name. |
| 166 | The Emacs terminal emulation in term.el now uses "eterm-color" as its | 134 | The Emacs terminal emulation in term.el now uses "eterm-color" as its |
| 167 | terminfo name, since term.el now supports color. | 135 | terminfo name, since term.el now supports color. |
| 168 | 136 | ||
| 169 | --- | ||
| 170 | ** Emacs Lisp source files are compressed by default if `gzip' is available. | 137 | ** Emacs Lisp source files are compressed by default if `gzip' is available. |
| 171 | 138 | ||
| 172 | --- | ||
| 173 | ** All images used in Emacs have been consolidated in etc/images and subdirs. | 139 | ** All images used in Emacs have been consolidated in etc/images and subdirs. |
| 174 | See also the changes to `find-image', documented below. | 140 | See also the changes to `find-image', documented below. |
| 175 | 141 | ||
| 176 | 142 | ||
| 177 | * Startup Changes in Emacs 22.1 | 143 | * Startup Changes in Emacs 22.1 |
| 178 | 144 | ||
| 179 | +++ | ||
| 180 | ** New command line option -Q or --quick. | 145 | ** New command line option -Q or --quick. |
| 181 | This is like using -q --no-site-file, but in addition it also disables | 146 | This is like using -q --no-site-file, but in addition it also disables |
| 182 | the fancy startup screen. | 147 | the fancy startup screen. |
| 183 | 148 | ||
| 184 | +++ | ||
| 185 | ** New command line option -D or --basic-display. | 149 | ** New command line option -D or --basic-display. |
| 186 | Disables the menu-bar, the tool-bar, the scroll-bars, tool tips, and | 150 | Disables the menu-bar, the tool-bar, the scroll-bars, tool tips, and |
| 187 | the blinking cursor. | 151 | the blinking cursor. |
| 188 | 152 | ||
| 189 | +++ | ||
| 190 | ** New command line option -nbc or --no-blinking-cursor disables | 153 | ** New command line option -nbc or --no-blinking-cursor disables |
| 191 | the blinking cursor on graphical terminals. | 154 | the blinking cursor on graphical terminals. |
| 192 | 155 | ||
| 193 | +++ | ||
| 194 | ** The option --script FILE runs Emacs in batch mode and loads FILE. | 156 | ** The option --script FILE runs Emacs in batch mode and loads FILE. |
| 195 | It is useful for writing Emacs Lisp shell script files, because they | 157 | It is useful for writing Emacs Lisp shell script files, because they |
| 196 | can start with this line: | 158 | can start with this line: |
| 197 | 159 | ||
| 198 | #!/usr/bin/emacs --script | 160 | #!/usr/bin/emacs --script |
| 199 | 161 | ||
| 200 | +++ | ||
| 201 | ** The option --directory DIR now modifies `load-path' immediately. | 162 | ** The option --directory DIR now modifies `load-path' immediately. |
| 202 | Directories are added to the front of `load-path' in the order they | 163 | Directories are added to the front of `load-path' in the order they |
| 203 | appear on the command line. For example, with this command line: | 164 | appear on the command line. For example, with this command line: |
| @@ -207,69 +168,57 @@ appear on the command line. For example, with this command line: | |||
| 207 | Emacs looks for library `foo' in the parent directory, then in /tmp, then | 168 | Emacs looks for library `foo' in the parent directory, then in /tmp, then |
| 208 | in the other directories in `load-path'. (-L is short for --directory.) | 169 | in the other directories in `load-path'. (-L is short for --directory.) |
| 209 | 170 | ||
| 210 | +++ | ||
| 211 | ** The command line option --no-windows has been changed to | 171 | ** The command line option --no-windows has been changed to |
| 212 | --no-window-system. The old one still works, but is deprecated. | 172 | --no-window-system. The old one still works, but is deprecated. |
| 213 | 173 | ||
| 214 | --- | ||
| 215 | ** If the environment variable DISPLAY specifies an unreachable X display, | 174 | ** If the environment variable DISPLAY specifies an unreachable X display, |
| 216 | Emacs will now startup as if invoked with the --no-window-system option. | 175 | Emacs will now startup as if invoked with the --no-window-system option. |
| 217 | 176 | ||
| 218 | +++ | ||
| 219 | ** The -f option, used from the command line to call a function, | 177 | ** The -f option, used from the command line to call a function, |
| 220 | now reads arguments for the function interactively if it is | 178 | now reads arguments for the function interactively if it is |
| 221 | an interactively callable function. | 179 | an interactively callable function. |
| 222 | 180 | ||
| 223 | +++ | ||
| 224 | ** When you specify a frame size with --geometry, the size applies to | 181 | ** When you specify a frame size with --geometry, the size applies to |
| 225 | all frames you create. A position specified with --geometry only | 182 | all frames you create. A position specified with --geometry only |
| 226 | affects the initial frame. | 183 | affects the initial frame. |
| 227 | 184 | ||
| 228 | --- | ||
| 229 | ** Emacs built for MS-Windows now behaves like Emacs on X does, | 185 | ** Emacs built for MS-Windows now behaves like Emacs on X does, |
| 230 | with respect to its frame position: if you don't specify a position | 186 | with respect to its frame position: if you don't specify a position |
| 231 | (in your .emacs init file, in the Registry, or with the --geometry | 187 | (in your .emacs init file, in the Registry, or with the --geometry |
| 232 | command-line option), Emacs leaves the frame position to the Windows' | 188 | command-line option), Emacs leaves the frame position to the Windows' |
| 233 | window manager. | 189 | window manager. |
| 234 | 190 | ||
| 235 | +++ | ||
| 236 | ** Emacs can now be invoked in full-screen mode on a windowed display. | 191 | ** Emacs can now be invoked in full-screen mode on a windowed display. |
| 237 | When Emacs is invoked on a window system, the new command-line options | 192 | When Emacs is invoked on a window system, the new command-line options |
| 238 | `--fullwidth', `--fullheight', and `--fullscreen' produce a frame | 193 | `--fullwidth', `--fullheight', and `--fullscreen' produce a frame |
| 239 | whose width, height, or both width and height take up the entire | 194 | whose width, height, or both width and height take up the entire |
| 240 | screen size. (For now, this does not work with some window managers.) | 195 | screen size. (For now, this does not work with some window managers.) |
| 241 | 196 | ||
| 242 | +++ | ||
| 243 | ** Emacs now displays a splash screen by default even if command-line | 197 | ** Emacs now displays a splash screen by default even if command-line |
| 244 | arguments were given. The new command-line option --no-splash | 198 | arguments were given. The new command-line option --no-splash |
| 245 | disables the splash screen; see also the variable | 199 | disables the splash screen; see also the variable |
| 246 | `inhibit-splash-screen' (which is also aliased as | 200 | `inhibit-splash-screen' (which is also aliased as |
| 247 | `inhibit-startup-message'). | 201 | `inhibit-startup-message'). |
| 248 | 202 | ||
| 249 | +++ | ||
| 250 | ** The default is now to use a bitmap as the icon, so the command-line options | 203 | ** The default is now to use a bitmap as the icon, so the command-line options |
| 251 | --icon-type, -i have been replaced with options --no-bitmap-icon, -nbi to turn | 204 | --icon-type, -i have been replaced with options --no-bitmap-icon, -nbi to turn |
| 252 | the bitmap icon off. | 205 | the bitmap icon off. |
| 253 | 206 | ||
| 254 | +++ | ||
| 255 | ** New user option `inhibit-startup-buffer-menu'. | 207 | ** New user option `inhibit-startup-buffer-menu'. |
| 256 | When loading many files, for instance with `emacs *', Emacs normally | 208 | When loading many files, for instance with `emacs *', Emacs normally |
| 257 | displays a buffer menu. This option turns the buffer menu off. | 209 | displays a buffer menu. This option turns the buffer menu off. |
| 258 | 210 | ||
| 259 | +++ | ||
| 260 | ** Init file changes | 211 | ** Init file changes |
| 261 | If the init file ~/.emacs does not exist, Emacs will try | 212 | If the init file ~/.emacs does not exist, Emacs will try |
| 262 | ~/.emacs.d/init.el or ~/.emacs.d/init.elc. Likewise, if the shell init file | 213 | ~/.emacs.d/init.el or ~/.emacs.d/init.elc. Likewise, if the shell init file |
| 263 | ~/.emacs_SHELL is not found, Emacs will try ~/.emacs.d/init_SHELL.sh. | 214 | ~/.emacs_SHELL is not found, Emacs will try ~/.emacs.d/init_SHELL.sh. |
| 264 | 215 | ||
| 265 | +++ | ||
| 266 | ** Emacs now reads the standard abbrevs file ~/.abbrev_defs | 216 | ** Emacs now reads the standard abbrevs file ~/.abbrev_defs |
| 267 | automatically at startup, if it exists. When Emacs offers to save | 217 | automatically at startup, if it exists. When Emacs offers to save |
| 268 | modified buffers, it saves the abbrevs too if they have changed. It | 218 | modified buffers, it saves the abbrevs too if they have changed. It |
| 269 | can do this either silently or asking for confirmation first, | 219 | can do this either silently or asking for confirmation first, |
| 270 | according to the value of `save-abbrevs'. | 220 | according to the value of `save-abbrevs'. |
| 271 | 221 | ||
| 272 | +++ | ||
| 273 | ** If the environment variable EMAIL is defined, Emacs now uses its value | 222 | ** If the environment variable EMAIL is defined, Emacs now uses its value |
| 274 | to compute the default value of `user-mail-address', in preference to | 223 | to compute the default value of `user-mail-address', in preference to |
| 275 | concatenation of `user-login-name' with the name of your host machine. | 224 | concatenation of `user-login-name' with the name of your host machine. |
| @@ -277,52 +226,42 @@ concatenation of `user-login-name' with the name of your host machine. | |||
| 277 | 226 | ||
| 278 | * Incompatible Editing Changes in Emacs 22.1 | 227 | * Incompatible Editing Changes in Emacs 22.1 |
| 279 | 228 | ||
| 280 | +++ | ||
| 281 | ** M-g is now a prefix key. | 229 | ** M-g is now a prefix key. |
| 282 | M-g g and M-g M-g run goto-line. | 230 | M-g g and M-g M-g run goto-line. |
| 283 | M-g n and M-g M-n run next-error (like C-x `). | 231 | M-g n and M-g M-n run next-error (like C-x `). |
| 284 | M-g p and M-g M-p run previous-error. | 232 | M-g p and M-g M-p run previous-error. |
| 285 | 233 | ||
| 286 | +++ | ||
| 287 | ** C-u M-g M-g switches to the most recent previous buffer, | 234 | ** C-u M-g M-g switches to the most recent previous buffer, |
| 288 | and goes to the specified line in that buffer. | 235 | and goes to the specified line in that buffer. |
| 289 | 236 | ||
| 290 | When goto-line starts to execute, if there's a number in the buffer at | 237 | When goto-line starts to execute, if there's a number in the buffer at |
| 291 | point then it acts as the default argument for the minibuffer. | 238 | point then it acts as the default argument for the minibuffer. |
| 292 | 239 | ||
| 293 | +++ | ||
| 294 | ** The old bindings C-M-delete and C-M-backspace have been deleted, | 240 | ** The old bindings C-M-delete and C-M-backspace have been deleted, |
| 295 | since there are situations where one or the other will shut down | 241 | since there are situations where one or the other will shut down |
| 296 | the operating system or your X server. | 242 | the operating system or your X server. |
| 297 | 243 | ||
| 298 | +++ | ||
| 299 | ** line-move-ignore-invisible now defaults to t. | 244 | ** line-move-ignore-invisible now defaults to t. |
| 300 | 245 | ||
| 301 | +++ | ||
| 302 | ** When the undo information of the current command gets really large | 246 | ** When the undo information of the current command gets really large |
| 303 | (beyond the value of `undo-outer-limit'), Emacs discards it and warns | 247 | (beyond the value of `undo-outer-limit'), Emacs discards it and warns |
| 304 | you about it. | 248 | you about it. |
| 305 | 249 | ||
| 306 | +++ | ||
| 307 | ** `apply-macro-to-region-lines' now operates on all lines that begin | 250 | ** `apply-macro-to-region-lines' now operates on all lines that begin |
| 308 | in the region, rather than on all complete lines in the region. | 251 | in the region, rather than on all complete lines in the region. |
| 309 | 252 | ||
| 310 | +++ | ||
| 311 | ** A prefix argument is no longer required to repeat a jump to a | 253 | ** A prefix argument is no longer required to repeat a jump to a |
| 312 | previous mark if you set `set-mark-command-repeat-pop' to t. I.e. C-u | 254 | previous mark if you set `set-mark-command-repeat-pop' to t. I.e. C-u |
| 313 | C-SPC C-SPC C-SPC ... cycles through the mark ring. Use C-u C-u C-SPC | 255 | C-SPC C-SPC C-SPC ... cycles through the mark ring. Use C-u C-u C-SPC |
| 314 | to set the mark immediately after a jump. | 256 | to set the mark immediately after a jump. |
| 315 | 257 | ||
| 316 | +++ | ||
| 317 | ** The info-search bindings on C-h C-f, C-h C-k and C-h C-i | 258 | ** The info-search bindings on C-h C-f, C-h C-k and C-h C-i |
| 318 | have been moved to C-h F, C-h K and C-h S. | 259 | have been moved to C-h F, C-h K and C-h S. |
| 319 | 260 | ||
| 320 | +++ | ||
| 321 | ** In incremental search, C-w is changed. M-%, C-M-w and C-M-y are special. | 261 | ** In incremental search, C-w is changed. M-%, C-M-w and C-M-y are special. |
| 322 | 262 | ||
| 323 | See below under "incremental search changes". | 263 | See below under "incremental search changes". |
| 324 | 264 | ||
| 325 | --- | ||
| 326 | ** C-x C-f RET (find-file), typing nothing in the minibuffer, is no longer | 265 | ** C-x C-f RET (find-file), typing nothing in the minibuffer, is no longer |
| 327 | a special case. | 266 | a special case. |
| 328 | 267 | ||
| @@ -333,28 +272,23 @@ directory with Dired. | |||
| 333 | You can get the old behavior by typing C-x C-f M-n RET, which fetches | 272 | You can get the old behavior by typing C-x C-f M-n RET, which fetches |
| 334 | the actual file name into the minibuffer. | 273 | the actual file name into the minibuffer. |
| 335 | 274 | ||
| 336 | +++ | ||
| 337 | ** The completion commands TAB, SPC and ? in the minibuffer apply only | 275 | ** The completion commands TAB, SPC and ? in the minibuffer apply only |
| 338 | to the text before point. If there is text in the buffer after point, | 276 | to the text before point. If there is text in the buffer after point, |
| 339 | it remains unchanged. | 277 | it remains unchanged. |
| 340 | 278 | ||
| 341 | +++ | ||
| 342 | ** When Emacs prompts for file names, SPC no longer completes the file name. | 279 | ** When Emacs prompts for file names, SPC no longer completes the file name. |
| 343 | This is so filenames with embedded spaces could be input without the | 280 | This is so filenames with embedded spaces could be input without the |
| 344 | need to quote the space with a C-q. The underlying changes in the | 281 | need to quote the space with a C-q. The underlying changes in the |
| 345 | keymaps that are active in the minibuffer are described below under | 282 | keymaps that are active in the minibuffer are described below under |
| 346 | "New keymaps for typing file names". | 283 | "New keymaps for typing file names". |
| 347 | 284 | ||
| 348 | +++ | ||
| 349 | ** M-o now is the prefix key for setting text properties; | 285 | ** M-o now is the prefix key for setting text properties; |
| 350 | M-o M-o requests refontification. | 286 | M-o M-o requests refontification. |
| 351 | 287 | ||
| 352 | +++ | ||
| 353 | ** You can now follow links by clicking Mouse-1 on the link. | 288 | ** You can now follow links by clicking Mouse-1 on the link. |
| 354 | 289 | ||
| 355 | See below for more details. | 290 | See below for more details. |
| 356 | 291 | ||
| 357 | +++ | ||
| 358 | ** In Dired's ! command (dired-do-shell-command), `*' and `?' now | 292 | ** In Dired's ! command (dired-do-shell-command), `*' and `?' now |
| 359 | control substitution of the file names only when they are surrounded | 293 | control substitution of the file names only when they are surrounded |
| 360 | by whitespace. This means you can now use them as shell wildcards | 294 | by whitespace. This means you can now use them as shell wildcards |
| @@ -362,11 +296,9 @@ too. If you want to use just plain `*' as a wildcard, type `*""'; the | |||
| 362 | doublequotes make no difference in the shell, but they prevent | 296 | doublequotes make no difference in the shell, but they prevent |
| 363 | special treatment in `dired-do-shell-command'. | 297 | special treatment in `dired-do-shell-command'. |
| 364 | 298 | ||
| 365 | --- | ||
| 366 | ** Adaptive filling misfeature removed. | 299 | ** Adaptive filling misfeature removed. |
| 367 | It no longer treats `NNN.' or `(NNN)' as a prefix. | 300 | It no longer treats `NNN.' or `(NNN)' as a prefix. |
| 368 | 301 | ||
| 369 | --- | ||
| 370 | ** The register compatibility key bindings (deprecated since Emacs 19) | 302 | ** The register compatibility key bindings (deprecated since Emacs 19) |
| 371 | have been removed: | 303 | have been removed: |
| 372 | C-x / point-to-register (Use: C-x r SPC) | 304 | C-x / point-to-register (Use: C-x r SPC) |
| @@ -377,7 +309,6 @@ have been removed: | |||
| 377 | 309 | ||
| 378 | * Editing Changes in Emacs 22.1 | 310 | * Editing Changes in Emacs 22.1 |
| 379 | 311 | ||
| 380 | +++ | ||
| 381 | ** !MEM FULL! at the start of the mode line indicates that Emacs | 312 | ** !MEM FULL! at the start of the mode line indicates that Emacs |
| 382 | cannot get any more memory for Lisp data. This often means it could | 313 | cannot get any more memory for Lisp data. This often means it could |
| 383 | crash soon if you do things that use more memory. On most systems, | 314 | crash soon if you do things that use more memory. On most systems, |
| @@ -385,71 +316,57 @@ killing buffers will get out of this state. If killing buffers does | |||
| 385 | not make !MEM FULL! disappear, you should save your work and start | 316 | not make !MEM FULL! disappear, you should save your work and start |
| 386 | a new Emacs. | 317 | a new Emacs. |
| 387 | 318 | ||
| 388 | +++ | ||
| 389 | ** The max size of buffers and integers has been doubled. | 319 | ** The max size of buffers and integers has been doubled. |
| 390 | On 32bit machines, it is now 256M (i.e. 268435455). | 320 | On 32bit machines, it is now 256M (i.e. 268435455). |
| 391 | 321 | ||
| 392 | +++ | ||
| 393 | ** You can now switch buffers in a cyclic order with C-x C-left | 322 | ** You can now switch buffers in a cyclic order with C-x C-left |
| 394 | (previous-buffer) and C-x C-right (next-buffer). C-x left and | 323 | (previous-buffer) and C-x C-right (next-buffer). C-x left and |
| 395 | C-x right can be used as well. The functions keep a different buffer | 324 | C-x right can be used as well. The functions keep a different buffer |
| 396 | cycle for each frame, using the frame-local buffer list. | 325 | cycle for each frame, using the frame-local buffer list. |
| 397 | 326 | ||
| 398 | +++ | ||
| 399 | ** `undo-only' does an undo which does not redo any previous undo. | 327 | ** `undo-only' does an undo which does not redo any previous undo. |
| 400 | 328 | ||
| 401 | +++ | ||
| 402 | ** M-SPC (just-one-space) when given a numeric argument N | 329 | ** M-SPC (just-one-space) when given a numeric argument N |
| 403 | converts whitespace around point to N spaces. | 330 | converts whitespace around point to N spaces. |
| 404 | 331 | ||
| 405 | --- | ||
| 406 | ** C-x 5 C-o displays a specified buffer in another frame | 332 | ** C-x 5 C-o displays a specified buffer in another frame |
| 407 | but does not switch to that frame. It's the multi-frame | 333 | but does not switch to that frame. It's the multi-frame |
| 408 | analogue of C-x 4 C-o. | 334 | analogue of C-x 4 C-o. |
| 409 | 335 | ||
| 410 | --- | ||
| 411 | ** New commands to operate on pairs of open and close characters: | 336 | ** New commands to operate on pairs of open and close characters: |
| 412 | `insert-pair', `delete-pair', `raise-sexp'. | 337 | `insert-pair', `delete-pair', `raise-sexp'. |
| 413 | 338 | ||
| 414 | +++ | ||
| 415 | ** New command `kill-whole-line' kills an entire line at once. | 339 | ** New command `kill-whole-line' kills an entire line at once. |
| 416 | By default, it is bound to C-S-<backspace>. | 340 | By default, it is bound to C-S-<backspace>. |
| 417 | 341 | ||
| 418 | +++ | ||
| 419 | ** Yanking text now discards certain text properties that can | 342 | ** Yanking text now discards certain text properties that can |
| 420 | be inconvenient when you did not expect them. The variable | 343 | be inconvenient when you did not expect them. The variable |
| 421 | `yank-excluded-properties' specifies which ones. Insertion | 344 | `yank-excluded-properties' specifies which ones. Insertion |
| 422 | of register contents and rectangles also discards these properties. | 345 | of register contents and rectangles also discards these properties. |
| 423 | 346 | ||
| 424 | +++ | ||
| 425 | ** The default values of paragraph-start and indent-line-function have | 347 | ** The default values of paragraph-start and indent-line-function have |
| 426 | been changed to reflect those used in Text mode rather than those used | 348 | been changed to reflect those used in Text mode rather than those used |
| 427 | in Indented-Text mode. | 349 | in Indented-Text mode. |
| 428 | 350 | ||
| 429 | +++ | ||
| 430 | ** M-x setenv now expands environment variable references. | 351 | ** M-x setenv now expands environment variable references. |
| 431 | 352 | ||
| 432 | Substrings of the form `$foo' and `${foo}' in the specified new value | 353 | Substrings of the form `$foo' and `${foo}' in the specified new value |
| 433 | now refer to the value of environment variable foo. To include a `$' | 354 | now refer to the value of environment variable foo. To include a `$' |
| 434 | in the value, use `$$'. | 355 | in the value, use `$$'. |
| 435 | 356 | ||
| 436 | +++ | ||
| 437 | ** `special-display-buffer-names' and `special-display-regexps' now | 357 | ** `special-display-buffer-names' and `special-display-regexps' now |
| 438 | understand two new boolean pseudo-frame-parameters `same-frame' and | 358 | understand two new boolean pseudo-frame-parameters `same-frame' and |
| 439 | `same-window'. | 359 | `same-window'. |
| 440 | 360 | ||
| 441 | +++ | ||
| 442 | ** The default for the paper size (variable ps-paper-type) is taken | 361 | ** The default for the paper size (variable ps-paper-type) is taken |
| 443 | from the locale. | 362 | from the locale. |
| 444 | 363 | ||
| 445 | ** Mark command changes: | 364 | ** Mark command changes: |
| 446 | 365 | ||
| 447 | +++ | ||
| 448 | *** A prefix argument is no longer required to repeat a jump to a | 366 | *** A prefix argument is no longer required to repeat a jump to a |
| 449 | previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the | 367 | previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the |
| 450 | mark ring. Use C-u C-u C-SPC to set the mark immediately after a jump. | 368 | mark ring. Use C-u C-u C-SPC to set the mark immediately after a jump. |
| 451 | 369 | ||
| 452 | +++ | ||
| 453 | *** Marking commands extend the region when invoked multiple times. | 370 | *** Marking commands extend the region when invoked multiple times. |
| 454 | 371 | ||
| 455 | If you type C-M-SPC (mark-sexp), M-@ (mark-word), M-h | 372 | If you type C-M-SPC (mark-sexp), M-@ (mark-word), M-h |
| @@ -462,14 +379,12 @@ the last command. To start a new region with one of marking commands | |||
| 462 | in Transient Mark mode, you can deactivate the active region with C-g, | 379 | in Transient Mark mode, you can deactivate the active region with C-g, |
| 463 | or set the new mark with C-SPC. | 380 | or set the new mark with C-SPC. |
| 464 | 381 | ||
| 465 | +++ | ||
| 466 | *** M-h (mark-paragraph) now accepts a prefix arg. | 382 | *** M-h (mark-paragraph) now accepts a prefix arg. |
| 467 | 383 | ||
| 468 | With positive arg, M-h marks the current and the following paragraphs; | 384 | With positive arg, M-h marks the current and the following paragraphs; |
| 469 | if the arg is negative, it marks the current and the preceding | 385 | if the arg is negative, it marks the current and the preceding |
| 470 | paragraphs. | 386 | paragraphs. |
| 471 | 387 | ||
| 472 | +++ | ||
| 473 | *** Some commands do something special in Transient Mark mode when the | 388 | *** Some commands do something special in Transient Mark mode when the |
| 474 | mark is active--for instance, they limit their operation to the | 389 | mark is active--for instance, they limit their operation to the |
| 475 | region. Even if you don't normally use Transient Mark mode, you might | 390 | region. Even if you don't normally use Transient Mark mode, you might |
| @@ -487,14 +402,12 @@ deactivate the mark. That typically happens when you type a command | |||
| 487 | that alters the buffer, but you can also deactivate the mark by typing | 402 | that alters the buffer, but you can also deactivate the mark by typing |
| 488 | C-g. | 403 | C-g. |
| 489 | 404 | ||
| 490 | +++ | ||
| 491 | *** Movement commands `beginning-of-buffer', `end-of-buffer', | 405 | *** Movement commands `beginning-of-buffer', `end-of-buffer', |
| 492 | `beginning-of-defun', `end-of-defun' do not set the mark if the mark | 406 | `beginning-of-defun', `end-of-defun' do not set the mark if the mark |
| 493 | is already active in Transient Mark mode. | 407 | is already active in Transient Mark mode. |
| 494 | 408 | ||
| 495 | ** Help command changes: | 409 | ** Help command changes: |
| 496 | 410 | ||
| 497 | +++ | ||
| 498 | *** Changes in C-h bindings: | 411 | *** Changes in C-h bindings: |
| 499 | 412 | ||
| 500 | C-h e displays the *Messages* buffer. | 413 | C-h e displays the *Messages* buffer. |
| @@ -528,17 +441,14 @@ to new-kill-line, these commands now report: | |||
| 528 | - C-h w and C-h f new-kill-line reports: | 441 | - C-h w and C-h f new-kill-line reports: |
| 529 | new-kill-line is on C-k | 442 | new-kill-line is on C-k |
| 530 | 443 | ||
| 531 | --- | ||
| 532 | *** Help commands `describe-function' and `describe-key' now show function | 444 | *** Help commands `describe-function' and `describe-key' now show function |
| 533 | arguments in lowercase italics on displays that support it. To change the | 445 | arguments in lowercase italics on displays that support it. To change the |
| 534 | default, customize face `help-argument-name' or redefine the function | 446 | default, customize face `help-argument-name' or redefine the function |
| 535 | `help-default-arg-highlight'. | 447 | `help-default-arg-highlight'. |
| 536 | 448 | ||
| 537 | +++ | ||
| 538 | *** C-h v and C-h f commands now include a hyperlink to the C source for | 449 | *** C-h v and C-h f commands now include a hyperlink to the C source for |
| 539 | variables and functions defined in C (if the C source is available). | 450 | variables and functions defined in C (if the C source is available). |
| 540 | 451 | ||
| 541 | +++ | ||
| 542 | *** Help mode now only makes hyperlinks for faces when the face name is | 452 | *** Help mode now only makes hyperlinks for faces when the face name is |
| 543 | preceded or followed by the word `face'. It no longer makes | 453 | preceded or followed by the word `face'. It no longer makes |
| 544 | hyperlinks for variables without variable documentation, unless | 454 | hyperlinks for variables without variable documentation, unless |
| @@ -549,38 +459,32 @@ anchor' (in addition to earlier `info node' and `Info node'). In | |||
| 549 | addition, it now makes hyperlinks to URLs as well if the URL is | 459 | addition, it now makes hyperlinks to URLs as well if the URL is |
| 550 | enclosed in single quotes and preceded by `URL'. | 460 | enclosed in single quotes and preceded by `URL'. |
| 551 | 461 | ||
| 552 | +++ | ||
| 553 | *** The new command `describe-char' (C-u C-x =) pops up a buffer with | 462 | *** The new command `describe-char' (C-u C-x =) pops up a buffer with |
| 554 | description various information about a character, including its | 463 | description various information about a character, including its |
| 555 | encodings and syntax, its text properties, how to input, overlays, and | 464 | encodings and syntax, its text properties, how to input, overlays, and |
| 556 | widgets at point. You can get more information about some of them, by | 465 | widgets at point. You can get more information about some of them, by |
| 557 | clicking on mouse-sensitive areas or moving there and pressing RET. | 466 | clicking on mouse-sensitive areas or moving there and pressing RET. |
| 558 | 467 | ||
| 559 | +++ | ||
| 560 | *** The command `list-text-properties-at' has been deleted because | 468 | *** The command `list-text-properties-at' has been deleted because |
| 561 | C-u C-x = gives the same information and more. | 469 | C-u C-x = gives the same information and more. |
| 562 | 470 | ||
| 563 | +++ | ||
| 564 | *** New command `display-local-help' displays any local help at point | 471 | *** New command `display-local-help' displays any local help at point |
| 565 | in the echo area. It is bound to `C-h .'. It normally displays the | 472 | in the echo area. It is bound to `C-h .'. It normally displays the |
| 566 | same string that would be displayed on mouse-over using the | 473 | same string that would be displayed on mouse-over using the |
| 567 | `help-echo' property, but, in certain cases, it can display a more | 474 | `help-echo' property, but, in certain cases, it can display a more |
| 568 | keyboard oriented alternative. | 475 | keyboard oriented alternative. |
| 569 | 476 | ||
| 570 | +++ | ||
| 571 | *** New user option `help-at-pt-display-when-idle' allows to | 477 | *** New user option `help-at-pt-display-when-idle' allows to |
| 572 | automatically show the help provided by `display-local-help' on | 478 | automatically show the help provided by `display-local-help' on |
| 573 | point-over, after suitable idle time. The amount of idle time is | 479 | point-over, after suitable idle time. The amount of idle time is |
| 574 | determined by the user option `help-at-pt-timer-delay' and defaults | 480 | determined by the user option `help-at-pt-timer-delay' and defaults |
| 575 | to one second. This feature is turned off by default. | 481 | to one second. This feature is turned off by default. |
| 576 | 482 | ||
| 577 | +++ | ||
| 578 | *** The apropos commands now accept a list of words to match. | 483 | *** The apropos commands now accept a list of words to match. |
| 579 | When more than one word is specified, at least two of those words must | 484 | When more than one word is specified, at least two of those words must |
| 580 | be present for an item to match. Regular expression matching is still | 485 | be present for an item to match. Regular expression matching is still |
| 581 | available. | 486 | available. |
| 582 | 487 | ||
| 583 | +++ | ||
| 584 | *** The new option `apropos-sort-by-scores' causes the matching items | 488 | *** The new option `apropos-sort-by-scores' causes the matching items |
| 585 | to be sorted according to their score. The score for an item is a | 489 | to be sorted according to their score. The score for an item is a |
| 586 | number calculated to indicate how well the item matches the words or | 490 | number calculated to indicate how well the item matches the words or |
| @@ -590,46 +494,38 @@ matching item. | |||
| 590 | 494 | ||
| 591 | ** Incremental Search changes: | 495 | ** Incremental Search changes: |
| 592 | 496 | ||
| 593 | +++ | ||
| 594 | *** Vertical scrolling is now possible within incremental search. | 497 | *** Vertical scrolling is now possible within incremental search. |
| 595 | To enable this feature, customize the new user option | 498 | To enable this feature, customize the new user option |
| 596 | `isearch-allow-scroll'. User written commands which satisfy stringent | 499 | `isearch-allow-scroll'. User written commands which satisfy stringent |
| 597 | constraints can be marked as "scrolling commands". See the Emacs manual | 500 | constraints can be marked as "scrolling commands". See the Emacs manual |
| 598 | for details. | 501 | for details. |
| 599 | 502 | ||
| 600 | +++ | ||
| 601 | *** C-w in incremental search now grabs either a character or a word, | 503 | *** C-w in incremental search now grabs either a character or a word, |
| 602 | making the decision in a heuristic way. This new job is done by the | 504 | making the decision in a heuristic way. This new job is done by the |
| 603 | command `isearch-yank-word-or-char'. To restore the old behavior, | 505 | command `isearch-yank-word-or-char'. To restore the old behavior, |
| 604 | bind C-w to `isearch-yank-word' in `isearch-mode-map'. | 506 | bind C-w to `isearch-yank-word' in `isearch-mode-map'. |
| 605 | 507 | ||
| 606 | +++ | ||
| 607 | *** C-y in incremental search now grabs the next line if point is already | 508 | *** C-y in incremental search now grabs the next line if point is already |
| 608 | at the end of a line. | 509 | at the end of a line. |
| 609 | 510 | ||
| 610 | +++ | ||
| 611 | *** C-M-w deletes and C-M-y grabs a character in isearch mode. | 511 | *** C-M-w deletes and C-M-y grabs a character in isearch mode. |
| 612 | Another method to grab a character is to enter the minibuffer by `M-e' | 512 | Another method to grab a character is to enter the minibuffer by `M-e' |
| 613 | and to type `C-f' at the end of the search string in the minibuffer. | 513 | and to type `C-f' at the end of the search string in the minibuffer. |
| 614 | 514 | ||
| 615 | +++ | ||
| 616 | *** M-% typed in isearch mode invokes `query-replace' or | 515 | *** M-% typed in isearch mode invokes `query-replace' or |
| 617 | `query-replace-regexp' (depending on search mode) with the current | 516 | `query-replace-regexp' (depending on search mode) with the current |
| 618 | search string used as the string to replace. | 517 | search string used as the string to replace. |
| 619 | 518 | ||
| 620 | +++ | ||
| 621 | *** Isearch no longer adds `isearch-resume' commands to the command | 519 | *** Isearch no longer adds `isearch-resume' commands to the command |
| 622 | history by default. To enable this feature, customize the new | 520 | history by default. To enable this feature, customize the new |
| 623 | user option `isearch-resume-in-command-history'. | 521 | user option `isearch-resume-in-command-history'. |
| 624 | 522 | ||
| 625 | ** Replace command changes: | 523 | ** Replace command changes: |
| 626 | 524 | ||
| 627 | --- | ||
| 628 | *** New user option `query-replace-skip-read-only': when non-nil, | 525 | *** New user option `query-replace-skip-read-only': when non-nil, |
| 629 | `query-replace' and related functions simply ignore | 526 | `query-replace' and related functions simply ignore |
| 630 | a match if part of it has a read-only property. | 527 | a match if part of it has a read-only property. |
| 631 | 528 | ||
| 632 | +++ | ||
| 633 | *** When used interactively, the commands `query-replace-regexp' and | 529 | *** When used interactively, the commands `query-replace-regexp' and |
| 634 | `replace-regexp' allow \,expr to be used in a replacement string, | 530 | `replace-regexp' allow \,expr to be used in a replacement string, |
| 635 | where expr is an arbitrary Lisp expression evaluated at replacement | 531 | where expr is an arbitrary Lisp expression evaluated at replacement |
| @@ -640,27 +536,22 @@ string to specify a position where the replacement string can be | |||
| 640 | edited for each replacement. `query-replace-regexp-eval' is now | 536 | edited for each replacement. `query-replace-regexp-eval' is now |
| 641 | deprecated since it offers no additional functionality. | 537 | deprecated since it offers no additional functionality. |
| 642 | 538 | ||
| 643 | +++ | ||
| 644 | *** query-replace uses isearch lazy highlighting when the new user option | 539 | *** query-replace uses isearch lazy highlighting when the new user option |
| 645 | `query-replace-lazy-highlight' is non-nil. | 540 | `query-replace-lazy-highlight' is non-nil. |
| 646 | 541 | ||
| 647 | --- | ||
| 648 | *** The current match in query-replace is highlighted in new face | 542 | *** The current match in query-replace is highlighted in new face |
| 649 | `query-replace' which by default inherits from isearch face. | 543 | `query-replace' which by default inherits from isearch face. |
| 650 | 544 | ||
| 651 | ** Local variables lists: | 545 | ** Local variables lists: |
| 652 | 546 | ||
| 653 | +++ | ||
| 654 | *** In processing a local variables list, Emacs strips the prefix and | 547 | *** In processing a local variables list, Emacs strips the prefix and |
| 655 | suffix from every line before processing all the lines. | 548 | suffix from every line before processing all the lines. |
| 656 | 549 | ||
| 657 | +++ | ||
| 658 | *** Text properties in local variables. | 550 | *** Text properties in local variables. |
| 659 | 551 | ||
| 660 | A file local variables list cannot specify a string with text | 552 | A file local variables list cannot specify a string with text |
| 661 | properties--any specified text properties are discarded. | 553 | properties--any specified text properties are discarded. |
| 662 | 554 | ||
| 663 | +++ | ||
| 664 | *** If the local variables list contains any variable-value pairs that | 555 | *** If the local variables list contains any variable-value pairs that |
| 665 | are not known to be safe, Emacs shows a prompt asking whether to apply | 556 | are not known to be safe, Emacs shows a prompt asking whether to apply |
| 666 | the local variables list as a whole. In earlier versions, a prompt | 557 | the local variables list as a whole. In earlier versions, a prompt |
| @@ -675,21 +566,18 @@ Variables can also be marked as safe with the existing | |||
| 675 | However, risky variables will not be added to | 566 | However, risky variables will not be added to |
| 676 | `safe-local-variable-values' in this way. | 567 | `safe-local-variable-values' in this way. |
| 677 | 568 | ||
| 678 | +++ | ||
| 679 | *** The variable `enable-local-variables' controls how local variable | 569 | *** The variable `enable-local-variables' controls how local variable |
| 680 | lists are handled. t, the default, specifies the standard querying | 570 | lists are handled. t, the default, specifies the standard querying |
| 681 | behavior. :safe means use only safe values, and ignore the rest. | 571 | behavior. :safe means use only safe values, and ignore the rest. |
| 682 | :all means set all variables, whether or not they are safe. | 572 | :all means set all variables, whether or not they are safe. |
| 683 | nil means ignore them all. Anything else means always query. | 573 | nil means ignore them all. Anything else means always query. |
| 684 | 574 | ||
| 685 | +++ | ||
| 686 | *** The variable `safe-local-eval-forms' specifies a list of forms that | 575 | *** The variable `safe-local-eval-forms' specifies a list of forms that |
| 687 | are ok to evaluate when they appear in an `eval' local variables | 576 | are ok to evaluate when they appear in an `eval' local variables |
| 688 | specification. Normally Emacs asks for confirmation before evaluating | 577 | specification. Normally Emacs asks for confirmation before evaluating |
| 689 | such a form, but if the form appears in this list, no confirmation is | 578 | such a form, but if the form appears in this list, no confirmation is |
| 690 | needed. | 579 | needed. |
| 691 | 580 | ||
| 692 | +++ | ||
| 693 | *** If a function has a non-nil `safe-local-eval-function' property, | 581 | *** If a function has a non-nil `safe-local-eval-function' property, |
| 694 | that means it is ok to evaluate some calls to that function when it | 582 | that means it is ok to evaluate some calls to that function when it |
| 695 | appears in an `eval' local variables specification. If the property | 583 | appears in an `eval' local variables specification. If the property |
| @@ -702,42 +590,34 @@ confirmation as before. | |||
| 702 | 590 | ||
| 703 | ** File operation changes: | 591 | ** File operation changes: |
| 704 | 592 | ||
| 705 | +++ | ||
| 706 | *** Unquoted `$' in file names do not signal an error any more when | 593 | *** Unquoted `$' in file names do not signal an error any more when |
| 707 | the corresponding environment variable does not exist. | 594 | the corresponding environment variable does not exist. |
| 708 | Instead, the `$ENVVAR' text is left as is, so that `$$' quoting | 595 | Instead, the `$ENVVAR' text is left as is, so that `$$' quoting |
| 709 | is only rarely needed. | 596 | is only rarely needed. |
| 710 | 597 | ||
| 711 | +++ | ||
| 712 | *** find-file-read-only visits multiple files in read-only mode, | 598 | *** find-file-read-only visits multiple files in read-only mode, |
| 713 | when the file name contains wildcard characters. | 599 | when the file name contains wildcard characters. |
| 714 | 600 | ||
| 715 | +++ | ||
| 716 | *** find-alternate-file replaces the current file with multiple files, | 601 | *** find-alternate-file replaces the current file with multiple files, |
| 717 | when the file name contains wildcard characters. It now asks if you | 602 | when the file name contains wildcard characters. It now asks if you |
| 718 | wish save your changes and not just offer to kill the buffer. | 603 | wish save your changes and not just offer to kill the buffer. |
| 719 | 604 | ||
| 720 | +++ | ||
| 721 | *** Auto Compression mode is now enabled by default. | 605 | *** Auto Compression mode is now enabled by default. |
| 722 | 606 | ||
| 723 | --- | ||
| 724 | *** C-x C-f RET, typing nothing in the minibuffer, is no longer a special case. | 607 | *** C-x C-f RET, typing nothing in the minibuffer, is no longer a special case. |
| 725 | 608 | ||
| 726 | Since the default input is the current directory, this has the effect | 609 | Since the default input is the current directory, this has the effect |
| 727 | of specifying the current directory. Normally that means to visit the | 610 | of specifying the current directory. Normally that means to visit the |
| 728 | directory with Dired. | 611 | directory with Dired. |
| 729 | 612 | ||
| 730 | +++ | ||
| 731 | *** When you are root, and you visit a file whose modes specify | 613 | *** When you are root, and you visit a file whose modes specify |
| 732 | read-only, the Emacs buffer is now read-only too. Type C-x C-q if you | 614 | read-only, the Emacs buffer is now read-only too. Type C-x C-q if you |
| 733 | want to make the buffer writable. (As root, you can in fact alter the | 615 | want to make the buffer writable. (As root, you can in fact alter the |
| 734 | file.) | 616 | file.) |
| 735 | 617 | ||
| 736 | +++ | ||
| 737 | *** C-x s (save-some-buffers) now offers an option `d' to diff a buffer | 618 | *** C-x s (save-some-buffers) now offers an option `d' to diff a buffer |
| 738 | against its file, so you can see what changes you would be saving. | 619 | against its file, so you can see what changes you would be saving. |
| 739 | 620 | ||
| 740 | +++ | ||
| 741 | *** The commands copy-file, rename-file, make-symbolic-link and | 621 | *** The commands copy-file, rename-file, make-symbolic-link and |
| 742 | add-name-to-file, when given a directory as the "new name" argument, | 622 | add-name-to-file, when given a directory as the "new name" argument, |
| 743 | convert it to a file name by merging in the within-directory part of | 623 | convert it to a file name by merging in the within-directory part of |
| @@ -745,27 +625,22 @@ the existing file's name. (This is the same convention that shell | |||
| 745 | commands cp, mv, and ln follow.) Thus, M-x copy-file RET ~/foo RET | 625 | commands cp, mv, and ln follow.) Thus, M-x copy-file RET ~/foo RET |
| 746 | /tmp RET copies ~/foo to /tmp/foo. | 626 | /tmp RET copies ~/foo to /tmp/foo. |
| 747 | 627 | ||
| 748 | --- | ||
| 749 | *** When used interactively, `format-write-file' now asks for confirmation | 628 | *** When used interactively, `format-write-file' now asks for confirmation |
| 750 | before overwriting an existing file, unless a prefix argument is | 629 | before overwriting an existing file, unless a prefix argument is |
| 751 | supplied. This behavior is analogous to `write-file'. | 630 | supplied. This behavior is analogous to `write-file'. |
| 752 | 631 | ||
| 753 | --- | ||
| 754 | *** The variable `auto-save-file-name-transforms' now has a third element that | 632 | *** The variable `auto-save-file-name-transforms' now has a third element that |
| 755 | controls whether or not the function `make-auto-save-file-name' will | 633 | controls whether or not the function `make-auto-save-file-name' will |
| 756 | attempt to construct a unique auto-save name (e.g. for remote files). | 634 | attempt to construct a unique auto-save name (e.g. for remote files). |
| 757 | 635 | ||
| 758 | +++ | ||
| 759 | *** The new option `write-region-inhibit-fsync' disables calls to fsync | 636 | *** The new option `write-region-inhibit-fsync' disables calls to fsync |
| 760 | in `write-region'. This can be useful on laptops to avoid spinning up | 637 | in `write-region'. This can be useful on laptops to avoid spinning up |
| 761 | the hard drive upon each file save. Enabling this variable may result | 638 | the hard drive upon each file save. Enabling this variable may result |
| 762 | in data loss, use with care. | 639 | in data loss, use with care. |
| 763 | 640 | ||
| 764 | +++ | ||
| 765 | *** If the user visits a file larger than `large-file-warning-threshold', | 641 | *** If the user visits a file larger than `large-file-warning-threshold', |
| 766 | Emacs asks for confirmation. | 642 | Emacs asks for confirmation. |
| 767 | 643 | ||
| 768 | +++ | ||
| 769 | *** require-final-newline now has two new possible values: | 644 | *** require-final-newline now has two new possible values: |
| 770 | 645 | ||
| 771 | `visit' means add a newline (as an undoable change) if it's needed | 646 | `visit' means add a newline (as an undoable change) if it's needed |
| @@ -775,7 +650,6 @@ when visiting the file. | |||
| 775 | needed when visiting the file, and also add a newline if it's needed | 650 | needed when visiting the file, and also add a newline if it's needed |
| 776 | when saving the file. | 651 | when saving the file. |
| 777 | 652 | ||
| 778 | +++ | ||
| 779 | *** The new option mode-require-final-newline controls how certain | 653 | *** The new option mode-require-final-newline controls how certain |
| 780 | major modes enable require-final-newline. Any major mode that's | 654 | major modes enable require-final-newline. Any major mode that's |
| 781 | designed for a kind of file that should normally end in a newline | 655 | designed for a kind of file that should normally end in a newline |
| @@ -785,17 +659,14 @@ modes do. | |||
| 785 | 659 | ||
| 786 | ** Minibuffer changes: | 660 | ** Minibuffer changes: |
| 787 | 661 | ||
| 788 | +++ | ||
| 789 | *** The new file-name-shadow-mode is turned ON by default, so that when | 662 | *** The new file-name-shadow-mode is turned ON by default, so that when |
| 790 | entering a file name, any prefix which Emacs will ignore is dimmed. | 663 | entering a file name, any prefix which Emacs will ignore is dimmed. |
| 791 | 664 | ||
| 792 | +++ | ||
| 793 | *** There's a new face `minibuffer-prompt'. | 665 | *** There's a new face `minibuffer-prompt'. |
| 794 | Emacs adds this face to the list of text properties stored in the | 666 | Emacs adds this face to the list of text properties stored in the |
| 795 | variable `minibuffer-prompt-properties', which is used to display the | 667 | variable `minibuffer-prompt-properties', which is used to display the |
| 796 | prompt string. | 668 | prompt string. |
| 797 | 669 | ||
| 798 | --- | ||
| 799 | *** Enhanced visual feedback in `*Completions*' buffer. | 670 | *** Enhanced visual feedback in `*Completions*' buffer. |
| 800 | 671 | ||
| 801 | Completions lists use faces to highlight what all completions | 672 | Completions lists use faces to highlight what all completions |
| @@ -816,7 +687,6 @@ listing is triggered at the other normal buffer, you have to pass | |||
| 816 | the common prefix of completions to `display-completion-list' as | 687 | the common prefix of completions to `display-completion-list' as |
| 817 | its second argument. | 688 | its second argument. |
| 818 | 689 | ||
| 819 | +++ | ||
| 820 | *** File-name completion can now ignore specified directories. | 690 | *** File-name completion can now ignore specified directories. |
| 821 | If an element of the list in `completion-ignored-extensions' ends in a | 691 | If an element of the list in `completion-ignored-extensions' ends in a |
| 822 | slash `/', it indicates a subdirectory that should be ignored when | 692 | slash `/', it indicates a subdirectory that should be ignored when |
| @@ -824,19 +694,16 @@ completing file names. Elements of `completion-ignored-extensions' | |||
| 824 | which do not end in a slash are never considered when a completion | 694 | which do not end in a slash are never considered when a completion |
| 825 | candidate is a directory. | 695 | candidate is a directory. |
| 826 | 696 | ||
| 827 | +++ | ||
| 828 | *** The completion commands TAB, SPC and ? in the minibuffer apply only | 697 | *** The completion commands TAB, SPC and ? in the minibuffer apply only |
| 829 | to the text before point. If there is text in the buffer after point, | 698 | to the text before point. If there is text in the buffer after point, |
| 830 | it remains unchanged. | 699 | it remains unchanged. |
| 831 | 700 | ||
| 832 | +++ | ||
| 833 | *** New user option `history-delete-duplicates'. | 701 | *** New user option `history-delete-duplicates'. |
| 834 | If set to t when adding a new history element, all previous identical | 702 | If set to t when adding a new history element, all previous identical |
| 835 | elements are deleted from the history list. | 703 | elements are deleted from the history list. |
| 836 | 704 | ||
| 837 | ** Redisplay changes: | 705 | ** Redisplay changes: |
| 838 | 706 | ||
| 839 | +++ | ||
| 840 | *** Preemptive redisplay now adapts to current load and bandwidth. | 707 | *** Preemptive redisplay now adapts to current load and bandwidth. |
| 841 | 708 | ||
| 842 | To avoid preempting redisplay on fast computers, networks, and displays, | 709 | To avoid preempting redisplay on fast computers, networks, and displays, |
| @@ -844,20 +711,16 @@ the arrival of new input is now performed at regular intervals during | |||
| 844 | redisplay. The new variable `redisplay-preemption-period' specifies | 711 | redisplay. The new variable `redisplay-preemption-period' specifies |
| 845 | the period; the default is to check for input every 0.1 seconds. | 712 | the period; the default is to check for input every 0.1 seconds. |
| 846 | 713 | ||
| 847 | +++ | ||
| 848 | *** The mode line position information now comes before the major mode. | 714 | *** The mode line position information now comes before the major mode. |
| 849 | When the file is maintained under version control, that information | 715 | When the file is maintained under version control, that information |
| 850 | appears between the position information and the major mode. | 716 | appears between the position information and the major mode. |
| 851 | 717 | ||
| 852 | +++ | ||
| 853 | *** New face `escape-glyph' highlights control characters and escape glyphs. | 718 | *** New face `escape-glyph' highlights control characters and escape glyphs. |
| 854 | 719 | ||
| 855 | +++ | ||
| 856 | *** Non-breaking space and hyphens are now displayed with a special | 720 | *** Non-breaking space and hyphens are now displayed with a special |
| 857 | face, either nobreak-space or escape-glyph. You can turn this off or | 721 | face, either nobreak-space or escape-glyph. You can turn this off or |
| 858 | specify a different mode by setting the variable `nobreak-char-display'. | 722 | specify a different mode by setting the variable `nobreak-char-display'. |
| 859 | 723 | ||
| 860 | +++ | ||
| 861 | *** The parameters of automatic hscrolling can now be customized. | 724 | *** The parameters of automatic hscrolling can now be customized. |
| 862 | The variable `hscroll-margin' determines how many columns away from | 725 | The variable `hscroll-margin' determines how many columns away from |
| 863 | the window edge point is allowed to get before automatic hscrolling | 726 | the window edge point is allowed to get before automatic hscrolling |
| @@ -873,21 +736,17 @@ gives the fraction of the window's width to scroll the window. | |||
| 873 | The variable `automatic-hscrolling' was renamed to | 736 | The variable `automatic-hscrolling' was renamed to |
| 874 | `auto-hscroll-mode'. The old name is still available as an alias. | 737 | `auto-hscroll-mode'. The old name is still available as an alias. |
| 875 | 738 | ||
| 876 | --- | ||
| 877 | *** Moving or scrolling through images (and other lines) taller than | 739 | *** Moving or scrolling through images (and other lines) taller than |
| 878 | the window now works sensibly, by automatically adjusting the window's | 740 | the window now works sensibly, by automatically adjusting the window's |
| 879 | vscroll property. | 741 | vscroll property. |
| 880 | 742 | ||
| 881 | +++ | ||
| 882 | *** New customize option `overline-margin' controls the space between | 743 | *** New customize option `overline-margin' controls the space between |
| 883 | overline and text. | 744 | overline and text. |
| 884 | 745 | ||
| 885 | +++ | ||
| 886 | *** New variable `x-underline-at-descent-line' controls the relative | 746 | *** New variable `x-underline-at-descent-line' controls the relative |
| 887 | position of the underline. When set, it overrides the | 747 | position of the underline. When set, it overrides the |
| 888 | `x-use-underline-position-properties' variables. | 748 | `x-use-underline-position-properties' variables. |
| 889 | 749 | ||
| 890 | +++ | ||
| 891 | *** The new face `mode-line-inactive' is used to display the mode line | 750 | *** The new face `mode-line-inactive' is used to display the mode line |
| 892 | of non-selected windows. The `mode-line' face is now used to display | 751 | of non-selected windows. The `mode-line' face is now used to display |
| 893 | the mode line of the currently selected window. | 752 | the mode line of the currently selected window. |
| @@ -895,14 +754,12 @@ the mode line of the currently selected window. | |||
| 895 | The new variable `mode-line-in-non-selected-windows' controls whether | 754 | The new variable `mode-line-in-non-selected-windows' controls whether |
| 896 | the `mode-line-inactive' face is used. | 755 | the `mode-line-inactive' face is used. |
| 897 | 756 | ||
| 898 | +++ | ||
| 899 | *** You can now customize the use of window fringes. To control this | 757 | *** You can now customize the use of window fringes. To control this |
| 900 | for all frames, use M-x fringe-mode or the Show/Hide submenu of the | 758 | for all frames, use M-x fringe-mode or the Show/Hide submenu of the |
| 901 | top-level Options menu, or customize the `fringe-mode' variable. To | 759 | top-level Options menu, or customize the `fringe-mode' variable. To |
| 902 | control this for a specific frame, use the command M-x | 760 | control this for a specific frame, use the command M-x |
| 903 | set-fringe-style. | 761 | set-fringe-style. |
| 904 | 762 | ||
| 905 | +++ | ||
| 906 | *** Angle icons in the fringes can indicate the buffer boundaries. In | 763 | *** Angle icons in the fringes can indicate the buffer boundaries. In |
| 907 | addition, up and down arrow bitmaps in the fringe indicate which ways | 764 | addition, up and down arrow bitmaps in the fringe indicate which ways |
| 908 | the window can be scrolled. | 765 | the window can be scrolled. |
| @@ -922,7 +779,6 @@ in left fringe, the bottom angle bitmap in right fringe, and both | |||
| 922 | arrow bitmaps in right fringe. To show just the angle bitmaps in the | 779 | arrow bitmaps in right fringe. To show just the angle bitmaps in the |
| 923 | left fringe, but no arrow bitmaps, use ((top . left) (bottom . left)). | 780 | left fringe, but no arrow bitmaps, use ((top . left) (bottom . left)). |
| 924 | 781 | ||
| 925 | +++ | ||
| 926 | *** On window systems, lines which are exactly as wide as the window | 782 | *** On window systems, lines which are exactly as wide as the window |
| 927 | (not counting the final newline character) are no longer broken into | 783 | (not counting the final newline character) are no longer broken into |
| 928 | two lines on the display (with just the newline on the second line). | 784 | two lines on the display (with just the newline on the second line). |
| @@ -932,12 +788,10 @@ cursor will be displayed in the fringe when positioned on that newline. | |||
| 932 | The new user option 'overflow-newline-into-fringe' can be set to nil to | 788 | The new user option 'overflow-newline-into-fringe' can be set to nil to |
| 933 | revert to the old behavior of continuing such lines. | 789 | revert to the old behavior of continuing such lines. |
| 934 | 790 | ||
| 935 | +++ | ||
| 936 | *** When a window has display margin areas, the fringes are now | 791 | *** When a window has display margin areas, the fringes are now |
| 937 | displayed between the margins and the buffer's text area, rather than | 792 | displayed between the margins and the buffer's text area, rather than |
| 938 | outside those margins. | 793 | outside those margins. |
| 939 | 794 | ||
| 940 | +++ | ||
| 941 | *** A window can now have individual fringe and scroll-bar settings, | 795 | *** A window can now have individual fringe and scroll-bar settings, |
| 942 | in addition to the individual display margin settings. | 796 | in addition to the individual display margin settings. |
| 943 | 797 | ||
| @@ -945,57 +799,46 @@ Such individual settings are now preserved when windows are split | |||
| 945 | horizontally or vertically, a saved window configuration is restored, | 799 | horizontally or vertically, a saved window configuration is restored, |
| 946 | or when the frame is resized. | 800 | or when the frame is resized. |
| 947 | 801 | ||
| 948 | +++ | ||
| 949 | *** The %c and %l constructs are now ignored in frame-title-format. | 802 | *** The %c and %l constructs are now ignored in frame-title-format. |
| 950 | Due to technical limitations in how Emacs interacts with windowing | 803 | Due to technical limitations in how Emacs interacts with windowing |
| 951 | systems, these constructs often failed to render properly, and could | 804 | systems, these constructs often failed to render properly, and could |
| 952 | even cause Emacs to crash. | 805 | even cause Emacs to crash. |
| 953 | 806 | ||
| 954 | +++ | ||
| 955 | *** If value of `auto-resize-tool-bars' is `grow-only', the tool bar | 807 | *** If value of `auto-resize-tool-bars' is `grow-only', the tool bar |
| 956 | will expand as needed, but not contract automatically. To contract | 808 | will expand as needed, but not contract automatically. To contract |
| 957 | the tool bar, you must type C-l. | 809 | the tool bar, you must type C-l. |
| 958 | 810 | ||
| 959 | ** Cursor display changes: | 811 | ** Cursor display changes: |
| 960 | 812 | ||
| 961 | +++ | ||
| 962 | *** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is | 813 | *** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is |
| 963 | now controlled by the variable `blink-cursor-alist'. | 814 | now controlled by the variable `blink-cursor-alist'. |
| 964 | 815 | ||
| 965 | +++ | ||
| 966 | *** The X resource cursorBlink can be used to turn off cursor blinking. | 816 | *** The X resource cursorBlink can be used to turn off cursor blinking. |
| 967 | 817 | ||
| 968 | +++ | ||
| 969 | *** Emacs can produce an underscore-like (horizontal bar) cursor. | 818 | *** Emacs can produce an underscore-like (horizontal bar) cursor. |
| 970 | The underscore cursor is set by putting `(cursor-type . hbar)' in | 819 | The underscore cursor is set by putting `(cursor-type . hbar)' in |
| 971 | default-frame-alist. It supports variable heights, like the `bar' | 820 | default-frame-alist. It supports variable heights, like the `bar' |
| 972 | cursor does. | 821 | cursor does. |
| 973 | 822 | ||
| 974 | +++ | ||
| 975 | *** Display of hollow cursors now obeys the buffer-local value (if any) | 823 | *** Display of hollow cursors now obeys the buffer-local value (if any) |
| 976 | of `cursor-in-non-selected-windows' in the buffer that the cursor | 824 | of `cursor-in-non-selected-windows' in the buffer that the cursor |
| 977 | appears in. | 825 | appears in. |
| 978 | 826 | ||
| 979 | +++ | ||
| 980 | *** The variable `cursor-in-non-selected-windows' can now be set to any | 827 | *** The variable `cursor-in-non-selected-windows' can now be set to any |
| 981 | of the recognized cursor types. | 828 | of the recognized cursor types. |
| 982 | 829 | ||
| 983 | +++ | ||
| 984 | *** On text terminals, the variable `visible-cursor' controls whether Emacs | 830 | *** On text terminals, the variable `visible-cursor' controls whether Emacs |
| 985 | uses the "very visible" cursor (the default) or the normal cursor. | 831 | uses the "very visible" cursor (the default) or the normal cursor. |
| 986 | 832 | ||
| 987 | ** New faces: | 833 | ** New faces: |
| 988 | 834 | ||
| 989 | +++ | ||
| 990 | *** `mode-line-highlight' is the standard face indicating mouse sensitive | 835 | *** `mode-line-highlight' is the standard face indicating mouse sensitive |
| 991 | elements on mode-line (and header-line) like `highlight' face on text | 836 | elements on mode-line (and header-line) like `highlight' face on text |
| 992 | areas. | 837 | areas. |
| 993 | 838 | ||
| 994 | +++ | ||
| 995 | *** `mode-line-buffer-id' is the standard face for buffer identification | 839 | *** `mode-line-buffer-id' is the standard face for buffer identification |
| 996 | parts of the mode line. | 840 | parts of the mode line. |
| 997 | 841 | ||
| 998 | +++ | ||
| 999 | *** `shadow' face defines the appearance of the "shadowed" text, i.e. | 842 | *** `shadow' face defines the appearance of the "shadowed" text, i.e. |
| 1000 | the text which should be less noticeable than the surrounding text. | 843 | the text which should be less noticeable than the surrounding text. |
| 1001 | This can be achieved by using shades of grey in contrast with either | 844 | This can be achieved by using shades of grey in contrast with either |
| @@ -1003,29 +846,24 @@ black or white default foreground color. This generic shadow face | |||
| 1003 | allows customization of the appearance of shadowed text in one place, | 846 | allows customization of the appearance of shadowed text in one place, |
| 1004 | so package-specific faces can inherit from it. | 847 | so package-specific faces can inherit from it. |
| 1005 | 848 | ||
| 1006 | +++ | ||
| 1007 | *** `vertical-border' face is used for the vertical divider between windows. | 849 | *** `vertical-border' face is used for the vertical divider between windows. |
| 1008 | 850 | ||
| 1009 | ** ebnf2ps changes: | 851 | ** ebnf2ps changes: |
| 1010 | 852 | ||
| 1011 | +++ | ||
| 1012 | *** New option `ebnf-arrow-extra-width' which specify extra width for arrow | 853 | *** New option `ebnf-arrow-extra-width' which specify extra width for arrow |
| 1013 | shape drawing. | 854 | shape drawing. |
| 1014 | The extra width is used to avoid that the arrowhead and the terminal border | 855 | The extra width is used to avoid that the arrowhead and the terminal border |
| 1015 | overlap. It depends on `ebnf-arrow-shape' and `ebnf-line-width'. | 856 | overlap. It depends on `ebnf-arrow-shape' and `ebnf-line-width'. |
| 1016 | 857 | ||
| 1017 | +++ | ||
| 1018 | *** New option `ebnf-arrow-scale' which specify the arrow scale. | 858 | *** New option `ebnf-arrow-scale' which specify the arrow scale. |
| 1019 | Values lower than 1.0, shrink the arrow. | 859 | Values lower than 1.0, shrink the arrow. |
| 1020 | Values greater than 1.0, expand the arrow. | 860 | Values greater than 1.0, expand the arrow. |
| 1021 | 861 | ||
| 1022 | ** Font-Lock changes: | 862 | ** Font-Lock changes: |
| 1023 | 863 | ||
| 1024 | +++ | ||
| 1025 | *** M-o now is the prefix key for setting text properties; | 864 | *** M-o now is the prefix key for setting text properties; |
| 1026 | M-o M-o requests refontification. | 865 | M-o M-o requests refontification. |
| 1027 | 866 | ||
| 1028 | +++ | ||
| 1029 | *** All modes now support using M-x font-lock-mode to toggle | 867 | *** All modes now support using M-x font-lock-mode to toggle |
| 1030 | fontification, even those such as Occur, Info, and comint-derived | 868 | fontification, even those such as Occur, Info, and comint-derived |
| 1031 | modes that do their own fontification in a special way. | 869 | modes that do their own fontification in a special way. |
| @@ -1034,7 +872,6 @@ The variable `Info-fontify' is no longer applicable; to disable | |||
| 1034 | fontification in Info, remove `turn-on-font-lock' from | 872 | fontification in Info, remove `turn-on-font-lock' from |
| 1035 | `Info-mode-hook'. | 873 | `Info-mode-hook'. |
| 1036 | 874 | ||
| 1037 | +++ | ||
| 1038 | *** Font-Lock mode: in major modes such as Lisp mode, where some Emacs | 875 | *** Font-Lock mode: in major modes such as Lisp mode, where some Emacs |
| 1039 | features assume that an open-paren in column 0 is always outside of | 876 | features assume that an open-paren in column 0 is always outside of |
| 1040 | any string or comment, Font-Lock now highlights any such open-paren in | 877 | any string or comment, Font-Lock now highlights any such open-paren in |
| @@ -1042,19 +879,15 @@ bold-red if it is inside a string or a comment, to indicate that it | |||
| 1042 | can cause trouble. You should rewrite the string or comment so that | 879 | can cause trouble. You should rewrite the string or comment so that |
| 1043 | the open-paren is not in column 0. | 880 | the open-paren is not in column 0. |
| 1044 | 881 | ||
| 1045 | +++ | ||
| 1046 | *** New standard font-lock face `font-lock-preprocessor-face'. | 882 | *** New standard font-lock face `font-lock-preprocessor-face'. |
| 1047 | 883 | ||
| 1048 | +++ | ||
| 1049 | *** New standard font-lock face `font-lock-comment-delimiter-face'. | 884 | *** New standard font-lock face `font-lock-comment-delimiter-face'. |
| 1050 | 885 | ||
| 1051 | +++ | ||
| 1052 | *** Easy to overlook single character negation can now be font-locked. | 886 | *** Easy to overlook single character negation can now be font-locked. |
| 1053 | You can use the new variable `font-lock-negation-char-face' and the face of | 887 | You can use the new variable `font-lock-negation-char-face' and the face of |
| 1054 | the same name to customize this. Currently the cc-modes, sh-script-mode, | 888 | the same name to customize this. Currently the cc-modes, sh-script-mode, |
| 1055 | cperl-mode and make-mode support this. | 889 | cperl-mode and make-mode support this. |
| 1056 | 890 | ||
| 1057 | --- | ||
| 1058 | *** The default settings for JIT stealth lock parameters are changed. | 891 | *** The default settings for JIT stealth lock parameters are changed. |
| 1059 | The default value for the user option jit-lock-stealth-time is now nil | 892 | The default value for the user option jit-lock-stealth-time is now nil |
| 1060 | instead of 3. This setting of jit-lock-stealth-time disables stealth | 893 | instead of 3. This setting of jit-lock-stealth-time disables stealth |
| @@ -1067,7 +900,6 @@ buffers in the background when it considers the system to be idle. | |||
| 1067 | jit-lock-stealth-nice is now 0.5 instead of 0.125 which is supposed to | 900 | jit-lock-stealth-nice is now 0.5 instead of 0.125 which is supposed to |
| 1068 | cause less load than the old defaults. | 901 | cause less load than the old defaults. |
| 1069 | 902 | ||
| 1070 | --- | ||
| 1071 | *** jit-lock can now be delayed with `jit-lock-defer-time'. | 903 | *** jit-lock can now be delayed with `jit-lock-defer-time'. |
| 1072 | 904 | ||
| 1073 | If this variable is non-nil, its value should be the amount of Emacs | 905 | If this variable is non-nil, its value should be the amount of Emacs |
| @@ -1075,14 +907,12 @@ idle time in seconds to wait before starting fontification. For | |||
| 1075 | example, if you set `jit-lock-defer-time' to 0.25, fontification will | 907 | example, if you set `jit-lock-defer-time' to 0.25, fontification will |
| 1076 | only happen after 0.25s of idle time. | 908 | only happen after 0.25s of idle time. |
| 1077 | 909 | ||
| 1078 | --- | ||
| 1079 | *** contextual refontification is now separate from stealth fontification. | 910 | *** contextual refontification is now separate from stealth fontification. |
| 1080 | 911 | ||
| 1081 | jit-lock-defer-contextually is renamed jit-lock-contextually and | 912 | jit-lock-defer-contextually is renamed jit-lock-contextually and |
| 1082 | jit-lock-context-time determines the delay after which contextual | 913 | jit-lock-context-time determines the delay after which contextual |
| 1083 | refontification takes place. | 914 | refontification takes place. |
| 1084 | 915 | ||
| 1085 | --- | ||
| 1086 | *** lazy-lock is considered obsolete. | 916 | *** lazy-lock is considered obsolete. |
| 1087 | 917 | ||
| 1088 | The `lazy-lock' package is superseded by `jit-lock' and is considered | 918 | The `lazy-lock' package is superseded by `jit-lock' and is considered |
| @@ -1099,7 +929,6 @@ If you invoke `lazy-lock-mode' directly rather than through | |||
| 1099 | 929 | ||
| 1100 | ** Menu support: | 930 | ** Menu support: |
| 1101 | 931 | ||
| 1102 | --- | ||
| 1103 | *** A menu item "Show/Hide" was added to the top-level menu "Options". | 932 | *** A menu item "Show/Hide" was added to the top-level menu "Options". |
| 1104 | This menu allows you to turn various display features on and off (such | 933 | This menu allows you to turn various display features on and off (such |
| 1105 | as the fringes, the tool bar, the speedbar, and the menu bar itself). | 934 | as the fringes, the tool bar, the speedbar, and the menu bar itself). |
| @@ -1107,53 +936,42 @@ You can also move the vertical scroll bar to either side here or turn | |||
| 1107 | it off completely. There is also a menu-item to toggle displaying of | 936 | it off completely. There is also a menu-item to toggle displaying of |
| 1108 | current date and time, current line and column number in the mode-line. | 937 | current date and time, current line and column number in the mode-line. |
| 1109 | 938 | ||
| 1110 | --- | ||
| 1111 | *** Speedbar has moved from the "Tools" top level menu to "Show/Hide". | 939 | *** Speedbar has moved from the "Tools" top level menu to "Show/Hide". |
| 1112 | 940 | ||
| 1113 | --- | ||
| 1114 | *** You can exit dialog windows and menus by typing C-g. | 941 | *** You can exit dialog windows and menus by typing C-g. |
| 1115 | 942 | ||
| 1116 | --- | ||
| 1117 | *** The menu item "Open File..." has been split into two items, "New File..." | 943 | *** The menu item "Open File..." has been split into two items, "New File..." |
| 1118 | and "Open File...". "Open File..." now opens only existing files. This is | 944 | and "Open File...". "Open File..." now opens only existing files. This is |
| 1119 | to support existing GUI file selection dialogs better. | 945 | to support existing GUI file selection dialogs better. |
| 1120 | 946 | ||
| 1121 | +++ | ||
| 1122 | *** The file selection dialog for Gtk+, Mac, W32 and Motif/LessTif can be | 947 | *** The file selection dialog for Gtk+, Mac, W32 and Motif/LessTif can be |
| 1123 | disabled by customizing the variable `use-file-dialog'. | 948 | disabled by customizing the variable `use-file-dialog'. |
| 1124 | 949 | ||
| 1125 | --- | ||
| 1126 | *** The pop up menus for Lucid now stay up if you do a fast click and can | 950 | *** The pop up menus for Lucid now stay up if you do a fast click and can |
| 1127 | be navigated with the arrow keys (like Gtk+, Mac and W32). | 951 | be navigated with the arrow keys (like Gtk+, Mac and W32). |
| 1128 | 952 | ||
| 1129 | +++ | ||
| 1130 | *** The menu bar for Motif/LessTif/Lucid/Gtk+ can be navigated with keys. | 953 | *** The menu bar for Motif/LessTif/Lucid/Gtk+ can be navigated with keys. |
| 1131 | Pressing F10 shows the first menu in the menu bar. Navigation is done with | 954 | Pressing F10 shows the first menu in the menu bar. Navigation is done with |
| 1132 | the arrow keys, select with the return key and cancel with the escape keys. | 955 | the arrow keys, select with the return key and cancel with the escape keys. |
| 1133 | 956 | ||
| 1134 | +++ | ||
| 1135 | *** The Lucid menus can display multilingual text in your locale. You have | 957 | *** The Lucid menus can display multilingual text in your locale. You have |
| 1136 | to explicitly specify a fontSet resource for this to work, for example | 958 | to explicitly specify a fontSet resource for this to work, for example |
| 1137 | `-xrm "Emacs*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*"'. | 959 | `-xrm "Emacs*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*"'. |
| 1138 | 960 | ||
| 1139 | --- | ||
| 1140 | *** Dialogs for Lucid/Athena and LessTif/Motif now pop down on pressing | 961 | *** Dialogs for Lucid/Athena and LessTif/Motif now pop down on pressing |
| 1141 | ESC, like they do for Gtk+, Mac and W32. | 962 | ESC, like they do for Gtk+, Mac and W32. |
| 1142 | 963 | ||
| 1143 | +++ | ||
| 1144 | *** For the Gtk+ version, you can make Emacs use the old file dialog | 964 | *** For the Gtk+ version, you can make Emacs use the old file dialog |
| 1145 | by setting the variable `x-gtk-use-old-file-dialog' to t. Default is to use | 965 | by setting the variable `x-gtk-use-old-file-dialog' to t. Default is to use |
| 1146 | the new dialog. | 966 | the new dialog. |
| 1147 | 967 | ||
| 1148 | ** Mouse changes: | 968 | ** Mouse changes: |
| 1149 | 969 | ||
| 1150 | +++ | ||
| 1151 | *** If you set the new variable `mouse-autoselect-window' to a non-nil | 970 | *** If you set the new variable `mouse-autoselect-window' to a non-nil |
| 1152 | value, windows are automatically selected as you move the mouse from | 971 | value, windows are automatically selected as you move the mouse from |
| 1153 | one Emacs window to another, even within a frame. A minibuffer window | 972 | one Emacs window to another, even within a frame. A minibuffer window |
| 1154 | can be selected only when it is active. | 973 | can be selected only when it is active. |
| 1155 | 974 | ||
| 1156 | +++ | ||
| 1157 | *** On X, when the window manager requires that you click on a frame to | 975 | *** On X, when the window manager requires that you click on a frame to |
| 1158 | select it (give it focus), the selected window and cursor position | 976 | select it (give it focus), the selected window and cursor position |
| 1159 | normally changes according to the mouse click position. If you set | 977 | normally changes according to the mouse click position. If you set |
| @@ -1161,7 +979,6 @@ the variable x-mouse-click-focus-ignore-position to t, the selected | |||
| 1161 | window and cursor position do not change when you click on a frame | 979 | window and cursor position do not change when you click on a frame |
| 1162 | to give it focus. | 980 | to give it focus. |
| 1163 | 981 | ||
| 1164 | +++ | ||
| 1165 | *** You can now follow links by clicking Mouse-1 on the link. | 982 | *** You can now follow links by clicking Mouse-1 on the link. |
| 1166 | 983 | ||
| 1167 | Traditionally, Emacs uses a Mouse-1 click to set point and a Mouse-2 | 984 | Traditionally, Emacs uses a Mouse-1 click to set point and a Mouse-2 |
| @@ -1192,23 +1009,19 @@ drag-mouse-1 action, typically copy the text. | |||
| 1192 | You can customize the new Mouse-1 behavior via the new user options | 1009 | You can customize the new Mouse-1 behavior via the new user options |
| 1193 | `mouse-1-click-follows-link' and `mouse-1-click-in-non-selected-windows'. | 1010 | `mouse-1-click-follows-link' and `mouse-1-click-in-non-selected-windows'. |
| 1194 | 1011 | ||
| 1195 | +++ | ||
| 1196 | *** Emacs normally highlights mouse sensitive text whenever the mouse | 1012 | *** Emacs normally highlights mouse sensitive text whenever the mouse |
| 1197 | is over the text. By setting the new variable `mouse-highlight', you | 1013 | is over the text. By setting the new variable `mouse-highlight', you |
| 1198 | can optionally enable mouse highlighting only after you move the | 1014 | can optionally enable mouse highlighting only after you move the |
| 1199 | mouse, so that highlighting disappears when you press a key. You can | 1015 | mouse, so that highlighting disappears when you press a key. You can |
| 1200 | also disable mouse highlighting. | 1016 | also disable mouse highlighting. |
| 1201 | 1017 | ||
| 1202 | +++ | ||
| 1203 | *** You can now customize if selecting a region by dragging the mouse | 1018 | *** You can now customize if selecting a region by dragging the mouse |
| 1204 | shall not copy the selected text to the kill-ring by setting the new | 1019 | shall not copy the selected text to the kill-ring by setting the new |
| 1205 | variable mouse-drag-copy-region to nil. | 1020 | variable mouse-drag-copy-region to nil. |
| 1206 | 1021 | ||
| 1207 | --- | ||
| 1208 | *** mouse-wheels can now scroll a specific fraction of the window | 1022 | *** mouse-wheels can now scroll a specific fraction of the window |
| 1209 | (rather than a fixed number of lines) and the scrolling is `progressive'. | 1023 | (rather than a fixed number of lines) and the scrolling is `progressive'. |
| 1210 | 1024 | ||
| 1211 | --- | ||
| 1212 | *** Emacs ignores mouse-2 clicks while the mouse wheel is being moved. | 1025 | *** Emacs ignores mouse-2 clicks while the mouse wheel is being moved. |
| 1213 | 1026 | ||
| 1214 | People tend to push the mouse wheel (which counts as a mouse-2 click) | 1027 | People tend to push the mouse wheel (which counts as a mouse-2 click) |
| @@ -1216,12 +1029,10 @@ unintentionally while turning the wheel, so these clicks are now | |||
| 1216 | ignored. You can customize this with the mouse-wheel-click-event and | 1029 | ignored. You can customize this with the mouse-wheel-click-event and |
| 1217 | mouse-wheel-inhibit-click-time variables. | 1030 | mouse-wheel-inhibit-click-time variables. |
| 1218 | 1031 | ||
| 1219 | +++ | ||
| 1220 | *** Under X, mouse-wheel-mode is turned on by default. | 1032 | *** Under X, mouse-wheel-mode is turned on by default. |
| 1221 | 1033 | ||
| 1222 | ** Multilingual Environment (Mule) changes: | 1034 | ** Multilingual Environment (Mule) changes: |
| 1223 | 1035 | ||
| 1224 | +++ | ||
| 1225 | *** You can disable character translation for a file using the -*- | 1036 | *** You can disable character translation for a file using the -*- |
| 1226 | construct. Include `enable-character-translation: nil' inside the | 1037 | construct. Include `enable-character-translation: nil' inside the |
| 1227 | -*-...-*- to disable any character translation that may happen by | 1038 | -*-...-*- to disable any character translation that may happen by |
| @@ -1234,14 +1045,12 @@ following header, it is decoded by the coding system `iso-latin-1' | |||
| 1234 | without any character translation: | 1045 | without any character translation: |
| 1235 | ;; -*- coding: iso-latin-1!; -*- | 1046 | ;; -*- coding: iso-latin-1!; -*- |
| 1236 | 1047 | ||
| 1237 | --- | ||
| 1238 | *** Language environment and various default coding systems are setup | 1048 | *** Language environment and various default coding systems are setup |
| 1239 | more correctly according to the current locale name. If the locale | 1049 | more correctly according to the current locale name. If the locale |
| 1240 | name doesn't specify a charset, the default is what glibc defines. | 1050 | name doesn't specify a charset, the default is what glibc defines. |
| 1241 | This change can result in using the different coding systems as | 1051 | This change can result in using the different coding systems as |
| 1242 | default in some locale (e.g. vi_VN). | 1052 | default in some locale (e.g. vi_VN). |
| 1243 | 1053 | ||
| 1244 | +++ | ||
| 1245 | *** The keyboard-coding-system is now automatically set based on your | 1054 | *** The keyboard-coding-system is now automatically set based on your |
| 1246 | current locale settings if you are not using a window system. This | 1055 | current locale settings if you are not using a window system. This |
| 1247 | can mean that the META key doesn't work but generates non-ASCII | 1056 | can mean that the META key doesn't work but generates non-ASCII |
| @@ -1251,33 +1060,26 @@ keyboard-coding-system) if you prefer META to work (the old default) | |||
| 1251 | or if the locale doesn't describe the character set actually generated | 1060 | or if the locale doesn't describe the character set actually generated |
| 1252 | by the keyboard. See Info node `Unibyte Mode'. | 1061 | by the keyboard. See Info node `Unibyte Mode'. |
| 1253 | 1062 | ||
| 1254 | +++ | ||
| 1255 | *** The new command `revert-buffer-with-coding-system' (C-x RET r) | 1063 | *** The new command `revert-buffer-with-coding-system' (C-x RET r) |
| 1256 | revisits the current file using a coding system that you specify. | 1064 | revisits the current file using a coding system that you specify. |
| 1257 | 1065 | ||
| 1258 | +++ | ||
| 1259 | *** New command `recode-region' decodes the region again by a specified | 1066 | *** New command `recode-region' decodes the region again by a specified |
| 1260 | coding system. | 1067 | coding system. |
| 1261 | 1068 | ||
| 1262 | +++ | ||
| 1263 | *** The new command `recode-file-name' changes the encoding of the name | 1069 | *** The new command `recode-file-name' changes the encoding of the name |
| 1264 | of a file. | 1070 | of a file. |
| 1265 | 1071 | ||
| 1266 | --- | ||
| 1267 | *** New command `ucs-insert' inserts a character specified by its | 1072 | *** New command `ucs-insert' inserts a character specified by its |
| 1268 | unicode. | 1073 | unicode. |
| 1269 | 1074 | ||
| 1270 | +++ | ||
| 1271 | *** The new command `set-file-name-coding-system' (C-x RET F) sets | 1075 | *** The new command `set-file-name-coding-system' (C-x RET F) sets |
| 1272 | coding system for encoding and decoding file names. A new menu item | 1076 | coding system for encoding and decoding file names. A new menu item |
| 1273 | (Options->Mule->Set Coding Systems->For File Name) invokes this | 1077 | (Options->Mule->Set Coding Systems->For File Name) invokes this |
| 1274 | command. | 1078 | command. |
| 1275 | 1079 | ||
| 1276 | +++ | ||
| 1277 | *** New command quail-show-key shows what key (or key sequence) to type | 1080 | *** New command quail-show-key shows what key (or key sequence) to type |
| 1278 | in the current input method to input a character at point. | 1081 | in the current input method to input a character at point. |
| 1279 | 1082 | ||
| 1280 | +++ | ||
| 1281 | *** Limited support for character `unification' has been added. | 1083 | *** Limited support for character `unification' has been added. |
| 1282 | Emacs now knows how to translate between different representations of | 1084 | Emacs now knows how to translate between different representations of |
| 1283 | the same characters in various Emacs charsets according to standard | 1085 | the same characters in various Emacs charsets according to standard |
| @@ -1297,20 +1099,17 @@ into Unicode characters (from the latin-iso8859-1 and | |||
| 1297 | mule-unicode-0100-24ff charsets) on decoding. Note that this mode | 1099 | mule-unicode-0100-24ff charsets) on decoding. Note that this mode |
| 1298 | will often effectively clobber data with an iso-2022 encoding. | 1100 | will often effectively clobber data with an iso-2022 encoding. |
| 1299 | 1101 | ||
| 1300 | --- | ||
| 1301 | *** There is support for decoding Greek and Cyrillic characters into | 1102 | *** There is support for decoding Greek and Cyrillic characters into |
| 1302 | either Unicode (the mule-unicode charsets) or the iso-8859 charsets, | 1103 | either Unicode (the mule-unicode charsets) or the iso-8859 charsets, |
| 1303 | when possible. The latter are more space-efficient. This is | 1104 | when possible. The latter are more space-efficient. This is |
| 1304 | controlled by user option utf-fragment-on-decoding. | 1105 | controlled by user option utf-fragment-on-decoding. |
| 1305 | 1106 | ||
| 1306 | --- | ||
| 1307 | *** New language environments: French, Ukrainian, Tajik, | 1107 | *** New language environments: French, Ukrainian, Tajik, |
| 1308 | Bulgarian, Belarusian, Ukrainian, UTF-8, Windows-1255, Welsh, Latin-6, | 1108 | Bulgarian, Belarusian, Ukrainian, UTF-8, Windows-1255, Welsh, Latin-6, |
| 1309 | Latin-7, Lithuanian, Latvian, Swedish, Slovenian, Croatian, Georgian, | 1109 | Latin-7, Lithuanian, Latvian, Swedish, Slovenian, Croatian, Georgian, |
| 1310 | Italian, Russian, Malayalam, Tamil, Russian, Chinese-EUC-TW, | 1110 | Italian, Russian, Malayalam, Tamil, Russian, Chinese-EUC-TW, |
| 1311 | Esperanto. (Set up automatically according to the locale.) | 1111 | Esperanto. (Set up automatically according to the locale.) |
| 1312 | 1112 | ||
| 1313 | --- | ||
| 1314 | *** New input methods: latin-alt-postfix, latin-postfix, latin-prefix, | 1113 | *** New input methods: latin-alt-postfix, latin-postfix, latin-prefix, |
| 1315 | ukrainian-computer, belarusian, bulgarian-bds, russian-computer, | 1114 | ukrainian-computer, belarusian, bulgarian-bds, russian-computer, |
| 1316 | vietnamese-telex, lithuanian-numeric, lithuanian-keyboard, | 1115 | vietnamese-telex, lithuanian-numeric, lithuanian-keyboard, |
| @@ -1318,11 +1117,9 @@ latvian-keyboard, welsh, georgian, rfc1345, ucs, sgml, | |||
| 1318 | bulgarian-phonetic, dutch, slovenian, croatian, malayalam-inscript, | 1117 | bulgarian-phonetic, dutch, slovenian, croatian, malayalam-inscript, |
| 1319 | tamil-inscript. | 1118 | tamil-inscript. |
| 1320 | 1119 | ||
| 1321 | --- | ||
| 1322 | *** New input method chinese-sisheng for inputting Chinese Pinyin | 1120 | *** New input method chinese-sisheng for inputting Chinese Pinyin |
| 1323 | characters. | 1121 | characters. |
| 1324 | 1122 | ||
| 1325 | --- | ||
| 1326 | *** Improved Thai support. A new minor mode `thai-word-mode' (which is | 1123 | *** Improved Thai support. A new minor mode `thai-word-mode' (which is |
| 1327 | automatically activated if you select Thai as a language | 1124 | automatically activated if you select Thai as a language |
| 1328 | environment) changes key bindings of most word-oriented commands to | 1125 | environment) changes key bindings of most word-oriented commands to |
| @@ -1334,17 +1131,14 @@ versions which recognize Thai words. Affected commands are | |||
| 1334 | M-t (transpose-words) | 1131 | M-t (transpose-words) |
| 1335 | M-q (fill-paragraph) | 1132 | M-q (fill-paragraph) |
| 1336 | 1133 | ||
| 1337 | --- | ||
| 1338 | *** Indian support has been updated. | 1134 | *** Indian support has been updated. |
| 1339 | The in-is13194 coding system is now Unicode-based. CDAC fonts are | 1135 | The in-is13194 coding system is now Unicode-based. CDAC fonts are |
| 1340 | assumed. There is a framework for supporting various | 1136 | assumed. There is a framework for supporting various |
| 1341 | Indian scripts, but currently only Devanagari, Malayalam and Tamil are | 1137 | Indian scripts, but currently only Devanagari, Malayalam and Tamil are |
| 1342 | supported. | 1138 | supported. |
| 1343 | 1139 | ||
| 1344 | --- | ||
| 1345 | *** A UTF-7 coding system is available in the library `utf-7'. | 1140 | *** A UTF-7 coding system is available in the library `utf-7'. |
| 1346 | 1141 | ||
| 1347 | --- | ||
| 1348 | *** The utf-8/16 coding systems have been enhanced. | 1142 | *** The utf-8/16 coding systems have been enhanced. |
| 1349 | By default, untranslatable utf-8 sequences are simply composed into | 1143 | By default, untranslatable utf-8 sequences are simply composed into |
| 1350 | single quasi-characters. User option `utf-translate-cjk-mode' (it is | 1144 | single quasi-characters. User option `utf-translate-cjk-mode' (it is |
| @@ -1358,42 +1152,35 @@ coding system now also encodes characters from most of Emacs's | |||
| 1358 | one-dimensional internal charsets, specifically the ISO-8859 ones. | 1152 | one-dimensional internal charsets, specifically the ISO-8859 ones. |
| 1359 | The utf-16 coding system is affected similarly. | 1153 | The utf-16 coding system is affected similarly. |
| 1360 | 1154 | ||
| 1361 | --- | ||
| 1362 | *** A new coding system `euc-tw' has been added for traditional Chinese | 1155 | *** A new coding system `euc-tw' has been added for traditional Chinese |
| 1363 | in CNS encoding; it accepts both Big 5 and CNS as input; on saving, | 1156 | in CNS encoding; it accepts both Big 5 and CNS as input; on saving, |
| 1364 | Big 5 is then converted to CNS. | 1157 | Big 5 is then converted to CNS. |
| 1365 | 1158 | ||
| 1366 | --- | ||
| 1367 | *** Many new coding systems are available in the `code-pages' library. | 1159 | *** Many new coding systems are available in the `code-pages' library. |
| 1368 | These include complete versions of most of those in codepage.el, based | 1160 | These include complete versions of most of those in codepage.el, based |
| 1369 | on Unicode mappings. `codepage-setup' is now obsolete and is used | 1161 | on Unicode mappings. `codepage-setup' is now obsolete and is used |
| 1370 | only in the MS-DOS port of Emacs. All coding systems defined in | 1162 | only in the MS-DOS port of Emacs. All coding systems defined in |
| 1371 | `code-pages' are auto-loaded. | 1163 | `code-pages' are auto-loaded. |
| 1372 | 1164 | ||
| 1373 | --- | ||
| 1374 | *** New variable `utf-translate-cjk-unicode-range' controls which | 1165 | *** New variable `utf-translate-cjk-unicode-range' controls which |
| 1375 | Unicode characters to translate in `utf-translate-cjk-mode'. | 1166 | Unicode characters to translate in `utf-translate-cjk-mode'. |
| 1376 | 1167 | ||
| 1377 | --- | ||
| 1378 | *** iso-10646-1 (`Unicode') fonts can be used to display any range of | 1168 | *** iso-10646-1 (`Unicode') fonts can be used to display any range of |
| 1379 | characters encodable by the utf-8 coding system. Just specify the | 1169 | characters encodable by the utf-8 coding system. Just specify the |
| 1380 | fontset appropriately. | 1170 | fontset appropriately. |
| 1381 | 1171 | ||
| 1382 | ** Customize changes: | 1172 | ** Customize changes: |
| 1383 | 1173 | ||
| 1384 | +++ | ||
| 1385 | *** Custom themes are collections of customize options. Create a | 1174 | *** Custom themes are collections of customize options. Create a |
| 1386 | custom theme with M-x customize-create-theme. Use M-x load-theme to | 1175 | custom theme with M-x customize-create-theme. Use M-x load-theme to |
| 1387 | load and enable a theme, and M-x disable-theme to disable it. Use M-x | 1176 | load and enable a theme, and M-x disable-theme to disable it. Use M-x |
| 1388 | enable-theme to enable a disabled theme. | 1177 | enable-theme to enable a disabled theme. |
| 1389 | 1178 | ||
| 1390 | +++ | ||
| 1391 | *** The commands M-x customize-face and M-x customize-face-other-window | 1179 | *** The commands M-x customize-face and M-x customize-face-other-window |
| 1392 | now look at the character after point. If a face or faces are | 1180 | now look at the character after point. If a face or faces are |
| 1393 | specified for that character, the commands by default customize those | 1181 | specified for that character, the commands by default customize those |
| 1394 | faces. | 1182 | faces. |
| 1395 | 1183 | ||
| 1396 | --- | ||
| 1397 | *** The face-customization widget has been reworked to be less confusing. | 1184 | *** The face-customization widget has been reworked to be less confusing. |
| 1398 | In particular, when you enable a face attribute using the corresponding | 1185 | In particular, when you enable a face attribute using the corresponding |
| 1399 | check-box, there's no longer a redundant `*' option in value selection | 1186 | check-box, there's no longer a redundant `*' option in value selection |
| @@ -1402,7 +1189,6 @@ sense for the attribute. When an attribute is de-selected by unchecking | |||
| 1402 | its check-box, then the (now ignored, but still present temporarily in | 1189 | its check-box, then the (now ignored, but still present temporarily in |
| 1403 | case you re-select the attribute) value is hidden. | 1190 | case you re-select the attribute) value is hidden. |
| 1404 | 1191 | ||
| 1405 | +++ | ||
| 1406 | *** When you set or reset a variable's value in a Customize buffer, | 1192 | *** When you set or reset a variable's value in a Customize buffer, |
| 1407 | the previous value becomes the "backup value" of the variable. | 1193 | the previous value becomes the "backup value" of the variable. |
| 1408 | You can go back to that backup value by selecting "Use Backup Value" | 1194 | You can go back to that backup value by selecting "Use Backup Value" |
| @@ -1410,17 +1196,14 @@ under the "[State]" button. | |||
| 1410 | 1196 | ||
| 1411 | ** Buffer Menu changes: | 1197 | ** Buffer Menu changes: |
| 1412 | 1198 | ||
| 1413 | +++ | ||
| 1414 | *** New command `Buffer-menu-toggle-files-only' toggles display of file | 1199 | *** New command `Buffer-menu-toggle-files-only' toggles display of file |
| 1415 | buffers only in the Buffer Menu. It is bound to T in Buffer Menu | 1200 | buffers only in the Buffer Menu. It is bound to T in Buffer Menu |
| 1416 | mode. | 1201 | mode. |
| 1417 | 1202 | ||
| 1418 | +++ | ||
| 1419 | *** `buffer-menu' and `list-buffers' now list buffers whose names begin | 1203 | *** `buffer-menu' and `list-buffers' now list buffers whose names begin |
| 1420 | with a space, when those buffers are visiting files. Normally buffers | 1204 | with a space, when those buffers are visiting files. Normally buffers |
| 1421 | whose names begin with space are omitted. | 1205 | whose names begin with space are omitted. |
| 1422 | 1206 | ||
| 1423 | --- | ||
| 1424 | *** The new options `buffers-menu-show-directories' and | 1207 | *** The new options `buffers-menu-show-directories' and |
| 1425 | `buffers-menu-show-status' let you control how buffers are displayed | 1208 | `buffers-menu-show-status' let you control how buffers are displayed |
| 1426 | in the menu dropped down when you click "Buffers" from the menu bar. | 1209 | in the menu dropped down when you click "Buffers" from the menu bar. |
| @@ -1440,24 +1223,19 @@ the Buffers menu is regenerated. | |||
| 1440 | 1223 | ||
| 1441 | ** Dired mode: | 1224 | ** Dired mode: |
| 1442 | 1225 | ||
| 1443 | --- | ||
| 1444 | *** New faces dired-header, dired-mark, dired-marked, dired-flagged, | 1226 | *** New faces dired-header, dired-mark, dired-marked, dired-flagged, |
| 1445 | dired-ignored, dired-directory, dired-symlink, dired-warning | 1227 | dired-ignored, dired-directory, dired-symlink, dired-warning |
| 1446 | introduced for Dired mode instead of font-lock faces. | 1228 | introduced for Dired mode instead of font-lock faces. |
| 1447 | 1229 | ||
| 1448 | +++ | ||
| 1449 | *** New Dired command `dired-compare-directories' marks files | 1230 | *** New Dired command `dired-compare-directories' marks files |
| 1450 | with different file attributes in two dired buffers. | 1231 | with different file attributes in two dired buffers. |
| 1451 | 1232 | ||
| 1452 | +++ | ||
| 1453 | *** New Dired command `dired-do-touch' (bound to T) changes timestamps | 1233 | *** New Dired command `dired-do-touch' (bound to T) changes timestamps |
| 1454 | of marked files with the value entered in the minibuffer. | 1234 | of marked files with the value entered in the minibuffer. |
| 1455 | 1235 | ||
| 1456 | +++ | ||
| 1457 | *** The Dired command `dired-goto-file' is now bound to j, not M-g. | 1236 | *** The Dired command `dired-goto-file' is now bound to j, not M-g. |
| 1458 | This is to avoid hiding the global key binding of M-g. | 1237 | This is to avoid hiding the global key binding of M-g. |
| 1459 | 1238 | ||
| 1460 | +++ | ||
| 1461 | *** In Dired's ! command (dired-do-shell-command), `*' and `?' now | 1239 | *** In Dired's ! command (dired-do-shell-command), `*' and `?' now |
| 1462 | control substitution of the file names only when they are surrounded | 1240 | control substitution of the file names only when they are surrounded |
| 1463 | by whitespace. This means you can now use them as shell wildcards | 1241 | by whitespace. This means you can now use them as shell wildcards |
| @@ -1465,11 +1243,9 @@ too. If you want to use just plain `*' as a wildcard, type `*""'; the | |||
| 1465 | double quotes make no difference in the shell, but they prevent | 1243 | double quotes make no difference in the shell, but they prevent |
| 1466 | special treatment in `dired-do-shell-command'. | 1244 | special treatment in `dired-do-shell-command'. |
| 1467 | 1245 | ||
| 1468 | +++ | ||
| 1469 | *** In Dired, the w command now stores the current line's file name | 1246 | *** In Dired, the w command now stores the current line's file name |
| 1470 | into the kill ring. With a zero prefix arg, it stores the absolute file name. | 1247 | into the kill ring. With a zero prefix arg, it stores the absolute file name. |
| 1471 | 1248 | ||
| 1472 | +++ | ||
| 1473 | *** In Dired-x, Omitting files is now a minor mode, dired-omit-mode. | 1249 | *** In Dired-x, Omitting files is now a minor mode, dired-omit-mode. |
| 1474 | 1250 | ||
| 1475 | The mode toggling command is bound to M-o. A new command | 1251 | The mode toggling command is bound to M-o. A new command |
| @@ -1477,7 +1253,6 @@ dired-mark-omitted, bound to * O, marks omitted files. The variable | |||
| 1477 | dired-omit-files-p is obsoleted, use the mode toggling function | 1253 | dired-omit-files-p is obsoleted, use the mode toggling function |
| 1478 | instead. | 1254 | instead. |
| 1479 | 1255 | ||
| 1480 | +++ | ||
| 1481 | *** The variables dired-free-space-program and dired-free-space-args | 1256 | *** The variables dired-free-space-program and dired-free-space-args |
| 1482 | have been renamed to directory-free-space-program and | 1257 | have been renamed to directory-free-space-program and |
| 1483 | directory-free-space-args, and they now apply whenever Emacs puts a | 1258 | directory-free-space-args, and they now apply whenever Emacs puts a |
| @@ -1485,7 +1260,6 @@ directory listing into a buffer. | |||
| 1485 | 1260 | ||
| 1486 | ** Comint changes: | 1261 | ** Comint changes: |
| 1487 | 1262 | ||
| 1488 | --- | ||
| 1489 | *** The comint prompt can now be made read-only, using the new user | 1263 | *** The comint prompt can now be made read-only, using the new user |
| 1490 | option `comint-prompt-read-only'. This is not enabled by default, | 1264 | option `comint-prompt-read-only'. This is not enabled by default, |
| 1491 | except in IELM buffers. The read-only status of IELM prompts can be | 1265 | except in IELM buffers. The read-only status of IELM prompts can be |
| @@ -1507,18 +1281,15 @@ not the case, then `comint-kill-region' behaves just like | |||
| 1507 | `kill-region' if read-only properties are involved: it copies the text | 1281 | `kill-region' if read-only properties are involved: it copies the text |
| 1508 | to the kill-ring, but does not delete it. | 1282 | to the kill-ring, but does not delete it. |
| 1509 | 1283 | ||
| 1510 | +++ | ||
| 1511 | *** The new command `comint-insert-previous-argument' in comint-derived | 1284 | *** The new command `comint-insert-previous-argument' in comint-derived |
| 1512 | modes (shell-mode, etc.) inserts arguments from previous command lines, | 1285 | modes (shell-mode, etc.) inserts arguments from previous command lines, |
| 1513 | like bash's `ESC .' binding. It is bound by default to `C-c .', but | 1286 | like bash's `ESC .' binding. It is bound by default to `C-c .', but |
| 1514 | otherwise behaves quite similarly to the bash version. | 1287 | otherwise behaves quite similarly to the bash version. |
| 1515 | 1288 | ||
| 1516 | +++ | ||
| 1517 | *** `comint-use-prompt-regexp-instead-of-fields' has been renamed | 1289 | *** `comint-use-prompt-regexp-instead-of-fields' has been renamed |
| 1518 | `comint-use-prompt-regexp'. The old name has been kept as an alias, | 1290 | `comint-use-prompt-regexp'. The old name has been kept as an alias, |
| 1519 | but declared obsolete. | 1291 | but declared obsolete. |
| 1520 | 1292 | ||
| 1521 | +++ | ||
| 1522 | *** The new INSIDE_EMACS environment variable is set to "t" in | 1293 | *** The new INSIDE_EMACS environment variable is set to "t" in |
| 1523 | subshells running inside Emacs. This supersedes the EMACS environment | 1294 | subshells running inside Emacs. This supersedes the EMACS environment |
| 1524 | variable, which will be removed in a future Emacs release. Programs | 1295 | variable, which will be removed in a future Emacs release. Programs |
| @@ -1527,7 +1298,6 @@ INSIDE_EMACS instead of EMACS. | |||
| 1527 | 1298 | ||
| 1528 | ** M-x Compile changes: | 1299 | ** M-x Compile changes: |
| 1529 | 1300 | ||
| 1530 | --- | ||
| 1531 | *** M-x compile has become more robust and reliable | 1301 | *** M-x compile has become more robust and reliable |
| 1532 | 1302 | ||
| 1533 | Quite a few more kinds of messages are recognized. Messages that are | 1303 | Quite a few more kinds of messages are recognized. Messages that are |
| @@ -1547,22 +1317,18 @@ that configure outputs and -o options so you see at a glance where you are. | |||
| 1547 | 1317 | ||
| 1548 | The new file etc/compilation.txt gives examples of each type of message. | 1318 | The new file etc/compilation.txt gives examples of each type of message. |
| 1549 | 1319 | ||
| 1550 | +++ | ||
| 1551 | *** New user option `compilation-environment'. | 1320 | *** New user option `compilation-environment'. |
| 1552 | This option allows you to specify environment variables for inferior | 1321 | This option allows you to specify environment variables for inferior |
| 1553 | compilation processes without affecting the environment that all | 1322 | compilation processes without affecting the environment that all |
| 1554 | subprocesses inherit. | 1323 | subprocesses inherit. |
| 1555 | 1324 | ||
| 1556 | +++ | ||
| 1557 | *** New user option `compilation-disable-input'. | 1325 | *** New user option `compilation-disable-input'. |
| 1558 | If this is non-nil, send end-of-file as compilation process input. | 1326 | If this is non-nil, send end-of-file as compilation process input. |
| 1559 | 1327 | ||
| 1560 | +++ | ||
| 1561 | *** New options `next-error-highlight' and `next-error-highlight-no-select' | 1328 | *** New options `next-error-highlight' and `next-error-highlight-no-select' |
| 1562 | specify the method of highlighting of the corresponding source line | 1329 | specify the method of highlighting of the corresponding source line |
| 1563 | in new face `next-error'. | 1330 | in new face `next-error'. |
| 1564 | 1331 | ||
| 1565 | +++ | ||
| 1566 | *** A new minor mode `next-error-follow-minor-mode' can be used in | 1332 | *** A new minor mode `next-error-follow-minor-mode' can be used in |
| 1567 | compilation-mode, grep-mode, occur-mode, and diff-mode (i.e. all the | 1333 | compilation-mode, grep-mode, occur-mode, and diff-mode (i.e. all the |
| 1568 | modes that can use `next-error'). In this mode, cursor motion in the | 1334 | modes that can use `next-error'). In this mode, cursor motion in the |
| @@ -1570,33 +1336,27 @@ buffer causes automatic display in another window of the corresponding | |||
| 1570 | matches, compilation errors, etc. This minor mode can be toggled with | 1336 | matches, compilation errors, etc. This minor mode can be toggled with |
| 1571 | C-c C-f. | 1337 | C-c C-f. |
| 1572 | 1338 | ||
| 1573 | +++ | ||
| 1574 | *** When the left fringe is displayed, an arrow points to current message in | 1339 | *** When the left fringe is displayed, an arrow points to current message in |
| 1575 | the compilation buffer. | 1340 | the compilation buffer. |
| 1576 | 1341 | ||
| 1577 | +++ | ||
| 1578 | *** The new variable `compilation-context-lines' controls lines of leading | 1342 | *** The new variable `compilation-context-lines' controls lines of leading |
| 1579 | context before the current message. If nil and the left fringe is displayed, | 1343 | context before the current message. If nil and the left fringe is displayed, |
| 1580 | it doesn't scroll the compilation output window. If there is no left fringe, | 1344 | it doesn't scroll the compilation output window. If there is no left fringe, |
| 1581 | no arrow is displayed and a value of nil means display the message at the top | 1345 | no arrow is displayed and a value of nil means display the message at the top |
| 1582 | of the window. | 1346 | of the window. |
| 1583 | 1347 | ||
| 1584 | +++ | ||
| 1585 | *** The EMACS environment variable now defaults to Emacs's absolute | 1348 | *** The EMACS environment variable now defaults to Emacs's absolute |
| 1586 | file name, instead of to "t". | 1349 | file name, instead of to "t". |
| 1587 | 1350 | ||
| 1588 | ** Occur mode changes: | 1351 | ** Occur mode changes: |
| 1589 | 1352 | ||
| 1590 | +++ | ||
| 1591 | *** In the *Occur* buffer, `o' switches to it in another window, and | 1353 | *** In the *Occur* buffer, `o' switches to it in another window, and |
| 1592 | C-o displays the current line's occurrence in another window without | 1354 | C-o displays the current line's occurrence in another window without |
| 1593 | switching to it. | 1355 | switching to it. |
| 1594 | 1356 | ||
| 1595 | +++ | ||
| 1596 | *** You can now use next-error (C-x `) and previous-error to advance to | 1357 | *** You can now use next-error (C-x `) and previous-error to advance to |
| 1597 | the next/previous matching line found by M-x occur. | 1358 | the next/previous matching line found by M-x occur. |
| 1598 | 1359 | ||
| 1599 | +++ | ||
| 1600 | *** The new command `multi-occur' is just like `occur', except it can | 1360 | *** The new command `multi-occur' is just like `occur', except it can |
| 1601 | search multiple buffers. There is also a new command | 1361 | search multiple buffers. There is also a new command |
| 1602 | `multi-occur-in-matching-buffers' which allows you to specify the | 1362 | `multi-occur-in-matching-buffers' which allows you to specify the |
| @@ -1606,17 +1366,14 @@ changes. | |||
| 1606 | 1366 | ||
| 1607 | ** Grep changes: | 1367 | ** Grep changes: |
| 1608 | 1368 | ||
| 1609 | +++ | ||
| 1610 | *** Grep has been decoupled from compilation mode setup. | 1369 | *** Grep has been decoupled from compilation mode setup. |
| 1611 | 1370 | ||
| 1612 | There's a new separate package grep.el, with its own submenu and | 1371 | There's a new separate package grep.el, with its own submenu and |
| 1613 | customization group. | 1372 | customization group. |
| 1614 | 1373 | ||
| 1615 | +++ | ||
| 1616 | *** `grep-find' is now also available under the name `find-grep' where | 1374 | *** `grep-find' is now also available under the name `find-grep' where |
| 1617 | people knowing `find-grep-dired' would probably expect it. | 1375 | people knowing `find-grep-dired' would probably expect it. |
| 1618 | 1376 | ||
| 1619 | +++ | ||
| 1620 | *** New commands `lgrep' (local grep) and `rgrep' (recursive grep) are | 1377 | *** New commands `lgrep' (local grep) and `rgrep' (recursive grep) are |
| 1621 | more user-friendly versions of `grep' and `grep-find', which prompt | 1378 | more user-friendly versions of `grep' and `grep-find', which prompt |
| 1622 | separately for the regular expression to match, the files to search, | 1379 | separately for the regular expression to match, the files to search, |
| @@ -1632,17 +1389,14 @@ Subdirectories listed in `grep-find-ignored-directories' such as those | |||
| 1632 | typically used by various version control systems, like CVS and arch, | 1389 | typically used by various version control systems, like CVS and arch, |
| 1633 | are automatically skipped by `rgrep'. | 1390 | are automatically skipped by `rgrep'. |
| 1634 | 1391 | ||
| 1635 | --- | ||
| 1636 | *** The grep commands provide highlighting support. | 1392 | *** The grep commands provide highlighting support. |
| 1637 | 1393 | ||
| 1638 | Hits are fontified in green, and hits in binary files in orange. Grep buffers | 1394 | Hits are fontified in green, and hits in binary files in orange. Grep buffers |
| 1639 | can be saved and automatically revisited. | 1395 | can be saved and automatically revisited. |
| 1640 | 1396 | ||
| 1641 | --- | ||
| 1642 | *** The new variables `grep-window-height' and `grep-scroll-output' override | 1397 | *** The new variables `grep-window-height' and `grep-scroll-output' override |
| 1643 | the corresponding compilation mode settings, for grep commands only. | 1398 | the corresponding compilation mode settings, for grep commands only. |
| 1644 | 1399 | ||
| 1645 | +++ | ||
| 1646 | *** New option `grep-highlight-matches' highlights matches in *grep* | 1400 | *** New option `grep-highlight-matches' highlights matches in *grep* |
| 1647 | buffer. It uses a special feature of some grep programs which accept | 1401 | buffer. It uses a special feature of some grep programs which accept |
| 1648 | --color option to output markers around matches. When going to the next | 1402 | --color option to output markers around matches. When going to the next |
| @@ -1650,7 +1404,6 @@ match with `next-error' the exact match is highlighted in the source | |||
| 1650 | buffer. Otherwise, if `grep-highlight-matches' is nil, the whole | 1404 | buffer. Otherwise, if `grep-highlight-matches' is nil, the whole |
| 1651 | source line is highlighted. | 1405 | source line is highlighted. |
| 1652 | 1406 | ||
| 1653 | +++ | ||
| 1654 | *** New key bindings in grep output window: | 1407 | *** New key bindings in grep output window: |
| 1655 | SPC and DEL scrolls window up and down. C-n and C-p moves to next and | 1408 | SPC and DEL scrolls window up and down. C-n and C-p moves to next and |
| 1656 | previous match in the grep window. RET jumps to the source line of | 1409 | previous match in the grep window. RET jumps to the source line of |
| @@ -1659,7 +1412,6 @@ other window, but does not switch buffer. `{' and `}' jumps to the | |||
| 1659 | previous or next file in the grep output. TAB also jumps to the next | 1412 | previous or next file in the grep output. TAB also jumps to the next |
| 1660 | file. | 1413 | file. |
| 1661 | 1414 | ||
| 1662 | +++ | ||
| 1663 | *** M-x grep now tries to avoid appending `/dev/null' to the command line | 1415 | *** M-x grep now tries to avoid appending `/dev/null' to the command line |
| 1664 | by using GNU grep `-H' option instead. M-x grep automatically | 1416 | by using GNU grep `-H' option instead. M-x grep automatically |
| 1665 | detects whether this is possible or not the first time it is invoked. | 1417 | detects whether this is possible or not the first time it is invoked. |
| @@ -1669,12 +1421,10 @@ command lines to be used than was possible before. | |||
| 1669 | 1421 | ||
| 1670 | ** X Windows Support: | 1422 | ** X Windows Support: |
| 1671 | 1423 | ||
| 1672 | +++ | ||
| 1673 | *** Emacs now supports drag and drop for X. Dropping a file on a window | 1424 | *** Emacs now supports drag and drop for X. Dropping a file on a window |
| 1674 | opens it, dropping text inserts the text. Dropping a file on a dired | 1425 | opens it, dropping text inserts the text. Dropping a file on a dired |
| 1675 | buffer copies or moves the file to that directory. | 1426 | buffer copies or moves the file to that directory. |
| 1676 | 1427 | ||
| 1677 | +++ | ||
| 1678 | *** Under X11, it is possible to swap Alt and Meta (and Super and Hyper). | 1428 | *** Under X11, it is possible to swap Alt and Meta (and Super and Hyper). |
| 1679 | The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym', | 1429 | The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym', |
| 1680 | and `x-super-keysym' can be used to choose which keysyms Emacs should | 1430 | and `x-super-keysym' can be used to choose which keysyms Emacs should |
| @@ -1683,31 +1433,26 @@ Meta and Alt: | |||
| 1683 | (setq x-alt-keysym 'meta) | 1433 | (setq x-alt-keysym 'meta) |
| 1684 | (setq x-meta-keysym 'alt) | 1434 | (setq x-meta-keysym 'alt) |
| 1685 | 1435 | ||
| 1686 | +++ | ||
| 1687 | *** The X resource useXIM can be used to turn off use of XIM, which can | 1436 | *** The X resource useXIM can be used to turn off use of XIM, which can |
| 1688 | speed up Emacs with slow networking to the X server. | 1437 | speed up Emacs with slow networking to the X server. |
| 1689 | 1438 | ||
| 1690 | If the configure option `--without-xim' was used to turn off use of | 1439 | If the configure option `--without-xim' was used to turn off use of |
| 1691 | XIM by default, the X resource useXIM can be used to turn it on. | 1440 | XIM by default, the X resource useXIM can be used to turn it on. |
| 1692 | 1441 | ||
| 1693 | --- | ||
| 1694 | *** The new variable `x-select-request-type' controls how Emacs | 1442 | *** The new variable `x-select-request-type' controls how Emacs |
| 1695 | requests X selection. The default value is nil, which means that | 1443 | requests X selection. The default value is nil, which means that |
| 1696 | Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING, | 1444 | Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING, |
| 1697 | and use the more appropriately result. | 1445 | and use the more appropriately result. |
| 1698 | 1446 | ||
| 1699 | --- | ||
| 1700 | *** The scrollbar under LessTif or Motif has a smoother drag-scrolling. | 1447 | *** The scrollbar under LessTif or Motif has a smoother drag-scrolling. |
| 1701 | On the other hand, the size of the thumb does not represent the actual | 1448 | On the other hand, the size of the thumb does not represent the actual |
| 1702 | amount of text shown any more (only a crude approximation of it). | 1449 | amount of text shown any more (only a crude approximation of it). |
| 1703 | 1450 | ||
| 1704 | ** Xterm support: | 1451 | ** Xterm support: |
| 1705 | 1452 | ||
| 1706 | --- | ||
| 1707 | *** If you enable Xterm Mouse mode, Emacs will respond to mouse clicks | 1453 | *** If you enable Xterm Mouse mode, Emacs will respond to mouse clicks |
| 1708 | on the mode line, header line and display margin, when run in an xterm. | 1454 | on the mode line, header line and display margin, when run in an xterm. |
| 1709 | 1455 | ||
| 1710 | --- | ||
| 1711 | *** Improved key bindings support when running in an xterm. | 1456 | *** Improved key bindings support when running in an xterm. |
| 1712 | When Emacs is running in an xterm more key bindings are available. | 1457 | When Emacs is running in an xterm more key bindings are available. |
| 1713 | The following should work: | 1458 | The following should work: |
| @@ -1720,7 +1465,6 @@ resource is set are also supported. | |||
| 1720 | 1465 | ||
| 1721 | ** Character terminal color support changes: | 1466 | ** Character terminal color support changes: |
| 1722 | 1467 | ||
| 1723 | +++ | ||
| 1724 | *** The new command-line option --color=MODE lets you specify a standard | 1468 | *** The new command-line option --color=MODE lets you specify a standard |
| 1725 | mode for a tty color support. It is meant to be used on character | 1469 | mode for a tty color support. It is meant to be used on character |
| 1726 | terminals whose capabilities are not set correctly in the terminal | 1470 | terminals whose capabilities are not set correctly in the terminal |
| @@ -1731,26 +1475,22 @@ when invoked with "ls --color", so if your terminal can support colors | |||
| 1731 | in "ls --color", it will support "emacs --color" as well. See the | 1475 | in "ls --color", it will support "emacs --color" as well. See the |
| 1732 | user manual for the possible values of the MODE parameter. | 1476 | user manual for the possible values of the MODE parameter. |
| 1733 | 1477 | ||
| 1734 | --- | ||
| 1735 | *** Emacs now supports several character terminals which provide more | 1478 | *** Emacs now supports several character terminals which provide more |
| 1736 | than 8 colors. For example, for `xterm', 16-color, 88-color, and | 1479 | than 8 colors. For example, for `xterm', 16-color, 88-color, and |
| 1737 | 256-color modes are supported. Emacs automatically notes at startup | 1480 | 256-color modes are supported. Emacs automatically notes at startup |
| 1738 | the extended number of colors, and defines the appropriate entries for | 1481 | the extended number of colors, and defines the appropriate entries for |
| 1739 | all of these colors. | 1482 | all of these colors. |
| 1740 | 1483 | ||
| 1741 | +++ | ||
| 1742 | *** Emacs now uses the full range of available colors for the default | 1484 | *** Emacs now uses the full range of available colors for the default |
| 1743 | faces when running on a color terminal, including 16-, 88-, and | 1485 | faces when running on a color terminal, including 16-, 88-, and |
| 1744 | 256-color xterms. This means that when you run "emacs -nw" on an | 1486 | 256-color xterms. This means that when you run "emacs -nw" on an |
| 1745 | 88-color or 256-color xterm, you will see essentially the same face | 1487 | 88-color or 256-color xterm, you will see essentially the same face |
| 1746 | colors as on X. | 1488 | colors as on X. |
| 1747 | 1489 | ||
| 1748 | --- | ||
| 1749 | *** There's a new support for colors on `rxvt' terminal emulator. | 1490 | *** There's a new support for colors on `rxvt' terminal emulator. |
| 1750 | 1491 | ||
| 1751 | * New Modes and Packages in Emacs 22.1 | 1492 | * New Modes and Packages in Emacs 22.1 |
| 1752 | 1493 | ||
| 1753 | --- | ||
| 1754 | ** ERC is now part of the Emacs distribution. | 1494 | ** ERC is now part of the Emacs distribution. |
| 1755 | 1495 | ||
| 1756 | ERC is a powerful, modular, and extensible IRC client for Emacs. | 1496 | ERC is a powerful, modular, and extensible IRC client for Emacs. |
| @@ -1761,7 +1501,6 @@ M-x customize-option erc-modules RET. | |||
| 1761 | To start an IRC session with ERC, type M-x erc, and follow the prompts | 1501 | To start an IRC session with ERC, type M-x erc, and follow the prompts |
| 1762 | for server, port, and nick. | 1502 | for server, port, and nick. |
| 1763 | 1503 | ||
| 1764 | --- | ||
| 1765 | ** Rcirc is now part of the Emacs distribution. | 1504 | ** Rcirc is now part of the Emacs distribution. |
| 1766 | 1505 | ||
| 1767 | Rcirc is an Internet relay chat (IRC) client. It supports | 1506 | Rcirc is an Internet relay chat (IRC) client. It supports |
| @@ -1775,7 +1514,6 @@ To start an IRC session using the default parameters, type M-x irc. | |||
| 1775 | If you type C-u M-x irc, it prompts you for the server, nick, port and | 1514 | If you type C-u M-x irc, it prompts you for the server, nick, port and |
| 1776 | startup channel parameters before connecting. | 1515 | startup channel parameters before connecting. |
| 1777 | 1516 | ||
| 1778 | --- | ||
| 1779 | ** Newsticker is now part of the Emacs distribution. | 1517 | ** Newsticker is now part of the Emacs distribution. |
| 1780 | 1518 | ||
| 1781 | Newsticker asynchronously retrieves headlines (RSS) from a list of news | 1519 | Newsticker asynchronously retrieves headlines (RSS) from a list of news |
| @@ -1783,11 +1521,9 @@ sites, prepares these headlines for reading, and allows for loading the | |||
| 1783 | corresponding articles in a web browser. Its documentation is in a | 1521 | corresponding articles in a web browser. Its documentation is in a |
| 1784 | separate manual. | 1522 | separate manual. |
| 1785 | 1523 | ||
| 1786 | +++ | ||
| 1787 | ** savehist saves minibuffer histories between sessions. | 1524 | ** savehist saves minibuffer histories between sessions. |
| 1788 | To use this feature, turn on savehist-mode in your `.emacs' file. | 1525 | To use this feature, turn on savehist-mode in your `.emacs' file. |
| 1789 | 1526 | ||
| 1790 | +++ | ||
| 1791 | ** Filesets are collections of files. You can define a fileset in | 1527 | ** Filesets are collections of files. You can define a fileset in |
| 1792 | various ways, such as based on a directory tree or based on | 1528 | various ways, such as based on a directory tree or based on |
| 1793 | program files that include other program files. | 1529 | program files that include other program files. |
| @@ -1796,7 +1532,6 @@ Once you have defined a fileset, you can perform various operations on | |||
| 1796 | all the files in it, such as visiting them or searching and replacing | 1532 | all the files in it, such as visiting them or searching and replacing |
| 1797 | in them. | 1533 | in them. |
| 1798 | 1534 | ||
| 1799 | +++ | ||
| 1800 | ** Calc is now part of the Emacs distribution. | 1535 | ** Calc is now part of the Emacs distribution. |
| 1801 | 1536 | ||
| 1802 | Calc is an advanced desk calculator and mathematical tool written in | 1537 | Calc is an advanced desk calculator and mathematical tool written in |
| @@ -1806,11 +1541,9 @@ Emacs manual; within Emacs, type "C-h i m calc RET" to read the | |||
| 1806 | manual. A reference card is available in `etc/calccard.tex' and | 1541 | manual. A reference card is available in `etc/calccard.tex' and |
| 1807 | `etc/calccard.ps'. | 1542 | `etc/calccard.ps'. |
| 1808 | 1543 | ||
| 1809 | --- | ||
| 1810 | ** The new package ibuffer provides a powerful, completely | 1544 | ** The new package ibuffer provides a powerful, completely |
| 1811 | customizable replacement for buff-menu.el. | 1545 | customizable replacement for buff-menu.el. |
| 1812 | 1546 | ||
| 1813 | --- | ||
| 1814 | ** Ido mode is now part of the Emacs distribution. | 1547 | ** Ido mode is now part of the Emacs distribution. |
| 1815 | 1548 | ||
| 1816 | The ido (interactively do) package is an extension of the iswitchb | 1549 | The ido (interactively do) package is an extension of the iswitchb |
| @@ -1818,11 +1551,9 @@ package to do interactive opening of files and directories in addition | |||
| 1818 | to interactive buffer switching. Ido is a superset of iswitchb (with | 1551 | to interactive buffer switching. Ido is a superset of iswitchb (with |
| 1819 | a few exceptions), so don't enable both packages. | 1552 | a few exceptions), so don't enable both packages. |
| 1820 | 1553 | ||
| 1821 | +++ | ||
| 1822 | ** Image files are normally visited in Image mode, which lets you toggle | 1554 | ** Image files are normally visited in Image mode, which lets you toggle |
| 1823 | between viewing the image and viewing the text using C-c C-c. | 1555 | between viewing the image and viewing the text using C-c C-c. |
| 1824 | 1556 | ||
| 1825 | --- | ||
| 1826 | ** CUA mode is now part of the Emacs distribution. | 1557 | ** CUA mode is now part of the Emacs distribution. |
| 1827 | 1558 | ||
| 1828 | The new cua package provides CUA-like keybindings using C-x for | 1559 | The new cua package provides CUA-like keybindings using C-x for |
| @@ -1871,7 +1602,6 @@ versions of cua.el and cua-mode.el. To ensure proper operation, you | |||
| 1871 | must remove older versions of cua.el or cua-mode.el as well as the | 1602 | must remove older versions of cua.el or cua-mode.el as well as the |
| 1872 | loading and customization of those packages from the .emacs file. | 1603 | loading and customization of those packages from the .emacs file. |
| 1873 | 1604 | ||
| 1874 | +++ | ||
| 1875 | ** Org mode is now part of the Emacs distribution | 1605 | ** Org mode is now part of the Emacs distribution |
| 1876 | 1606 | ||
| 1877 | Org mode is a mode for keeping notes, maintaining ToDo lists, and | 1607 | Org mode is a mode for keeping notes, maintaining ToDo lists, and |
| @@ -1886,11 +1616,9 @@ The documentation for org-mode is in a separate manual; within Emacs, | |||
| 1886 | type "C-h i m org RET" to read that manual. A reference card is | 1616 | type "C-h i m org RET" to read that manual. A reference card is |
| 1887 | available in `etc/orgcard.tex' and `etc/orgcard.ps'. | 1617 | available in `etc/orgcard.tex' and `etc/orgcard.ps'. |
| 1888 | 1618 | ||
| 1889 | +++ | ||
| 1890 | ** The new package dns-mode.el adds syntax highlighting of DNS master files. | 1619 | ** The new package dns-mode.el adds syntax highlighting of DNS master files. |
| 1891 | It is a modern replacement for zone-mode.el, which is now obsolete. | 1620 | It is a modern replacement for zone-mode.el, which is now obsolete. |
| 1892 | 1621 | ||
| 1893 | --- | ||
| 1894 | ** The new global minor mode `file-name-shadow-mode' modifies the way | 1622 | ** The new global minor mode `file-name-shadow-mode' modifies the way |
| 1895 | filenames being entered by the user in the minibuffer are displayed, so | 1623 | filenames being entered by the user in the minibuffer are displayed, so |
| 1896 | that it's clear when part of the entered filename will be ignored due to | 1624 | that it's clear when part of the entered filename will be ignored due to |
| @@ -1898,11 +1626,9 @@ Emacs' filename parsing rules. The ignored portion can be made dim, | |||
| 1898 | invisible, or otherwise less visually noticeable. The display method can | 1626 | invisible, or otherwise less visually noticeable. The display method can |
| 1899 | be displayed by customizing the variable `file-name-shadow-properties'. | 1627 | be displayed by customizing the variable `file-name-shadow-properties'. |
| 1900 | 1628 | ||
| 1901 | +++ | ||
| 1902 | ** The new package flymake.el does on-the-fly syntax checking of program | 1629 | ** The new package flymake.el does on-the-fly syntax checking of program |
| 1903 | source files. See the Flymake's Info manual for more details. | 1630 | source files. See the Flymake's Info manual for more details. |
| 1904 | 1631 | ||
| 1905 | +++ | ||
| 1906 | ** The new keypad setup package provides several common bindings for | 1632 | ** The new keypad setup package provides several common bindings for |
| 1907 | the numeric keypad which is available on most keyboards. The numeric | 1633 | the numeric keypad which is available on most keyboards. The numeric |
| 1908 | keypad typically has the digits 0 to 9, a decimal point, keys marked | 1634 | keypad typically has the digits 0 to 9, a decimal point, keys marked |
| @@ -1927,7 +1653,6 @@ where the keys work like (shifted) arrow keys, home/end, etc., and | |||
| 1927 | are left unspecified and can be bound individually through the global | 1653 | are left unspecified and can be bound individually through the global |
| 1928 | or local keymaps. | 1654 | or local keymaps. |
| 1929 | 1655 | ||
| 1930 | +++ | ||
| 1931 | ** Emacs' keyboard macro facilities have been enhanced by the new | 1656 | ** Emacs' keyboard macro facilities have been enhanced by the new |
| 1932 | kmacro package. | 1657 | kmacro package. |
| 1933 | 1658 | ||
| @@ -1961,16 +1686,13 @@ Keyboard macros can now be debugged and edited interactively. | |||
| 1961 | C-x C-k SPC steps through the last keyboard macro one key sequence | 1686 | C-x C-k SPC steps through the last keyboard macro one key sequence |
| 1962 | at a time, prompting for the actions to take. | 1687 | at a time, prompting for the actions to take. |
| 1963 | 1688 | ||
| 1964 | --- | ||
| 1965 | ** New minor mode, Visible mode, toggles invisibility in the current buffer. | 1689 | ** New minor mode, Visible mode, toggles invisibility in the current buffer. |
| 1966 | When enabled, it makes all invisible text visible. When disabled, it | 1690 | When enabled, it makes all invisible text visible. When disabled, it |
| 1967 | restores the previous value of `buffer-invisibility-spec'. | 1691 | restores the previous value of `buffer-invisibility-spec'. |
| 1968 | 1692 | ||
| 1969 | +++ | ||
| 1970 | ** The wdired.el package allows you to use normal editing commands on Dired | 1693 | ** The wdired.el package allows you to use normal editing commands on Dired |
| 1971 | buffers to change filenames, permissions, etc... | 1694 | buffers to change filenames, permissions, etc... |
| 1972 | 1695 | ||
| 1973 | +++ | ||
| 1974 | ** The new package longlines.el provides a minor mode for editing text | 1696 | ** The new package longlines.el provides a minor mode for editing text |
| 1975 | files composed of long lines, based on the `use-hard-newlines' | 1697 | files composed of long lines, based on the `use-hard-newlines' |
| 1976 | mechanism. The long lines are broken up by inserting soft newlines, | 1698 | mechanism. The long lines are broken up by inserting soft newlines, |
| @@ -1981,7 +1703,6 @@ referred to as "soft word wrap" in other text editors. This is | |||
| 1981 | similar to Refill mode, but more reliable. To turn the word wrap | 1703 | similar to Refill mode, but more reliable. To turn the word wrap |
| 1982 | feature off, set `longlines-auto-wrap' to nil. | 1704 | feature off, set `longlines-auto-wrap' to nil. |
| 1983 | 1705 | ||
| 1984 | +++ | ||
| 1985 | ** The printing package is now part of the Emacs distribution. | 1706 | ** The printing package is now part of the Emacs distribution. |
| 1986 | 1707 | ||
| 1987 | If you enable the printing package by including (require 'printing) in | 1708 | If you enable the printing package by including (require 'printing) in |
| @@ -1991,7 +1712,6 @@ ghostview, use ghostscript to print (if you don't have a PostScript | |||
| 1991 | printer) or send directly to printer a PostScript code generated by | 1712 | printer) or send directly to printer a PostScript code generated by |
| 1992 | `ps-print' package. Use M-x pr-help for more information. | 1713 | `ps-print' package. Use M-x pr-help for more information. |
| 1993 | 1714 | ||
| 1994 | --- | ||
| 1995 | ** The minor mode Reveal mode makes text visible on the fly as you | 1715 | ** The minor mode Reveal mode makes text visible on the fly as you |
| 1996 | move your cursor into hidden regions of the buffer. | 1716 | move your cursor into hidden regions of the buffer. |
| 1997 | It should work with any package that uses overlays to hide parts | 1717 | It should work with any package that uses overlays to hide parts |
| @@ -1999,23 +1719,19 @@ of a buffer, such as outline-minor-mode, hs-minor-mode, hide-ifdef-mode, ... | |||
| 1999 | 1719 | ||
| 2000 | There is also Global Reveal mode which affects all buffers. | 1720 | There is also Global Reveal mode which affects all buffers. |
| 2001 | 1721 | ||
| 2002 | --- | ||
| 2003 | ** The ruler-mode.el library provides a minor mode for displaying an | 1722 | ** The ruler-mode.el library provides a minor mode for displaying an |
| 2004 | "active" ruler in the header line. You can use the mouse to visually | 1723 | "active" ruler in the header line. You can use the mouse to visually |
| 2005 | change the `fill-column', `window-margins' and `tab-stop-list' | 1724 | change the `fill-column', `window-margins' and `tab-stop-list' |
| 2006 | settings. | 1725 | settings. |
| 2007 | 1726 | ||
| 2008 | +++ | ||
| 2009 | ** SES mode (ses-mode) is a new major mode for creating and editing | 1727 | ** SES mode (ses-mode) is a new major mode for creating and editing |
| 2010 | spreadsheet files. Besides the usual Emacs features (intuitive command | 1728 | spreadsheet files. Besides the usual Emacs features (intuitive command |
| 2011 | letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers | 1729 | letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers |
| 2012 | viral immunity and import/export of tab-separated values. | 1730 | viral immunity and import/export of tab-separated values. |
| 2013 | 1731 | ||
| 2014 | +++ | ||
| 2015 | ** The new global minor mode `size-indication-mode' (off by default) | 1732 | ** The new global minor mode `size-indication-mode' (off by default) |
| 2016 | shows the size of accessible part of the buffer on the mode line. | 1733 | shows the size of accessible part of the buffer on the mode line. |
| 2017 | 1734 | ||
| 2018 | +++ | ||
| 2019 | ** The new package table.el implements editable, WYSIWYG, embedded | 1735 | ** The new package table.el implements editable, WYSIWYG, embedded |
| 2020 | `text tables' in Emacs buffers. It simulates the effect of putting | 1736 | `text tables' in Emacs buffers. It simulates the effect of putting |
| 2021 | these tables in a special major mode. The package emulates WYSIWYG | 1737 | these tables in a special major mode. The package emulates WYSIWYG |
| @@ -2023,12 +1739,10 @@ table editing available in modern word processors. The package also | |||
| 2023 | can generate a table source in typesetting and markup languages such | 1739 | can generate a table source in typesetting and markup languages such |
| 2024 | as latex and html from the visually laid out text table. | 1740 | as latex and html from the visually laid out text table. |
| 2025 | 1741 | ||
| 2026 | +++ | ||
| 2027 | ** The tumme.el package allows you to easily view, tag and in other ways | 1742 | ** The tumme.el package allows you to easily view, tag and in other ways |
| 2028 | manipulate image files and their thumbnails, using dired as the main interface. | 1743 | manipulate image files and their thumbnails, using dired as the main interface. |
| 2029 | Tumme provides functionality to generate simple image galleries. | 1744 | Tumme provides functionality to generate simple image galleries. |
| 2030 | 1745 | ||
| 2031 | +++ | ||
| 2032 | ** Tramp is now part of the distribution. | 1746 | ** Tramp is now part of the distribution. |
| 2033 | 1747 | ||
| 2034 | This package is similar to Ange-FTP: it allows you to edit remote | 1748 | This package is similar to Ange-FTP: it allows you to edit remote |
| @@ -2051,14 +1765,11 @@ If you want to disable Tramp you should set | |||
| 2051 | Removing Tramp, and re-enabling Ange-FTP, can be achieved by M-x | 1765 | Removing Tramp, and re-enabling Ange-FTP, can be achieved by M-x |
| 2052 | tramp-unload-tramp. | 1766 | tramp-unload-tramp. |
| 2053 | 1767 | ||
| 2054 | --- | ||
| 2055 | ** The URL package (which had been part of W3) is now part of Emacs. | 1768 | ** The URL package (which had been part of W3) is now part of Emacs. |
| 2056 | 1769 | ||
| 2057 | --- | ||
| 2058 | ** `cfengine-mode' is a major mode for editing GNU Cfengine | 1770 | ** `cfengine-mode' is a major mode for editing GNU Cfengine |
| 2059 | configuration files. | 1771 | configuration files. |
| 2060 | 1772 | ||
| 2061 | +++ | ||
| 2062 | ** The new package conf-mode.el handles thousands of configuration files, with | 1773 | ** The new package conf-mode.el handles thousands of configuration files, with |
| 2063 | varying syntaxes for comments (;, #, //, /* */ or !), assignment (var = value, | 1774 | varying syntaxes for comments (;, #, //, /* */ or !), assignment (var = value, |
| 2064 | var : value, var value or keyword var value) and sections ([section] or | 1775 | var : value, var value or keyword var value) and sections ([section] or |
| @@ -2066,24 +1777,19 @@ section { }). Many files under /etc/, or with suffixes like .cf through | |||
| 2066 | .config, .properties (Java), .desktop (KDE/Gnome), .ini and many others are | 1777 | .config, .properties (Java), .desktop (KDE/Gnome), .ini and many others are |
| 2067 | recognized. | 1778 | recognized. |
| 2068 | 1779 | ||
| 2069 | --- | ||
| 2070 | ** GDB-Script-mode is used for files like .gdbinit. | 1780 | ** GDB-Script-mode is used for files like .gdbinit. |
| 2071 | 1781 | ||
| 2072 | +++ | ||
| 2073 | ** The new python.el package is used to edit Python and Jython programs. | 1782 | ** The new python.el package is used to edit Python and Jython programs. |
| 2074 | 1783 | ||
| 2075 | --- | ||
| 2076 | ** The TCL package tcl-mode.el was replaced by tcl.el. | 1784 | ** The TCL package tcl-mode.el was replaced by tcl.el. |
| 2077 | This was actually done in Emacs-21.1, and was not documented. | 1785 | This was actually done in Emacs-21.1, and was not documented. |
| 2078 | 1786 | ||
| 2079 | --- | ||
| 2080 | ** The new package scroll-lock.el provides the Scroll Lock minor mode | 1787 | ** The new package scroll-lock.el provides the Scroll Lock minor mode |
| 2081 | for pager-like scrolling. Keys which normally move point by line or | 1788 | for pager-like scrolling. Keys which normally move point by line or |
| 2082 | paragraph will scroll the buffer by the respective amount of lines | 1789 | paragraph will scroll the buffer by the respective amount of lines |
| 2083 | instead and point will be kept vertically fixed relative to window | 1790 | instead and point will be kept vertically fixed relative to window |
| 2084 | boundaries during scrolling. | 1791 | boundaries during scrolling. |
| 2085 | 1792 | ||
| 2086 | +++ | ||
| 2087 | ** The file t-mouse.el is now part of Emacs and provides access to mouse | 1793 | ** The file t-mouse.el is now part of Emacs and provides access to mouse |
| 2088 | events from the console. It still requires gpm to work but has been updated | 1794 | events from the console. It still requires gpm to work but has been updated |
| 2089 | for Emacs 22. In particular, the mode-line is now position sensitive. | 1795 | for Emacs 22. In particular, the mode-line is now position sensitive. |
| @@ -2092,14 +1798,12 @@ for Emacs 22. In particular, the mode-line is now position sensitive. | |||
| 2092 | 1798 | ||
| 2093 | ** Changes in Shell Mode | 1799 | ** Changes in Shell Mode |
| 2094 | 1800 | ||
| 2095 | --- | ||
| 2096 | *** Shell output normally scrolls so that the input line is at the | 1801 | *** Shell output normally scrolls so that the input line is at the |
| 2097 | bottom of the window -- thus showing the maximum possible text. (This | 1802 | bottom of the window -- thus showing the maximum possible text. (This |
| 2098 | is similar to the way sequential output to a terminal works.) | 1803 | is similar to the way sequential output to a terminal works.) |
| 2099 | 1804 | ||
| 2100 | ** Changes in Dired | 1805 | ** Changes in Dired |
| 2101 | 1806 | ||
| 2102 | +++ | ||
| 2103 | *** Bindings for Tumme added | 1807 | *** Bindings for Tumme added |
| 2104 | Several new keybindings, all starting with the C-t prefix, have been | 1808 | Several new keybindings, all starting with the C-t prefix, have been |
| 2105 | added to Dired. They are all bound to commands in Tumme. As a starting | 1809 | added to Dired. They are all bound to commands in Tumme. As a starting |
| @@ -2108,7 +1812,6 @@ thumbnails of them in a separate buffer. | |||
| 2108 | 1812 | ||
| 2109 | ** Changes in Hi Lock | 1813 | ** Changes in Hi Lock |
| 2110 | 1814 | ||
| 2111 | +++ | ||
| 2112 | *** hi-lock-mode now only affects a single buffer, and a new function | 1815 | *** hi-lock-mode now only affects a single buffer, and a new function |
| 2113 | `global-hi-lock-mode' enables Hi Lock in all buffers. By default, if | 1816 | `global-hi-lock-mode' enables Hi Lock in all buffers. By default, if |
| 2114 | hi-lock-mode is used in what appears to be the initialization file, a | 1817 | hi-lock-mode is used in what appears to be the initialization file, a |
| @@ -2118,7 +1821,6 @@ using hi-lock-mode in an initialization file will turn on Hi Lock in all | |||
| 2118 | buffers and no warning will be issued (for compatibility with the | 1821 | buffers and no warning will be issued (for compatibility with the |
| 2119 | behavior in older versions of Emacs). | 1822 | behavior in older versions of Emacs). |
| 2120 | 1823 | ||
| 2121 | --- | ||
| 2122 | ** Changes in Allout | 1824 | ** Changes in Allout |
| 2123 | 1825 | ||
| 2124 | *** Some previously rough topic-header format edge cases are reconciled. | 1826 | *** Some previously rough topic-header format edge cases are reconciled. |
| @@ -2217,14 +1919,12 @@ handling of edits of concealed text, undo concerns, etc. | |||
| 2217 | - many, many other, more minor tweaks, fixes, and refinements. | 1919 | - many, many other, more minor tweaks, fixes, and refinements. |
| 2218 | - version number incremented to 2.2 | 1920 | - version number incremented to 2.2 |
| 2219 | 1921 | ||
| 2220 | +++ | ||
| 2221 | ** The variable `woman-topic-at-point' is renamed | 1922 | ** The variable `woman-topic-at-point' is renamed |
| 2222 | to `woman-use-topic-at-point' and behaves differently: if this | 1923 | to `woman-use-topic-at-point' and behaves differently: if this |
| 2223 | variable is non-nil, the `woman' command uses the word at point | 1924 | variable is non-nil, the `woman' command uses the word at point |
| 2224 | automatically, without asking for a confirmation. Otherwise, the word | 1925 | automatically, without asking for a confirmation. Otherwise, the word |
| 2225 | at point is suggested as default, but not inserted at the prompt. | 1926 | at point is suggested as default, but not inserted at the prompt. |
| 2226 | 1927 | ||
| 2227 | --- | ||
| 2228 | ** Changes to cmuscheme | 1928 | ** Changes to cmuscheme |
| 2229 | 1929 | ||
| 2230 | *** Emacs now offers to start Scheme if the user tries to | 1930 | *** Emacs now offers to start Scheme if the user tries to |
| @@ -2240,7 +1940,6 @@ procedure calls (`scheme-trace-procedure') and to expand syntactic forms | |||
| 2240 | subprocess are controlled by the user options `scheme-trace-command', | 1940 | subprocess are controlled by the user options `scheme-trace-command', |
| 2241 | `scheme-untrace-command' and `scheme-expand-current-form'. | 1941 | `scheme-untrace-command' and `scheme-expand-current-form'. |
| 2242 | 1942 | ||
| 2243 | --- | ||
| 2244 | ** Changes in Makefile mode | 1943 | ** Changes in Makefile mode |
| 2245 | 1944 | ||
| 2246 | *** Makefile mode has submodes for automake, gmake, makepp, BSD make and imake. | 1945 | *** Makefile mode has submodes for automake, gmake, makepp, BSD make and imake. |
| @@ -2253,21 +1952,16 @@ faces. | |||
| 2253 | to `makefile-query-one-target-method-function'. The old name is still | 1952 | to `makefile-query-one-target-method-function'. The old name is still |
| 2254 | available as alias. | 1953 | available as alias. |
| 2255 | 1954 | ||
| 2256 | +++ | ||
| 2257 | ** In Outline mode, `hide-body' no longer hides lines at the top | 1955 | ** In Outline mode, `hide-body' no longer hides lines at the top |
| 2258 | of the file that precede the first header line. | 1956 | of the file that precede the first header line. |
| 2259 | 1957 | ||
| 2260 | +++ | ||
| 2261 | ** Telnet now prompts you for a port number with C-u M-x telnet. | 1958 | ** Telnet now prompts you for a port number with C-u M-x telnet. |
| 2262 | 1959 | ||
| 2263 | --- | ||
| 2264 | ** The terminal emulation code in term.el has been improved; it can | 1960 | ** The terminal emulation code in term.el has been improved; it can |
| 2265 | run most curses applications now. | 1961 | run most curses applications now. |
| 2266 | 1962 | ||
| 2267 | +++ | ||
| 2268 | ** M-x diff uses Diff mode instead of Compilation mode. | 1963 | ** M-x diff uses Diff mode instead of Compilation mode. |
| 2269 | 1964 | ||
| 2270 | +++ | ||
| 2271 | ** Diff mode key bindings changed. | 1965 | ** Diff mode key bindings changed. |
| 2272 | 1966 | ||
| 2273 | These are the new bindings: | 1967 | These are the new bindings: |
| @@ -2282,7 +1976,6 @@ To convert unified to context format, use C-u C-c C-u. | |||
| 2282 | In addition, C-c C-u now operates on the region | 1976 | In addition, C-c C-u now operates on the region |
| 2283 | in Transient Mark mode when the mark is active. | 1977 | in Transient Mark mode when the mark is active. |
| 2284 | 1978 | ||
| 2285 | +++ | ||
| 2286 | ** You can now customize `fill-nobreak-predicate' to control where | 1979 | ** You can now customize `fill-nobreak-predicate' to control where |
| 2287 | filling can break lines. The value is now normally a list of | 1980 | filling can break lines. The value is now normally a list of |
| 2288 | functions, but it can also be a single function, for compatibility. | 1981 | functions, but it can also be a single function, for compatibility. |
| @@ -2291,39 +1984,31 @@ Emacs provide two predicates, `fill-single-word-nobreak-p' and | |||
| 2291 | `fill-french-nobreak-p', for use as the value of | 1984 | `fill-french-nobreak-p', for use as the value of |
| 2292 | `fill-nobreak-predicate'. | 1985 | `fill-nobreak-predicate'. |
| 2293 | 1986 | ||
| 2294 | --- | ||
| 2295 | ** M-x view-file and commands that use it now avoid interfering | 1987 | ** M-x view-file and commands that use it now avoid interfering |
| 2296 | with special modes such as Tar mode. | 1988 | with special modes such as Tar mode. |
| 2297 | 1989 | ||
| 2298 | --- | ||
| 2299 | ** Commands `winner-redo' and `winner-undo', from winner.el, are now | 1990 | ** Commands `winner-redo' and `winner-undo', from winner.el, are now |
| 2300 | bound to C-c <left> and C-c <right>, respectively. This is an | 1991 | bound to C-c <left> and C-c <right>, respectively. This is an |
| 2301 | incompatible change. | 1992 | incompatible change. |
| 2302 | 1993 | ||
| 2303 | --- | ||
| 2304 | ** `global-whitespace-mode' is a new alias for `whitespace-global-mode'. | 1994 | ** `global-whitespace-mode' is a new alias for `whitespace-global-mode'. |
| 2305 | 1995 | ||
| 2306 | +++ | ||
| 2307 | ** M-x compare-windows now can automatically skip non-matching text to | 1996 | ** M-x compare-windows now can automatically skip non-matching text to |
| 2308 | resync points in both windows. | 1997 | resync points in both windows. |
| 2309 | 1998 | ||
| 2310 | +++ | ||
| 2311 | ** New user option `add-log-always-start-new-record'. | 1999 | ** New user option `add-log-always-start-new-record'. |
| 2312 | 2000 | ||
| 2313 | When this option is enabled, M-x add-change-log-entry always | 2001 | When this option is enabled, M-x add-change-log-entry always |
| 2314 | starts a new record regardless of when the last record is. | 2002 | starts a new record regardless of when the last record is. |
| 2315 | 2003 | ||
| 2316 | --- | ||
| 2317 | ** PO translation files are decoded according to their MIME headers | 2004 | ** PO translation files are decoded according to their MIME headers |
| 2318 | when Emacs visits them. | 2005 | when Emacs visits them. |
| 2319 | 2006 | ||
| 2320 | ** Info mode changes: | 2007 | ** Info mode changes: |
| 2321 | 2008 | ||
| 2322 | +++ | ||
| 2323 | *** A numeric prefix argument of `info' selects an Info buffer | 2009 | *** A numeric prefix argument of `info' selects an Info buffer |
| 2324 | with the number appended to the `*info*' buffer name (e.g. "*info*<2>"). | 2010 | with the number appended to the `*info*' buffer name (e.g. "*info*<2>"). |
| 2325 | 2011 | ||
| 2326 | +++ | ||
| 2327 | *** isearch in Info uses Info-search and searches through multiple nodes. | 2012 | *** isearch in Info uses Info-search and searches through multiple nodes. |
| 2328 | 2013 | ||
| 2329 | Before leaving the initial Info node isearch fails once with the error | 2014 | Before leaving the initial Info node isearch fails once with the error |
| @@ -2334,82 +2019,65 @@ around the whole manual to the top/final node. The user option | |||
| 2334 | or the default isearch search function that wraps around the current | 2019 | or the default isearch search function that wraps around the current |
| 2335 | Info node. | 2020 | Info node. |
| 2336 | 2021 | ||
| 2337 | --- | ||
| 2338 | *** New search commands: `Info-search-case-sensitively' (bound to S), | 2022 | *** New search commands: `Info-search-case-sensitively' (bound to S), |
| 2339 | `Info-search-backward', and `Info-search-next' which repeats the last | 2023 | `Info-search-backward', and `Info-search-next' which repeats the last |
| 2340 | search without prompting for a new search string. | 2024 | search without prompting for a new search string. |
| 2341 | 2025 | ||
| 2342 | +++ | ||
| 2343 | *** New command `Info-history-forward' (bound to r and new toolbar icon) | 2026 | *** New command `Info-history-forward' (bound to r and new toolbar icon) |
| 2344 | moves forward in history to the node you returned from after using | 2027 | moves forward in history to the node you returned from after using |
| 2345 | `Info-history-back' (renamed from `Info-last'). | 2028 | `Info-history-back' (renamed from `Info-last'). |
| 2346 | 2029 | ||
| 2347 | --- | ||
| 2348 | *** New command `Info-history' (bound to L) displays a menu of visited nodes. | 2030 | *** New command `Info-history' (bound to L) displays a menu of visited nodes. |
| 2349 | 2031 | ||
| 2350 | --- | ||
| 2351 | *** New command `Info-toc' (bound to T) creates a node with table of contents | 2032 | *** New command `Info-toc' (bound to T) creates a node with table of contents |
| 2352 | from the tree structure of menus of the current Info file. | 2033 | from the tree structure of menus of the current Info file. |
| 2353 | 2034 | ||
| 2354 | +++ | ||
| 2355 | *** New command `info-apropos' searches the indices of the known | 2035 | *** New command `info-apropos' searches the indices of the known |
| 2356 | Info files on your system for a string, and builds a menu of the | 2036 | Info files on your system for a string, and builds a menu of the |
| 2357 | possible matches. | 2037 | possible matches. |
| 2358 | 2038 | ||
| 2359 | --- | ||
| 2360 | *** New command `Info-copy-current-node-name' (bound to w) copies | 2039 | *** New command `Info-copy-current-node-name' (bound to w) copies |
| 2361 | the current Info node name into the kill ring. With a zero prefix | 2040 | the current Info node name into the kill ring. With a zero prefix |
| 2362 | arg, puts the node name inside the `info' function call. | 2041 | arg, puts the node name inside the `info' function call. |
| 2363 | 2042 | ||
| 2364 | +++ | ||
| 2365 | *** New face `info-xref-visited' distinguishes visited nodes from unvisited | 2043 | *** New face `info-xref-visited' distinguishes visited nodes from unvisited |
| 2366 | and a new option `Info-fontify-visited-nodes' to control this. | 2044 | and a new option `Info-fontify-visited-nodes' to control this. |
| 2367 | 2045 | ||
| 2368 | --- | ||
| 2369 | *** http and ftp links in Info are now operational: they look like cross | 2046 | *** http and ftp links in Info are now operational: they look like cross |
| 2370 | references and following them calls `browse-url'. | 2047 | references and following them calls `browse-url'. |
| 2371 | 2048 | ||
| 2372 | +++ | ||
| 2373 | *** Info now hides node names in menus and cross references by default. | 2049 | *** Info now hides node names in menus and cross references by default. |
| 2374 | 2050 | ||
| 2375 | If you prefer the old behavior, you can set the new user option | 2051 | If you prefer the old behavior, you can set the new user option |
| 2376 | `Info-hide-note-references' to nil. | 2052 | `Info-hide-note-references' to nil. |
| 2377 | 2053 | ||
| 2378 | --- | ||
| 2379 | *** Images in Info pages are supported. | 2054 | *** Images in Info pages are supported. |
| 2380 | 2055 | ||
| 2381 | Info pages show embedded images, in Emacs frames with image support. | 2056 | Info pages show embedded images, in Emacs frames with image support. |
| 2382 | Info documentation that includes images, processed with makeinfo | 2057 | Info documentation that includes images, processed with makeinfo |
| 2383 | version 4.7 or newer, compiles to Info pages with embedded images. | 2058 | version 4.7 or newer, compiles to Info pages with embedded images. |
| 2384 | 2059 | ||
| 2385 | +++ | ||
| 2386 | *** The default value for `Info-scroll-prefer-subnodes' is now nil. | 2060 | *** The default value for `Info-scroll-prefer-subnodes' is now nil. |
| 2387 | 2061 | ||
| 2388 | --- | ||
| 2389 | *** `Info-index' offers completion. | 2062 | *** `Info-index' offers completion. |
| 2390 | 2063 | ||
| 2391 | ** Lisp mode changes: | 2064 | ** Lisp mode changes: |
| 2392 | 2065 | ||
| 2393 | --- | ||
| 2394 | *** Lisp mode now uses `font-lock-doc-face' for doc strings. | 2066 | *** Lisp mode now uses `font-lock-doc-face' for doc strings. |
| 2395 | 2067 | ||
| 2396 | +++ | ||
| 2397 | *** C-u C-M-q in Emacs Lisp mode pretty-prints the list after point. | 2068 | *** C-u C-M-q in Emacs Lisp mode pretty-prints the list after point. |
| 2398 | 2069 | ||
| 2399 | *** New features in evaluation commands | 2070 | *** New features in evaluation commands |
| 2400 | 2071 | ||
| 2401 | +++ | ||
| 2402 | **** The function `eval-defun' (C-M-x) called on defface reinitializes | 2072 | **** The function `eval-defun' (C-M-x) called on defface reinitializes |
| 2403 | the face to the value specified in the defface expression. | 2073 | the face to the value specified in the defface expression. |
| 2404 | 2074 | ||
| 2405 | +++ | ||
| 2406 | **** Typing C-x C-e twice prints the value of the integer result | 2075 | **** Typing C-x C-e twice prints the value of the integer result |
| 2407 | in additional formats (octal, hexadecimal, character) specified | 2076 | in additional formats (octal, hexadecimal, character) specified |
| 2408 | by the new function `eval-expression-print-format'. The same | 2077 | by the new function `eval-expression-print-format'. The same |
| 2409 | function also defines the result format for `eval-expression' (M-:), | 2078 | function also defines the result format for `eval-expression' (M-:), |
| 2410 | `eval-print-last-sexp' (C-j) and some edebug evaluation functions. | 2079 | `eval-print-last-sexp' (C-j) and some edebug evaluation functions. |
| 2411 | 2080 | ||
| 2412 | +++ | ||
| 2413 | ** CC mode changes. | 2081 | ** CC mode changes. |
| 2414 | 2082 | ||
| 2415 | *** The CC Mode manual has been extensively revised. | 2083 | *** The CC Mode manual has been extensively revised. |
| @@ -2737,14 +2405,11 @@ line is left untouched. | |||
| 2737 | The function `c-toggle-syntactic-indentation' can be used to toggle | 2405 | The function `c-toggle-syntactic-indentation' can be used to toggle |
| 2738 | syntactic indentation. | 2406 | syntactic indentation. |
| 2739 | 2407 | ||
| 2740 | --- | ||
| 2741 | ** In sh-script, a continuation line is only indented if the backslash was | 2408 | ** In sh-script, a continuation line is only indented if the backslash was |
| 2742 | preceded by a SPC or a TAB. | 2409 | preceded by a SPC or a TAB. |
| 2743 | 2410 | ||
| 2744 | --- | ||
| 2745 | ** Perl mode has a new variable `perl-indent-continued-arguments'. | 2411 | ** Perl mode has a new variable `perl-indent-continued-arguments'. |
| 2746 | 2412 | ||
| 2747 | --- | ||
| 2748 | ** The old Octave mode bindings C-c f and C-c i have been changed | 2413 | ** The old Octave mode bindings C-c f and C-c i have been changed |
| 2749 | to C-c C-f and C-c C-i. The C-c C-i subcommands now have duplicate | 2414 | to C-c C-f and C-c C-i. The C-c C-i subcommands now have duplicate |
| 2750 | bindings on control characters--thus, C-c C-i C-b is the same as | 2415 | bindings on control characters--thus, C-c C-i C-b is the same as |
| @@ -2752,34 +2417,27 @@ C-c C-i b, and so on. | |||
| 2752 | 2417 | ||
| 2753 | ** Fortran mode changes: | 2418 | ** Fortran mode changes: |
| 2754 | 2419 | ||
| 2755 | --- | ||
| 2756 | *** Fortran mode does more font-locking by default. Use level 3 | 2420 | *** Fortran mode does more font-locking by default. Use level 3 |
| 2757 | highlighting for the old default. | 2421 | highlighting for the old default. |
| 2758 | 2422 | ||
| 2759 | +++ | ||
| 2760 | *** Fortran mode has a new variable `fortran-directive-re'. | 2423 | *** Fortran mode has a new variable `fortran-directive-re'. |
| 2761 | Adapt this to match the format of any compiler directives you use. | 2424 | Adapt this to match the format of any compiler directives you use. |
| 2762 | Lines that match are never indented, and are given distinctive font-locking. | 2425 | Lines that match are never indented, and are given distinctive font-locking. |
| 2763 | 2426 | ||
| 2764 | +++ | ||
| 2765 | *** F90 mode and Fortran mode have new navigation commands | 2427 | *** F90 mode and Fortran mode have new navigation commands |
| 2766 | `f90-end-of-block', `f90-beginning-of-block', `f90-next-block', | 2428 | `f90-end-of-block', `f90-beginning-of-block', `f90-next-block', |
| 2767 | `f90-previous-block', `fortran-end-of-block', | 2429 | `f90-previous-block', `fortran-end-of-block', |
| 2768 | `fortran-beginning-of-block'. | 2430 | `fortran-beginning-of-block'. |
| 2769 | 2431 | ||
| 2770 | --- | ||
| 2771 | *** F90 mode and Fortran mode have support for `hs-minor-mode' (hideshow). | 2432 | *** F90 mode and Fortran mode have support for `hs-minor-mode' (hideshow). |
| 2772 | It cannot deal with every code format, but ought to handle a sizeable | 2433 | It cannot deal with every code format, but ought to handle a sizeable |
| 2773 | majority. | 2434 | majority. |
| 2774 | 2435 | ||
| 2775 | --- | ||
| 2776 | *** The new function `f90-backslash-not-special' can be used to change | 2436 | *** The new function `f90-backslash-not-special' can be used to change |
| 2777 | the syntax of backslashes in F90 buffers. | 2437 | the syntax of backslashes in F90 buffers. |
| 2778 | 2438 | ||
| 2779 | --- | ||
| 2780 | ** Reftex mode changes | 2439 | ** Reftex mode changes |
| 2781 | 2440 | ||
| 2782 | +++ | ||
| 2783 | *** Changes to RefTeX's table of contents | 2441 | *** Changes to RefTeX's table of contents |
| 2784 | 2442 | ||
| 2785 | The new command keys "<" and ">" in the TOC buffer promote/demote the | 2443 | The new command keys "<" and ">" in the TOC buffer promote/demote the |
| @@ -2804,7 +2462,6 @@ key `M-%'. | |||
| 2804 | The new command `reftex-goto-label' jumps directly to a label | 2462 | The new command `reftex-goto-label' jumps directly to a label |
| 2805 | location. | 2463 | location. |
| 2806 | 2464 | ||
| 2807 | +++ | ||
| 2808 | *** Changes related to citations and BibTeX database files | 2465 | *** Changes related to citations and BibTeX database files |
| 2809 | 2466 | ||
| 2810 | Commands that insert a citation now prompt for optional arguments when | 2467 | Commands that insert a citation now prompt for optional arguments when |
| @@ -2827,13 +2484,11 @@ can be configured with the new option `reftex-bibliography-commands'. | |||
| 2827 | 2484 | ||
| 2828 | Support for jurabib has been added. | 2485 | Support for jurabib has been added. |
| 2829 | 2486 | ||
| 2830 | +++ | ||
| 2831 | *** Global index matched may be verified with a user function | 2487 | *** Global index matched may be verified with a user function |
| 2832 | 2488 | ||
| 2833 | During global indexing, a user function can verify an index match. | 2489 | During global indexing, a user function can verify an index match. |
| 2834 | See new option `reftex-index-verify-function'. | 2490 | See new option `reftex-index-verify-function'. |
| 2835 | 2491 | ||
| 2836 | +++ | ||
| 2837 | *** Parsing documents with many labels can be sped up. | 2492 | *** Parsing documents with many labels can be sped up. |
| 2838 | 2493 | ||
| 2839 | Operating in a document with thousands of labels can be sped up | 2494 | Operating in a document with thousands of labels can be sped up |
| @@ -2843,7 +2498,6 @@ from the label prefix like `eq:' or `fig:'. The option | |||
| 2843 | this feature. While the speed-up is significant, this may reduce the | 2498 | this feature. While the speed-up is significant, this may reduce the |
| 2844 | quality of the context offered by RefTeX to describe a label. | 2499 | quality of the context offered by RefTeX to describe a label. |
| 2845 | 2500 | ||
| 2846 | +++ | ||
| 2847 | *** Miscellaneous changes | 2501 | *** Miscellaneous changes |
| 2848 | 2502 | ||
| 2849 | The macros which input a file in LaTeX (like \input, \include) can be | 2503 | The macros which input a file in LaTeX (like \input, \include) can be |
| @@ -2851,17 +2505,14 @@ configured in the new option `reftex-include-file-commands'. | |||
| 2851 | 2505 | ||
| 2852 | RefTeX supports global incremental search. | 2506 | RefTeX supports global incremental search. |
| 2853 | 2507 | ||
| 2854 | +++ | ||
| 2855 | ** Prolog mode has a new variable `prolog-font-lock-keywords' | 2508 | ** Prolog mode has a new variable `prolog-font-lock-keywords' |
| 2856 | to support use of font-lock. | 2509 | to support use of font-lock. |
| 2857 | 2510 | ||
| 2858 | ** HTML/SGML changes: | 2511 | ** HTML/SGML changes: |
| 2859 | 2512 | ||
| 2860 | --- | ||
| 2861 | *** Emacs now tries to set up buffer coding systems for HTML/XML files | 2513 | *** Emacs now tries to set up buffer coding systems for HTML/XML files |
| 2862 | automatically. | 2514 | automatically. |
| 2863 | 2515 | ||
| 2864 | +++ | ||
| 2865 | *** SGML mode has indentation and supports XML syntax. | 2516 | *** SGML mode has indentation and supports XML syntax. |
| 2866 | The new variable `sgml-xml-mode' tells SGML mode to use XML syntax. | 2517 | The new variable `sgml-xml-mode' tells SGML mode to use XML syntax. |
| 2867 | When this option is enabled, SGML tags are inserted in XML style, | 2518 | When this option is enabled, SGML tags are inserted in XML style, |
| @@ -2869,33 +2520,26 @@ i.e., there is always a closing tag. | |||
| 2869 | By default, its setting is inferred on a buffer-by-buffer basis | 2520 | By default, its setting is inferred on a buffer-by-buffer basis |
| 2870 | from the file name or buffer contents. | 2521 | from the file name or buffer contents. |
| 2871 | 2522 | ||
| 2872 | --- | ||
| 2873 | *** The variable `sgml-transformation' has been renamed to | 2523 | *** The variable `sgml-transformation' has been renamed to |
| 2874 | `sgml-transformation-function'. The old name is still available as | 2524 | `sgml-transformation-function'. The old name is still available as |
| 2875 | alias. | 2525 | alias. |
| 2876 | 2526 | ||
| 2877 | +++ | ||
| 2878 | *** `xml-mode' is now an alias for `sgml-mode', which has XML support. | 2527 | *** `xml-mode' is now an alias for `sgml-mode', which has XML support. |
| 2879 | 2528 | ||
| 2880 | ** TeX modes: | 2529 | ** TeX modes: |
| 2881 | 2530 | ||
| 2882 | +++ | ||
| 2883 | *** C-c C-c prompts for a command to run, and tries to offer a good default. | 2531 | *** C-c C-c prompts for a command to run, and tries to offer a good default. |
| 2884 | 2532 | ||
| 2885 | +++ | ||
| 2886 | *** The user option `tex-start-options-string' has been replaced | 2533 | *** The user option `tex-start-options-string' has been replaced |
| 2887 | by two new user options: `tex-start-options', which should hold | 2534 | by two new user options: `tex-start-options', which should hold |
| 2888 | command-line options to feed to TeX, and `tex-start-commands' which should hold | 2535 | command-line options to feed to TeX, and `tex-start-commands' which should hold |
| 2889 | TeX commands to use at startup. | 2536 | TeX commands to use at startup. |
| 2890 | 2537 | ||
| 2891 | --- | ||
| 2892 | *** verbatim environments are now highlighted in courier by font-lock | 2538 | *** verbatim environments are now highlighted in courier by font-lock |
| 2893 | and super/sub-scripts are made into super/sub-scripts. | 2539 | and super/sub-scripts are made into super/sub-scripts. |
| 2894 | 2540 | ||
| 2895 | +++ | ||
| 2896 | *** New major mode Doctex mode, for *.dtx files. | 2541 | *** New major mode Doctex mode, for *.dtx files. |
| 2897 | 2542 | ||
| 2898 | --- | ||
| 2899 | ** BibTeX mode: | 2543 | ** BibTeX mode: |
| 2900 | 2544 | ||
| 2901 | *** The new command `bibtex-url' browses a URL for the BibTeX entry at | 2545 | *** The new command `bibtex-url' browses a URL for the BibTeX entry at |
| @@ -2952,27 +2596,22 @@ extracting the content of a BibTeX field. | |||
| 2952 | `bibtex-autokey-titleword-case-convert-function'. The old names are | 2596 | `bibtex-autokey-titleword-case-convert-function'. The old names are |
| 2953 | still available as aliases. | 2597 | still available as aliases. |
| 2954 | 2598 | ||
| 2955 | +++ | ||
| 2956 | ** In Artist mode the variable `artist-text-renderer' has been | 2599 | ** In Artist mode the variable `artist-text-renderer' has been |
| 2957 | renamed to `artist-text-renderer-function'. The old name is still | 2600 | renamed to `artist-text-renderer-function'. The old name is still |
| 2958 | available as alias. | 2601 | available as alias. |
| 2959 | 2602 | ||
| 2960 | +++ | ||
| 2961 | ** In Enriched mode, `set-left-margin' and `set-right-margin' are now | 2603 | ** In Enriched mode, `set-left-margin' and `set-right-margin' are now |
| 2962 | by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l' | 2604 | by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l' |
| 2963 | and `C-c C-r'. | 2605 | and `C-c C-r'. |
| 2964 | 2606 | ||
| 2965 | ** GUD changes: | 2607 | ** GUD changes: |
| 2966 | 2608 | ||
| 2967 | +++ | ||
| 2968 | *** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program | 2609 | *** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program |
| 2969 | counter to the specified source line (the one where point is). | 2610 | counter to the specified source line (the one where point is). |
| 2970 | 2611 | ||
| 2971 | --- | ||
| 2972 | *** GUD mode has its own tool bar for controlling execution of the inferior | 2612 | *** GUD mode has its own tool bar for controlling execution of the inferior |
| 2973 | and other common debugger commands. | 2613 | and other common debugger commands. |
| 2974 | 2614 | ||
| 2975 | +++ | ||
| 2976 | *** The new package gdb-ui.el provides an enhanced graphical interface to | 2615 | *** The new package gdb-ui.el provides an enhanced graphical interface to |
| 2977 | GDB. You can interact with GDB through the GUD buffer in the usual way, but | 2616 | GDB. You can interact with GDB through the GUD buffer in the usual way, but |
| 2978 | there are also further buffers which control the execution and describe the | 2617 | there are also further buffers which control the execution and describe the |
| @@ -2984,17 +2623,14 @@ breakpoints. | |||
| 2984 | To use this package just type M-x gdb. See the Emacs manual if you want the | 2623 | To use this package just type M-x gdb. See the Emacs manual if you want the |
| 2985 | old behaviour. | 2624 | old behaviour. |
| 2986 | 2625 | ||
| 2987 | --- | ||
| 2988 | *** The variable tooltip-gud-tips-p has been removed. GUD tooltips can now be | 2626 | *** The variable tooltip-gud-tips-p has been removed. GUD tooltips can now be |
| 2989 | toggled independently of normal tooltips with the minor mode | 2627 | toggled independently of normal tooltips with the minor mode |
| 2990 | `gud-tooltip-mode'. | 2628 | `gud-tooltip-mode'. |
| 2991 | 2629 | ||
| 2992 | +++ | ||
| 2993 | *** In graphical mode, with a C program, GUD Tooltips have been extended to | 2630 | *** In graphical mode, with a C program, GUD Tooltips have been extended to |
| 2994 | display the #define directive associated with an identifier when program is | 2631 | display the #define directive associated with an identifier when program is |
| 2995 | not executing. | 2632 | not executing. |
| 2996 | 2633 | ||
| 2997 | --- | ||
| 2998 | ** GUD mode improvements for jdb: | 2634 | ** GUD mode improvements for jdb: |
| 2999 | 2635 | ||
| 3000 | *** Search for source files using jdb classpath and class information. | 2636 | *** Search for source files using jdb classpath and class information. |
| @@ -3039,7 +2675,6 @@ compatibility, it prefers `starttls', but you can toggle | |||
| 3039 | 2675 | ||
| 3040 | ** Auto-Revert changes: | 2676 | ** Auto-Revert changes: |
| 3041 | 2677 | ||
| 3042 | +++ | ||
| 3043 | *** You can now use Auto Revert mode to `tail' a file. | 2678 | *** You can now use Auto Revert mode to `tail' a file. |
| 3044 | 2679 | ||
| 3045 | If point is at the end of a file buffer before reverting, Auto Revert | 2680 | If point is at the end of a file buffer before reverting, Auto Revert |
| @@ -3055,7 +2690,6 @@ then you can tail the file more efficiently by using the new minor | |||
| 3055 | mode Auto Revert Tail mode. The function `auto-revert-tail-mode' | 2690 | mode Auto Revert Tail mode. The function `auto-revert-tail-mode' |
| 3056 | toggles this mode. | 2691 | toggles this mode. |
| 3057 | 2692 | ||
| 3058 | +++ | ||
| 3059 | *** Auto Revert mode is now more careful to avoid excessive reverts and | 2693 | *** Auto Revert mode is now more careful to avoid excessive reverts and |
| 3060 | other potential problems when deciding which non-file buffers to | 2694 | other potential problems when deciding which non-file buffers to |
| 3061 | revert. This matters especially if Global Auto Revert mode is enabled | 2695 | revert. This matters especially if Global Auto Revert mode is enabled |
| @@ -3066,14 +2700,12 @@ decides whether the buffer should be reverted. Currently, this means | |||
| 3066 | that auto reverting works for Dired buffers (although this may not | 2700 | that auto reverting works for Dired buffers (although this may not |
| 3067 | work properly on all operating systems) and for the Buffer Menu. | 2701 | work properly on all operating systems) and for the Buffer Menu. |
| 3068 | 2702 | ||
| 3069 | +++ | ||
| 3070 | *** If the new user option `auto-revert-check-vc-info' is non-nil, Auto | 2703 | *** If the new user option `auto-revert-check-vc-info' is non-nil, Auto |
| 3071 | Revert mode reliably updates version control info (such as the version | 2704 | Revert mode reliably updates version control info (such as the version |
| 3072 | control number in the mode line), in all version controlled buffers in | 2705 | control number in the mode line), in all version controlled buffers in |
| 3073 | which it is active. If the option is nil, the default, then this info | 2706 | which it is active. If the option is nil, the default, then this info |
| 3074 | only gets updated whenever the buffer gets reverted. | 2707 | only gets updated whenever the buffer gets reverted. |
| 3075 | 2708 | ||
| 3076 | --- | ||
| 3077 | ** recentf changes. | 2709 | ** recentf changes. |
| 3078 | 2710 | ||
| 3079 | The recent file list is now automatically cleaned up when recentf mode is | 2711 | The recent file list is now automatically cleaned up when recentf mode is |
| @@ -3098,27 +2730,21 @@ To follow naming convention, `recentf-menu-append-commands-flag' | |||
| 3098 | replaces the misnamed option `recentf-menu-append-commands-p'. The | 2730 | replaces the misnamed option `recentf-menu-append-commands-p'. The |
| 3099 | old name remains available as alias, but has been marked obsolete. | 2731 | old name remains available as alias, but has been marked obsolete. |
| 3100 | 2732 | ||
| 3101 | +++ | ||
| 3102 | ** Desktop package | 2733 | ** Desktop package |
| 3103 | 2734 | ||
| 3104 | +++ | ||
| 3105 | *** Desktop saving is now a minor mode, `desktop-save-mode'. | 2735 | *** Desktop saving is now a minor mode, `desktop-save-mode'. |
| 3106 | 2736 | ||
| 3107 | +++ | ||
| 3108 | *** The variable `desktop-enable' is obsolete. | 2737 | *** The variable `desktop-enable' is obsolete. |
| 3109 | 2738 | ||
| 3110 | Customize `desktop-save-mode' to enable desktop saving. | 2739 | Customize `desktop-save-mode' to enable desktop saving. |
| 3111 | 2740 | ||
| 3112 | --- | ||
| 3113 | *** Buffers are saved in the desktop file in the same order as that in the | 2741 | *** Buffers are saved in the desktop file in the same order as that in the |
| 3114 | buffer list. | 2742 | buffer list. |
| 3115 | 2743 | ||
| 3116 | +++ | ||
| 3117 | *** The desktop package can be customized to restore only some buffers | 2744 | *** The desktop package can be customized to restore only some buffers |
| 3118 | immediately, remaining buffers are restored lazily (when Emacs is | 2745 | immediately, remaining buffers are restored lazily (when Emacs is |
| 3119 | idle). | 2746 | idle). |
| 3120 | 2747 | ||
| 3121 | +++ | ||
| 3122 | *** New commands: | 2748 | *** New commands: |
| 3123 | - desktop-revert reverts to the last loaded desktop. | 2749 | - desktop-revert reverts to the last loaded desktop. |
| 3124 | - desktop-change-dir kills current desktop and loads a new. | 2750 | - desktop-change-dir kills current desktop and loads a new. |
| @@ -3127,7 +2753,6 @@ idle). | |||
| 3127 | - desktop-lazy-complete runs the desktop load to completion. | 2753 | - desktop-lazy-complete runs the desktop load to completion. |
| 3128 | - desktop-lazy-abort aborts lazy loading of the desktop. | 2754 | - desktop-lazy-abort aborts lazy loading of the desktop. |
| 3129 | 2755 | ||
| 3130 | --- | ||
| 3131 | *** New customizable variables: | 2756 | *** New customizable variables: |
| 3132 | - desktop-save. Determines whether the desktop should be saved when it is | 2757 | - desktop-save. Determines whether the desktop should be saved when it is |
| 3133 | killed. | 2758 | killed. |
| @@ -3142,15 +2767,12 @@ idle). | |||
| 3142 | - desktop-lazy-verbose. Verbose reporting of lazily created buffers. | 2767 | - desktop-lazy-verbose. Verbose reporting of lazily created buffers. |
| 3143 | - desktop-lazy-idle-delay. Idle delay before starting to create buffers. | 2768 | - desktop-lazy-idle-delay. Idle delay before starting to create buffers. |
| 3144 | 2769 | ||
| 3145 | +++ | ||
| 3146 | *** New command line option --no-desktop | 2770 | *** New command line option --no-desktop |
| 3147 | 2771 | ||
| 3148 | --- | ||
| 3149 | *** New hooks: | 2772 | *** New hooks: |
| 3150 | - desktop-after-read-hook run after a desktop is loaded. | 2773 | - desktop-after-read-hook run after a desktop is loaded. |
| 3151 | - desktop-no-desktop-file-hook run when no desktop file is found. | 2774 | - desktop-no-desktop-file-hook run when no desktop file is found. |
| 3152 | 2775 | ||
| 3153 | --- | ||
| 3154 | ** The saveplace.el package now filters out unreadable files. | 2776 | ** The saveplace.el package now filters out unreadable files. |
| 3155 | 2777 | ||
| 3156 | When you exit Emacs, the saved positions in visited files no longer | 2778 | When you exit Emacs, the saved positions in visited files no longer |
| @@ -3162,25 +2784,21 @@ feature. | |||
| 3162 | 2784 | ||
| 3163 | ** EDiff changes. | 2785 | ** EDiff changes. |
| 3164 | 2786 | ||
| 3165 | +++ | ||
| 3166 | *** When comparing directories. | 2787 | *** When comparing directories. |
| 3167 | Typing D brings up a buffer that lists the differences between the contents of | 2788 | Typing D brings up a buffer that lists the differences between the contents of |
| 3168 | directories. Now it is possible to use this buffer to copy the missing files | 2789 | directories. Now it is possible to use this buffer to copy the missing files |
| 3169 | from one directory to another. | 2790 | from one directory to another. |
| 3170 | 2791 | ||
| 3171 | +++ | ||
| 3172 | *** When comparing files or buffers. | 2792 | *** When comparing files or buffers. |
| 3173 | Typing the = key now offers to perform the word-by-word comparison of the | 2793 | Typing the = key now offers to perform the word-by-word comparison of the |
| 3174 | currently highlighted regions in an inferior Ediff session. If you answer 'n' | 2794 | currently highlighted regions in an inferior Ediff session. If you answer 'n' |
| 3175 | then it reverts to the old behavior and asks the user to select regions for | 2795 | then it reverts to the old behavior and asks the user to select regions for |
| 3176 | comparison. | 2796 | comparison. |
| 3177 | 2797 | ||
| 3178 | +++ | ||
| 3179 | *** The new command `ediff-backup' compares a file with its most recent | 2798 | *** The new command `ediff-backup' compares a file with its most recent |
| 3180 | backup using `ediff'. If you specify the name of a backup file, | 2799 | backup using `ediff'. If you specify the name of a backup file, |
| 3181 | `ediff-backup' compares it with the file of which it is a backup. | 2800 | `ediff-backup' compares it with the file of which it is a backup. |
| 3182 | 2801 | ||
| 3183 | +++ | ||
| 3184 | ** Etags changes. | 2802 | ** Etags changes. |
| 3185 | 2803 | ||
| 3186 | *** New regular expressions features | 2804 | *** New regular expressions features |
| @@ -3283,7 +2901,6 @@ struct members in C, members variables in C++ and variables in PHP. | |||
| 3283 | 2901 | ||
| 3284 | ** VC Changes | 2902 | ** VC Changes |
| 3285 | 2903 | ||
| 3286 | +++ | ||
| 3287 | *** The key C-x C-q only changes the read-only state of the buffer | 2904 | *** The key C-x C-q only changes the read-only state of the buffer |
| 3288 | (toggle-read-only). It no longer checks files in or out. | 2905 | (toggle-read-only). It no longer checks files in or out. |
| 3289 | 2906 | ||
| @@ -3296,7 +2913,6 @@ behavior, you can bind `vc-toggle-read-only' to C-x C-q in your | |||
| 3296 | 2913 | ||
| 3297 | The function `vc-toggle-read-only' will continue to exist. | 2914 | The function `vc-toggle-read-only' will continue to exist. |
| 3298 | 2915 | ||
| 3299 | +++ | ||
| 3300 | *** The new variable `vc-cvs-global-switches' specifies switches that | 2916 | *** The new variable `vc-cvs-global-switches' specifies switches that |
| 3301 | are passed to any CVS command invoked by VC. | 2917 | are passed to any CVS command invoked by VC. |
| 3302 | 2918 | ||
| @@ -3304,10 +2920,8 @@ These switches are used as "global options" for CVS, which means they | |||
| 3304 | are inserted before the command name. For example, this allows you to | 2920 | are inserted before the command name. For example, this allows you to |
| 3305 | specify a compression level using the `-z#' option for CVS. | 2921 | specify a compression level using the `-z#' option for CVS. |
| 3306 | 2922 | ||
| 3307 | +++ | ||
| 3308 | *** New backends for Subversion and Meta-CVS. | 2923 | *** New backends for Subversion and Meta-CVS. |
| 3309 | 2924 | ||
| 3310 | +++ | ||
| 3311 | *** VC-Annotate mode enhancements | 2925 | *** VC-Annotate mode enhancements |
| 3312 | 2926 | ||
| 3313 | In VC-Annotate mode, you can now use the following key bindings for | 2927 | In VC-Annotate mode, you can now use the following key bindings for |
| @@ -3324,23 +2938,19 @@ to view diffs or log entries directly from vc-annotate-mode: | |||
| 3324 | 2938 | ||
| 3325 | ** pcl-cvs changes: | 2939 | ** pcl-cvs changes: |
| 3326 | 2940 | ||
| 3327 | +++ | ||
| 3328 | *** In pcl-cvs mode, there is a new `d y' command to view the diffs | 2941 | *** In pcl-cvs mode, there is a new `d y' command to view the diffs |
| 3329 | between the local version of the file and yesterday's head revision | 2942 | between the local version of the file and yesterday's head revision |
| 3330 | in the repository. | 2943 | in the repository. |
| 3331 | 2944 | ||
| 3332 | +++ | ||
| 3333 | *** In pcl-cvs mode, there is a new `d r' command to view the changes | 2945 | *** In pcl-cvs mode, there is a new `d r' command to view the changes |
| 3334 | anyone has committed to the repository since you last executed | 2946 | anyone has committed to the repository since you last executed |
| 3335 | `checkout', `update' or `commit'. That means using cvs diff options | 2947 | `checkout', `update' or `commit'. That means using cvs diff options |
| 3336 | -rBASE -rHEAD. | 2948 | -rBASE -rHEAD. |
| 3337 | 2949 | ||
| 3338 | +++ | ||
| 3339 | ** The new variable `mail-default-directory' specifies | 2950 | ** The new variable `mail-default-directory' specifies |
| 3340 | `default-directory' for mail buffers. This directory is used for | 2951 | `default-directory' for mail buffers. This directory is used for |
| 3341 | auto-save files of mail buffers. It defaults to "~/". | 2952 | auto-save files of mail buffers. It defaults to "~/". |
| 3342 | 2953 | ||
| 3343 | +++ | ||
| 3344 | ** The mode line can indicate new mail in a directory or file. | 2954 | ** The mode line can indicate new mail in a directory or file. |
| 3345 | 2955 | ||
| 3346 | See the documentation of the user option | 2956 | See the documentation of the user option |
| @@ -3348,15 +2958,12 @@ See the documentation of the user option | |||
| 3348 | 2958 | ||
| 3349 | ** Rmail changes: | 2959 | ** Rmail changes: |
| 3350 | 2960 | ||
| 3351 | --- | ||
| 3352 | *** Rmail now displays 5-digit message ids in its summary buffer. | 2961 | *** Rmail now displays 5-digit message ids in its summary buffer. |
| 3353 | 2962 | ||
| 3354 | +++ | ||
| 3355 | *** The new commands rmail-end-of-message and rmail-summary end-of-message, | 2963 | *** The new commands rmail-end-of-message and rmail-summary end-of-message, |
| 3356 | by default bound to `/', go to the end of the current mail message in | 2964 | by default bound to `/', go to the end of the current mail message in |
| 3357 | Rmail and Rmail summary buffers. | 2965 | Rmail and Rmail summary buffers. |
| 3358 | 2966 | ||
| 3359 | +++ | ||
| 3360 | *** Support for `movemail' from GNU mailutils was added to Rmail. | 2967 | *** Support for `movemail' from GNU mailutils was added to Rmail. |
| 3361 | 2968 | ||
| 3362 | This version of `movemail' allows to read mail from a wide range of | 2969 | This version of `movemail' allows to read mail from a wide range of |
| @@ -3367,18 +2974,15 @@ used instead of the native one. | |||
| 3367 | 2974 | ||
| 3368 | ** Gnus package | 2975 | ** Gnus package |
| 3369 | 2976 | ||
| 3370 | --- | ||
| 3371 | *** Gnus now includes Sieve and PGG | 2977 | *** Gnus now includes Sieve and PGG |
| 3372 | 2978 | ||
| 3373 | Sieve is a library for managing Sieve scripts. PGG is a library to handle | 2979 | Sieve is a library for managing Sieve scripts. PGG is a library to handle |
| 3374 | PGP/MIME. | 2980 | PGP/MIME. |
| 3375 | 2981 | ||
| 3376 | --- | ||
| 3377 | *** There are many news features, bug fixes and improvements. | 2982 | *** There are many news features, bug fixes and improvements. |
| 3378 | 2983 | ||
| 3379 | See the file GNUS-NEWS or the node "Oort Gnus" in the Gnus manual for details. | 2984 | See the file GNUS-NEWS or the node "Oort Gnus" in the Gnus manual for details. |
| 3380 | 2985 | ||
| 3381 | --- | ||
| 3382 | ** MH-E changes. | 2986 | ** MH-E changes. |
| 3383 | 2987 | ||
| 3384 | Upgraded to MH-E version 8.0.3. There have been major changes since | 2988 | Upgraded to MH-E version 8.0.3. There have been major changes since |
| @@ -3386,23 +2990,18 @@ version 5.0.2; see MH-E-NEWS for details. | |||
| 3386 | 2990 | ||
| 3387 | ** Calendar changes: | 2991 | ** Calendar changes: |
| 3388 | 2992 | ||
| 3389 | +++ | ||
| 3390 | *** The meanings of C-x < and C-x > have been interchanged. | 2993 | *** The meanings of C-x < and C-x > have been interchanged. |
| 3391 | < means to scroll backward in time, and > means to scroll forward. | 2994 | < means to scroll backward in time, and > means to scroll forward. |
| 3392 | 2995 | ||
| 3393 | +++ | ||
| 3394 | *** You can now use < and >, instead of C-x < and C-x >, to scroll | 2996 | *** You can now use < and >, instead of C-x < and C-x >, to scroll |
| 3395 | the calendar left or right. | 2997 | the calendar left or right. |
| 3396 | 2998 | ||
| 3397 | +++ | ||
| 3398 | *** There is a new calendar package, icalendar.el, that can be used to | 2999 | *** There is a new calendar package, icalendar.el, that can be used to |
| 3399 | convert Emacs diary entries to/from the iCalendar format. | 3000 | convert Emacs diary entries to/from the iCalendar format. |
| 3400 | 3001 | ||
| 3401 | +++ | ||
| 3402 | *** The new package cal-html.el writes HTML files with calendar and | 3002 | *** The new package cal-html.el writes HTML files with calendar and |
| 3403 | diary entries. | 3003 | diary entries. |
| 3404 | 3004 | ||
| 3405 | +++ | ||
| 3406 | *** Diary sexp entries can have custom marking in the calendar. | 3005 | *** Diary sexp entries can have custom marking in the calendar. |
| 3407 | Diary sexp functions which only apply to certain days (such as | 3006 | Diary sexp functions which only apply to certain days (such as |
| 3408 | `diary-block' or `diary-cyclic') now take an optional parameter MARK, | 3007 | `diary-block' or `diary-cyclic') now take an optional parameter MARK, |
| @@ -3413,45 +3012,37 @@ day in the calendar. Specifying a face highlights the day with that | |||
| 3413 | face. This lets you have different colors or markings for vacations, | 3012 | face. This lets you have different colors or markings for vacations, |
| 3414 | appointments, paydays or anything else using a sexp. | 3013 | appointments, paydays or anything else using a sexp. |
| 3415 | 3014 | ||
| 3416 | +++ | ||
| 3417 | *** The new function `calendar-goto-day-of-year' (g D) prompts for a | 3015 | *** The new function `calendar-goto-day-of-year' (g D) prompts for a |
| 3418 | year and day number, and moves to that date. Negative day numbers | 3016 | year and day number, and moves to that date. Negative day numbers |
| 3419 | count backward from the end of the year. | 3017 | count backward from the end of the year. |
| 3420 | 3018 | ||
| 3421 | +++ | ||
| 3422 | *** The new Calendar function `calendar-goto-iso-week' (g w) | 3019 | *** The new Calendar function `calendar-goto-iso-week' (g w) |
| 3423 | prompts for a year and a week number, and moves to the first | 3020 | prompts for a year and a week number, and moves to the first |
| 3424 | day of that ISO week. | 3021 | day of that ISO week. |
| 3425 | 3022 | ||
| 3426 | --- | ||
| 3427 | *** The new variable `calendar-minimum-window-height' affects the | 3023 | *** The new variable `calendar-minimum-window-height' affects the |
| 3428 | window generated by the function `generate-calendar-window'. | 3024 | window generated by the function `generate-calendar-window'. |
| 3429 | 3025 | ||
| 3430 | --- | ||
| 3431 | *** The functions `holiday-easter-etc' and `holiday-advent' now take | 3026 | *** The functions `holiday-easter-etc' and `holiday-advent' now take |
| 3432 | optional arguments, in order to only report on the specified holiday | 3027 | optional arguments, in order to only report on the specified holiday |
| 3433 | rather than all. This makes customization of variables such as | 3028 | rather than all. This makes customization of variables such as |
| 3434 | `christian-holidays' simpler. | 3029 | `christian-holidays' simpler. |
| 3435 | 3030 | ||
| 3436 | --- | ||
| 3437 | *** The function `simple-diary-display' now by default sets a header line. | 3031 | *** The function `simple-diary-display' now by default sets a header line. |
| 3438 | This can be controlled through the variables `diary-header-line-flag' | 3032 | This can be controlled through the variables `diary-header-line-flag' |
| 3439 | and `diary-header-line-format'. | 3033 | and `diary-header-line-format'. |
| 3440 | 3034 | ||
| 3441 | +++ | ||
| 3442 | *** The procedure for activating appointment reminders has changed: | 3035 | *** The procedure for activating appointment reminders has changed: |
| 3443 | use the new function `appt-activate'. The new variable | 3036 | use the new function `appt-activate'. The new variable |
| 3444 | `appt-display-format' controls how reminders are displayed, replacing | 3037 | `appt-display-format' controls how reminders are displayed, replacing |
| 3445 | `appt-issue-message', `appt-visible', and `appt-msg-window'. | 3038 | `appt-issue-message', `appt-visible', and `appt-msg-window'. |
| 3446 | 3039 | ||
| 3447 | +++ | ||
| 3448 | *** The new functions `diary-from-outlook', `diary-from-outlook-gnus', | 3040 | *** The new functions `diary-from-outlook', `diary-from-outlook-gnus', |
| 3449 | and `diary-from-outlook-rmail' can be used to import diary entries | 3041 | and `diary-from-outlook-rmail' can be used to import diary entries |
| 3450 | from Outlook-format appointments in mail messages. The variable | 3042 | from Outlook-format appointments in mail messages. The variable |
| 3451 | `diary-outlook-formats' can be customized to recognize additional | 3043 | `diary-outlook-formats' can be customized to recognize additional |
| 3452 | formats. | 3044 | formats. |
| 3453 | 3045 | ||
| 3454 | +++ | ||
| 3455 | ** Speedbar changes: | 3046 | ** Speedbar changes: |
| 3456 | 3047 | ||
| 3457 | *** Speedbar items can now be selected by clicking mouse-1, based on | 3048 | *** Speedbar items can now be selected by clicking mouse-1, based on |
| @@ -3495,7 +3086,6 @@ should use `dframe-attached-frame' instead of | |||
| 3495 | `speedbar-update-speed' and `speedbar-navigating-speed' are also | 3086 | `speedbar-update-speed' and `speedbar-navigating-speed' are also |
| 3496 | obsolete; use `dframe-update-speed' instead. | 3087 | obsolete; use `dframe-update-speed' instead. |
| 3497 | 3088 | ||
| 3498 | --- | ||
| 3499 | ** sql changes. | 3089 | ** sql changes. |
| 3500 | 3090 | ||
| 3501 | *** The variable `sql-product' controls the highlighting of different | 3091 | *** The variable `sql-product' controls the highlighting of different |
| @@ -3569,12 +3159,10 @@ defaults. | |||
| 3569 | appropriate `sql-interactive-mode' wrapper for the current setting of | 3159 | appropriate `sql-interactive-mode' wrapper for the current setting of |
| 3570 | `sql-product'. | 3160 | `sql-product'. |
| 3571 | 3161 | ||
| 3572 | --- | ||
| 3573 | *** sql.el supports the SQLite interpreter--call 'sql-sqlite'. | 3162 | *** sql.el supports the SQLite interpreter--call 'sql-sqlite'. |
| 3574 | 3163 | ||
| 3575 | ** FFAP changes: | 3164 | ** FFAP changes: |
| 3576 | 3165 | ||
| 3577 | +++ | ||
| 3578 | *** New ffap commands and keybindings: | 3166 | *** New ffap commands and keybindings: |
| 3579 | 3167 | ||
| 3580 | C-x C-r (`ffap-read-only'), | 3168 | C-x C-r (`ffap-read-only'), |
| @@ -3582,13 +3170,11 @@ C-x C-v (`ffap-alternate-file'), C-x C-d (`ffap-list-directory'), | |||
| 3582 | C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'), | 3170 | C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'), |
| 3583 | C-x 5 r (`ffap-read-only-other-frame'), C-x 5 d (`ffap-dired-other-frame'). | 3171 | C-x 5 r (`ffap-read-only-other-frame'), C-x 5 d (`ffap-dired-other-frame'). |
| 3584 | 3172 | ||
| 3585 | --- | ||
| 3586 | *** FFAP accepts wildcards in a file name by default. | 3173 | *** FFAP accepts wildcards in a file name by default. |
| 3587 | 3174 | ||
| 3588 | C-x C-f passes the file name to `find-file' with non-nil WILDCARDS | 3175 | C-x C-f passes the file name to `find-file' with non-nil WILDCARDS |
| 3589 | argument, which visits multiple files, and C-x d passes it to `dired'. | 3176 | argument, which visits multiple files, and C-x d passes it to `dired'. |
| 3590 | 3177 | ||
| 3591 | --- | ||
| 3592 | ** Changes in Skeleton | 3178 | ** Changes in Skeleton |
| 3593 | 3179 | ||
| 3594 | *** In skeleton.el, `-' marks the `skeleton-point' without interregion interaction. | 3180 | *** In skeleton.el, `-' marks the `skeleton-point' without interregion interaction. |
| @@ -3605,7 +3191,6 @@ with other details of skeleton construction. | |||
| 3605 | `skeleton-pair-filter-function'. The old names are still available | 3191 | `skeleton-pair-filter-function'. The old names are still available |
| 3606 | as aliases. | 3192 | as aliases. |
| 3607 | 3193 | ||
| 3608 | --- | ||
| 3609 | ** Hideshow mode changes | 3194 | ** Hideshow mode changes |
| 3610 | 3195 | ||
| 3611 | *** New variable `hs-set-up-overlay' allows customization of the overlay | 3196 | *** New variable `hs-set-up-overlay' allows customization of the overlay |
| @@ -3617,28 +3202,23 @@ temporary overlay showing in the course of an isearch operation. | |||
| 3617 | not discard the hidden state of any "internal" blocks; when the parent | 3202 | not discard the hidden state of any "internal" blocks; when the parent |
| 3618 | block is later shown, the internal blocks remain hidden. Default is nil. | 3203 | block is later shown, the internal blocks remain hidden. Default is nil. |
| 3619 | 3204 | ||
| 3620 | +++ | ||
| 3621 | ** `hide-ifdef-mode' now uses overlays rather than selective-display | 3205 | ** `hide-ifdef-mode' now uses overlays rather than selective-display |
| 3622 | to hide its text. This should be mostly transparent but slightly | 3206 | to hide its text. This should be mostly transparent but slightly |
| 3623 | changes the behavior of motion commands like C-e and C-p. | 3207 | changes the behavior of motion commands like C-e and C-p. |
| 3624 | 3208 | ||
| 3625 | --- | ||
| 3626 | ** `partial-completion-mode' now handles partial completion on directory names. | 3209 | ** `partial-completion-mode' now handles partial completion on directory names. |
| 3627 | 3210 | ||
| 3628 | --- | ||
| 3629 | ** The type-break package now allows `type-break-file-name' to be nil | 3211 | ** The type-break package now allows `type-break-file-name' to be nil |
| 3630 | and if so, doesn't store any data across sessions. This is handy if | 3212 | and if so, doesn't store any data across sessions. This is handy if |
| 3631 | you don't want the `.type-break' file in your home directory or are | 3213 | you don't want the `.type-break' file in your home directory or are |
| 3632 | annoyed by the need for interaction when you kill Emacs. | 3214 | annoyed by the need for interaction when you kill Emacs. |
| 3633 | 3215 | ||
| 3634 | --- | ||
| 3635 | ** `ps-print' can now print characters from the mule-unicode charsets. | 3216 | ** `ps-print' can now print characters from the mule-unicode charsets. |
| 3636 | 3217 | ||
| 3637 | Printing text with characters from the mule-unicode-* sets works with | 3218 | Printing text with characters from the mule-unicode-* sets works with |
| 3638 | `ps-print', provided that you have installed the appropriate BDF | 3219 | `ps-print', provided that you have installed the appropriate BDF |
| 3639 | fonts. See the file INSTALL for URLs where you can find these fonts. | 3220 | fonts. See the file INSTALL for URLs where you can find these fonts. |
| 3640 | 3221 | ||
| 3641 | --- | ||
| 3642 | ** New command `strokes-global-set-stroke-string'. | 3222 | ** New command `strokes-global-set-stroke-string'. |
| 3643 | This is like `strokes-global-set-stroke', but it allows you to bind | 3223 | This is like `strokes-global-set-stroke', but it allows you to bind |
| 3644 | the stroke directly to a string to insert. This is convenient for | 3224 | the stroke directly to a string to insert. This is convenient for |
| @@ -3646,7 +3226,6 @@ using strokes as an input method. | |||
| 3646 | 3226 | ||
| 3647 | ** Emacs server changes: | 3227 | ** Emacs server changes: |
| 3648 | 3228 | ||
| 3649 | +++ | ||
| 3650 | *** You can have several Emacs servers on the same machine. | 3229 | *** You can have several Emacs servers on the same machine. |
| 3651 | 3230 | ||
| 3652 | % emacs --eval '(setq server-name "foo")' -f server-start & | 3231 | % emacs --eval '(setq server-name "foo")' -f server-start & |
| @@ -3654,36 +3233,29 @@ using strokes as an input method. | |||
| 3654 | % emacsclient -s foo file1 | 3233 | % emacsclient -s foo file1 |
| 3655 | % emacsclient -s bar file2 | 3234 | % emacsclient -s bar file2 |
| 3656 | 3235 | ||
| 3657 | +++ | ||
| 3658 | *** The `emacsclient' command understands the options `--eval' and | 3236 | *** The `emacsclient' command understands the options `--eval' and |
| 3659 | `--display' which tell Emacs respectively to evaluate the given Lisp | 3237 | `--display' which tell Emacs respectively to evaluate the given Lisp |
| 3660 | expression and to use the given display when visiting files. | 3238 | expression and to use the given display when visiting files. |
| 3661 | 3239 | ||
| 3662 | +++ | ||
| 3663 | *** User option `server-mode' can be used to start a server process. | 3240 | *** User option `server-mode' can be used to start a server process. |
| 3664 | 3241 | ||
| 3665 | --- | ||
| 3666 | ** LDAP support now defaults to ldapsearch from OpenLDAP version 2. | 3242 | ** LDAP support now defaults to ldapsearch from OpenLDAP version 2. |
| 3667 | 3243 | ||
| 3668 | +++ | ||
| 3669 | ** You can now disable pc-selection-mode after enabling it. | 3244 | ** You can now disable pc-selection-mode after enabling it. |
| 3670 | 3245 | ||
| 3671 | M-x pc-selection-mode behaves like a proper minor mode, and with no | 3246 | M-x pc-selection-mode behaves like a proper minor mode, and with no |
| 3672 | argument it toggles the mode. Turning off PC-Selection mode restores | 3247 | argument it toggles the mode. Turning off PC-Selection mode restores |
| 3673 | the global key bindings that were replaced by turning on the mode. | 3248 | the global key bindings that were replaced by turning on the mode. |
| 3674 | 3249 | ||
| 3675 | --- | ||
| 3676 | ** `uniquify-strip-common-suffix' tells uniquify to prefer | 3250 | ** `uniquify-strip-common-suffix' tells uniquify to prefer |
| 3677 | `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'. | 3251 | `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'. |
| 3678 | 3252 | ||
| 3679 | --- | ||
| 3680 | ** Support for `magic cookie' standout modes has been removed. | 3253 | ** Support for `magic cookie' standout modes has been removed. |
| 3681 | 3254 | ||
| 3682 | Emacs still works on terminals that require magic cookies in order to | 3255 | Emacs still works on terminals that require magic cookies in order to |
| 3683 | use standout mode, but they can no longer display mode-lines in | 3256 | use standout mode, but they can no longer display mode-lines in |
| 3684 | inverse-video. | 3257 | inverse-video. |
| 3685 | 3258 | ||
| 3686 | --- | ||
| 3687 | ** The game `mpuz' is enhanced. | 3259 | ** The game `mpuz' is enhanced. |
| 3688 | 3260 | ||
| 3689 | `mpuz' now allows the 2nd factor not to have two identical digits. By | 3261 | `mpuz' now allows the 2nd factor not to have two identical digits. By |
| @@ -3692,13 +3264,10 @@ automatically. The game uses faces for better visual feedback. | |||
| 3692 | 3264 | ||
| 3693 | ** battery.el changes: | 3265 | ** battery.el changes: |
| 3694 | 3266 | ||
| 3695 | --- | ||
| 3696 | *** display-battery-mode replaces display-battery. | 3267 | *** display-battery-mode replaces display-battery. |
| 3697 | 3268 | ||
| 3698 | --- | ||
| 3699 | *** battery.el now works on recent versions of OS X. | 3269 | *** battery.el now works on recent versions of OS X. |
| 3700 | 3270 | ||
| 3701 | --- | ||
| 3702 | ** calculator.el now has radix grouping mode. | 3271 | ** calculator.el now has radix grouping mode. |
| 3703 | 3272 | ||
| 3704 | To enable this, set `calculator-output-radix' non-nil. In this mode a | 3273 | To enable this, set `calculator-output-radix' non-nil. In this mode a |
| @@ -3706,19 +3275,14 @@ separator character is used every few digits, making it easier to see | |||
| 3706 | byte boundaries etc. For more info, see the documentation of the | 3275 | byte boundaries etc. For more info, see the documentation of the |
| 3707 | variable `calculator-radix-grouping-mode'. | 3276 | variable `calculator-radix-grouping-mode'. |
| 3708 | 3277 | ||
| 3709 | --- | ||
| 3710 | ** fast-lock.el and lazy-lock.el are obsolete. Use jit-lock.el instead. | 3278 | ** fast-lock.el and lazy-lock.el are obsolete. Use jit-lock.el instead. |
| 3711 | 3279 | ||
| 3712 | --- | ||
| 3713 | ** iso-acc.el is now obsolete. Use one of the latin input methods instead. | 3280 | ** iso-acc.el is now obsolete. Use one of the latin input methods instead. |
| 3714 | 3281 | ||
| 3715 | --- | ||
| 3716 | ** zone-mode.el is now obsolete. Use dns-mode.el instead. | 3282 | ** zone-mode.el is now obsolete. Use dns-mode.el instead. |
| 3717 | 3283 | ||
| 3718 | --- | ||
| 3719 | ** cplus-md.el has been deleted. | 3284 | ** cplus-md.el has been deleted. |
| 3720 | 3285 | ||
| 3721 | --- | ||
| 3722 | ** Ewoc changes | 3286 | ** Ewoc changes |
| 3723 | 3287 | ||
| 3724 | *** The new function `ewoc-delete' deletes specified nodes. | 3288 | *** The new function `ewoc-delete' deletes specified nodes. |
| @@ -3741,7 +3305,6 @@ For example, these two sequences of expressions behave identically: | |||
| 3741 | 3305 | ||
| 3742 | ** Locate changes | 3306 | ** Locate changes |
| 3743 | 3307 | ||
| 3744 | --- | ||
| 3745 | *** By default, reverting the *Locate* buffer now just runs the last | 3308 | *** By default, reverting the *Locate* buffer now just runs the last |
| 3746 | `locate' command back over again without offering to update the locate | 3309 | `locate' command back over again without offering to update the locate |
| 3747 | database (which normally only works if you have root privileges). If | 3310 | database (which normally only works if you have root privileges). If |
| @@ -3751,7 +3314,6 @@ you prefer the old behavior, set the new customizable option | |||
| 3751 | 3314 | ||
| 3752 | * Changes in Emacs 22.1 on non-free operating systems | 3315 | * Changes in Emacs 22.1 on non-free operating systems |
| 3753 | 3316 | ||
| 3754 | +++ | ||
| 3755 | ** The HOME directory defaults to Application Data under the user profile. | 3317 | ** The HOME directory defaults to Application Data under the user profile. |
| 3756 | 3318 | ||
| 3757 | If you used a previous version of Emacs without setting the HOME | 3319 | If you used a previous version of Emacs without setting the HOME |
| @@ -3766,7 +3328,6 @@ This change means that users can now have their own `.emacs' files on | |||
| 3766 | shared computers, and the default HOME directory is less likely to be | 3328 | shared computers, and the default HOME directory is less likely to be |
| 3767 | read-only on computers that are administered by someone else. | 3329 | read-only on computers that are administered by someone else. |
| 3768 | 3330 | ||
| 3769 | +++ | ||
| 3770 | ** Passing resources on the command line now works on MS Windows. | 3331 | ** Passing resources on the command line now works on MS Windows. |
| 3771 | 3332 | ||
| 3772 | You can use --xrm to pass resource settings to Emacs, overriding any | 3333 | You can use --xrm to pass resource settings to Emacs, overriding any |
| @@ -3777,7 +3338,6 @@ existing values. For example: | |||
| 3777 | will start up Emacs on an initial frame of 100x20 with red background, | 3338 | will start up Emacs on an initial frame of 100x20 with red background, |
| 3778 | irrespective of geometry or background setting on the Windows registry. | 3339 | irrespective of geometry or background setting on the Windows registry. |
| 3779 | 3340 | ||
| 3780 | --- | ||
| 3781 | ** On MS Windows, the "system caret" now follows the cursor. | 3341 | ** On MS Windows, the "system caret" now follows the cursor. |
| 3782 | 3342 | ||
| 3783 | This enables Emacs to work better with programs that need to track the | 3343 | This enables Emacs to work better with programs that need to track the |
| @@ -3787,12 +3347,10 @@ instead of Emacs drawing its own cursor. This seems to be required by | |||
| 3787 | some programs. The new variable w32-use-visible-system-caret allows | 3347 | some programs. The new variable w32-use-visible-system-caret allows |
| 3788 | the caret visibility to be manually toggled. | 3348 | the caret visibility to be manually toggled. |
| 3789 | 3349 | ||
| 3790 | --- | ||
| 3791 | ** Tooltips now work on MS Windows. | 3350 | ** Tooltips now work on MS Windows. |
| 3792 | 3351 | ||
| 3793 | See the Emacs 21.1 NEWS entry for tooltips for details. | 3352 | See the Emacs 21.1 NEWS entry for tooltips for details. |
| 3794 | 3353 | ||
| 3795 | --- | ||
| 3796 | ** Images are now supported on MS Windows. | 3354 | ** Images are now supported on MS Windows. |
| 3797 | 3355 | ||
| 3798 | PBM and XBM images are supported out of the box. Other image formats | 3356 | PBM and XBM images are supported out of the box. Other image formats |
| @@ -3802,7 +3360,6 @@ http://gnuwin32.sourceforge.net/. Note that libpng also depends on | |||
| 3802 | zlib, and tiff depends on the version of jpeg that it was compiled | 3360 | zlib, and tiff depends on the version of jpeg that it was compiled |
| 3803 | against. For additional information, see nt/INSTALL. | 3361 | against. For additional information, see nt/INSTALL. |
| 3804 | 3362 | ||
| 3805 | --- | ||
| 3806 | ** Sound is now supported on MS Windows. | 3363 | ** Sound is now supported on MS Windows. |
| 3807 | 3364 | ||
| 3808 | WAV format is supported on all versions of Windows, other formats such | 3365 | WAV format is supported on all versions of Windows, other formats such |
| @@ -3810,19 +3367,16 @@ as AU, AIFF and MP3 may be supported in the more recent versions of | |||
| 3810 | Windows, or when other software provides hooks into the system level | 3367 | Windows, or when other software provides hooks into the system level |
| 3811 | sound support for those formats. | 3368 | sound support for those formats. |
| 3812 | 3369 | ||
| 3813 | --- | ||
| 3814 | ** Different shaped mouse pointers are supported on MS Windows. | 3370 | ** Different shaped mouse pointers are supported on MS Windows. |
| 3815 | 3371 | ||
| 3816 | The mouse pointer changes shape depending on what is under the pointer. | 3372 | The mouse pointer changes shape depending on what is under the pointer. |
| 3817 | 3373 | ||
| 3818 | --- | ||
| 3819 | ** Pointing devices with more than 3 buttons are now supported on MS Windows. | 3374 | ** Pointing devices with more than 3 buttons are now supported on MS Windows. |
| 3820 | 3375 | ||
| 3821 | The new variable `w32-pass-extra-mouse-buttons-to-system' controls | 3376 | The new variable `w32-pass-extra-mouse-buttons-to-system' controls |
| 3822 | whether Emacs should handle the extra buttons itself (the default), or | 3377 | whether Emacs should handle the extra buttons itself (the default), or |
| 3823 | pass them to Windows to be handled with system-wide functions. | 3378 | pass them to Windows to be handled with system-wide functions. |
| 3824 | 3379 | ||
| 3825 | --- | ||
| 3826 | ** Emacs takes note of colors defined in Control Panel on MS-Windows. | 3380 | ** Emacs takes note of colors defined in Control Panel on MS-Windows. |
| 3827 | 3381 | ||
| 3828 | The Control Panel defines some default colors for applications in much | 3382 | The Control Panel defines some default colors for applications in much |
| @@ -3833,7 +3387,6 @@ some of them to initialize some of the default faces. | |||
| 3833 | `list-colors-display' shows the list of System color names, in case | 3387 | `list-colors-display' shows the list of System color names, in case |
| 3834 | you wish to use them in other faces. | 3388 | you wish to use them in other faces. |
| 3835 | 3389 | ||
| 3836 | --- | ||
| 3837 | ** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations. | 3390 | ** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations. |
| 3838 | 3391 | ||
| 3839 | Those systems use Unicode internally, so this allows Emacs to share | 3392 | Those systems use Unicode internally, so this allows Emacs to share |
| @@ -3842,7 +3395,6 @@ MS Windows, Emacs now uses the appropriate locale coding-system, so | |||
| 3842 | the clipboard should work correctly for your local language without | 3395 | the clipboard should work correctly for your local language without |
| 3843 | any customizations. | 3396 | any customizations. |
| 3844 | 3397 | ||
| 3845 | --- | ||
| 3846 | ** Running in a console window in Windows now uses the console size. | 3398 | ** Running in a console window in Windows now uses the console size. |
| 3847 | 3399 | ||
| 3848 | Previous versions of Emacs erred on the side of having a usable Emacs | 3400 | Previous versions of Emacs erred on the side of having a usable Emacs |
| @@ -3856,46 +3408,37 @@ defaults to 80x25. If you use such a telnet server regularly at a size | |||
| 3856 | other than 80x25, you can still manually set | 3408 | other than 80x25, you can still manually set |
| 3857 | w32-use-full-screen-buffer to t. | 3409 | w32-use-full-screen-buffer to t. |
| 3858 | 3410 | ||
| 3859 | --- | ||
| 3860 | ** On Mac OS, `keyboard-coding-system' changes based on the keyboard script. | 3411 | ** On Mac OS, `keyboard-coding-system' changes based on the keyboard script. |
| 3861 | 3412 | ||
| 3862 | --- | ||
| 3863 | ** The variable `mac-keyboard-text-encoding' and the constants | 3413 | ** The variable `mac-keyboard-text-encoding' and the constants |
| 3864 | `kTextEncodingMacRoman', `kTextEncodingISOLatin1', and | 3414 | `kTextEncodingMacRoman', `kTextEncodingISOLatin1', and |
| 3865 | `kTextEncodingISOLatin2' are obsolete. | 3415 | `kTextEncodingISOLatin2' are obsolete. |
| 3866 | 3416 | ||
| 3867 | +++ | ||
| 3868 | ** The variable `mac-command-key-is-meta' is obsolete. Use | 3417 | ** The variable `mac-command-key-is-meta' is obsolete. Use |
| 3869 | `mac-command-modifier' and `mac-option-modifier' instead. | 3418 | `mac-command-modifier' and `mac-option-modifier' instead. |
| 3870 | 3419 | ||
| 3871 | * Incompatible Lisp Changes in Emacs 22.1 | 3420 | * Incompatible Lisp Changes in Emacs 22.1 |
| 3872 | 3421 | ||
| 3873 | +++ | ||
| 3874 | ** The `read-file-name' function now returns a null string if the | 3422 | ** The `read-file-name' function now returns a null string if the |
| 3875 | user just types RET. | 3423 | user just types RET. |
| 3876 | 3424 | ||
| 3877 | +++ | ||
| 3878 | ** The function find-operation-coding-system may be called with a cons | 3425 | ** The function find-operation-coding-system may be called with a cons |
| 3879 | (FILENAME . BUFFER) in the second argument if the first argument | 3426 | (FILENAME . BUFFER) in the second argument if the first argument |
| 3880 | OPERATION is `insert-file-contents', and thus a function registered in | 3427 | OPERATION is `insert-file-contents', and thus a function registered in |
| 3881 | `file-coding-system-alist' is also called with such an argument. | 3428 | `file-coding-system-alist' is also called with such an argument. |
| 3882 | 3429 | ||
| 3883 | --- | ||
| 3884 | ** The variables post-command-idle-hook and post-command-idle-delay have | 3430 | ** The variables post-command-idle-hook and post-command-idle-delay have |
| 3885 | been removed. Use run-with-idle-timer instead. | 3431 | been removed. Use run-with-idle-timer instead. |
| 3886 | 3432 | ||
| 3887 | +++ | ||
| 3888 | ** `suppress-keymap' now works by remapping `self-insert-command' to | 3433 | ** `suppress-keymap' now works by remapping `self-insert-command' to |
| 3889 | the command `undefined'. (In earlier Emacs versions, it used | 3434 | the command `undefined'. (In earlier Emacs versions, it used |
| 3890 | `substitute-key-definition' to rebind self inserting characters to | 3435 | `substitute-key-definition' to rebind self inserting characters to |
| 3891 | `undefined'.) | 3436 | `undefined'.) |
| 3892 | 3437 | ||
| 3893 | +++ | ||
| 3894 | ** Mode line display ignores text properties as well as the | 3438 | ** Mode line display ignores text properties as well as the |
| 3895 | :propertize and :eval forms in the value of a variable whose | 3439 | :propertize and :eval forms in the value of a variable whose |
| 3896 | `risky-local-variable' property is nil. | 3440 | `risky-local-variable' property is nil. |
| 3897 | 3441 | ||
| 3898 | --- | ||
| 3899 | The function `comint-send-input' now accepts 3 optional arguments: | 3442 | The function `comint-send-input' now accepts 3 optional arguments: |
| 3900 | 3443 | ||
| 3901 | (comint-send-input &optional no-newline artificial) | 3444 | (comint-send-input &optional no-newline artificial) |
| @@ -3904,23 +3447,18 @@ Callers sending input not from the user should use bind the 3rd | |||
| 3904 | argument `artificial' to a non-nil value, to prevent Emacs from | 3447 | argument `artificial' to a non-nil value, to prevent Emacs from |
| 3905 | deleting the part of subprocess output that matches the input. | 3448 | deleting the part of subprocess output that matches the input. |
| 3906 | 3449 | ||
| 3907 | --- | ||
| 3908 | ** Support for Mocklisp has been removed. | 3450 | ** Support for Mocklisp has been removed. |
| 3909 | 3451 | ||
| 3910 | +++ | ||
| 3911 | ** The variable `memory-full' now remains t until | 3452 | ** The variable `memory-full' now remains t until |
| 3912 | there is no longer a shortage of memory. | 3453 | there is no longer a shortage of memory. |
| 3913 | 3454 | ||
| 3914 | +++ | ||
| 3915 | ** When Emacs receives a USR1 or USR2 signal, this generates | 3455 | ** When Emacs receives a USR1 or USR2 signal, this generates |
| 3916 | input events: sigusr1 or sigusr2. Use special-event-map to | 3456 | input events: sigusr1 or sigusr2. Use special-event-map to |
| 3917 | handle these events. | 3457 | handle these events. |
| 3918 | 3458 | ||
| 3919 | +++ | ||
| 3920 | ** A hex or octal escape in a string constant forces the string to | 3459 | ** A hex or octal escape in a string constant forces the string to |
| 3921 | be multibyte or unibyte, respectively. | 3460 | be multibyte or unibyte, respectively. |
| 3922 | 3461 | ||
| 3923 | +++ | ||
| 3924 | ** The explicit method of creating a display table element by | 3462 | ** The explicit method of creating a display table element by |
| 3925 | combining a face number and a character code into a numeric | 3463 | combining a face number and a character code into a numeric |
| 3926 | glyph code is deprecated. | 3464 | glyph code is deprecated. |
| @@ -3934,45 +3472,36 @@ display tables. | |||
| 3934 | 3472 | ||
| 3935 | ** General Lisp changes: | 3473 | ** General Lisp changes: |
| 3936 | 3474 | ||
| 3937 | +++ | ||
| 3938 | *** The function `expt' handles negative exponents differently. | 3475 | *** The function `expt' handles negative exponents differently. |
| 3939 | The value for `(expt A B)', if both A and B are integers and B is | 3476 | The value for `(expt A B)', if both A and B are integers and B is |
| 3940 | negative, is now a float. For example: (expt 2 -2) => 0.25. | 3477 | negative, is now a float. For example: (expt 2 -2) => 0.25. |
| 3941 | 3478 | ||
| 3942 | +++ | ||
| 3943 | *** The function `eql' is now available without requiring the CL package. | 3479 | *** The function `eql' is now available without requiring the CL package. |
| 3944 | 3480 | ||
| 3945 | +++ | ||
| 3946 | *** The new function `memql' is like `memq', but uses `eql' for comparison, | 3481 | *** The new function `memql' is like `memq', but uses `eql' for comparison, |
| 3947 | that is, floats are compared by value and other elements with `eq'. | 3482 | that is, floats are compared by value and other elements with `eq'. |
| 3948 | 3483 | ||
| 3949 | +++ | ||
| 3950 | *** `makehash' is now obsolete. Use `make-hash-table' instead. | 3484 | *** `makehash' is now obsolete. Use `make-hash-table' instead. |
| 3951 | 3485 | ||
| 3952 | +++ | ||
| 3953 | *** `add-to-list' takes an optional third argument, APPEND. | 3486 | *** `add-to-list' takes an optional third argument, APPEND. |
| 3954 | 3487 | ||
| 3955 | If APPEND is non-nil, the new element gets added at the end of the | 3488 | If APPEND is non-nil, the new element gets added at the end of the |
| 3956 | list instead of at the beginning. This change actually occurred in | 3489 | list instead of at the beginning. This change actually occurred in |
| 3957 | Emacs 21.1, but was not documented then. | 3490 | Emacs 21.1, but was not documented then. |
| 3958 | 3491 | ||
| 3959 | +++ | ||
| 3960 | *** New function `add-to-ordered-list' is like `add-to-list' but | 3492 | *** New function `add-to-ordered-list' is like `add-to-list' but |
| 3961 | associates a numeric ordering of each element added to the list. | 3493 | associates a numeric ordering of each element added to the list. |
| 3962 | 3494 | ||
| 3963 | +++ | ||
| 3964 | *** New function `copy-tree' makes a copy of a tree. | 3495 | *** New function `copy-tree' makes a copy of a tree. |
| 3965 | 3496 | ||
| 3966 | It recursively copies through both CARs and CDRs. | 3497 | It recursively copies through both CARs and CDRs. |
| 3967 | 3498 | ||
| 3968 | +++ | ||
| 3969 | *** New function `delete-dups' deletes `equal' duplicate elements from a list. | 3499 | *** New function `delete-dups' deletes `equal' duplicate elements from a list. |
| 3970 | 3500 | ||
| 3971 | It modifies the list destructively, like `delete'. Of several `equal' | 3501 | It modifies the list destructively, like `delete'. Of several `equal' |
| 3972 | occurrences of an element in the list, the one that's kept is the | 3502 | occurrences of an element in the list, the one that's kept is the |
| 3973 | first one. | 3503 | first one. |
| 3974 | 3504 | ||
| 3975 | +++ | ||
| 3976 | *** New function `add-to-history' adds an element to a history list. | 3505 | *** New function `add-to-history' adds an element to a history list. |
| 3977 | 3506 | ||
| 3978 | Lisp packages should use this function to add elements to their | 3507 | Lisp packages should use this function to add elements to their |
| @@ -3981,13 +3510,11 @@ history lists. | |||
| 3981 | If `history-delete-duplicates' is non-nil, it removes duplicates of | 3510 | If `history-delete-duplicates' is non-nil, it removes duplicates of |
| 3982 | the new element from the history list it updates. | 3511 | the new element from the history list it updates. |
| 3983 | 3512 | ||
| 3984 | +++ | ||
| 3985 | *** New function `rassq-delete-all'. | 3513 | *** New function `rassq-delete-all'. |
| 3986 | 3514 | ||
| 3987 | (rassq-delete-all VALUE ALIST) deletes, from ALIST, each element whose | 3515 | (rassq-delete-all VALUE ALIST) deletes, from ALIST, each element whose |
| 3988 | CDR is `eq' to the specified value. | 3516 | CDR is `eq' to the specified value. |
| 3989 | 3517 | ||
| 3990 | +++ | ||
| 3991 | *** The function `number-sequence' makes a list of equally-separated numbers. | 3518 | *** The function `number-sequence' makes a list of equally-separated numbers. |
| 3992 | 3519 | ||
| 3993 | For instance, (number-sequence 4 9) returns (4 5 6 7 8 9). By | 3520 | For instance, (number-sequence 4 9) returns (4 5 6 7 8 9). By |
| @@ -3995,30 +3522,25 @@ default, the separation is 1, but you can specify a different | |||
| 3995 | separation as the third argument. (number-sequence 1.5 6 2) returns | 3522 | separation as the third argument. (number-sequence 1.5 6 2) returns |
| 3996 | (1.5 3.5 5.5). | 3523 | (1.5 3.5 5.5). |
| 3997 | 3524 | ||
| 3998 | +++ | ||
| 3999 | *** New variables `most-positive-fixnum' and `most-negative-fixnum'. | 3525 | *** New variables `most-positive-fixnum' and `most-negative-fixnum'. |
| 4000 | 3526 | ||
| 4001 | They hold the largest and smallest possible integer values. | 3527 | They hold the largest and smallest possible integer values. |
| 4002 | 3528 | ||
| 4003 | +++ | ||
| 4004 | *** Minor change in the function `format'. | 3529 | *** Minor change in the function `format'. |
| 4005 | 3530 | ||
| 4006 | Some flags that were accepted but not implemented (such as "*") are no | 3531 | Some flags that were accepted but not implemented (such as "*") are no |
| 4007 | longer accepted. | 3532 | longer accepted. |
| 4008 | 3533 | ||
| 4009 | +++ | ||
| 4010 | *** Functions `get' and `plist-get' no longer give errors for bad plists. | 3534 | *** Functions `get' and `plist-get' no longer give errors for bad plists. |
| 4011 | 3535 | ||
| 4012 | They return nil for a malformed property list or if the list is | 3536 | They return nil for a malformed property list or if the list is |
| 4013 | cyclic. | 3537 | cyclic. |
| 4014 | 3538 | ||
| 4015 | +++ | ||
| 4016 | *** New functions `lax-plist-get' and `lax-plist-put'. | 3539 | *** New functions `lax-plist-get' and `lax-plist-put'. |
| 4017 | 3540 | ||
| 4018 | They are like `plist-get' and `plist-put', except that they compare | 3541 | They are like `plist-get' and `plist-put', except that they compare |
| 4019 | the property name using `equal' rather than `eq'. | 3542 | the property name using `equal' rather than `eq'. |
| 4020 | 3543 | ||
| 4021 | +++ | ||
| 4022 | *** New variable `print-continuous-numbering'. | 3544 | *** New variable `print-continuous-numbering'. |
| 4023 | 3545 | ||
| 4024 | When this is non-nil, successive calls to print functions use a single | 3546 | When this is non-nil, successive calls to print functions use a single |
| @@ -4028,21 +3550,18 @@ relevant when `print-circle' is non-nil. | |||
| 4028 | When you bind `print-continuous-numbering' to t, you should | 3550 | When you bind `print-continuous-numbering' to t, you should |
| 4029 | also bind `print-number-table' to nil. | 3551 | also bind `print-number-table' to nil. |
| 4030 | 3552 | ||
| 4031 | +++ | ||
| 4032 | *** New function `macroexpand-all' expands all macros in a form. | 3553 | *** New function `macroexpand-all' expands all macros in a form. |
| 4033 | 3554 | ||
| 4034 | It is similar to the Common-Lisp function of the same name. | 3555 | It is similar to the Common-Lisp function of the same name. |
| 4035 | One difference is that it guarantees to return the original argument | 3556 | One difference is that it guarantees to return the original argument |
| 4036 | if no expansion is done, which can be tested using `eq'. | 3557 | if no expansion is done, which can be tested using `eq'. |
| 4037 | 3558 | ||
| 4038 | +++ | ||
| 4039 | *** The function `atan' now accepts an optional second argument. | 3559 | *** The function `atan' now accepts an optional second argument. |
| 4040 | 3560 | ||
| 4041 | When called with 2 arguments, as in `(atan Y X)', `atan' returns the | 3561 | When called with 2 arguments, as in `(atan Y X)', `atan' returns the |
| 4042 | angle in radians between the vector [X, Y] and the X axis. (This is | 3562 | angle in radians between the vector [X, Y] and the X axis. (This is |
| 4043 | equivalent to the standard C library function `atan2'.) | 3563 | equivalent to the standard C library function `atan2'.) |
| 4044 | 3564 | ||
| 4045 | +++ | ||
| 4046 | *** A function or macro's doc string can now specify the calling pattern. | 3565 | *** A function or macro's doc string can now specify the calling pattern. |
| 4047 | 3566 | ||
| 4048 | You put this info in the doc string's last line. It should be | 3567 | You put this info in the doc string's last line. It should be |
| @@ -4050,7 +3569,6 @@ formatted so as to match the regexp "\n\n(fn .*)\\'". If you don't | |||
| 4050 | specify this explicitly, Emacs determines it from the actual argument | 3569 | specify this explicitly, Emacs determines it from the actual argument |
| 4051 | names. Usually that default is right, but not always. | 3570 | names. Usually that default is right, but not always. |
| 4052 | 3571 | ||
| 4053 | +++ | ||
| 4054 | *** New macro `with-local-quit' temporarily allows quitting. | 3572 | *** New macro `with-local-quit' temporarily allows quitting. |
| 4055 | 3573 | ||
| 4056 | A quit inside the body of `with-local-quit' is caught by the | 3574 | A quit inside the body of `with-local-quit' is caught by the |
| @@ -4060,55 +3578,46 @@ the code that has inhibited quitting exits. | |||
| 4060 | This is for use around potentially blocking or long-running code | 3578 | This is for use around potentially blocking or long-running code |
| 4061 | inside timer functions and `post-command-hook' functions. | 3579 | inside timer functions and `post-command-hook' functions. |
| 4062 | 3580 | ||
| 4063 | +++ | ||
| 4064 | *** New macro `define-obsolete-function-alias'. | 3581 | *** New macro `define-obsolete-function-alias'. |
| 4065 | 3582 | ||
| 4066 | This combines `defalias' and `make-obsolete'. | 3583 | This combines `defalias' and `make-obsolete'. |
| 4067 | 3584 | ||
| 4068 | +++ | ||
| 4069 | *** New macro `with-case-table' | 3585 | *** New macro `with-case-table' |
| 4070 | 3586 | ||
| 4071 | This executes the body with the case table temporarily set to a given | 3587 | This executes the body with the case table temporarily set to a given |
| 4072 | case table. | 3588 | case table. |
| 4073 | 3589 | ||
| 4074 | +++ | ||
| 4075 | *** New function `unsafep' determines whether a Lisp form is safe. | 3590 | *** New function `unsafep' determines whether a Lisp form is safe. |
| 4076 | 3591 | ||
| 4077 | It returns nil if the given Lisp form can't possibly do anything | 3592 | It returns nil if the given Lisp form can't possibly do anything |
| 4078 | dangerous; otherwise it returns a reason why the form might be unsafe | 3593 | dangerous; otherwise it returns a reason why the form might be unsafe |
| 4079 | (calls unknown function, alters global variable, etc.). | 3594 | (calls unknown function, alters global variable, etc.). |
| 4080 | 3595 | ||
| 4081 | +++ | ||
| 4082 | *** New macro `eval-at-startup' specifies expressions to | 3596 | *** New macro `eval-at-startup' specifies expressions to |
| 4083 | evaluate when Emacs starts up. If this is done after startup, | 3597 | evaluate when Emacs starts up. If this is done after startup, |
| 4084 | it evaluates those expressions immediately. | 3598 | it evaluates those expressions immediately. |
| 4085 | 3599 | ||
| 4086 | This is useful in packages that can be preloaded. | 3600 | This is useful in packages that can be preloaded. |
| 4087 | 3601 | ||
| 4088 | +++ | ||
| 4089 | *** `list-faces-display' takes an optional argument, REGEXP. | 3602 | *** `list-faces-display' takes an optional argument, REGEXP. |
| 4090 | 3603 | ||
| 4091 | If it is non-nil, the function lists only faces matching this regexp. | 3604 | If it is non-nil, the function lists only faces matching this regexp. |
| 4092 | 3605 | ||
| 4093 | +++ | ||
| 4094 | *** New functions `string-or-null-p' and `booleanp'. | 3606 | *** New functions `string-or-null-p' and `booleanp'. |
| 4095 | 3607 | ||
| 4096 | `string-or-null-p' returns non-nil iff OBJECT is a string or nil. | 3608 | `string-or-null-p' returns non-nil iff OBJECT is a string or nil. |
| 4097 | `booleanp' returns non-nil iff OBJECT is t or nil. | 3609 | `booleanp' returns non-nil iff OBJECT is t or nil. |
| 4098 | 3610 | ||
| 4099 | +++ | ||
| 4100 | *** New hook `command-error-function'. | 3611 | *** New hook `command-error-function'. |
| 4101 | 3612 | ||
| 4102 | By setting this variable to a function, you can control | 3613 | By setting this variable to a function, you can control |
| 4103 | how the editor command loop shows the user an error message. | 3614 | how the editor command loop shows the user an error message. |
| 4104 | 3615 | ||
| 4105 | +++ | ||
| 4106 | *** `debug-on-entry' accepts primitive functions that are not special forms | 3616 | *** `debug-on-entry' accepts primitive functions that are not special forms |
| 4107 | now. | 3617 | now. |
| 4108 | 3618 | ||
| 4109 | ** Lisp code indentation features: | 3619 | ** Lisp code indentation features: |
| 4110 | 3620 | ||
| 4111 | +++ | ||
| 4112 | *** The `defmacro' form can contain indentation and edebug declarations. | 3621 | *** The `defmacro' form can contain indentation and edebug declarations. |
| 4113 | 3622 | ||
| 4114 | These declarations specify how to indent the macro calls in Lisp mode | 3623 | These declarations specify how to indent the macro calls in Lisp mode |
| @@ -4127,12 +3636,10 @@ possible declaration specifiers are: | |||
| 4127 | equivalent to writing a `def-edebug-spec' for the macro, | 3636 | equivalent to writing a `def-edebug-spec' for the macro, |
| 4128 | but this is cleaner.) | 3637 | but this is cleaner.) |
| 4129 | 3638 | ||
| 4130 | --- | ||
| 4131 | *** cl-indent now allows customization of Indentation of backquoted forms. | 3639 | *** cl-indent now allows customization of Indentation of backquoted forms. |
| 4132 | 3640 | ||
| 4133 | See the new user option `lisp-backquote-indentation'. | 3641 | See the new user option `lisp-backquote-indentation'. |
| 4134 | 3642 | ||
| 4135 | --- | ||
| 4136 | *** cl-indent now handles indentation of simple and extended `loop' forms. | 3643 | *** cl-indent now handles indentation of simple and extended `loop' forms. |
| 4137 | 3644 | ||
| 4138 | The new user options `lisp-loop-keyword-indentation', | 3645 | The new user options `lisp-loop-keyword-indentation', |
| @@ -4140,7 +3647,6 @@ The new user options `lisp-loop-keyword-indentation', | |||
| 4140 | be used to customize the indentation of keywords and forms in loop | 3647 | be used to customize the indentation of keywords and forms in loop |
| 4141 | forms. | 3648 | forms. |
| 4142 | 3649 | ||
| 4143 | +++ | ||
| 4144 | ** Variable aliases: | 3650 | ** Variable aliases: |
| 4145 | 3651 | ||
| 4146 | *** New function: defvaralias ALIAS-VAR BASE-VAR [DOCSTRING] | 3652 | *** New function: defvaralias ALIAS-VAR BASE-VAR [DOCSTRING] |
| @@ -4162,64 +3668,52 @@ defined as an alias, the function returns VARIABLE. | |||
| 4162 | It might be noteworthy that variables aliases work for all kinds of | 3668 | It might be noteworthy that variables aliases work for all kinds of |
| 4163 | variables, including buffer-local and frame-local variables. | 3669 | variables, including buffer-local and frame-local variables. |
| 4164 | 3670 | ||
| 4165 | +++ | ||
| 4166 | *** The macro `define-obsolete-variable-alias' combines `defvaralias' and | 3671 | *** The macro `define-obsolete-variable-alias' combines `defvaralias' and |
| 4167 | `make-obsolete-variable'. | 3672 | `make-obsolete-variable'. |
| 4168 | 3673 | ||
| 4169 | ** defcustom changes: | 3674 | ** defcustom changes: |
| 4170 | 3675 | ||
| 4171 | +++ | ||
| 4172 | *** The package-version keyword has been added to provide | 3676 | *** The package-version keyword has been added to provide |
| 4173 | `customize-changed-options' functionality to packages in the future. | 3677 | `customize-changed-options' functionality to packages in the future. |
| 4174 | Developers who make use of this keyword must also update the new | 3678 | Developers who make use of this keyword must also update the new |
| 4175 | variable `customize-package-emacs-version-alist'. | 3679 | variable `customize-package-emacs-version-alist'. |
| 4176 | 3680 | ||
| 4177 | +++ | ||
| 4178 | *** The new customization type `float' requires a floating point number. | 3681 | *** The new customization type `float' requires a floating point number. |
| 4179 | 3682 | ||
| 4180 | ** String changes: | 3683 | ** String changes: |
| 4181 | 3684 | ||
| 4182 | +++ | ||
| 4183 | *** The escape sequence \s is now interpreted as a SPACE character. | 3685 | *** The escape sequence \s is now interpreted as a SPACE character. |
| 4184 | 3686 | ||
| 4185 | Exception: In a character constant, if it is followed by a `-' in a | 3687 | Exception: In a character constant, if it is followed by a `-' in a |
| 4186 | character constant (e.g. ?\s-A), it is still interpreted as the super | 3688 | character constant (e.g. ?\s-A), it is still interpreted as the super |
| 4187 | modifier. In strings, \s is always interpreted as a space. | 3689 | modifier. In strings, \s is always interpreted as a space. |
| 4188 | 3690 | ||
| 4189 | +++ | ||
| 4190 | *** A hex escape in a string constant forces the string to be multibyte. | 3691 | *** A hex escape in a string constant forces the string to be multibyte. |
| 4191 | 3692 | ||
| 4192 | +++ | ||
| 4193 | *** An octal escape in a string constant forces the string to be unibyte. | 3693 | *** An octal escape in a string constant forces the string to be unibyte. |
| 4194 | 3694 | ||
| 4195 | +++ | ||
| 4196 | *** `split-string' now includes null substrings in the returned list if | 3695 | *** `split-string' now includes null substrings in the returned list if |
| 4197 | the optional argument SEPARATORS is non-nil and there are matches for | 3696 | the optional argument SEPARATORS is non-nil and there are matches for |
| 4198 | SEPARATORS at the beginning or end of the string. If SEPARATORS is | 3697 | SEPARATORS at the beginning or end of the string. If SEPARATORS is |
| 4199 | nil, or if the new optional third argument OMIT-NULLS is non-nil, all | 3698 | nil, or if the new optional third argument OMIT-NULLS is non-nil, all |
| 4200 | empty matches are omitted from the returned list. | 3699 | empty matches are omitted from the returned list. |
| 4201 | 3700 | ||
| 4202 | +++ | ||
| 4203 | *** New function `string-to-multibyte' converts a unibyte string to a | 3701 | *** New function `string-to-multibyte' converts a unibyte string to a |
| 4204 | multibyte string with the same individual character codes. | 3702 | multibyte string with the same individual character codes. |
| 4205 | 3703 | ||
| 4206 | +++ | ||
| 4207 | *** New function `substring-no-properties' returns a substring without | 3704 | *** New function `substring-no-properties' returns a substring without |
| 4208 | text properties. | 3705 | text properties. |
| 4209 | 3706 | ||
| 4210 | +++ | ||
| 4211 | *** The new function `assoc-string' replaces `assoc-ignore-case' and | 3707 | *** The new function `assoc-string' replaces `assoc-ignore-case' and |
| 4212 | `assoc-ignore-representation', which are still available, but have | 3708 | `assoc-ignore-representation', which are still available, but have |
| 4213 | been declared obsolete. | 3709 | been declared obsolete. |
| 4214 | 3710 | ||
| 4215 | +++ | ||
| 4216 | *** New syntax: \uXXXX and \UXXXXXXXX specify Unicode code points in hex. | 3711 | *** New syntax: \uXXXX and \UXXXXXXXX specify Unicode code points in hex. |
| 4217 | Use "\u0428" to specify a string consisting of CYRILLIC CAPITAL LETTER SHA, | 3712 | Use "\u0428" to specify a string consisting of CYRILLIC CAPITAL LETTER SHA, |
| 4218 | or "\U0001D6E2" to specify one consisting of MATHEMATICAL ITALIC CAPITAL | 3713 | or "\U0001D6E2" to specify one consisting of MATHEMATICAL ITALIC CAPITAL |
| 4219 | ALPHA (the latter is greater than #xFFFF and thus needs the longer | 3714 | ALPHA (the latter is greater than #xFFFF and thus needs the longer |
| 4220 | syntax). Also available for characters. | 3715 | syntax). Also available for characters. |
| 4221 | 3716 | ||
| 4222 | +++ | ||
| 4223 | ** Displaying warnings to the user. | 3717 | ** Displaying warnings to the user. |
| 4224 | 3718 | ||
| 4225 | See the functions `warn' and `display-warning', or the Lisp Manual. | 3719 | See the functions `warn' and `display-warning', or the Lisp Manual. |
| @@ -4227,7 +3721,6 @@ If you want to be sure the warning will not be overlooked, this | |||
| 4227 | facility is much better than using `message', since it displays | 3721 | facility is much better than using `message', since it displays |
| 4228 | warnings in a separate window. | 3722 | warnings in a separate window. |
| 4229 | 3723 | ||
| 4230 | +++ | ||
| 4231 | ** Progress reporters. | 3724 | ** Progress reporters. |
| 4232 | 3725 | ||
| 4233 | These provide a simple and uniform way for commands to present | 3726 | These provide a simple and uniform way for commands to present |
| @@ -4239,85 +3732,70 @@ See the new functions `make-progress-reporter', | |||
| 4239 | 3732 | ||
| 4240 | ** Buffer positions: | 3733 | ** Buffer positions: |
| 4241 | 3734 | ||
| 4242 | +++ | ||
| 4243 | *** Function `compute-motion' now calculates the usable window | 3735 | *** Function `compute-motion' now calculates the usable window |
| 4244 | width if the WIDTH argument is nil. If the TOPOS argument is nil, | 3736 | width if the WIDTH argument is nil. If the TOPOS argument is nil, |
| 4245 | the usable window height and width is used. | 3737 | the usable window height and width is used. |
| 4246 | 3738 | ||
| 4247 | +++ | ||
| 4248 | *** The `line-move', `scroll-up', and `scroll-down' functions will now | 3739 | *** The `line-move', `scroll-up', and `scroll-down' functions will now |
| 4249 | modify the window vscroll to scroll through display rows that are | 3740 | modify the window vscroll to scroll through display rows that are |
| 4250 | taller that the height of the window, for example in the presence of | 3741 | taller that the height of the window, for example in the presence of |
| 4251 | large images. To disable this feature, bind the new variable | 3742 | large images. To disable this feature, bind the new variable |
| 4252 | `auto-window-vscroll' to nil. | 3743 | `auto-window-vscroll' to nil. |
| 4253 | 3744 | ||
| 4254 | +++ | ||
| 4255 | *** The argument to `forward-word', `backward-word' is optional. | 3745 | *** The argument to `forward-word', `backward-word' is optional. |
| 4256 | 3746 | ||
| 4257 | It defaults to 1. | 3747 | It defaults to 1. |
| 4258 | 3748 | ||
| 4259 | +++ | ||
| 4260 | *** Argument to `forward-to-indentation' and `backward-to-indentation' is optional. | 3749 | *** Argument to `forward-to-indentation' and `backward-to-indentation' is optional. |
| 4261 | 3750 | ||
| 4262 | It defaults to 1. | 3751 | It defaults to 1. |
| 4263 | 3752 | ||
| 4264 | +++ | ||
| 4265 | *** New function `mouse-on-link-p' tests if a position is in a clickable link. | 3753 | *** New function `mouse-on-link-p' tests if a position is in a clickable link. |
| 4266 | 3754 | ||
| 4267 | This is the function used by the new `mouse-1-click-follows-link' | 3755 | This is the function used by the new `mouse-1-click-follows-link' |
| 4268 | functionality. | 3756 | functionality. |
| 4269 | 3757 | ||
| 4270 | +++ | ||
| 4271 | *** New function `line-number-at-pos' returns the line number of a position. | 3758 | *** New function `line-number-at-pos' returns the line number of a position. |
| 4272 | 3759 | ||
| 4273 | It an optional buffer position argument that defaults to point. | 3760 | It an optional buffer position argument that defaults to point. |
| 4274 | 3761 | ||
| 4275 | +++ | ||
| 4276 | *** `field-beginning' and `field-end' take new optional argument, LIMIT. | 3762 | *** `field-beginning' and `field-end' take new optional argument, LIMIT. |
| 4277 | 3763 | ||
| 4278 | This argument tells them not to search beyond LIMIT. Instead they | 3764 | This argument tells them not to search beyond LIMIT. Instead they |
| 4279 | give up and return LIMIT. | 3765 | give up and return LIMIT. |
| 4280 | 3766 | ||
| 4281 | +++ | ||
| 4282 | *** Function `pos-visible-in-window-p' now returns the pixel coordinates | 3767 | *** Function `pos-visible-in-window-p' now returns the pixel coordinates |
| 4283 | and partial visibility state of the corresponding row, if the PARTIALLY | 3768 | and partial visibility state of the corresponding row, if the PARTIALLY |
| 4284 | arg is non-nil. | 3769 | arg is non-nil. |
| 4285 | 3770 | ||
| 4286 | +++ | ||
| 4287 | *** New function `window-line-height' is an efficient way to get | 3771 | *** New function `window-line-height' is an efficient way to get |
| 4288 | information about a specific text line in a window provided that the | 3772 | information about a specific text line in a window provided that the |
| 4289 | window's display is up-to-date. | 3773 | window's display is up-to-date. |
| 4290 | 3774 | ||
| 4291 | +++ | ||
| 4292 | *** New functions `posn-at-point' and `posn-at-x-y' return | 3775 | *** New functions `posn-at-point' and `posn-at-x-y' return |
| 4293 | click-event-style position information for a given visible buffer | 3776 | click-event-style position information for a given visible buffer |
| 4294 | position or for a given window pixel coordinate. | 3777 | position or for a given window pixel coordinate. |
| 4295 | 3778 | ||
| 4296 | ** Text modification: | 3779 | ** Text modification: |
| 4297 | 3780 | ||
| 4298 | +++ | ||
| 4299 | *** The new function `buffer-chars-modified-tick' returns a buffer's | 3781 | *** The new function `buffer-chars-modified-tick' returns a buffer's |
| 4300 | tick counter for changes to characters. Each time text in that buffer | 3782 | tick counter for changes to characters. Each time text in that buffer |
| 4301 | is inserted or deleted, the character-change counter is updated to the | 3783 | is inserted or deleted, the character-change counter is updated to the |
| 4302 | tick counter (`buffer-modified-tick'). Text property changes leave it | 3784 | tick counter (`buffer-modified-tick'). Text property changes leave it |
| 4303 | unchanged. | 3785 | unchanged. |
| 4304 | 3786 | ||
| 4305 | +++ | ||
| 4306 | *** The new function `insert-for-yank' normally works like `insert', but | 3787 | *** The new function `insert-for-yank' normally works like `insert', but |
| 4307 | removes the text properties in the `yank-excluded-properties' list | 3788 | removes the text properties in the `yank-excluded-properties' list |
| 4308 | and handles the `yank-handler' text property. | 3789 | and handles the `yank-handler' text property. |
| 4309 | 3790 | ||
| 4310 | +++ | ||
| 4311 | *** The new function `insert-buffer-substring-as-yank' is like | 3791 | *** The new function `insert-buffer-substring-as-yank' is like |
| 4312 | `insert-for-yank' except that it gets the text from another buffer as | 3792 | `insert-for-yank' except that it gets the text from another buffer as |
| 4313 | in `insert-buffer-substring'. | 3793 | in `insert-buffer-substring'. |
| 4314 | 3794 | ||
| 4315 | +++ | ||
| 4316 | *** The new function `insert-buffer-substring-no-properties' is like | 3795 | *** The new function `insert-buffer-substring-no-properties' is like |
| 4317 | `insert-buffer-substring', but removes all text properties from the | 3796 | `insert-buffer-substring', but removes all text properties from the |
| 4318 | inserted substring. | 3797 | inserted substring. |
| 4319 | 3798 | ||
| 4320 | +++ | ||
| 4321 | *** The new function `filter-buffer-substring' extracts a buffer | 3799 | *** The new function `filter-buffer-substring' extracts a buffer |
| 4322 | substring, passes it through a set of filter functions, and returns | 3800 | substring, passes it through a set of filter functions, and returns |
| 4323 | the filtered substring. Use it instead of `buffer-substring' or | 3801 | the filtered substring. Use it instead of `buffer-substring' or |
| @@ -4329,33 +3807,27 @@ The list of filter function is specified by the new variable | |||
| 4329 | `buffer-substring-filters' to remove soft newlines from the copied | 3807 | `buffer-substring-filters' to remove soft newlines from the copied |
| 4330 | text. | 3808 | text. |
| 4331 | 3809 | ||
| 4332 | +++ | ||
| 4333 | *** Function `translate-region' accepts also a char-table as TABLE | 3810 | *** Function `translate-region' accepts also a char-table as TABLE |
| 4334 | argument. | 3811 | argument. |
| 4335 | 3812 | ||
| 4336 | +++ | ||
| 4337 | *** The new translation table `translation-table-for-input' | 3813 | *** The new translation table `translation-table-for-input' |
| 4338 | is used for customizing self-insertion. The character to | 3814 | is used for customizing self-insertion. The character to |
| 4339 | be inserted is translated through it. | 3815 | be inserted is translated through it. |
| 4340 | 3816 | ||
| 4341 | --- | ||
| 4342 | *** Text clones. | 3817 | *** Text clones. |
| 4343 | 3818 | ||
| 4344 | The new function `text-clone-create'. Text clones are chunks of text | 3819 | The new function `text-clone-create'. Text clones are chunks of text |
| 4345 | that are kept identical by transparently propagating changes from one | 3820 | that are kept identical by transparently propagating changes from one |
| 4346 | clone to the other. | 3821 | clone to the other. |
| 4347 | 3822 | ||
| 4348 | --- | ||
| 4349 | *** The function `insert-string' is now obsolete. | 3823 | *** The function `insert-string' is now obsolete. |
| 4350 | 3824 | ||
| 4351 | ** Filling changes. | 3825 | ** Filling changes. |
| 4352 | 3826 | ||
| 4353 | +++ | ||
| 4354 | *** In determining an adaptive fill prefix, Emacs now tries the function in | 3827 | *** In determining an adaptive fill prefix, Emacs now tries the function in |
| 4355 | `adaptive-fill-function' _before_ matching the buffer line against | 3828 | `adaptive-fill-function' _before_ matching the buffer line against |
| 4356 | `adaptive-fill-regexp' rather than _after_ it. | 3829 | `adaptive-fill-regexp' rather than _after_ it. |
| 4357 | 3830 | ||
| 4358 | +++ | ||
| 4359 | ** Atomic change groups. | 3831 | ** Atomic change groups. |
| 4360 | 3832 | ||
| 4361 | To perform some changes in the current buffer "atomically" so that | 3833 | To perform some changes in the current buffer "atomically" so that |
| @@ -4415,21 +3887,17 @@ finished. | |||
| 4415 | 3887 | ||
| 4416 | ** Buffer-related changes: | 3888 | ** Buffer-related changes: |
| 4417 | 3889 | ||
| 4418 | --- | ||
| 4419 | *** `list-buffers-noselect' now takes an additional argument, BUFFER-LIST. | 3890 | *** `list-buffers-noselect' now takes an additional argument, BUFFER-LIST. |
| 4420 | 3891 | ||
| 4421 | If it is non-nil, it specifies which buffers to list. | 3892 | If it is non-nil, it specifies which buffers to list. |
| 4422 | 3893 | ||
| 4423 | +++ | ||
| 4424 | *** `kill-buffer-hook' is now a permanent local. | 3894 | *** `kill-buffer-hook' is now a permanent local. |
| 4425 | 3895 | ||
| 4426 | +++ | ||
| 4427 | *** The new function `buffer-local-value' returns the buffer-local | 3896 | *** The new function `buffer-local-value' returns the buffer-local |
| 4428 | binding of VARIABLE (a symbol) in buffer BUFFER. If VARIABLE does not | 3897 | binding of VARIABLE (a symbol) in buffer BUFFER. If VARIABLE does not |
| 4429 | have a buffer-local binding in buffer BUFFER, it returns the default | 3898 | have a buffer-local binding in buffer BUFFER, it returns the default |
| 4430 | value of VARIABLE instead. | 3899 | value of VARIABLE instead. |
| 4431 | 3900 | ||
| 4432 | --- | ||
| 4433 | *** The function `frame-or-buffer-changed-p' now lets you maintain | 3901 | *** The function `frame-or-buffer-changed-p' now lets you maintain |
| 4434 | various status records in parallel. | 3902 | various status records in parallel. |
| 4435 | 3903 | ||
| @@ -4449,7 +3917,6 @@ If the variable is itself nil, then `frame-or-buffer-changed-p' uses, | |||
| 4449 | for compatibility, an internal variable which exists only for this | 3917 | for compatibility, an internal variable which exists only for this |
| 4450 | purpose. | 3918 | purpose. |
| 4451 | 3919 | ||
| 4452 | +++ | ||
| 4453 | *** The function `read-buffer' follows the convention for reading from | 3920 | *** The function `read-buffer' follows the convention for reading from |
| 4454 | the minibuffer with a default value: if DEF is non-nil, the minibuffer | 3921 | the minibuffer with a default value: if DEF is non-nil, the minibuffer |
| 4455 | prompt provided in PROMPT is edited to show the default value provided | 3922 | prompt provided in PROMPT is edited to show the default value provided |
| @@ -4457,12 +3924,10 @@ in DEF before the terminal colon and space. | |||
| 4457 | 3924 | ||
| 4458 | ** Searching and matching changes: | 3925 | ** Searching and matching changes: |
| 4459 | 3926 | ||
| 4460 | +++ | ||
| 4461 | *** New function `looking-back' checks whether a regular expression matches | 3927 | *** New function `looking-back' checks whether a regular expression matches |
| 4462 | the text before point. Specifying the LIMIT argument bounds how far | 3928 | the text before point. Specifying the LIMIT argument bounds how far |
| 4463 | back the match can start; this is a way to keep it from taking too long. | 3929 | back the match can start; this is a way to keep it from taking too long. |
| 4464 | 3930 | ||
| 4465 | +++ | ||
| 4466 | *** The new variable `search-spaces-regexp' controls how to search | 3931 | *** The new variable `search-spaces-regexp' controls how to search |
| 4467 | for spaces in a regular expression. If it is non-nil, it should be a | 3932 | for spaces in a regular expression. If it is non-nil, it should be a |
| 4468 | regular expression, and any series of spaces stands for that regular | 3933 | regular expression, and any series of spaces stands for that regular |
| @@ -4471,36 +3936,29 @@ expression. If it is nil, spaces stand for themselves. | |||
| 4471 | Spaces inside of constructs such as `[..]' and inside loops such as | 3936 | Spaces inside of constructs such as `[..]' and inside loops such as |
| 4472 | `*', `+', and `?' are never replaced with `search-spaces-regexp'. | 3937 | `*', `+', and `?' are never replaced with `search-spaces-regexp'. |
| 4473 | 3938 | ||
| 4474 | +++ | ||
| 4475 | *** New regular expression operators, `\_<' and `\_>'. | 3939 | *** New regular expression operators, `\_<' and `\_>'. |
| 4476 | 3940 | ||
| 4477 | These match the beginning and end of a symbol. A symbol is a | 3941 | These match the beginning and end of a symbol. A symbol is a |
| 4478 | non-empty sequence of either word or symbol constituent characters, as | 3942 | non-empty sequence of either word or symbol constituent characters, as |
| 4479 | specified by the syntax table. | 3943 | specified by the syntax table. |
| 4480 | 3944 | ||
| 4481 | --- | ||
| 4482 | *** rx.el has new corresponding `symbol-start' and `symbol-end' elements. | 3945 | *** rx.el has new corresponding `symbol-start' and `symbol-end' elements. |
| 4483 | 3946 | ||
| 4484 | +++ | ||
| 4485 | *** `skip-chars-forward' and `skip-chars-backward' now handle | 3947 | *** `skip-chars-forward' and `skip-chars-backward' now handle |
| 4486 | character classes such as `[:alpha:]', along with individual | 3948 | character classes such as `[:alpha:]', along with individual |
| 4487 | characters and ranges. | 3949 | characters and ranges. |
| 4488 | 3950 | ||
| 4489 | --- | ||
| 4490 | *** In `replace-match', the replacement text no longer inherits | 3951 | *** In `replace-match', the replacement text no longer inherits |
| 4491 | properties from surrounding text. | 3952 | properties from surrounding text. |
| 4492 | 3953 | ||
| 4493 | +++ | ||
| 4494 | *** The list returned by `(match-data t)' now has the buffer as a final | 3954 | *** The list returned by `(match-data t)' now has the buffer as a final |
| 4495 | element, if the last match was on a buffer. `set-match-data' | 3955 | element, if the last match was on a buffer. `set-match-data' |
| 4496 | accepts such a list for restoring the match state. | 3956 | accepts such a list for restoring the match state. |
| 4497 | 3957 | ||
| 4498 | +++ | ||
| 4499 | *** Functions `match-data' and `set-match-data' now have an optional | 3958 | *** Functions `match-data' and `set-match-data' now have an optional |
| 4500 | argument `reseat'. When non-nil, all markers in the match data list | 3959 | argument `reseat'. When non-nil, all markers in the match data list |
| 4501 | passed to these functions will be reseated to point to nowhere. | 3960 | passed to these functions will be reseated to point to nowhere. |
| 4502 | 3961 | ||
| 4503 | +++ | ||
| 4504 | *** The default value of `sentence-end' is now defined using the new | 3962 | *** The default value of `sentence-end' is now defined using the new |
| 4505 | variable `sentence-end-without-space', which contains such characters | 3963 | variable `sentence-end-without-space', which contains such characters |
| 4506 | that end a sentence without following spaces. | 3964 | that end a sentence without following spaces. |
| @@ -4513,7 +3971,6 @@ this function returns the regexp constructed from the variables | |||
| 4513 | 3971 | ||
| 4514 | ** Undo changes: | 3972 | ** Undo changes: |
| 4515 | 3973 | ||
| 4516 | +++ | ||
| 4517 | *** `buffer-undo-list' allows programmable elements. | 3974 | *** `buffer-undo-list' allows programmable elements. |
| 4518 | 3975 | ||
| 4519 | These elements have the form (apply FUNNAME . ARGS), where FUNNAME is | 3976 | These elements have the form (apply FUNNAME . ARGS), where FUNNAME is |
| @@ -4524,12 +3981,10 @@ These entries can also have the form (apply DELTA BEG END FUNNAME . ARGS) | |||
| 4524 | which indicates that the change which took place was limited to the | 3981 | which indicates that the change which took place was limited to the |
| 4525 | range BEG...END and increased the buffer size by DELTA. | 3982 | range BEG...END and increased the buffer size by DELTA. |
| 4526 | 3983 | ||
| 4527 | +++ | ||
| 4528 | *** If the buffer's undo list for the current command gets longer than | 3984 | *** If the buffer's undo list for the current command gets longer than |
| 4529 | `undo-outer-limit', garbage collection empties it. This is to prevent | 3985 | `undo-outer-limit', garbage collection empties it. This is to prevent |
| 4530 | it from using up the available memory and choking Emacs. | 3986 | it from using up the available memory and choking Emacs. |
| 4531 | 3987 | ||
| 4532 | +++ | ||
| 4533 | ** New `yank-handler' text property can be used to control how | 3988 | ** New `yank-handler' text property can be used to control how |
| 4534 | previously killed text on the kill ring is reinserted. | 3989 | previously killed text on the kill ring is reinserted. |
| 4535 | 3990 | ||
| @@ -4574,70 +4029,56 @@ string. The old behavior is available if you call | |||
| 4574 | 4029 | ||
| 4575 | ** Syntax table changes: | 4030 | ** Syntax table changes: |
| 4576 | 4031 | ||
| 4577 | +++ | ||
| 4578 | *** The macro `with-syntax-table' no longer copies the syntax table. | 4032 | *** The macro `with-syntax-table' no longer copies the syntax table. |
| 4579 | 4033 | ||
| 4580 | +++ | ||
| 4581 | *** The new function `syntax-after' returns the syntax code | 4034 | *** The new function `syntax-after' returns the syntax code |
| 4582 | of the character after a specified buffer position, taking account | 4035 | of the character after a specified buffer position, taking account |
| 4583 | of text properties as well as the character code. | 4036 | of text properties as well as the character code. |
| 4584 | 4037 | ||
| 4585 | +++ | ||
| 4586 | *** `syntax-class' extracts the class of a syntax code (as returned | 4038 | *** `syntax-class' extracts the class of a syntax code (as returned |
| 4587 | by `syntax-after'). | 4039 | by `syntax-after'). |
| 4588 | 4040 | ||
| 4589 | +++ | ||
| 4590 | *** The new function `syntax-ppss' provides an efficient way to find the | 4041 | *** The new function `syntax-ppss' provides an efficient way to find the |
| 4591 | current syntactic context at point. | 4042 | current syntactic context at point. |
| 4592 | 4043 | ||
| 4593 | ** File operation changes: | 4044 | ** File operation changes: |
| 4594 | 4045 | ||
| 4595 | +++ | ||
| 4596 | *** New vars `exec-suffixes' and `load-suffixes' used when | 4046 | *** New vars `exec-suffixes' and `load-suffixes' used when |
| 4597 | searching for an executable or an Emacs Lisp file. | 4047 | searching for an executable or an Emacs Lisp file. |
| 4598 | 4048 | ||
| 4599 | +++ | ||
| 4600 | *** The new primitive `set-file-times' sets a file's access and | 4049 | *** The new primitive `set-file-times' sets a file's access and |
| 4601 | modification times. Magic file name handlers can handle this | 4050 | modification times. Magic file name handlers can handle this |
| 4602 | operation. | 4051 | operation. |
| 4603 | 4052 | ||
| 4604 | +++ | ||
| 4605 | *** The new function `file-remote-p' tests a file name and returns | 4053 | *** The new function `file-remote-p' tests a file name and returns |
| 4606 | non-nil if it specifies a remote file (one that Emacs accesses using | 4054 | non-nil if it specifies a remote file (one that Emacs accesses using |
| 4607 | its own special methods and not directly through the file system). | 4055 | its own special methods and not directly through the file system). |
| 4608 | The value in that case is an identifier for the remote file system. | 4056 | The value in that case is an identifier for the remote file system. |
| 4609 | 4057 | ||
| 4610 | +++ | ||
| 4611 | *** `buffer-auto-save-file-format' is the new name for what was | 4058 | *** `buffer-auto-save-file-format' is the new name for what was |
| 4612 | formerly called `auto-save-file-format'. It is now a permanent local. | 4059 | formerly called `auto-save-file-format'. It is now a permanent local. |
| 4613 | 4060 | ||
| 4614 | +++ | ||
| 4615 | *** Functions `file-name-sans-extension' and `file-name-extension' now | 4061 | *** Functions `file-name-sans-extension' and `file-name-extension' now |
| 4616 | ignore the leading dots in file names, so that file names such as | 4062 | ignore the leading dots in file names, so that file names such as |
| 4617 | `.emacs' are treated as extensionless. | 4063 | `.emacs' are treated as extensionless. |
| 4618 | 4064 | ||
| 4619 | +++ | ||
| 4620 | *** `visited-file-modtime' and `calendar-time-from-absolute' now return | 4065 | *** `visited-file-modtime' and `calendar-time-from-absolute' now return |
| 4621 | a list of two integers, instead of a cons. | 4066 | a list of two integers, instead of a cons. |
| 4622 | 4067 | ||
| 4623 | +++ | ||
| 4624 | *** `file-chase-links' now takes an optional second argument LIMIT which | 4068 | *** `file-chase-links' now takes an optional second argument LIMIT which |
| 4625 | specifies the maximum number of links to chase through. If after that | 4069 | specifies the maximum number of links to chase through. If after that |
| 4626 | many iterations the file name obtained is still a symbolic link, | 4070 | many iterations the file name obtained is still a symbolic link, |
| 4627 | `file-chase-links' returns it anyway. | 4071 | `file-chase-links' returns it anyway. |
| 4628 | 4072 | ||
| 4629 | +++ | ||
| 4630 | *** The new hook `before-save-hook' is invoked by `basic-save-buffer' | 4073 | *** The new hook `before-save-hook' is invoked by `basic-save-buffer' |
| 4631 | before saving buffers. This allows packages to perform various final | 4074 | before saving buffers. This allows packages to perform various final |
| 4632 | tasks. For example, it can be used by the copyright package to make | 4075 | tasks. For example, it can be used by the copyright package to make |
| 4633 | sure saved files have the current year in any copyright headers. | 4076 | sure saved files have the current year in any copyright headers. |
| 4634 | 4077 | ||
| 4635 | +++ | ||
| 4636 | *** If `buffer-save-without-query' is non-nil in some buffer, | 4078 | *** If `buffer-save-without-query' is non-nil in some buffer, |
| 4637 | `save-some-buffers' will always save that buffer without asking (if | 4079 | `save-some-buffers' will always save that buffer without asking (if |
| 4638 | it's modified). | 4080 | it's modified). |
| 4639 | 4081 | ||
| 4640 | +++ | ||
| 4641 | *** New function `locate-file' searches for a file in a list of directories. | 4082 | *** New function `locate-file' searches for a file in a list of directories. |
| 4642 | `locate-file' accepts a name of a file to search (a string), and two | 4083 | `locate-file' accepts a name of a file to search (a string), and two |
| 4643 | lists: a list of directories to search in and a list of suffixes to | 4084 | lists: a list of directories to search in and a list of suffixes to |
| @@ -4650,7 +4091,6 @@ One advantage of using this function is that the list of suffixes in | |||
| 4650 | `exec-suffixes' is OS-dependant, so this function will find | 4091 | `exec-suffixes' is OS-dependant, so this function will find |
| 4651 | executables without polluting Lisp code with OS dependencies. | 4092 | executables without polluting Lisp code with OS dependencies. |
| 4652 | 4093 | ||
| 4653 | --- | ||
| 4654 | *** The precedence of file name handlers has been changed. | 4094 | *** The precedence of file name handlers has been changed. |
| 4655 | 4095 | ||
| 4656 | Instead of choosing the first handler that matches, | 4096 | Instead of choosing the first handler that matches, |
| @@ -4659,7 +4099,6 @@ that matches nearest the end of the file name. More precisely, the | |||
| 4659 | handler whose (match-beginning 0) is the largest is chosen. In case | 4099 | handler whose (match-beginning 0) is the largest is chosen. In case |
| 4660 | of ties, the old "first matched" rule applies. | 4100 | of ties, the old "first matched" rule applies. |
| 4661 | 4101 | ||
| 4662 | +++ | ||
| 4663 | *** A file name handler can declare which operations it handles. | 4102 | *** A file name handler can declare which operations it handles. |
| 4664 | 4103 | ||
| 4665 | You do this by putting an `operation' property on the handler name | 4104 | You do this by putting an `operation' property on the handler name |
| @@ -4670,81 +4109,66 @@ operations. | |||
| 4670 | This is useful for autoloaded handlers, to prevent them from being | 4109 | This is useful for autoloaded handlers, to prevent them from being |
| 4671 | autoloaded when not really necessary. | 4110 | autoloaded when not really necessary. |
| 4672 | 4111 | ||
| 4673 | +++ | ||
| 4674 | *** The function `make-auto-save-file-name' is now handled by file | 4112 | *** The function `make-auto-save-file-name' is now handled by file |
| 4675 | name handlers. This will be exploited for remote files mainly. | 4113 | name handlers. This will be exploited for remote files mainly. |
| 4676 | 4114 | ||
| 4677 | +++ | ||
| 4678 | *** The function `file-name-completion' accepts an optional argument | 4115 | *** The function `file-name-completion' accepts an optional argument |
| 4679 | PREDICATE, and rejects completion candidates that don't satisfy PREDICATE. | 4116 | PREDICATE, and rejects completion candidates that don't satisfy PREDICATE. |
| 4680 | 4117 | ||
| 4681 | ** Input changes: | 4118 | ** Input changes: |
| 4682 | 4119 | ||
| 4683 | +++ | ||
| 4684 | *** The functions `read-event', `read-char', and `read-char-exclusive' | 4120 | *** The functions `read-event', `read-char', and `read-char-exclusive' |
| 4685 | have a new optional argument SECONDS. If non-nil, this specifies a | 4121 | have a new optional argument SECONDS. If non-nil, this specifies a |
| 4686 | maximum time to wait for input, in seconds. If no input arrives after | 4122 | maximum time to wait for input, in seconds. If no input arrives after |
| 4687 | this time elapses, the functions stop waiting and return nil. | 4123 | this time elapses, the functions stop waiting and return nil. |
| 4688 | 4124 | ||
| 4689 | +++ | ||
| 4690 | *** An interactive specification can now use the code letter `U' to get | 4125 | *** An interactive specification can now use the code letter `U' to get |
| 4691 | the up-event that was discarded in case the last key sequence read for a | 4126 | the up-event that was discarded in case the last key sequence read for a |
| 4692 | previous `k' or `K' argument was a down-event; otherwise nil is used. | 4127 | previous `k' or `K' argument was a down-event; otherwise nil is used. |
| 4693 | 4128 | ||
| 4694 | +++ | ||
| 4695 | *** The new interactive-specification `G' reads a file name | 4129 | *** The new interactive-specification `G' reads a file name |
| 4696 | much like `F', but if the input is a directory name (even defaulted), | 4130 | much like `F', but if the input is a directory name (even defaulted), |
| 4697 | it returns just the directory name. | 4131 | it returns just the directory name. |
| 4698 | 4132 | ||
| 4699 | --- | ||
| 4700 | *** Functions `y-or-n-p', `read-char', `read-key-sequence' and the like, that | 4133 | *** Functions `y-or-n-p', `read-char', `read-key-sequence' and the like, that |
| 4701 | display a prompt but don't use the minibuffer, now display the prompt | 4134 | display a prompt but don't use the minibuffer, now display the prompt |
| 4702 | using the text properties (esp. the face) of the prompt string. | 4135 | using the text properties (esp. the face) of the prompt string. |
| 4703 | 4136 | ||
| 4704 | +++ | ||
| 4705 | *** (while-no-input BODY...) runs BODY, but only so long as no input | 4137 | *** (while-no-input BODY...) runs BODY, but only so long as no input |
| 4706 | arrives. If the user types or clicks anything, BODY stops as if a | 4138 | arrives. If the user types or clicks anything, BODY stops as if a |
| 4707 | quit had occurred. `while-no-input' returns the value of BODY, if BODY | 4139 | quit had occurred. `while-no-input' returns the value of BODY, if BODY |
| 4708 | finishes. It returns nil if BODY was aborted by a quit, and t if | 4140 | finishes. It returns nil if BODY was aborted by a quit, and t if |
| 4709 | BODY was aborted by arrival of input. | 4141 | BODY was aborted by arrival of input. |
| 4710 | 4142 | ||
| 4711 | +++ | ||
| 4712 | *** `recent-keys' now returns the last 300 keys. | 4143 | *** `recent-keys' now returns the last 300 keys. |
| 4713 | 4144 | ||
| 4714 | ** Minibuffer changes: | 4145 | ** Minibuffer changes: |
| 4715 | 4146 | ||
| 4716 | +++ | ||
| 4717 | *** The new function `minibufferp' returns non-nil if its optional | 4147 | *** The new function `minibufferp' returns non-nil if its optional |
| 4718 | buffer argument is a minibuffer. If the argument is omitted, it | 4148 | buffer argument is a minibuffer. If the argument is omitted, it |
| 4719 | defaults to the current buffer. | 4149 | defaults to the current buffer. |
| 4720 | 4150 | ||
| 4721 | +++ | ||
| 4722 | *** New function `minibuffer-selected-window' returns the window which | 4151 | *** New function `minibuffer-selected-window' returns the window which |
| 4723 | was selected when entering the minibuffer. | 4152 | was selected when entering the minibuffer. |
| 4724 | 4153 | ||
| 4725 | +++ | ||
| 4726 | *** The `read-file-name' function now takes an additional argument which | 4154 | *** The `read-file-name' function now takes an additional argument which |
| 4727 | specifies a predicate which the file name read must satisfy. The | 4155 | specifies a predicate which the file name read must satisfy. The |
| 4728 | new variable `read-file-name-predicate' contains the predicate argument | 4156 | new variable `read-file-name-predicate' contains the predicate argument |
| 4729 | while reading the file name from the minibuffer; the predicate in this | 4157 | while reading the file name from the minibuffer; the predicate in this |
| 4730 | variable is used by read-file-name-internal to filter the completion list. | 4158 | variable is used by read-file-name-internal to filter the completion list. |
| 4731 | 4159 | ||
| 4732 | --- | ||
| 4733 | *** The new variable `read-file-name-function' can be used by Lisp code | 4160 | *** The new variable `read-file-name-function' can be used by Lisp code |
| 4734 | to override the built-in `read-file-name' function. | 4161 | to override the built-in `read-file-name' function. |
| 4735 | 4162 | ||
| 4736 | +++ | ||
| 4737 | *** The new variable `read-file-name-completion-ignore-case' specifies | 4163 | *** The new variable `read-file-name-completion-ignore-case' specifies |
| 4738 | whether completion ignores case when reading a file name with the | 4164 | whether completion ignores case when reading a file name with the |
| 4739 | `read-file-name' function. | 4165 | `read-file-name' function. |
| 4740 | 4166 | ||
| 4741 | +++ | ||
| 4742 | *** The new function `read-directory-name' is for reading a directory name. | 4167 | *** The new function `read-directory-name' is for reading a directory name. |
| 4743 | 4168 | ||
| 4744 | It is like `read-file-name' except that the defaulting works better | 4169 | It is like `read-file-name' except that the defaulting works better |
| 4745 | for directories, and completion inside it shows only directories. | 4170 | for directories, and completion inside it shows only directories. |
| 4746 | 4171 | ||
| 4747 | +++ | ||
| 4748 | *** The new variable `history-add-new-input' specifies whether to add new | 4172 | *** The new variable `history-add-new-input' specifies whether to add new |
| 4749 | elements in history. If set to nil, minibuffer reading functions don't | 4173 | elements in history. If set to nil, minibuffer reading functions don't |
| 4750 | add new elements to the history list, so it is possible to do this | 4174 | add new elements to the history list, so it is possible to do this |
| @@ -4752,19 +4176,16 @@ afterwards by calling `add-to-history' explicitly. | |||
| 4752 | 4176 | ||
| 4753 | ** Completion changes: | 4177 | ** Completion changes: |
| 4754 | 4178 | ||
| 4755 | +++ | ||
| 4756 | *** The new function `minibuffer-completion-contents' returns the contents | 4179 | *** The new function `minibuffer-completion-contents' returns the contents |
| 4757 | of the minibuffer just before point. That is what completion commands | 4180 | of the minibuffer just before point. That is what completion commands |
| 4758 | operate on. | 4181 | operate on. |
| 4759 | 4182 | ||
| 4760 | +++ | ||
| 4761 | *** The functions `all-completions' and `try-completion' now accept lists | 4183 | *** The functions `all-completions' and `try-completion' now accept lists |
| 4762 | of strings as well as hash-tables additionally to alists, obarrays | 4184 | of strings as well as hash-tables additionally to alists, obarrays |
| 4763 | and functions. Furthermore, the function `test-completion' is now | 4185 | and functions. Furthermore, the function `test-completion' is now |
| 4764 | exported to Lisp. The keys in alists and hash tables can be either | 4186 | exported to Lisp. The keys in alists and hash tables can be either |
| 4765 | strings or symbols, which are automatically converted with to strings. | 4187 | strings or symbols, which are automatically converted with to strings. |
| 4766 | 4188 | ||
| 4767 | +++ | ||
| 4768 | *** The new macro `dynamic-completion-table' supports using functions | 4189 | *** The new macro `dynamic-completion-table' supports using functions |
| 4769 | as a dynamic completion table. | 4190 | as a dynamic completion table. |
| 4770 | 4191 | ||
| @@ -4777,7 +4198,6 @@ can ignore the value of its argument. If completion is performed in the | |||
| 4777 | minibuffer, FUN will be called in the buffer from which the minibuffer was | 4198 | minibuffer, FUN will be called in the buffer from which the minibuffer was |
| 4778 | entered. `dynamic-completion-table' then computes the completion. | 4199 | entered. `dynamic-completion-table' then computes the completion. |
| 4779 | 4200 | ||
| 4780 | +++ | ||
| 4781 | *** The new macro `lazy-completion-table' initializes a variable | 4201 | *** The new macro `lazy-completion-table' initializes a variable |
| 4782 | as a lazy completion table. | 4202 | as a lazy completion table. |
| 4783 | 4203 | ||
| @@ -4790,7 +4210,6 @@ If completion is requested in the minibuffer, FUN will be called in the buffer | |||
| 4790 | from which the minibuffer was entered. The return value of | 4210 | from which the minibuffer was entered. The return value of |
| 4791 | `lazy-completion-table' must be used to initialize the value of VAR. | 4211 | `lazy-completion-table' must be used to initialize the value of VAR. |
| 4792 | 4212 | ||
| 4793 | +++ | ||
| 4794 | ** Enhancements to keymaps. | 4213 | ** Enhancements to keymaps. |
| 4795 | 4214 | ||
| 4796 | *** New keymaps for typing file names | 4215 | *** New keymaps for typing file names |
| @@ -4909,12 +4328,10 @@ key-sequences, such as [(control a)]. | |||
| 4909 | 4328 | ||
| 4910 | ** Abbrev changes: | 4329 | ** Abbrev changes: |
| 4911 | 4330 | ||
| 4912 | +++ | ||
| 4913 | *** The new function `copy-abbrev-table' copies an abbrev table. | 4331 | *** The new function `copy-abbrev-table' copies an abbrev table. |
| 4914 | 4332 | ||
| 4915 | It returns a new abbrev table that is a copy of a given abbrev table. | 4333 | It returns a new abbrev table that is a copy of a given abbrev table. |
| 4916 | 4334 | ||
| 4917 | +++ | ||
| 4918 | *** `define-abbrev' now accepts an optional argument SYSTEM-FLAG. | 4335 | *** `define-abbrev' now accepts an optional argument SYSTEM-FLAG. |
| 4919 | 4336 | ||
| 4920 | If non-nil, this marks the abbrev as a "system" abbrev, which means | 4337 | If non-nil, this marks the abbrev as a "system" abbrev, which means |
| @@ -4922,7 +4339,6 @@ that it won't be stored in the user's abbrevs file if he saves the | |||
| 4922 | abbrevs. Major modes that predefine some abbrevs should always | 4339 | abbrevs. Major modes that predefine some abbrevs should always |
| 4923 | specify this flag. | 4340 | specify this flag. |
| 4924 | 4341 | ||
| 4925 | +++ | ||
| 4926 | ** Enhancements to process support | 4342 | ** Enhancements to process support |
| 4927 | 4343 | ||
| 4928 | *** Function `list-processes' now has an optional argument; if non-nil, | 4344 | *** Function `list-processes' now has an optional argument; if non-nil, |
| @@ -4989,7 +4405,6 @@ to multibyte by `string-to-multibyte' then inserted in the buffer. | |||
| 4989 | Previously, it was converted to multibyte by `string-as-multibyte', | 4405 | Previously, it was converted to multibyte by `string-as-multibyte', |
| 4990 | which was not compatible with the behavior of file reading. | 4406 | which was not compatible with the behavior of file reading. |
| 4991 | 4407 | ||
| 4992 | +++ | ||
| 4993 | ** Enhanced networking support. | 4408 | ** Enhanced networking support. |
| 4994 | 4409 | ||
| 4995 | *** The new `make-network-process' function makes network connections. | 4410 | *** The new `make-network-process' function makes network connections. |
| @@ -5061,13 +4476,11 @@ connection is closed by the remote peer has been changed to | |||
| 5061 | 4476 | ||
| 5062 | ** Using window objects: | 4477 | ** Using window objects: |
| 5063 | 4478 | ||
| 5064 | +++ | ||
| 5065 | *** New function `window-body-height'. | 4479 | *** New function `window-body-height'. |
| 5066 | 4480 | ||
| 5067 | This is like `window-height' but does not count the mode line or the | 4481 | This is like `window-height' but does not count the mode line or the |
| 5068 | header line. | 4482 | header line. |
| 5069 | 4483 | ||
| 5070 | +++ | ||
| 5071 | *** You can now make a window as short as one line. | 4484 | *** You can now make a window as short as one line. |
| 5072 | 4485 | ||
| 5073 | A window that is just one line tall does not display either a mode | 4486 | A window that is just one line tall does not display either a mode |
| @@ -5076,51 +4489,41 @@ line or a header line, even if the variables `mode-line-format' and | |||
| 5076 | cannot display both a mode line and a header line at once; if the | 4489 | cannot display both a mode line and a header line at once; if the |
| 5077 | variables call for both, only the mode line actually appears. | 4490 | variables call for both, only the mode line actually appears. |
| 5078 | 4491 | ||
| 5079 | +++ | ||
| 5080 | *** The new function `window-inside-edges' returns the edges of the | 4492 | *** The new function `window-inside-edges' returns the edges of the |
| 5081 | actual text portion of the window, not including the scroll bar or | 4493 | actual text portion of the window, not including the scroll bar or |
| 5082 | divider line, the fringes, the display margins, the header line and | 4494 | divider line, the fringes, the display margins, the header line and |
| 5083 | the mode line. | 4495 | the mode line. |
| 5084 | 4496 | ||
| 5085 | +++ | ||
| 5086 | *** The new functions `window-pixel-edges' and `window-inside-pixel-edges' | 4497 | *** The new functions `window-pixel-edges' and `window-inside-pixel-edges' |
| 5087 | return window edges in units of pixels, rather than columns and lines. | 4498 | return window edges in units of pixels, rather than columns and lines. |
| 5088 | 4499 | ||
| 5089 | +++ | ||
| 5090 | *** The new macro `with-selected-window' temporarily switches the | 4500 | *** The new macro `with-selected-window' temporarily switches the |
| 5091 | selected window without impacting the order of `buffer-list'. | 4501 | selected window without impacting the order of `buffer-list'. |
| 5092 | It saves and restores the current buffer, too. | 4502 | It saves and restores the current buffer, too. |
| 5093 | 4503 | ||
| 5094 | +++ | ||
| 5095 | *** `select-window' takes an optional second argument NORECORD. | 4504 | *** `select-window' takes an optional second argument NORECORD. |
| 5096 | 4505 | ||
| 5097 | This is like `switch-to-buffer'. | 4506 | This is like `switch-to-buffer'. |
| 5098 | 4507 | ||
| 5099 | +++ | ||
| 5100 | *** `save-selected-window' now saves and restores the selected window | 4508 | *** `save-selected-window' now saves and restores the selected window |
| 5101 | of every frame. This way, it restores everything that can be changed | 4509 | of every frame. This way, it restores everything that can be changed |
| 5102 | by calling `select-window'. It also saves and restores the current | 4510 | by calling `select-window'. It also saves and restores the current |
| 5103 | buffer. | 4511 | buffer. |
| 5104 | 4512 | ||
| 5105 | +++ | ||
| 5106 | *** `set-window-buffer' has an optional argument KEEP-MARGINS. | 4513 | *** `set-window-buffer' has an optional argument KEEP-MARGINS. |
| 5107 | 4514 | ||
| 5108 | If non-nil, that says to preserve the window's current margin, fringe, | 4515 | If non-nil, that says to preserve the window's current margin, fringe, |
| 5109 | and scroll-bar settings. | 4516 | and scroll-bar settings. |
| 5110 | 4517 | ||
| 5111 | +++ | ||
| 5112 | *** The new function `window-tree' returns a frame's window tree. | 4518 | *** The new function `window-tree' returns a frame's window tree. |
| 5113 | 4519 | ||
| 5114 | +++ | ||
| 5115 | *** The functions `get-lru-window' and `get-largest-window' take an optional | 4520 | *** The functions `get-lru-window' and `get-largest-window' take an optional |
| 5116 | argument `dedicated'. If non-nil, those functions do not ignore | 4521 | argument `dedicated'. If non-nil, those functions do not ignore |
| 5117 | dedicated windows. | 4522 | dedicated windows. |
| 5118 | 4523 | ||
| 5119 | +++ | ||
| 5120 | *** The new function `adjust-window-trailing-edge' moves the right | 4524 | *** The new function `adjust-window-trailing-edge' moves the right |
| 5121 | or bottom edge of a window. It does not move other window edges. | 4525 | or bottom edge of a window. It does not move other window edges. |
| 5122 | 4526 | ||
| 5123 | +++ | ||
| 5124 | ** Customizable fringe bitmaps | 4527 | ** Customizable fringe bitmaps |
| 5125 | 4528 | ||
| 5126 | *** New buffer-local variables `fringe-indicator-alist' and | 4529 | *** New buffer-local variables `fringe-indicator-alist' and |
| @@ -5156,7 +4559,6 @@ bitmaps in the display line at a given buffer position. | |||
| 5156 | 4559 | ||
| 5157 | ** Other window fringe features: | 4560 | ** Other window fringe features: |
| 5158 | 4561 | ||
| 5159 | +++ | ||
| 5160 | *** Controlling the default left and right fringe widths. | 4562 | *** Controlling the default left and right fringe widths. |
| 5161 | 4563 | ||
| 5162 | The default left and right fringe widths for all windows of a frame | 4564 | The default left and right fringe widths for all windows of a frame |
| @@ -5176,7 +4578,6 @@ width which is the minimum number of pixels necessary to display any | |||
| 5176 | of the currently defined fringe bitmaps. The width of the built-in | 4578 | of the currently defined fringe bitmaps. The width of the built-in |
| 5177 | fringe bitmaps is 8 pixels. | 4579 | fringe bitmaps is 8 pixels. |
| 5178 | 4580 | ||
| 5179 | +++ | ||
| 5180 | *** Per-window fringe and scrollbar settings | 4581 | *** Per-window fringe and scrollbar settings |
| 5181 | 4582 | ||
| 5182 | **** Windows can now have their own individual fringe widths and | 4583 | **** Windows can now have their own individual fringe widths and |
| @@ -5210,25 +4611,20 @@ of the display margins. | |||
| 5210 | 4611 | ||
| 5211 | ** Redisplay features: | 4612 | ** Redisplay features: |
| 5212 | 4613 | ||
| 5213 | +++ | ||
| 5214 | *** `sit-for' can now be called with args (SECONDS &optional NODISP). | 4614 | *** `sit-for' can now be called with args (SECONDS &optional NODISP). |
| 5215 | 4615 | ||
| 5216 | +++ | ||
| 5217 | *** Iconifying or deiconifying a frame no longer makes sit-for return. | 4616 | *** Iconifying or deiconifying a frame no longer makes sit-for return. |
| 5218 | 4617 | ||
| 5219 | +++ | ||
| 5220 | *** New function `redisplay' causes an immediate redisplay if no input is | 4618 | *** New function `redisplay' causes an immediate redisplay if no input is |
| 5221 | available, equivalent to (sit-for 0). The call (redisplay t) forces | 4619 | available, equivalent to (sit-for 0). The call (redisplay t) forces |
| 5222 | an immediate redisplay even if input is pending. | 4620 | an immediate redisplay even if input is pending. |
| 5223 | 4621 | ||
| 5224 | +++ | ||
| 5225 | *** New function `force-window-update' can initiate a full redisplay of | 4622 | *** New function `force-window-update' can initiate a full redisplay of |
| 5226 | one or all windows. Normally, this is not needed as changes in window | 4623 | one or all windows. Normally, this is not needed as changes in window |
| 5227 | contents are detected automatically. However, certain implicit | 4624 | contents are detected automatically. However, certain implicit |
| 5228 | changes to mode lines, header lines, or display properties may require | 4625 | changes to mode lines, header lines, or display properties may require |
| 5229 | forcing an explicit window update. | 4626 | forcing an explicit window update. |
| 5230 | 4627 | ||
| 5231 | +++ | ||
| 5232 | *** (char-displayable-p CHAR) returns non-nil if Emacs ought to be able | 4628 | *** (char-displayable-p CHAR) returns non-nil if Emacs ought to be able |
| 5233 | to display CHAR. More precisely, if the selected frame's fontset has | 4629 | to display CHAR. More precisely, if the selected frame's fontset has |
| 5234 | a font to display the character set that CHAR belongs to. | 4630 | a font to display the character set that CHAR belongs to. |
| @@ -5236,7 +4632,6 @@ a font to display the character set that CHAR belongs to. | |||
| 5236 | Fontsets can specify a font on a per-character basis; when the fontset | 4632 | Fontsets can specify a font on a per-character basis; when the fontset |
| 5237 | does that, this value cannot be accurate. | 4633 | does that, this value cannot be accurate. |
| 5238 | 4634 | ||
| 5239 | +++ | ||
| 5240 | *** You can define multiple overlay arrows via the new | 4635 | *** You can define multiple overlay arrows via the new |
| 5241 | variable `overlay-arrow-variable-list'. | 4636 | variable `overlay-arrow-variable-list'. |
| 5242 | 4637 | ||
| @@ -5250,7 +4645,6 @@ systems) to display at the corresponding overlay arrow position. | |||
| 5250 | If either property is not set, the default `overlay-arrow-string' or | 4645 | If either property is not set, the default `overlay-arrow-string' or |
| 5251 | 'overlay-arrow-fringe-bitmap' will be used. | 4646 | 'overlay-arrow-fringe-bitmap' will be used. |
| 5252 | 4647 | ||
| 5253 | +++ | ||
| 5254 | *** New `line-height' and `line-spacing' properties for newline characters | 4648 | *** New `line-height' and `line-spacing' properties for newline characters |
| 5255 | 4649 | ||
| 5256 | A newline can now have `line-height' and `line-spacing' text or overlay | 4650 | A newline can now have `line-height' and `line-spacing' text or overlay |
| @@ -5291,11 +4685,9 @@ the `line-spacing' variable. | |||
| 5291 | If the `line-spacing' property is a float or cons, the line spacing | 4685 | If the `line-spacing' property is a float or cons, the line spacing |
| 5292 | is calculated as specified above for the `line-height' property. | 4686 | is calculated as specified above for the `line-height' property. |
| 5293 | 4687 | ||
| 5294 | +++ | ||
| 5295 | *** The buffer local `line-spacing' variable can now have a float value, | 4688 | *** The buffer local `line-spacing' variable can now have a float value, |
| 5296 | which is used as a height relative to the default frame line height. | 4689 | which is used as a height relative to the default frame line height. |
| 5297 | 4690 | ||
| 5298 | +++ | ||
| 5299 | *** Enhancements to stretch display properties | 4691 | *** Enhancements to stretch display properties |
| 5300 | 4692 | ||
| 5301 | The display property stretch specification form `(space PROPS)', where | 4693 | The display property stretch specification form `(space PROPS)', where |
| @@ -5352,17 +4744,14 @@ height) of the specified image. | |||
| 5352 | The form `(+ EXPR ...)' adds up the value of the expressions. | 4744 | The form `(+ EXPR ...)' adds up the value of the expressions. |
| 5353 | The form `(- EXPR ...)' negates or subtracts the value of the expressions. | 4745 | The form `(- EXPR ...)' negates or subtracts the value of the expressions. |
| 5354 | 4746 | ||
| 5355 | +++ | ||
| 5356 | *** Normally, the cursor is displayed at the end of any overlay and | 4747 | *** Normally, the cursor is displayed at the end of any overlay and |
| 5357 | text property string that may be present at the current window | 4748 | text property string that may be present at the current window |
| 5358 | position. The cursor can now be placed on any character of such | 4749 | position. The cursor can now be placed on any character of such |
| 5359 | strings by giving that character a non-nil `cursor' text property. | 4750 | strings by giving that character a non-nil `cursor' text property. |
| 5360 | 4751 | ||
| 5361 | +++ | ||
| 5362 | *** The display space :width and :align-to text properties are now | 4752 | *** The display space :width and :align-to text properties are now |
| 5363 | supported on text terminals. | 4753 | supported on text terminals. |
| 5364 | 4754 | ||
| 5365 | +++ | ||
| 5366 | *** Support for displaying image slices | 4755 | *** Support for displaying image slices |
| 5367 | 4756 | ||
| 5368 | **** New display property (slice X Y WIDTH HEIGHT) can be used with | 4757 | **** New display property (slice X Y WIDTH HEIGHT) can be used with |
| @@ -5374,7 +4763,6 @@ specify image slice (X Y WIDTH HEIGHT). | |||
| 5374 | **** New function `insert-sliced-image' inserts a given image as a | 4763 | **** New function `insert-sliced-image' inserts a given image as a |
| 5375 | specified number of evenly sized slices (rows x columns). | 4764 | specified number of evenly sized slices (rows x columns). |
| 5376 | 4765 | ||
| 5377 | +++ | ||
| 5378 | *** Images can now have an associated image map via the :map property. | 4766 | *** Images can now have an associated image map via the :map property. |
| 5379 | 4767 | ||
| 5380 | An image map is an alist where each element has the format (AREA ID PLIST). | 4768 | An image map is an alist where each element has the format (AREA ID PLIST). |
| @@ -5397,7 +4785,6 @@ When you click the mouse when the mouse pointer is over a hot-spot, | |||
| 5397 | an event is composed by combining the ID of the hot-spot with the | 4785 | an event is composed by combining the ID of the hot-spot with the |
| 5398 | mouse event, e.g. [area4 mouse-1] if the hot-spot's ID is `area4'. | 4786 | mouse event, e.g. [area4 mouse-1] if the hot-spot's ID is `area4'. |
| 5399 | 4787 | ||
| 5400 | +++ | ||
| 5401 | *** The function `find-image' now searches in etc/images/ and etc/. | 4788 | *** The function `find-image' now searches in etc/images/ and etc/. |
| 5402 | The new variable `image-load-path' is a list of locations in which to | 4789 | The new variable `image-load-path' is a list of locations in which to |
| 5403 | search for image files. The default is to search in etc/images, then | 4790 | search for image files. The default is to search in etc/images, then |
| @@ -5411,80 +4798,62 @@ explicitly; for example, if an image is put in etc/images/foo/bar.xpm: | |||
| 5411 | Note that all images formerly located in the lisp directory have been | 4798 | Note that all images formerly located in the lisp directory have been |
| 5412 | moved to etc/images. | 4799 | moved to etc/images. |
| 5413 | 4800 | ||
| 5414 | +++ | ||
| 5415 | *** New function `image-load-path-for-library' returns a suitable | 4801 | *** New function `image-load-path-for-library' returns a suitable |
| 5416 | search path for images relative to library. This function is useful in | 4802 | search path for images relative to library. This function is useful in |
| 5417 | external packages to save users from having to update | 4803 | external packages to save users from having to update |
| 5418 | `image-load-path'. | 4804 | `image-load-path'. |
| 5419 | 4805 | ||
| 5420 | +++ | ||
| 5421 | *** The new variable `max-image-size' defines the maximum size of | 4806 | *** The new variable `max-image-size' defines the maximum size of |
| 5422 | images that Emacs will load and display. | 4807 | images that Emacs will load and display. |
| 5423 | 4808 | ||
| 5424 | +++ | ||
| 5425 | *** The new variable `display-mm-dimensions-alist' can be used to | 4809 | *** The new variable `display-mm-dimensions-alist' can be used to |
| 5426 | override incorrect graphical display dimensions returned by functions | 4810 | override incorrect graphical display dimensions returned by functions |
| 5427 | `display-mm-height' and `display-mm-width'. | 4811 | `display-mm-height' and `display-mm-width'. |
| 5428 | 4812 | ||
| 5429 | ** Mouse pointer features: | 4813 | ** Mouse pointer features: |
| 5430 | 4814 | ||
| 5431 | +++ (lispref) | ||
| 5432 | --- (man) | ||
| 5433 | *** The mouse pointer shape in void text areas (i.e. after the end of a | 4815 | *** The mouse pointer shape in void text areas (i.e. after the end of a |
| 5434 | line or below the last line in the buffer) of the text window is now | 4816 | line or below the last line in the buffer) of the text window is now |
| 5435 | controlled by the new variable `void-text-area-pointer'. The default | 4817 | controlled by the new variable `void-text-area-pointer'. The default |
| 5436 | is to use the `arrow' (non-text) pointer. Other choices are `text' | 4818 | is to use the `arrow' (non-text) pointer. Other choices are `text' |
| 5437 | (or nil), `hand', `vdrag', `hdrag', `modeline', and `hourglass'. | 4819 | (or nil), `hand', `vdrag', `hdrag', `modeline', and `hourglass'. |
| 5438 | 4820 | ||
| 5439 | +++ | ||
| 5440 | *** The mouse pointer shape over an image can now be controlled by the | 4821 | *** The mouse pointer shape over an image can now be controlled by the |
| 5441 | :pointer image property. | 4822 | :pointer image property. |
| 5442 | 4823 | ||
| 5443 | +++ | ||
| 5444 | *** The mouse pointer shape over ordinary text or images can now be | 4824 | *** The mouse pointer shape over ordinary text or images can now be |
| 5445 | controlled/overridden via the `pointer' text property. | 4825 | controlled/overridden via the `pointer' text property. |
| 5446 | 4826 | ||
| 5447 | ** Mouse event enhancements: | 4827 | ** Mouse event enhancements: |
| 5448 | 4828 | ||
| 5449 | +++ | ||
| 5450 | *** Mouse events for clicks on window fringes now specify `left-fringe' | 4829 | *** Mouse events for clicks on window fringes now specify `left-fringe' |
| 5451 | or `right-fringe' as the area. | 4830 | or `right-fringe' as the area. |
| 5452 | 4831 | ||
| 5453 | +++ | ||
| 5454 | *** All mouse events now include a buffer position regardless of where | 4832 | *** All mouse events now include a buffer position regardless of where |
| 5455 | you clicked. For mouse clicks in window margins and fringes, this is | 4833 | you clicked. For mouse clicks in window margins and fringes, this is |
| 5456 | a sensible buffer position corresponding to the surrounding text. | 4834 | a sensible buffer position corresponding to the surrounding text. |
| 5457 | 4835 | ||
| 5458 | +++ | ||
| 5459 | *** `posn-point' now returns buffer position for non-text area events. | 4836 | *** `posn-point' now returns buffer position for non-text area events. |
| 5460 | 4837 | ||
| 5461 | +++ | ||
| 5462 | *** Function `mouse-set-point' now works for events outside text area. | 4838 | *** Function `mouse-set-point' now works for events outside text area. |
| 5463 | 4839 | ||
| 5464 | +++ | ||
| 5465 | *** New function `posn-area' returns window area clicked on (nil means | 4840 | *** New function `posn-area' returns window area clicked on (nil means |
| 5466 | text area). | 4841 | text area). |
| 5467 | 4842 | ||
| 5468 | +++ | ||
| 5469 | *** Mouse events include actual glyph column and row for all event types | 4843 | *** Mouse events include actual glyph column and row for all event types |
| 5470 | and all areas. | 4844 | and all areas. |
| 5471 | 4845 | ||
| 5472 | +++ | ||
| 5473 | *** New function `posn-actual-col-row' returns the actual glyph coordinates | 4846 | *** New function `posn-actual-col-row' returns the actual glyph coordinates |
| 5474 | of the mouse event position. | 4847 | of the mouse event position. |
| 5475 | 4848 | ||
| 5476 | +++ | ||
| 5477 | *** Mouse events can now indicate an image object clicked on. | 4849 | *** Mouse events can now indicate an image object clicked on. |
| 5478 | 4850 | ||
| 5479 | +++ | ||
| 5480 | *** Mouse events include relative X and Y pixel coordinates relative to | 4851 | *** Mouse events include relative X and Y pixel coordinates relative to |
| 5481 | the top left corner of the object (image or character) clicked on. | 4852 | the top left corner of the object (image or character) clicked on. |
| 5482 | 4853 | ||
| 5483 | +++ | ||
| 5484 | *** Mouse events include the pixel width and height of the object | 4854 | *** Mouse events include the pixel width and height of the object |
| 5485 | (image or character) clicked on. | 4855 | (image or character) clicked on. |
| 5486 | 4856 | ||
| 5487 | +++ | ||
| 5488 | *** New functions 'posn-object', 'posn-object-x-y', 'posn-object-width-height'. | 4857 | *** New functions 'posn-object', 'posn-object-x-y', 'posn-object-width-height'. |
| 5489 | 4858 | ||
| 5490 | These return the image or string object of a mouse click, the X and Y | 4859 | These return the image or string object of a mouse click, the X and Y |
| @@ -5493,11 +4862,9 @@ the total width and height of that object. | |||
| 5493 | 4862 | ||
| 5494 | ** Text property and overlay changes: | 4863 | ** Text property and overlay changes: |
| 5495 | 4864 | ||
| 5496 | +++ | ||
| 5497 | *** Arguments for `remove-overlays' are now optional, so that you can | 4865 | *** Arguments for `remove-overlays' are now optional, so that you can |
| 5498 | remove all overlays in the buffer with just (remove-overlays). | 4866 | remove all overlays in the buffer with just (remove-overlays). |
| 5499 | 4867 | ||
| 5500 | +++ | ||
| 5501 | *** New variable `char-property-alias-alist'. | 4868 | *** New variable `char-property-alias-alist'. |
| 5502 | 4869 | ||
| 5503 | This variable allows you to create alternative names for text | 4870 | This variable allows you to create alternative names for text |
| @@ -5505,14 +4872,12 @@ properties. It works at the same level as `default-text-properties', | |||
| 5505 | although it applies to overlays as well. This variable was introduced | 4872 | although it applies to overlays as well. This variable was introduced |
| 5506 | to implement the `font-lock-face' property. | 4873 | to implement the `font-lock-face' property. |
| 5507 | 4874 | ||
| 5508 | +++ | ||
| 5509 | *** New function `get-char-property-and-overlay' accepts the same | 4875 | *** New function `get-char-property-and-overlay' accepts the same |
| 5510 | arguments as `get-char-property' and returns a cons whose car is the | 4876 | arguments as `get-char-property' and returns a cons whose car is the |
| 5511 | return value of `get-char-property' called with those arguments and | 4877 | return value of `get-char-property' called with those arguments and |
| 5512 | whose cdr is the overlay in which the property was found, or nil if | 4878 | whose cdr is the overlay in which the property was found, or nil if |
| 5513 | it was found as a text property or not found at all. | 4879 | it was found as a text property or not found at all. |
| 5514 | 4880 | ||
| 5515 | +++ | ||
| 5516 | *** The new function `remove-list-of-text-properties'. | 4881 | *** The new function `remove-list-of-text-properties'. |
| 5517 | 4882 | ||
| 5518 | It is like `remove-text-properties' except that it takes a list of | 4883 | It is like `remove-text-properties' except that it takes a list of |
| @@ -5520,13 +4885,11 @@ property names as argument rather than a property list. | |||
| 5520 | 4885 | ||
| 5521 | ** Face changes | 4886 | ** Face changes |
| 5522 | 4887 | ||
| 5523 | +++ | ||
| 5524 | *** The variable `facemenu-unlisted-faces' has been removed. | 4888 | *** The variable `facemenu-unlisted-faces' has been removed. |
| 5525 | Emacs has a lot more faces than in the past, and nearly all of them | 4889 | Emacs has a lot more faces than in the past, and nearly all of them |
| 5526 | needed to be excluded. The new variable `facemenu-listed-faces' lists | 4890 | needed to be excluded. The new variable `facemenu-listed-faces' lists |
| 5527 | the faces to include in the face menu. | 4891 | the faces to include in the face menu. |
| 5528 | 4892 | ||
| 5529 | +++ | ||
| 5530 | *** The new face attribute condition `min-colors' can be used to tailor | 4893 | *** The new face attribute condition `min-colors' can be used to tailor |
| 5531 | the face color to the number of colors supported by a display, and | 4894 | the face color to the number of colors supported by a display, and |
| 5532 | define the foreground and background colors accordingly so that they | 4895 | define the foreground and background colors accordingly so that they |
| @@ -5534,7 +4897,6 @@ look best on a terminal that supports at least this many colors. This | |||
| 5534 | is now the preferred method for defining default faces in a way that | 4897 | is now the preferred method for defining default faces in a way that |
| 5535 | makes a good use of the capabilities of the display. | 4898 | makes a good use of the capabilities of the display. |
| 5536 | 4899 | ||
| 5537 | +++ | ||
| 5538 | *** New function `display-supports-face-attributes-p' can be used to test | 4900 | *** New function `display-supports-face-attributes-p' can be used to test |
| 5539 | whether a given set of face attributes is actually displayable. | 4901 | whether a given set of face attributes is actually displayable. |
| 5540 | 4902 | ||
| @@ -5542,43 +4904,36 @@ A new predicate `supports' has also been added to the `defface' face | |||
| 5542 | specification language, which can be used to do this test for faces | 4904 | specification language, which can be used to do this test for faces |
| 5543 | defined with `defface'. | 4905 | defined with `defface'. |
| 5544 | 4906 | ||
| 5545 | --- | ||
| 5546 | *** The special treatment of faces whose names are of the form `fg:COLOR' | 4907 | *** The special treatment of faces whose names are of the form `fg:COLOR' |
| 5547 | or `bg:COLOR' has been removed. Lisp programs should use the | 4908 | or `bg:COLOR' has been removed. Lisp programs should use the |
| 5548 | `defface' facility for defining faces with specific colors, or use | 4909 | `defface' facility for defining faces with specific colors, or use |
| 5549 | the feature of specifying the face attributes :foreground and :background | 4910 | the feature of specifying the face attributes :foreground and :background |
| 5550 | directly in the `face' property instead of using a named face. | 4911 | directly in the `face' property instead of using a named face. |
| 5551 | 4912 | ||
| 5552 | +++ | ||
| 5553 | *** The first face specification element in a defface can specify | 4913 | *** The first face specification element in a defface can specify |
| 5554 | `default' instead of frame classification. Then its attributes act as | 4914 | `default' instead of frame classification. Then its attributes act as |
| 5555 | defaults that apply to all the subsequent cases (and can be overridden | 4915 | defaults that apply to all the subsequent cases (and can be overridden |
| 5556 | by them). | 4916 | by them). |
| 5557 | 4917 | ||
| 5558 | +++ | ||
| 5559 | *** The variable `face-font-rescale-alist' specifies how much larger | 4918 | *** The variable `face-font-rescale-alist' specifies how much larger |
| 5560 | (or smaller) font we should use. For instance, if the value is | 4919 | (or smaller) font we should use. For instance, if the value is |
| 5561 | '((SOME-FONTNAME-PATTERN . 1.3)) and a face requests a font of 10 | 4920 | '((SOME-FONTNAME-PATTERN . 1.3)) and a face requests a font of 10 |
| 5562 | point, we actually use a font of 13 point if the font matches | 4921 | point, we actually use a font of 13 point if the font matches |
| 5563 | SOME-FONTNAME-PATTERN. | 4922 | SOME-FONTNAME-PATTERN. |
| 5564 | 4923 | ||
| 5565 | --- | ||
| 5566 | *** The function `face-differs-from-default-p' now truly checks | 4924 | *** The function `face-differs-from-default-p' now truly checks |
| 5567 | whether the given face displays differently from the default face or | 4925 | whether the given face displays differently from the default face or |
| 5568 | not (previously it did only a very cursory check). | 4926 | not (previously it did only a very cursory check). |
| 5569 | 4927 | ||
| 5570 | +++ | ||
| 5571 | *** `face-attribute', `face-foreground', `face-background', `face-stipple'. | 4928 | *** `face-attribute', `face-foreground', `face-background', `face-stipple'. |
| 5572 | 4929 | ||
| 5573 | These now accept a new optional argument, INHERIT, which controls how | 4930 | These now accept a new optional argument, INHERIT, which controls how |
| 5574 | face inheritance is used when determining the value of a face | 4931 | face inheritance is used when determining the value of a face |
| 5575 | attribute. | 4932 | attribute. |
| 5576 | 4933 | ||
| 5577 | +++ | ||
| 5578 | *** New functions `face-attribute-relative-p' and `merge-face-attribute' | 4934 | *** New functions `face-attribute-relative-p' and `merge-face-attribute' |
| 5579 | help with handling relative face attributes. | 4935 | help with handling relative face attributes. |
| 5580 | 4936 | ||
| 5581 | +++ | ||
| 5582 | *** The priority of faces in an :inherit attribute face list is reversed. | 4937 | *** The priority of faces in an :inherit attribute face list is reversed. |
| 5583 | 4938 | ||
| 5584 | If a face contains an :inherit attribute with a list of faces, earlier | 4939 | If a face contains an :inherit attribute with a list of faces, earlier |
| @@ -5587,20 +4942,17 @@ releases of Emacs, the order was the opposite. This change was made | |||
| 5587 | so that :inherit face lists operate identically to face lists in text | 4942 | so that :inherit face lists operate identically to face lists in text |
| 5588 | `face' properties. | 4943 | `face' properties. |
| 5589 | 4944 | ||
| 5590 | --- | ||
| 5591 | *** On terminals, faces with the :inverse-video attribute are displayed | 4945 | *** On terminals, faces with the :inverse-video attribute are displayed |
| 5592 | with swapped foreground and background colors even when one of them is | 4946 | with swapped foreground and background colors even when one of them is |
| 5593 | not specified. In previous releases of Emacs, if either foreground | 4947 | not specified. In previous releases of Emacs, if either foreground |
| 5594 | or background color was unspecified, colors were not swapped. This | 4948 | or background color was unspecified, colors were not swapped. This |
| 5595 | was inconsistent with the face behavior under X. | 4949 | was inconsistent with the face behavior under X. |
| 5596 | 4950 | ||
| 5597 | --- | ||
| 5598 | *** `set-fontset-font', `fontset-info', `fontset-font' now operate on | 4951 | *** `set-fontset-font', `fontset-info', `fontset-font' now operate on |
| 5599 | the default fontset if the argument NAME is nil.. | 4952 | the default fontset if the argument NAME is nil.. |
| 5600 | 4953 | ||
| 5601 | ** Font-Lock changes: | 4954 | ** Font-Lock changes: |
| 5602 | 4955 | ||
| 5603 | +++ | ||
| 5604 | *** New special text property `font-lock-face'. | 4956 | *** New special text property `font-lock-face'. |
| 5605 | 4957 | ||
| 5606 | This property acts like the `face' property, but it is controlled by | 4958 | This property acts like the `face' property, but it is controlled by |
| @@ -5608,7 +4960,6 @@ M-x font-lock-mode. It is not, strictly speaking, a builtin text | |||
| 5608 | property. Instead, it is implemented inside font-core.el, using the | 4960 | property. Instead, it is implemented inside font-core.el, using the |
| 5609 | new variable `char-property-alias-alist'. | 4961 | new variable `char-property-alias-alist'. |
| 5610 | 4962 | ||
| 5611 | +++ | ||
| 5612 | *** font-lock can manage arbitrary text-properties beside `face'. | 4963 | *** font-lock can manage arbitrary text-properties beside `face'. |
| 5613 | 4964 | ||
| 5614 | **** the FACENAME returned in `font-lock-keywords' can be a list of the | 4965 | **** the FACENAME returned in `font-lock-keywords' can be a list of the |
| @@ -5618,7 +4969,6 @@ properties than `face'. | |||
| 5618 | **** `font-lock-extra-managed-props' can be set to make sure those | 4969 | **** `font-lock-extra-managed-props' can be set to make sure those |
| 5619 | extra properties are automatically cleaned up by font-lock. | 4970 | extra properties are automatically cleaned up by font-lock. |
| 5620 | 4971 | ||
| 5621 | --- | ||
| 5622 | *** jit-lock obeys a new text-property `jit-lock-defer-multiline'. | 4972 | *** jit-lock obeys a new text-property `jit-lock-defer-multiline'. |
| 5623 | 4973 | ||
| 5624 | If a piece of text with that property gets contextually refontified | 4974 | If a piece of text with that property gets contextually refontified |
| @@ -5645,7 +4995,6 @@ of multiline constructs so that such constructs get properly recognized. | |||
| 5645 | 4995 | ||
| 5646 | ** Major mode mechanism changes: | 4996 | ** Major mode mechanism changes: |
| 5647 | 4997 | ||
| 5648 | +++ | ||
| 5649 | *** If new variable `auto-mode-case-fold' is set to a non-nil value, | 4998 | *** If new variable `auto-mode-case-fold' is set to a non-nil value, |
| 5650 | Emacs will perform a second case-insensitive search through | 4999 | Emacs will perform a second case-insensitive search through |
| 5651 | `auto-mode-alist' if the first case-sensitive search fails. | 5000 | `auto-mode-alist' if the first case-sensitive search fails. |
| @@ -5654,55 +5003,43 @@ is opened in python-mode. Note however, that independent of this | |||
| 5654 | setting, *.C files are usually recognized as C++ files. | 5003 | setting, *.C files are usually recognized as C++ files. |
| 5655 | It also has no effect on systems with case-insensitive file names. | 5004 | It also has no effect on systems with case-insensitive file names. |
| 5656 | 5005 | ||
| 5657 | +++ | ||
| 5658 | *** New variable `magic-mode-alist' determines major mode for a file by | 5006 | *** New variable `magic-mode-alist' determines major mode for a file by |
| 5659 | looking at the file contents. It takes precedence over `auto-mode-alist'. | 5007 | looking at the file contents. It takes precedence over `auto-mode-alist'. |
| 5660 | 5008 | ||
| 5661 | +++ | ||
| 5662 | *** An interpreter magic line (if present) takes precedence over the | 5009 | *** An interpreter magic line (if present) takes precedence over the |
| 5663 | file name when setting the major mode. | 5010 | file name when setting the major mode. |
| 5664 | 5011 | ||
| 5665 | +++ | ||
| 5666 | *** XML or SGML major mode is selected when file starts with an `<?xml' | 5012 | *** XML or SGML major mode is selected when file starts with an `<?xml' |
| 5667 | or `<!DOCTYPE' declaration. | 5013 | or `<!DOCTYPE' declaration. |
| 5668 | 5014 | ||
| 5669 | +++ | ||
| 5670 | *** Use the new function `run-mode-hooks' to run the major mode's mode hook. | 5015 | *** Use the new function `run-mode-hooks' to run the major mode's mode hook. |
| 5671 | 5016 | ||
| 5672 | +++ | ||
| 5673 | *** All major mode functions should now run the new normal hook | 5017 | *** All major mode functions should now run the new normal hook |
| 5674 | `after-change-major-mode-hook', at their very end, after the mode | 5018 | `after-change-major-mode-hook', at their very end, after the mode |
| 5675 | hooks. `run-mode-hooks' does this automatically. | 5019 | hooks. `run-mode-hooks' does this automatically. |
| 5676 | 5020 | ||
| 5677 | --- | ||
| 5678 | *** If a major mode function has a non-nil `no-clone-indirect' | 5021 | *** If a major mode function has a non-nil `no-clone-indirect' |
| 5679 | property, `clone-indirect-buffer' signals an error if you use | 5022 | property, `clone-indirect-buffer' signals an error if you use |
| 5680 | it in that buffer. | 5023 | it in that buffer. |
| 5681 | 5024 | ||
| 5682 | +++ | ||
| 5683 | *** Major modes can define `eldoc-documentation-function' | 5025 | *** Major modes can define `eldoc-documentation-function' |
| 5684 | locally to provide Eldoc functionality by some method appropriate to | 5026 | locally to provide Eldoc functionality by some method appropriate to |
| 5685 | the language. | 5027 | the language. |
| 5686 | 5028 | ||
| 5687 | +++ | ||
| 5688 | *** `define-derived-mode' by default creates a new empty abbrev table. | 5029 | *** `define-derived-mode' by default creates a new empty abbrev table. |
| 5689 | It does not copy abbrevs from the parent mode's abbrev table. | 5030 | It does not copy abbrevs from the parent mode's abbrev table. |
| 5690 | 5031 | ||
| 5691 | +++ | ||
| 5692 | *** The new function `run-mode-hooks' and the new macro `delay-mode-hooks' | 5032 | *** The new function `run-mode-hooks' and the new macro `delay-mode-hooks' |
| 5693 | are used by `define-derived-mode' to make sure the mode hook for the | 5033 | are used by `define-derived-mode' to make sure the mode hook for the |
| 5694 | parent mode is run at the end of the child mode. | 5034 | parent mode is run at the end of the child mode. |
| 5695 | 5035 | ||
| 5696 | ** Minor mode changes: | 5036 | ** Minor mode changes: |
| 5697 | 5037 | ||
| 5698 | +++ | ||
| 5699 | *** `define-minor-mode' now accepts arbitrary additional keyword arguments | 5038 | *** `define-minor-mode' now accepts arbitrary additional keyword arguments |
| 5700 | and simply passes them to `defcustom', if applicable. | 5039 | and simply passes them to `defcustom', if applicable. |
| 5701 | 5040 | ||
| 5702 | +++ | ||
| 5703 | *** `minor-mode-list' now holds a list of minor mode commands. | 5041 | *** `minor-mode-list' now holds a list of minor mode commands. |
| 5704 | 5042 | ||
| 5705 | +++ | ||
| 5706 | *** `define-globalized-minor-mode'. | 5043 | *** `define-globalized-minor-mode'. |
| 5707 | 5044 | ||
| 5708 | This is a new name for what was formerly called | 5045 | This is a new name for what was formerly called |
| @@ -5710,7 +5047,6 @@ This is a new name for what was formerly called | |||
| 5710 | 5047 | ||
| 5711 | ** Command loop changes: | 5048 | ** Command loop changes: |
| 5712 | 5049 | ||
| 5713 | +++ | ||
| 5714 | *** The new function `called-interactively-p' does what many people | 5050 | *** The new function `called-interactively-p' does what many people |
| 5715 | have mistakenly believed `interactive-p' to do: it returns t if the | 5051 | have mistakenly believed `interactive-p' to do: it returns t if the |
| 5716 | calling function was called through `call-interactively'. | 5052 | calling function was called through `call-interactively'. |
| @@ -5718,14 +5054,12 @@ calling function was called through `call-interactively'. | |||
| 5718 | Only use this when you cannot solve the problem by adding a new | 5054 | Only use this when you cannot solve the problem by adding a new |
| 5719 | INTERACTIVE argument to the command. | 5055 | INTERACTIVE argument to the command. |
| 5720 | 5056 | ||
| 5721 | +++ | ||
| 5722 | *** The function `commandp' takes an additional optional argument. | 5057 | *** The function `commandp' takes an additional optional argument. |
| 5723 | 5058 | ||
| 5724 | If it is non-nil, then `commandp' checks for a function that could be | 5059 | If it is non-nil, then `commandp' checks for a function that could be |
| 5725 | called with `call-interactively', and does not return t for keyboard | 5060 | called with `call-interactively', and does not return t for keyboard |
| 5726 | macros. | 5061 | macros. |
| 5727 | 5062 | ||
| 5728 | +++ | ||
| 5729 | *** When a command returns, the command loop moves point out from | 5063 | *** When a command returns, the command loop moves point out from |
| 5730 | within invisible text, in the same way it moves out from within text | 5064 | within invisible text, in the same way it moves out from within text |
| 5731 | covered by an image or composition property. | 5065 | covered by an image or composition property. |
| @@ -5736,51 +5070,41 @@ unexpected side-effects since the property applies to everything | |||
| 5736 | (including `goto-char', ...) whereas this new code is only run after | 5070 | (including `goto-char', ...) whereas this new code is only run after |
| 5737 | `post-command-hook' and thus does not care about intermediate states. | 5071 | `post-command-hook' and thus does not care about intermediate states. |
| 5738 | 5072 | ||
| 5739 | +++ | ||
| 5740 | *** If a command sets `transient-mark-mode' to `only', that | 5073 | *** If a command sets `transient-mark-mode' to `only', that |
| 5741 | enables Transient Mark mode for the following command only. | 5074 | enables Transient Mark mode for the following command only. |
| 5742 | During that following command, the value of `transient-mark-mode' | 5075 | During that following command, the value of `transient-mark-mode' |
| 5743 | is `identity'. If it is still `identity' at the end of the command, | 5076 | is `identity'. If it is still `identity' at the end of the command, |
| 5744 | the next return to the command loop changes to nil. | 5077 | the next return to the command loop changes to nil. |
| 5745 | 5078 | ||
| 5746 | +++ | ||
| 5747 | *** Both the variable and the function `disabled-command-hook' have | 5079 | *** Both the variable and the function `disabled-command-hook' have |
| 5748 | been renamed to `disabled-command-function'. The variable | 5080 | been renamed to `disabled-command-function'. The variable |
| 5749 | `disabled-command-hook' has been kept as an obsolete alias. | 5081 | `disabled-command-hook' has been kept as an obsolete alias. |
| 5750 | 5082 | ||
| 5751 | +++ | ||
| 5752 | *** `emacsserver' now runs `pre-command-hook' and `post-command-hook' | 5083 | *** `emacsserver' now runs `pre-command-hook' and `post-command-hook' |
| 5753 | when it receives a request from emacsclient. | 5084 | when it receives a request from emacsclient. |
| 5754 | 5085 | ||
| 5755 | +++ | ||
| 5756 | *** `current-idle-time' reports how long Emacs has been idle. | 5086 | *** `current-idle-time' reports how long Emacs has been idle. |
| 5757 | 5087 | ||
| 5758 | ** Lisp file loading changes: | 5088 | ** Lisp file loading changes: |
| 5759 | 5089 | ||
| 5760 | +++ | ||
| 5761 | *** `load-history' can now have elements of the form (t . FUNNAME), | 5090 | *** `load-history' can now have elements of the form (t . FUNNAME), |
| 5762 | which means FUNNAME was previously defined as an autoload (before the | 5091 | which means FUNNAME was previously defined as an autoload (before the |
| 5763 | current file redefined it). | 5092 | current file redefined it). |
| 5764 | 5093 | ||
| 5765 | +++ | ||
| 5766 | *** `load-history' now records (defun . FUNNAME) when a function is | 5094 | *** `load-history' now records (defun . FUNNAME) when a function is |
| 5767 | defined. For a variable, it records just the variable name. | 5095 | defined. For a variable, it records just the variable name. |
| 5768 | 5096 | ||
| 5769 | +++ | ||
| 5770 | *** The function `symbol-file' can now search specifically for function, | 5097 | *** The function `symbol-file' can now search specifically for function, |
| 5771 | variable or face definitions. | 5098 | variable or face definitions. |
| 5772 | 5099 | ||
| 5773 | +++ | ||
| 5774 | *** `provide' and `featurep' now accept an optional second argument | 5100 | *** `provide' and `featurep' now accept an optional second argument |
| 5775 | to test/provide subfeatures. Also `provide' now checks `after-load-alist' | 5101 | to test/provide subfeatures. Also `provide' now checks `after-load-alist' |
| 5776 | and runs any code associated with the provided feature. | 5102 | and runs any code associated with the provided feature. |
| 5777 | 5103 | ||
| 5778 | --- | ||
| 5779 | *** The variable `recursive-load-depth-limit' has been deleted. | 5104 | *** The variable `recursive-load-depth-limit' has been deleted. |
| 5780 | Emacs now signals an error if the same file is loaded with more | 5105 | Emacs now signals an error if the same file is loaded with more |
| 5781 | than 3 levels of nesting. | 5106 | than 3 levels of nesting. |
| 5782 | 5107 | ||
| 5783 | +++ | ||
| 5784 | ** Byte compiler changes: | 5108 | ** Byte compiler changes: |
| 5785 | 5109 | ||
| 5786 | *** The byte compiler now displays the actual line and character | 5110 | *** The byte compiler now displays the actual line and character |
| @@ -5817,36 +5141,30 @@ you anything. | |||
| 5817 | 5141 | ||
| 5818 | *** The local variable `no-byte-compile' in Lisp files is now obeyed. | 5142 | *** The local variable `no-byte-compile' in Lisp files is now obeyed. |
| 5819 | 5143 | ||
| 5820 | --- | ||
| 5821 | *** When a Lisp file uses CL functions at run-time, compiling the file | 5144 | *** When a Lisp file uses CL functions at run-time, compiling the file |
| 5822 | now issues warnings about these calls, unless the file performs | 5145 | now issues warnings about these calls, unless the file performs |
| 5823 | (require 'cl) when loaded. | 5146 | (require 'cl) when loaded. |
| 5824 | 5147 | ||
| 5825 | ** Frame operations: | 5148 | ** Frame operations: |
| 5826 | 5149 | ||
| 5827 | +++ | ||
| 5828 | *** New functions `frame-current-scroll-bars' and `window-current-scroll-bars'. | 5150 | *** New functions `frame-current-scroll-bars' and `window-current-scroll-bars'. |
| 5829 | 5151 | ||
| 5830 | These functions return the current locations of the vertical and | 5152 | These functions return the current locations of the vertical and |
| 5831 | horizontal scroll bars in a frame or window. | 5153 | horizontal scroll bars in a frame or window. |
| 5832 | 5154 | ||
| 5833 | +++ | ||
| 5834 | *** The new function `modify-all-frames-parameters' modifies parameters | 5155 | *** The new function `modify-all-frames-parameters' modifies parameters |
| 5835 | for all (existing and future) frames. | 5156 | for all (existing and future) frames. |
| 5836 | 5157 | ||
| 5837 | +++ | ||
| 5838 | *** The new frame parameter `tty-color-mode' specifies the mode to use | 5158 | *** The new frame parameter `tty-color-mode' specifies the mode to use |
| 5839 | for color support on character terminal frames. Its value can be a | 5159 | for color support on character terminal frames. Its value can be a |
| 5840 | number of colors to support, or a symbol. See the Emacs Lisp | 5160 | number of colors to support, or a symbol. See the Emacs Lisp |
| 5841 | Reference manual for more detailed documentation. | 5161 | Reference manual for more detailed documentation. |
| 5842 | 5162 | ||
| 5843 | +++ | ||
| 5844 | *** When using non-toolkit scroll bars with the default width, | 5163 | *** When using non-toolkit scroll bars with the default width, |
| 5845 | the `scroll-bar-width' frame parameter value is nil. | 5164 | the `scroll-bar-width' frame parameter value is nil. |
| 5846 | 5165 | ||
| 5847 | ** Mule changes: | 5166 | ** Mule changes: |
| 5848 | 5167 | ||
| 5849 | +++ | ||
| 5850 | *** Already true in Emacs 21.1, but not emphasized clearly enough: | 5168 | *** Already true in Emacs 21.1, but not emphasized clearly enough: |
| 5851 | 5169 | ||
| 5852 | Multibyte buffers can now faithfully record all 256 character codes | 5170 | Multibyte buffers can now faithfully record all 256 character codes |
| @@ -5862,72 +5180,58 @@ the time it takes to convert the format. | |||
| 5862 | 3. For binary files where format conversion would be pointless and | 5180 | 3. For binary files where format conversion would be pointless and |
| 5863 | wasteful. | 5181 | wasteful. |
| 5864 | 5182 | ||
| 5865 | --- | ||
| 5866 | *** `set-buffer-file-coding-system' now takes an additional argument, | 5183 | *** `set-buffer-file-coding-system' now takes an additional argument, |
| 5867 | NOMODIFY. If it is non-nil, it means don't mark the buffer modified. | 5184 | NOMODIFY. If it is non-nil, it means don't mark the buffer modified. |
| 5868 | 5185 | ||
| 5869 | +++ | ||
| 5870 | *** The new variable `auto-coding-functions' lets you specify functions | 5186 | *** The new variable `auto-coding-functions' lets you specify functions |
| 5871 | to examine a file being visited and deduce the proper coding system | 5187 | to examine a file being visited and deduce the proper coding system |
| 5872 | for it. (If the coding system is detected incorrectly for a specific | 5188 | for it. (If the coding system is detected incorrectly for a specific |
| 5873 | file, you can put a `coding:' tags to override it.) | 5189 | file, you can put a `coding:' tags to override it.) |
| 5874 | 5190 | ||
| 5875 | +++ | ||
| 5876 | *** The new variable `ascii-case-table' stores the case table for the | 5191 | *** The new variable `ascii-case-table' stores the case table for the |
| 5877 | ascii character set. Language environments (such as Turkish) may | 5192 | ascii character set. Language environments (such as Turkish) may |
| 5878 | alter the case correspondences of ASCII characters. This variable | 5193 | alter the case correspondences of ASCII characters. This variable |
| 5879 | saves the original ASCII case table before any such changes. | 5194 | saves the original ASCII case table before any such changes. |
| 5880 | 5195 | ||
| 5881 | --- | ||
| 5882 | *** The new function `merge-coding-systems' fills in unspecified aspects | 5196 | *** The new function `merge-coding-systems' fills in unspecified aspects |
| 5883 | of one coding system from another coding system. | 5197 | of one coding system from another coding system. |
| 5884 | 5198 | ||
| 5885 | --- | ||
| 5886 | *** New coding system property `mime-text-unsuitable' indicates that | 5199 | *** New coding system property `mime-text-unsuitable' indicates that |
| 5887 | the coding system's `mime-charset' is not suitable for MIME text | 5200 | the coding system's `mime-charset' is not suitable for MIME text |
| 5888 | parts, e.g. utf-16. | 5201 | parts, e.g. utf-16. |
| 5889 | 5202 | ||
| 5890 | +++ | ||
| 5891 | *** New function `decode-coding-inserted-region' decodes a region as if | 5203 | *** New function `decode-coding-inserted-region' decodes a region as if |
| 5892 | it is read from a file without decoding. | 5204 | it is read from a file without decoding. |
| 5893 | 5205 | ||
| 5894 | --- | ||
| 5895 | *** New CCL functions `lookup-character' and `lookup-integer' access | 5206 | *** New CCL functions `lookup-character' and `lookup-integer' access |
| 5896 | hash tables defined by the Lisp function `define-translation-hash-table'. | 5207 | hash tables defined by the Lisp function `define-translation-hash-table'. |
| 5897 | 5208 | ||
| 5898 | --- | ||
| 5899 | *** New function `quail-find-key' returns a list of keys to type in the | 5209 | *** New function `quail-find-key' returns a list of keys to type in the |
| 5900 | current input method to input a character. | 5210 | current input method to input a character. |
| 5901 | 5211 | ||
| 5902 | ** Mode line changes: | 5212 | ** Mode line changes: |
| 5903 | 5213 | ||
| 5904 | +++ | ||
| 5905 | *** New function `format-mode-line'. | 5214 | *** New function `format-mode-line'. |
| 5906 | 5215 | ||
| 5907 | This returns the mode line or header line of the selected (or a | 5216 | This returns the mode line or header line of the selected (or a |
| 5908 | specified) window as a string with or without text properties. | 5217 | specified) window as a string with or without text properties. |
| 5909 | 5218 | ||
| 5910 | +++ | ||
| 5911 | *** The new mode-line construct `(:propertize ELT PROPS...)' can be | 5219 | *** The new mode-line construct `(:propertize ELT PROPS...)' can be |
| 5912 | used to add text properties to mode-line elements. | 5220 | used to add text properties to mode-line elements. |
| 5913 | 5221 | ||
| 5914 | +++ | ||
| 5915 | *** The new `%i' and `%I' constructs for `mode-line-format' can be used | 5222 | *** The new `%i' and `%I' constructs for `mode-line-format' can be used |
| 5916 | to display the size of the accessible part of the buffer on the mode | 5223 | to display the size of the accessible part of the buffer on the mode |
| 5917 | line. | 5224 | line. |
| 5918 | 5225 | ||
| 5919 | +++ | ||
| 5920 | *** Mouse-face on mode-line (and header-line) is now supported. | 5226 | *** Mouse-face on mode-line (and header-line) is now supported. |
| 5921 | 5227 | ||
| 5922 | ** Menu manipulation changes: | 5228 | ** Menu manipulation changes: |
| 5923 | 5229 | ||
| 5924 | --- | ||
| 5925 | *** To manipulate the File menu using easy-menu, you must specify the | 5230 | *** To manipulate the File menu using easy-menu, you must specify the |
| 5926 | proper name "file". In previous Emacs versions, you had to specify | 5231 | proper name "file". In previous Emacs versions, you had to specify |
| 5927 | "files", even though the menu item itself was changed to say "File" | 5232 | "files", even though the menu item itself was changed to say "File" |
| 5928 | several versions ago. | 5233 | several versions ago. |
| 5929 | 5234 | ||
| 5930 | --- | ||
| 5931 | *** The dummy function keys made by easy-menu are now always lower case. | 5235 | *** The dummy function keys made by easy-menu are now always lower case. |
| 5932 | If you specify the menu item name "Ada", for instance, it uses `ada' | 5236 | If you specify the menu item name "Ada", for instance, it uses `ada' |
| 5933 | as the "key" bound by that key binding. | 5237 | as the "key" bound by that key binding. |
| @@ -5935,7 +5239,6 @@ as the "key" bound by that key binding. | |||
| 5935 | This is relevant only if Lisp code looks for the bindings that were | 5239 | This is relevant only if Lisp code looks for the bindings that were |
| 5936 | made with easy-menu. | 5240 | made with easy-menu. |
| 5937 | 5241 | ||
| 5938 | --- | ||
| 5939 | *** `easy-menu-define' now allows you to use nil for the symbol name | 5242 | *** `easy-menu-define' now allows you to use nil for the symbol name |
| 5940 | if you don't need to give the menu a name. If you install the menu | 5243 | if you don't need to give the menu a name. If you install the menu |
| 5941 | into other keymaps right away (MAPS is non-nil), it usually doesn't | 5244 | into other keymaps right away (MAPS is non-nil), it usually doesn't |
| @@ -5943,30 +5246,24 @@ need to have a name. | |||
| 5943 | 5246 | ||
| 5944 | ** Operating system access: | 5247 | ** Operating system access: |
| 5945 | 5248 | ||
| 5946 | +++ | ||
| 5947 | *** The new primitive `get-internal-run-time' returns the processor | 5249 | *** The new primitive `get-internal-run-time' returns the processor |
| 5948 | run time used by Emacs since start-up. | 5250 | run time used by Emacs since start-up. |
| 5949 | 5251 | ||
| 5950 | +++ | ||
| 5951 | *** Functions `user-uid' and `user-real-uid' now return floats if the | 5252 | *** Functions `user-uid' and `user-real-uid' now return floats if the |
| 5952 | user UID doesn't fit in a Lisp integer. Function `user-full-name' | 5253 | user UID doesn't fit in a Lisp integer. Function `user-full-name' |
| 5953 | accepts a float as UID parameter. | 5254 | accepts a float as UID parameter. |
| 5954 | 5255 | ||
| 5955 | +++ | ||
| 5956 | *** New function `locale-info' accesses locale information. | 5256 | *** New function `locale-info' accesses locale information. |
| 5957 | 5257 | ||
| 5958 | --- | ||
| 5959 | *** On MS Windows, locale-coding-system is used to interact with the OS. | 5258 | *** On MS Windows, locale-coding-system is used to interact with the OS. |
| 5960 | The Windows specific variable w32-system-coding-system, which was | 5259 | The Windows specific variable w32-system-coding-system, which was |
| 5961 | formerly used for that purpose is now an alias for locale-coding-system. | 5260 | formerly used for that purpose is now an alias for locale-coding-system. |
| 5962 | 5261 | ||
| 5963 | --- | ||
| 5964 | *** New function `redirect-debugging-output' can be used to redirect | 5262 | *** New function `redirect-debugging-output' can be used to redirect |
| 5965 | debugging output on the stderr file handle to a file. | 5263 | debugging output on the stderr file handle to a file. |
| 5966 | 5264 | ||
| 5967 | ** Miscellaneous: | 5265 | ** Miscellaneous: |
| 5968 | 5266 | ||
| 5969 | +++ | ||
| 5970 | *** A number of hooks have been renamed to better follow the conventions: | 5267 | *** A number of hooks have been renamed to better follow the conventions: |
| 5971 | 5268 | ||
| 5972 | `find-file-hooks' to `find-file-hook', | 5269 | `find-file-hooks' to `find-file-hook', |
| @@ -5979,50 +5276,41 @@ debugging output on the stderr file handle to a file. | |||
| 5979 | 5276 | ||
| 5980 | In each case the old name remains as an alias for the moment. | 5277 | In each case the old name remains as an alias for the moment. |
| 5981 | 5278 | ||
| 5982 | +++ | ||
| 5983 | *** Variable `local-write-file-hooks' is marked obsolete. | 5279 | *** Variable `local-write-file-hooks' is marked obsolete. |
| 5984 | 5280 | ||
| 5985 | Use the LOCAL arg of `add-hook'. | 5281 | Use the LOCAL arg of `add-hook'. |
| 5986 | 5282 | ||
| 5987 | --- | ||
| 5988 | *** New function `x-send-client-message' sends a client message when | 5283 | *** New function `x-send-client-message' sends a client message when |
| 5989 | running under X. | 5284 | running under X. |
| 5990 | 5285 | ||
| 5991 | ** GC changes: | 5286 | ** GC changes: |
| 5992 | 5287 | ||
| 5993 | +++ | ||
| 5994 | *** New variable `gc-cons-percentage' automatically grows the GC cons threshold | 5288 | *** New variable `gc-cons-percentage' automatically grows the GC cons threshold |
| 5995 | as the heap size increases. | 5289 | as the heap size increases. |
| 5996 | 5290 | ||
| 5997 | +++ | ||
| 5998 | *** New variables `gc-elapsed' and `gcs-done' provide extra information | 5291 | *** New variables `gc-elapsed' and `gcs-done' provide extra information |
| 5999 | on garbage collection. | 5292 | on garbage collection. |
| 6000 | 5293 | ||
| 6001 | +++ | ||
| 6002 | *** The normal hook `post-gc-hook' is run at the end of garbage collection. | 5294 | *** The normal hook `post-gc-hook' is run at the end of garbage collection. |
| 6003 | 5295 | ||
| 6004 | The hook is run with GC inhibited, so use it with care. | 5296 | The hook is run with GC inhibited, so use it with care. |
| 6005 | 5297 | ||
| 6006 | * New Packages for Lisp Programming in Emacs 22.1 | 5298 | * New Packages for Lisp Programming in Emacs 22.1 |
| 6007 | 5299 | ||
| 6008 | +++ | ||
| 6009 | ** The new library button.el implements simple and fast `clickable | 5300 | ** The new library button.el implements simple and fast `clickable |
| 6010 | buttons' in Emacs buffers. Buttons are much lighter-weight than the | 5301 | buttons' in Emacs buffers. Buttons are much lighter-weight than the |
| 6011 | `widgets' implemented by widget.el, and can be used by lisp code that | 5302 | `widgets' implemented by widget.el, and can be used by lisp code that |
| 6012 | doesn't require the full power of widgets. Emacs uses buttons for | 5303 | doesn't require the full power of widgets. Emacs uses buttons for |
| 6013 | such things as help and apropos buffers. | 5304 | such things as help and apropos buffers. |
| 6014 | 5305 | ||
| 6015 | --- | ||
| 6016 | ** The new library tree-widget.el provides a widget to display a set | 5306 | ** The new library tree-widget.el provides a widget to display a set |
| 6017 | of hierarchical data as an outline. For example, the tree-widget is | 5307 | of hierarchical data as an outline. For example, the tree-widget is |
| 6018 | well suited to display a hierarchy of directories and files. | 5308 | well suited to display a hierarchy of directories and files. |
| 6019 | 5309 | ||
| 6020 | +++ | ||
| 6021 | ** The new library bindat.el provides functions to unpack and pack | 5310 | ** The new library bindat.el provides functions to unpack and pack |
| 6022 | binary data structures, such as network packets, to and from Lisp | 5311 | binary data structures, such as network packets, to and from Lisp |
| 6023 | data structures. | 5312 | data structures. |
| 6024 | 5313 | ||
| 6025 | --- | ||
| 6026 | ** master-mode.el implements a minor mode for scrolling a slave | 5314 | ** master-mode.el implements a minor mode for scrolling a slave |
| 6027 | buffer without leaving your current buffer, the master buffer. | 5315 | buffer without leaving your current buffer, the master buffer. |
| 6028 | 5316 | ||
| @@ -6043,12 +5331,10 @@ SQL buffer. | |||
| 6043 | (function (lambda () | 5331 | (function (lambda () |
| 6044 | (master-set-slave sql-buffer)))) | 5332 | (master-set-slave sql-buffer)))) |
| 6045 | 5333 | ||
| 6046 | +++ | ||
| 6047 | ** The new library benchmark.el does timing measurements on Lisp code. | 5334 | ** The new library benchmark.el does timing measurements on Lisp code. |
| 6048 | 5335 | ||
| 6049 | This includes measuring garbage collection time. | 5336 | This includes measuring garbage collection time. |
| 6050 | 5337 | ||
| 6051 | +++ | ||
| 6052 | ** The new library testcover.el does test coverage checking. | 5338 | ** The new library testcover.el does test coverage checking. |
| 6053 | 5339 | ||
| 6054 | This is so you can tell whether you've tested all paths in your Lisp | 5340 | This is so you can tell whether you've tested all paths in your Lisp |