comparison etc/NEWS.23 @ 108375:973b5bc5fcfe

Merge from emacs-23
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sat, 08 May 2010 14:47:07 -0400
parents c168d4537385
children 5b2cee3284b0 d4c436ea51f4 f3d817d46523
comparison
equal deleted inserted replaced
108374:f043f612f6da 108375:973b5bc5fcfe
12 for changes in older Emacs versions. 12 for changes in older Emacs versions.
13 13
14 You can narrow news to a specific version by calling `view-emacs-news' 14 You can narrow news to a specific version by calling `view-emacs-news'
15 with a prefix argument or by typing C-u C-h C-n. 15 with a prefix argument or by typing C-u C-h C-n.
16 16
17
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 * Installation Changes in Emacs 23.2 18 * Installation Changes in Emacs 23.2
26 19
27 --- 20 ** New configure options for Emacs developers.
28 ** New configure options for Emacs developers
29 These are not new features; only the configure flags are new. 21 These are not new features; only the configure flags are new.
30 --- 22
31 *** --enable-profiling builds Emacs with profiling enabled. 23 *** --enable-profiling builds Emacs with profiling enabled.
32 This might not work on all platforms. 24 This might not work on all platforms.
33 --- 25
34 *** --enable-checking[=OPTIONS] builds emacs with extra runtime checks. 26 *** --enable-checking[=OPTIONS] builds emacs with extra runtime checks.
35 27
36 ---
37 ** `make install' now consistently ignores umask, creating a 28 ** `make install' now consistently ignores umask, creating a
38 world-readable install. 29 world-readable install.
39 30
40 +++
41 ** Emacs compiles with Gconf support, if it is detected. 31 ** Emacs compiles with Gconf support, if it is detected.
42 Use the configure option --without-gconf to disable this. 32 Use the configure option --without-gconf to disable this.
43 This is used by the `font-use-system-font' feature (see below). 33 This is used by the `font-use-system-font' feature (see below).
44 34
45 * Startup Changes in Emacs 23.2 35 * Startup Changes in Emacs 23.2
46 +++ 36
47 ** The command-line option -Q (--quick) also inhibits loading X resources. 37 ** The command-line option -Q (--quick) also inhibits loading X resources.
48 However, if Emacs is compiled with the Lucid or Motif toolkit, X 38 However, if Emacs is compiled with the Lucid or Motif toolkit, X
49 resource settings for the graphical widgets are still applied. 39 resource settings for the graphical widgets are still applied.
50 On Windows, the -Q option causes Emacs to ignore Registry settings, 40 On Windows, the -Q option causes Emacs to ignore Registry settings,
51 but environment variables set on the Registry are still honored. 41 but environment variables set on the Registry are still honored.
52 +++ 42
53 *** The new variable `inhibit-x-resources' shows whether X resources 43 *** The new variable `inhibit-x-resources' shows whether X resources
54 were loaded. 44 were loaded.
55 45
56 +++
57 ** New command-line option -mm (--maximized) maximizes the initial frame. 46 ** New command-line option -mm (--maximized) maximizes the initial frame.
58 47
59 * Changes in Emacs 23.2 48 * Changes in Emacs 23.2
60 49
61 +++
62 ** The maximum size of buffers (and the largest fixnum) is doubled. 50 ** The maximum size of buffers (and the largest fixnum) is doubled.
63 On typical 32bit systems, buffers can now be up to 512MB. 51 On typical 32bit systems, buffers can now be up to 512MB.
64 52
65 ---
66 ** The default value of `trash-directory' is now nil. 53 ** The default value of `trash-directory' is now nil.
67 This means that `move-file-to-trash' trashes files according to 54 This means that `move-file-to-trash' trashes files according to
68 freedesktop.org specifications, the same method used by the Gnome, 55 freedesktop.org specifications, the same method used by the Gnome,
69 KDE, and XFCE desktops. (This change has no effect on Windows, which 56 KDE, and XFCE desktops. (This change has no effect on Windows, which
70 uses `system-move-file-to-trash' for trashing.) 57 uses `system-move-file-to-trash' for trashing.)
71 58
72 +++
73 ** The pointer now becomes invisible when typing. 59 ** The pointer now becomes invisible when typing.
74 Customize `make-pointer-invisible' to disable this feature. 60 Customize `make-pointer-invisible' to disable this feature.
75 61
76 ** Font changes 62 ** Font changes
77 +++ 63
78 *** Emacs can use the system default monospaced font in Gnome. 64 *** Emacs can use the system default monospaced font in Gnome.
79 To enable this feature, set `font-use-system-font' to non-nil (it is 65 To enable this feature, set `font-use-system-font' to non-nil (it is
80 nil by default). If the system default changes, Emacs changes also. 66 nil by default). If the system default changes, Emacs changes also.
81 This feature requires Gconf support, which is automatically included 67 This feature requires Gconf support, which is automatically included
82 at compile-time if configure detects the gconf libraries (you can 68 at compile-time if configure detects the gconf libraries (you can
83 disable this with the configure option --without-gconf). 69 disable this with the configure option --without-gconf).
84 --- 70
85 *** On X11, Emacs reacts to Xft changes made by configuration tools, 71 *** On X11, Emacs reacts to Xft changes made by configuration tools,
86 via the XSETTINGS mechanism. This includes antialias, hinting, 72 via the XSETTINGS mechanism. This includes antialias, hinting,
87 hintstyle, RGBA, DPI and lcdfilter changes. 73 hintstyle, RGBA, DPI and lcdfilter changes.
88 74
89 +++
90 ** Killing a buffer with a running process now asks for confirmation. 75 ** Killing a buffer with a running process now asks for confirmation.
91 To remove this query, remove `process-kill-buffer-query-function' from 76 To remove this query, remove `process-kill-buffer-query-function' from
92 `kill-buffer-query-functions', or set the appropriate process flag 77 `kill-buffer-query-functions', or set the appropriate process flag
93 with `set-process-query-on-exit-flag'. 78 with `set-process-query-on-exit-flag'.
94 79
95 ** File-local variable changes 80 ** File-local variable changes
96 +++ 81
97 *** Specifying a minor mode as a local variables enables that mode, 82 *** Specifying a minor mode as a local variables enables that mode,
98 unconditionally. The previous behavior, toggling the mode, was 83 unconditionally. The previous behavior, toggling the mode, was
99 neither reliable nor generally desirable. 84 neither reliable nor generally desirable.
100 85
101 +++
102 *** There are new commands for adding and removing file-local variables: 86 *** There are new commands for adding and removing file-local variables:
103 `add-file-local-variable', `delete-file-local-variable', 87 `add-file-local-variable', `delete-file-local-variable',
104 `add-file-local-variable-prop-line', and 88 `add-file-local-variable-prop-line', and
105 `delete-file-local-variable-prop-line'. 89 `delete-file-local-variable-prop-line'.
106 90
107 +++
108 *** There are new commands for adding and removing directory-local variables, 91 *** There are new commands for adding and removing directory-local variables,
109 and copying them to and from file-local variable lists: 92 and copying them to and from file-local variable lists:
110 `add-dir-local-variable', `delete-dir-local-variable', 93 `add-dir-local-variable', `delete-dir-local-variable',
111 `copy-dir-locals-to-file-locals', 94 `copy-dir-locals-to-file-locals',
112 `copy-dir-locals-to-file-locals-prop-line' and 95 `copy-dir-locals-to-file-locals-prop-line' and
113 `copy-file-locals-to-dir-locals'. 96 `copy-file-locals-to-dir-locals'.
114 97
115 ** Internationalization changes 98 ** Internationalization changes
116 +++ 99
117 *** Unibyte sessions are now considered obsolete. 100 *** Unibyte sessions are now considered obsolete.
118 This refers to the EMACS_UNIBYTE environment variable as well as the 101 This refers to the EMACS_UNIBYTE environment variable as well as the
119 --unibyte, --multibyte, --no-multibyte, and --no-unibyte command line 102 --unibyte, --multibyte, --no-multibyte, and --no-unibyte command line
120 arguments. Customizing enable-multibyte-characters and setting 103 arguments. Customizing enable-multibyte-characters and setting
121 default-enable-multibyte-characters are also deprecated. 104 default-enable-multibyte-characters are also deprecated.
122 --- 105
123 *** New coding system `utf-8-hfs'. 106 *** New coding system `utf-8-hfs'.
124 This is suitable for default-file-name-coding-system on Mac OS X; see 107 This is suitable for default-file-name-coding-system on Mac OS X; see
125 international/ucs-normalize.el. 108 international/ucs-normalize.el.
126 109
127 ---
128 ** Function arguments in *Help* buffers are now shown in upper-case. 110 ** Function arguments in *Help* buffers are now shown in upper-case.
129 Customize `help-downcase-arguments' to t to show them in lower-case. 111 Customize `help-downcase-arguments' to t to show them in lower-case.
130 112
113 ** New command `async-shell-command', bound globally to `M-&'.
114 This executes the command asynchronously, similar to calling `M-!' and
115 manually adding an ampersand to the end of the command. With `M-&',
116 you don't need the ampersand. The output appears in the buffer
117 `*Async Shell Command*'.
118
119 ** When running in a new enough xterm (newer than version 242), Emacs
120 asks xterm what the background color is and it sets up faces
121 accordingly for a dark background if needed (the current default is to
122 consider the background light).
123
131 124
132 * Editing Changes in Emacs 23.2 125 * Editing Changes in Emacs 23.2
133 126
134 ** Kill-ring and selection changes 127 ** Kill-ring and selection changes
135 +++ 128
136 *** If `select-active-regions' is t, any active region automatically 129 *** If `select-active-regions' is t, any active region automatically
137 becomes the primary selection (for interaction with other window 130 becomes the primary selection (for interaction with other window
138 applications). If you enable this, you might want to bind 131 applications). If you enable this, you might want to bind
139 `mouse-yank-primary' to Mouse-2. 132 `mouse-yank-primary' to Mouse-2.
140 +++ 133
141 *** When `save-interprogram-paste-before-kill' is non-nil, the kill 134 *** When `save-interprogram-paste-before-kill' is non-nil, the kill
142 commands save the interprogram-paste selection into the kill ring 135 commands save the interprogram-paste selection into the kill ring
143 before doing anything else. This avoids losing the selection. 136 before doing anything else. This avoids losing the selection.
144 +++ 137
145 *** When `kill-do-not-save-duplicates' is non-nil, identical 138 *** When `kill-do-not-save-duplicates' is non-nil, identical
146 subsequent kills are not duplicated in the `kill-ring'. 139 subsequent kills are not duplicated in the `kill-ring'.
147 140
148 ** Completion changes 141 ** Completion changes
149 142
150 *** The new command `completion-at-point' provides mode-sensitive completion. 143 *** The new command `completion-at-point' provides mode-sensitive completion.
151 +++ 144
152 *** tab-always-indent set to `complete' lets TAB do completion as well. 145 *** tab-always-indent set to `complete' lets TAB do completion as well.
153 +++ 146
154 *** The new completion-style `initials' is available. 147 *** The new completion-style `initials' is available.
155 For instance, this can complete M-x lch to list-command-history. 148 For instance, this can complete M-x lch to list-command-history.
156 --- 149
157 *** The new variable `completions-format' determines how completions 150 *** The new variable `completions-format' determines how completions
158 are displayed in the *Completions* buffer. If you set it to 151 are displayed in the *Completions* buffer. If you set it to
159 `vertical', completions are sorted vertically in columns. 152 `vertical', completions are sorted vertically in columns.
160 153
161 +++
162 ** The default value of `blink-matching-paren-distance' is increased. 154 ** The default value of `blink-matching-paren-distance' is increased.
163 155
164 ---
165 ** M-n provides more default values in the minibuffer for commands 156 ** M-n provides more default values in the minibuffer for commands
166 that read file names. These include the file name at point (when ffap 157 that read file names. These include the file name at point (when ffap
167 is loaded without ffap-bindings), the file name on the current line 158 is loaded without ffap-bindings), the file name on the current line
168 (in Dired buffers), and the directory names of adjacent Dired windows 159 (in Dired buffers), and the directory names of adjacent Dired windows
169 (for Dired commands that operate on several directories, such as copy, 160 (for Dired commands that operate on several directories, such as copy,
170 rename, or diff). 161 rename, or diff).
171 162
172 +++
173 ** M-r is bound to the new `move-to-window-line-top-bottom'. 163 ** M-r is bound to the new `move-to-window-line-top-bottom'.
174 This moves point to the window center, top and bottom on successive 164 This moves point to the window center, top and bottom on successive
175 invocations, in the same spirit as the C-l (recenter-top-bottom) 165 invocations, in the same spirit as the C-l (recenter-top-bottom)
176 command. 166 command.
177 167
178 +++
179 ** The new variable `recenter-positions' determines the default 168 ** The new variable `recenter-positions' determines the default
180 cycling order of C-l (`recenter-top-bottom'). 169 cycling order of C-l (`recenter-top-bottom').
181 170
182 +++
183 ** The abbrevs file is now a file named abbrev_defs in 171 ** The abbrevs file is now a file named abbrev_defs in
184 user-emacs-directory; but the old location, ~/.abbrev_defs, is used if 172 user-emacs-directory; but the old location, ~/.abbrev_defs, is used if
185 that file exists. 173 that file exists.
174
186 175
187 * Changes in Specialized Modes and Packages in Emacs 23.2 176 * Changes in Specialized Modes and Packages in Emacs 23.2
188 177
189 ---
190 ** The bookmark menu has a narrowing search via bookmark-bmenu-search. 178 ** The bookmark menu has a narrowing search via bookmark-bmenu-search.
191 179
192 ** LaTeX mode now provides completion (via completion-at-point).
193
194 ---
195 ** sym-comp.el is now declared obsolete, superseded by completion-at-point.
196
197 ---
198 ** lucid.el and levents.el are now declared obsolete.
199
200 ---
201 ** pcomplete provides a new command `pcomplete-std-completion' which
202 is similar to `pcomplete' but using the standard completion UI code.
203
204 ** Calc 180 ** Calc
205 +++ 181
206 *** The Calc settings file is now a file named calc.el in 182 *** The Calc settings file is now a file named calc.el in
207 user-emacs-directory; but the old location, ~/.calc.el, is used if 183 user-emacs-directory; but the old location, ~/.calc.el, is used if
208 that file exists. 184 that file exists.
209 --- 185
210 *** Graphing commands (`g f' etc.) now work on MS-Windows, if you have 186 *** Graphing commands (`g f' etc.) now work on MS-Windows, if you have
211 the native Windows port of Gnuplot version 3.8 or later installed. 187 the native Windows port of Gnuplot version 3.8 or later installed.
212 188
213 ** Calendar and diary 189 ** Calendar and diary
214 +++ 190
215 *** Fancy diary display is now the default. 191 *** Fancy diary display is now the default.
216 If you prefer the simple display, customize `diary-display-function'. 192 If you prefer the simple display, customize `diary-display-function'.
217 +++ 193
218 *** The diary's fancy display now enables view-mode. 194 *** The diary's fancy display now enables view-mode.
219 --- 195
220 *** The command `calendar-current-date' accepts an optional argument 196 *** The command `calendar-current-date' accepts an optional argument
221 giving an offset from today. 197 giving an offset from today.
222 198
223 ** Desktop 199 ** Desktop
224 --- 200
225 *** The default value for `desktop-buffers-not-to-save' is nil. 201 *** The default value for `desktop-buffers-not-to-save' is nil.
226 This means Desktop will try restoring all buffers, when you restart 202 This means Desktop will try restoring all buffers, when you restart
227 your Emacs session. Also, `desktop-buffers-not-to-save' is only 203 your Emacs session. Also, `desktop-buffers-not-to-save' is only
228 effective for buffers that have no associated file. If you want to 204 effective for buffers that have no associated file. If you want to
229 exempt buffers that do correspond to files, customize the value of 205 exempt buffers that do correspond to files, customize the value of
230 `desktop-files-not-to-save' instead. 206 `desktop-files-not-to-save' instead.
231 207
232 ** Dired 208 ** Dired
233 +++ 209
234 *** The new variable `dired-auto-revert-buffer', if non-nil, causes 210 *** The new variable `dired-auto-revert-buffer', if non-nil, causes
235 Dired buffers to be reverted automatically on revisiting them. 211 Dired buffers to be reverted automatically on revisiting them.
236 212
237 ** DocView 213 ** DocView
238 +++ 214
239 *** When `doc-view-continuous' is non-nil, scrolling a line 215 *** When `doc-view-continuous' is non-nil, scrolling a line
240 on the page edge advances to the next/previous page. 216 on the page edge advances to the next/previous page.
241 217
218 ** Elint
219
220 *** Elint now uses compilation-mode.
221
222 *** Elint can now scan individual files and whole directories,
223 and can be run in batch mode.
224
225 *** Elint does a more thorough initialization, and recognizes more built-in
226 functions and variables. Customize `elint-scan-preloaded' if you want
227 to sacrifice some accuracy for a faster startup.
228
229 *** Elint attempts some basic understanding of featurep and (f)boundp tests.
230
231 *** Customize `elint-ignored-warnings' to suppress some warnings.
232
242 ** GDB-UI 233 ** GDB-UI
243 234
244 +++
245 *** Toolbar functionality for reverse debugging. Display of STL 235 *** Toolbar functionality for reverse debugging. Display of STL
246 collections as watch expressions. These features require GDB 7.0 or later. 236 collections as watch expressions. These features require GDB 7.0 or later.
247 237
248 ** Grep 238 ** Grep
249 +++ 239
250 *** A new command `zrgrep' searches recursively in gzipped files. 240 *** A new command `zrgrep' searches recursively in gzipped files.
251 241
252 ** Info 242 ** Info
253 243
254 +++
255 *** The new command `Info-virtual-index' bound to "I" displays a menu of 244 *** The new command `Info-virtual-index' bound to "I" displays a menu of
256 matched topics found in the index. 245 matched topics found in the index.
257 246
258 +++
259 *** The new command `info-finder' replaces finder.el with a virtual Info 247 *** The new command `info-finder' replaces finder.el with a virtual Info
260 manual that generates an Info file which gives the same information 248 manual that generates an Info file which gives the same information
261 through a menu structure. 249 through a menu structure.
262 250
263 +++ 251 ** LaTeX mode now provides completion (via completion-at-point).
252
264 ** Message mode is now the default mode for composing mail. 253 ** Message mode is now the default mode for composing mail.
265 254
266 The default for `mail-user-agent' is now message-user-agent, so the 255 The default for `mail-user-agent' is now message-user-agent, so the
267 C-x m (`compose-mail') command uses Message mode instead of Mail mode. 256 C-x m (`compose-mail') command uses Message mode instead of Mail mode.
268 257
269 Message mode has been included in Emacs, as part of the Gnus package, 258 Message mode has been included in Emacs, as part of the Gnus package,
270 for several years. It provides several features that are absent in 259 for several years. It provides several features that are absent in
271 Mail mode, such as MIME handling. 260 Mail mode, such as MIME handling.
272 261
273 ---
274 *** If the user has not customized mail-user-agent, `compose-mail' 262 *** If the user has not customized mail-user-agent, `compose-mail'
275 checks for Mail mode customizations, and issues a warning if these 263 checks for Mail mode customizations, and issues a warning if these
276 customizations are found. This alerts users who may otherwise be 264 customizations are found. This alerts users who may otherwise be
277 unaware that their mail configuration has changed. 265 unaware that their mail configuration has changed.
278 266
279 To disable this check, set compose-mail-user-agent-warnings to nil. 267 To disable this check, set compose-mail-user-agent-warnings to nil.
280 268
281 ---
282 ** The default value of mail-interactive is t, since Emacs 23.1. 269 ** The default value of mail-interactive is t, since Emacs 23.1.
283 (This was not announced at the time.) It means that when sending mail, 270 (This was not announced at the time.) It means that when sending mail,
284 Emacs will wait for the process sending mail to return. If you 271 Emacs will wait for the process sending mail to return. If you
285 experience delays when sending mail, you may wish to set this to nil. 272 experience delays when sending mail, you may wish to set this to nil.
286 273
287 +++
288 ** nXML mode is now the default for editing XML files. 274 ** nXML mode is now the default for editing XML files.
289 275
276 ** pcomplete provides a new command `pcomplete-std-completion' which
277 is similar to `pcomplete' but using the standard completion UI code.
278
290 ** Shell (and other comint modes) 279 ** Shell (and other comint modes)
291 +++ 280
292 *** M-s is no longer bound to `comint-next-matching-input'. 281 *** M-s is no longer bound to `comint-next-matching-input'.
293 +++ 282
294 *** M-r is now bound to `comint-history-isearch-backward-regexp'. 283 *** M-r is now bound to `comint-history-isearch-backward-regexp'.
295 This starts an incremental search of the comint/shell input history. 284 This starts an incremental search of the comint/shell input history.
296 +++ 285
297 *** ansi-color is now enabled by default in Shell mode. 286 *** ansi-color is now enabled by default in Shell mode.
298 To disable it, set ansi-color-for-comint-mode to nil. 287 To disable it, set ansi-color-for-comint-mode to nil.
299 288
300 ** Tramp 289 ** Tramp
301 +++ 290
302 *** New connection methods "rsyncc", "imap" and "imaps". 291 *** New connection methods "rsyncc", "imap" and "imaps".
303 On systems which support GVFS-Fuse, Tramp offers also the new 292 On systems which support GVFS-Fuse, Tramp offers also the new
304 connection methods "dav", "davs", "obex" and "synce". 293 connection methods "dav", "davs", "obex" and "synce".
305 294
306 ** VC and related modes 295 ** VC and related modes
307 +++ 296
308 *** When using C-x v v or C-x v i on a unregistered file that is in a 297 *** When using C-x v v or C-x v i on a unregistered file that is in a
309 directory not controlled by any VCS, ask the user what VC backend to 298 directory not controlled by any VCS, ask the user what VC backend to
310 use to create a repository, create a new repository and register the 299 use to create a repository, create a new repository and register the
311 file. 300 file.
312 +++ 301
313 *** New command `vc-root-print-log', bound to `C-x v L'. 302 *** New command `vc-root-print-log', bound to `C-x v L'.
314 This displays a `*vc-change-log*' buffer showing the history of the 303 This displays a `*vc-change-log*' buffer showing the history of the
315 version-controlled directory tree as a whole. 304 version-controlled directory tree as a whole.
316 +++ 305
317 *** New command `vc-root-diff', bound to `C-x v D'. 306 *** New command `vc-root-diff', bound to `C-x v D'.
318 This is similar to `vc-diff', but compares the entire directory tree 307 This is similar to `vc-diff', but compares the entire directory tree
319 of the current VC directory with its working revision. 308 of the current VC directory with its working revision.
320 +++ 309
321 *** `C-x v l' and `C-x v L' do not show the full log by default. 310 *** `C-x v l' and `C-x v L' do not show the full log by default.
322 The number of entries shown can be chosen interactively with a prefix 311 The number of entries shown can be chosen interactively with a prefix
323 argument, or by customizing vc-log-show-limit. The `*vc-change-log*' 312 argument, or by customizing vc-log-show-limit. The `*vc-change-log*'
324 buffer now contains buttons at the end of the buffer, which can be 313 buffer now contains buttons at the end of the buffer, which can be
325 used to increase the number of entries shown. RCS, SCCS, and CVS do 314 used to increase the number of entries shown. RCS, SCCS, and CVS do
326 not support this feature. 315 not support this feature.
327 --- 316
328 *** vc-annotate supports annotations through file copies and renames, 317 *** vc-annotate supports annotations through file copies and renames,
329 it displays the old names for the files and it can show logs/diffs for 318 it displays the old names for the files and it can show logs/diffs for
330 the corresponding lines. Currently only Git and Mercurial take 319 the corresponding lines. Currently only Git and Mercurial take
331 advantage of this feature. 320 advantage of this feature.
332 --- 321
333 *** The log command in vc-annotate can display a single log entry 322 *** The log command in vc-annotate can display a single log entry
334 instead of redisplaying the full log. The RCS, CVS and SCCS VC 323 instead of redisplaying the full log. The RCS, CVS and SCCS VC
335 backends do not support this. 324 backends do not support this.
336 --- 325
337 *** When a file is not found, VC will not try to check it out of RCS anymore. 326 *** When a file is not found, VC will not try to check it out of RCS anymore.
338 +++ 327
339 *** Diff and log operations can be used from Dired buffers. 328 *** Diff and log operations can be used from Dired buffers.
340 329
341 *** vc-git changes 330 *** vc-git changes
342 331
343 ---
344 **** The short log format for git makes use of the graph display, 332 **** The short log format for git makes use of the graph display,
345 so it's not supported on git versions earlier than 1.5.6. 333 so it's not supported on git versions earlier than 1.5.6.
346 334
347 ---
348 **** vc-dir uses the --relative option of git, and so requires at least 335 **** vc-dir uses the --relative option of git, and so requires at least
349 git version 1.5.5. 336 git version 1.5.5.
350 337
351 +++
352 **** Support for operating with stashes has been added to vc-dir: 338 **** Support for operating with stashes has been added to vc-dir:
353 the stash list is displayed in the *vc-dir* header, stashes can be 339 the stash list is displayed in the *vc-dir* header, stashes can be
354 created, removed, applied and their content displayed. 340 created, removed, applied and their content displayed.
355 341
356 +++
357 *** vc-bzr supports operating with shelves: the shelve list is 342 *** vc-bzr supports operating with shelves: the shelve list is
358 displayed in the *vc-dir* header, shelves can be created, removed and applied. 343 displayed in the *vc-dir* header, shelves can be created, removed and applied.
359 --- 344
360 *** log-edit-strip-single-file-name controls whether or not single filenames 345 *** log-edit-strip-single-file-name controls whether or not single filenames
361 are stripped when copying text from the ChangeLog to the *VC-Log* buffer. 346 are stripped when copying text from the ChangeLog to the *VC-Log* buffer.
362 347
363 ** Elint
364 ---
365 *** Elint now uses compilation-mode.
366 ---
367 *** Elint can now scan individual files and whole directories,
368 and can be run in batch mode.
369 ---
370 *** Elint does a more thorough initialization, and recognizes more built-in
371 functions and variables. Customize `elint-scan-preloaded' if you want
372 to sacrifice some accuracy for a faster startup.
373 ---
374 *** Elint attempts some basic understanding of featurep and (f)boundp tests.
375 ---
376 *** Customize `elint-ignored-warnings' to suppress some warnings.
377
378 ** Miscellaneous 348 ** Miscellaneous
379 +++ 349
380 *** The new command `async-shell-command' bound globally to `M-&' executes
381 the command asynchronously without the need to manually add ampersand to
382 the end of the command. Its output appears in the buffer `*Async Shell
383 Command*'.
384 +++
385 *** Interactively `multi-isearch-buffers' and `multi-isearch-buffers-regexp' 350 *** Interactively `multi-isearch-buffers' and `multi-isearch-buffers-regexp'
386 read buffer names to search, one by one, ended with RET. With a prefix 351 read buffer names to search, one by one, ended with RET. With a prefix
387 argument, they ask for a regexp, and search in buffers whose names match 352 argument, they ask for a regexp, and search in buffers whose names match
388 the specified regexp. Interactively `multi-isearch-files' and 353 the specified regexp. Interactively `multi-isearch-files' and
389 `multi-isearch-files-regexp' read file names to search, one by one, 354 `multi-isearch-files-regexp' read file names to search, one by one,
390 ended with RET. With a prefix argument, they ask for a wildcard, and 355 ended with RET. With a prefix argument, they ask for a wildcard, and
391 search in file buffers whose file names match the specified wildcard. 356 search in file buffers whose file names match the specified wildcard.
392 +++ 357
393 *** Autorevert Tail mode now works also for remote files. 358 *** Autorevert Tail mode now works also for remote files.
394 +++ 359
395 *** The new built-in commands `su' and `sudo' support Tramp. 360 *** The new eshell built-in commands `su' and `sudo' support Tramp.
396 That means, they change `default-directory' to the new users value, 361 Thus, they change `default-directory' to reflect the new user id, and
397 and let commands run under that user permissions. It works even when 362 let commands run under that user's permissions. This works even when
398 `default-directory' is already remote. Calling the external commands 363 `default-directory' is already remote. Calling the external commands
399 is possible by `*su' or `*sudo', respectively. 364 is possible via `*su' or `*sudo', respectively.
400 --- 365
401 *** When running in a new enough xterm (newer than version 242), Emacs 366 ** Obsolete packages
402 asks xterm what the background color is and it sets up faces 367
403 accordingly for a dark background if needed (the current default is to 368 *** sym-comp.el is now obsolete, superseded by completion-at-point.
404 consider the background light). 369
370 *** lucid.el and levents.el are now obsolete.
405 371
406 372
407 * New Modes and Packages in Emacs 23.2 373 * New Modes and Packages in Emacs 23.2
408 374
409 ** CEDET (the Collection of Emacs Development Tools) is now in Emacs. 375 ** CEDET (the Collection of Emacs Development Tools) is now in Emacs.
410 This is a collection of packages to aid with using Emacs as an IDE 376 This is a collection of packages to aid with using Emacs as an IDE
411 (integrated development environment): 377 (integrated development environment):
412 378
413 +++
414 *** The Semantic package allows the use of parsers to intelligently 379 *** The Semantic package allows the use of parsers to intelligently
415 edit and navigate source code. Parsers for C/C++, Java, Javascript, 380 edit and navigate source code. Parsers for C/C++, Java, Javascript,
416 and several other languages are included by default, and Semantic can 381 and several other languages are included by default, and Semantic can
417 also interface with external tools such as GNU Global and GNU Idutils. 382 also interface with external tools such as GNU Global and GNU Idutils.
418 383
419 To enable Semantic, use the global minor mode `semantic-mode'. 384 To enable Semantic, use the global minor mode `semantic-mode'.
420 See the Semantic manual for details. 385 See the Semantic manual for details.
421 386
422 +++
423 *** EDE (Emacs Development Environment) is a package for managing code 387 *** EDE (Emacs Development Environment) is a package for managing code
424 projects, including features such as automatic Makefile generation. 388 projects, including features such as automatic Makefile generation.
425 389
426 To enable EDE, use the minor mode `global-ede-mode'. 390 To enable EDE, use the minor mode `global-ede-mode'.
427 See the EDE manual for details. 391 See the EDE manual for details.
428 392
429 *** SRecode is a library for recoding Semantic tags back into source 393 *** SRecode is a library for recoding Semantic tags back into source
430 code. It is currently used by some parts of Semantic and EDE; in the 394 code. It is currently used by some parts of Semantic and EDE; in the
431 future, it may be used for code generation features. 395 future, it may be used for code generation features.
432 396
433 +++
434 *** The EIEIO library implements a subset of the Common Lisp Object 397 *** The EIEIO library implements a subset of the Common Lisp Object
435 System (CLOS). It is used by the other CEDET packages. 398 System (CLOS). It is used by the other CEDET packages.
436 399
437 ---
438 ** mpc.el is a front end for the Music Player Daemon. Run it with M-x mpc. 400 ** mpc.el is a front end for the Music Player Daemon. Run it with M-x mpc.
439 401
440 ** htmlfontify.el turns a fontified Emacs buffer into an HTML page. 402 ** htmlfontify.el turns a fontified Emacs buffer into an HTML page.
441 403
442 +++
443 ** js.el is a new major mode for JavaScript files. 404 ** js.el is a new major mode for JavaScript files.
444 405
445 ---
446 ** imap-hash.el is a new library to address IMAP mailboxes as hashtables. 406 ** imap-hash.el is a new library to address IMAP mailboxes as hashtables.
447 407
448 408
449 * Incompatible Lisp Changes in Emacs 23.2 409 * Incompatible Lisp Changes in Emacs 23.2
450 410
451 +++
452 ** The Lisp reader turns integers that are too large/small into floats. 411 ** The Lisp reader turns integers that are too large/small into floats.
453 For instance, on machines where `536870911' is the largest integer, 412 For instance, on machines where `536870911' is the largest integer,
454 reading `536870912' gives the floating-point object `536870912.0'. 413 reading `536870912' gives the floating-point object `536870912.0'.
455 414
456 This change only concerns the Lisp reader; it does not affect how 415 This change only concerns the Lisp reader; it does not affect how
457 actual integer objects overflow. 416 actual integer objects overflow.
458 417
459 ---
460 ** Several obsolete functions removed. 418 ** Several obsolete functions removed.
461 The functions have been obsolete since Emacs 19, and are unlikely to 419 The functions have been obsolete since Emacs 19, and are unlikely to
462 be in use: 420 be in use:
463 421
464 time-stamp-month-dd-yyyy, time-stamp-dd/mm/yyyy, time-stamp-mon-dd-yyyy 422 time-stamp-month-dd-yyyy, time-stamp-dd/mm/yyyy, time-stamp-mon-dd-yyyy
465 time-stamp-dd-mon-yy, time-stamp-yy/mm/dd, time-stamp-yyyy/mm/dd, 423 time-stamp-dd-mon-yy, time-stamp-yy/mm/dd, time-stamp-yyyy/mm/dd,
466 time-stamp-yyyy-mm-dd, time-stamp-yymmdd, time-stamp-hh:mm:ss, 424 time-stamp-yyyy-mm-dd, time-stamp-yymmdd, time-stamp-hh:mm:ss,
467 time-stamp-hhmm, baud-rate 425 time-stamp-hhmm, baud-rate
468 426
469 ---
470 ** Support for generating Emacs 18 compatible bytecode (by setting 427 ** Support for generating Emacs 18 compatible bytecode (by setting
471 the variable `byte-compile-compatibility') has been removed. 428 the variable `byte-compile-compatibility') has been removed.
472 429
473 ---
474 ** In image-mode.el `image-mode-maybe' is obsolete. 430 ** In image-mode.el `image-mode-maybe' is obsolete.
475 Instead, you can either use `image-mode' (which displays an image file 431 Instead, you can either use `image-mode' (which displays an image file
476 as the actual image initially), or `image-mode-as-text' (when you want 432 as the actual image initially), or `image-mode-as-text' (when you want
477 to display an image file as text initially). `image-mode-as-text' is a 433 to display an image file as text initially). `image-mode-as-text' is a
478 combination of a non-image mode from `auto-mode-alist' (or Fundamental 434 combination of a non-image mode from `auto-mode-alist' (or Fundamental
482 `image-toggle-display-image' adds image properties. 438 `image-toggle-display-image' adds image properties.
483 `image-toggle-display' toggles between `image-mode-as-text' and `image-mode'. 439 `image-toggle-display' toggles between `image-mode-as-text' and `image-mode'.
484 440
485 441
486 * Lisp changes in Emacs 23.2 442 * Lisp changes in Emacs 23.2
487 --- 443
488 ** All the default-FOO variables that hold the default value of the FOO 444 ** All the default-FOO variables that hold the default value of the FOO
489 variable, are now declared obsolete. 445 variable, are now declared obsolete.
490 446
491 ** read-key is a function halfway between read-event and read-key-sequence. 447 ** read-key is a function halfway between read-event and read-key-sequence.
492 It reads a single key, but obeys input and escape sequence decoding. 448 It reads a single key, but obeys input and escape sequence decoding.
493 449
494 ** Frame parameter changes 450 ** Frame parameter changes
495 +++ 451
496 *** You can give the `fullscreen' frame parameter the value `maximized'. 452 *** You can give the `fullscreen' frame parameter the value `maximized'.
497 This maximizes the frame. 453 This maximizes the frame.
498 +++ 454
499 *** The new frame parameter `sticky' makes Emacs frames sticky in 455 *** The new frame parameter `sticky' makes Emacs frames sticky in
500 virtual desktops. 456 virtual desktops.
501 457
502 ** Completion changes 458 ** Completion changes
503 459
507 been replaced by a `base-position' argument, and where the `base-size' 463 been replaced by a `base-position' argument, and where the `base-size'
508 argument is now always nil. 464 argument is now always nil.
509 465
510 *** New function `completion-in-region' to use the standard completion 466 *** New function `completion-in-region' to use the standard completion
511 facilities on a particular region of text. 467 facilities on a particular region of text.
512 +++ 468
513 *** The 4th arg to all-completions (aka hide-spaces) is declared obsolete. 469 *** The 4th arg to all-completions (aka hide-spaces) is declared obsolete.
514 470
515 *** completion-annotate-function specifies how to compute annotations 471 *** completion-annotate-function specifies how to compute annotations
516 for completions displayed in *Completions*. 472 for completions displayed in *Completions*.
517 473
518 ** Minibuffer changes 474 ** Minibuffer changes
519 --- 475
520 *** read-file-name-predicate is obsolete. It was used to pass the predicate 476 *** read-file-name-predicate is obsolete. It was used to pass the predicate
521 to read-file-name-internal because read-file-name-internal abused its `pred' 477 to read-file-name-internal because read-file-name-internal abused its `pred'
522 argument to pass the current directory, but this hack is not needed 478 argument to pass the current directory, but this hack is not needed
523 any more. 479 any more.
524 480
525 ** Changes to file-manipulation functions 481 ** Changes to file-manipulation functions
526 +++ 482
527 *** `delete-directory' has an optional parameter RECURSIVE. 483 *** `delete-directory' has an optional parameter RECURSIVE.
528 +++ 484
529 *** New function `copy-directory', which copies a directory recursively. 485 *** New function `copy-directory', which copies a directory recursively.
530 486
531 ** called-interactively-p now takes one argument and replaces interactive-p 487 ** called-interactively-p now takes one argument and replaces interactive-p
532 which is now marked obsolete. 488 which is now marked obsolete.
533 489
538 docstrings by adding a `:advertised-binding' property to the corresponding 494 docstrings by adding a `:advertised-binding' property to the corresponding
539 command's symbol. That property can hold a single binding or a list 495 command's symbol. That property can hold a single binding or a list
540 of bindings. 496 of bindings.
541 497
542 ** Network and process changes 498 ** Network and process changes
543 +++ 499
544 *** start-process-shell-command and start-file-process-shell-command 500 *** start-process-shell-command and start-file-process-shell-command
545 now only take a single `command' argument. 501 now only take a single `command' argument.
546 +++ 502
547 *** The new variable `process-file-side-effects' should be set to nil 503 *** The new variable `process-file-side-effects' should be set to nil
548 if a `process-file' call does not change a remote file. This allows 504 if a `process-file' call does not change a remote file. This allows
549 file name handlers such as Tramp to optimizations. 505 file name handlers such as Tramp to optimizations.
550 +++ 506
551 *** make-network-process can now also create `seqpacket' Unix sockets. 507 *** make-network-process can now also create `seqpacket' Unix sockets.
552 508
553 ** Loading changes 509 ** Loading changes
554 --- 510
555 *** eval-next-after-load is obsolete. 511 *** eval-next-after-load is obsolete.
556 +++ 512
557 *** New hook `after-load-functions' run after loading an Elisp file. 513 *** New hook `after-load-functions' run after loading an Elisp file.
558 514
559 ** Byte compilation changes 515 ** Byte compilation changes
560 --- 516
561 *** Changing the file-names generated by byte-compilation by redefining 517 *** Changing the file-names generated by byte-compilation by redefining
562 the function `byte-compile-dest-file' before loading bytecomp.el is obsolete. 518 the function `byte-compile-dest-file' before loading bytecomp.el is obsolete.
563 Instead, customize byte-compile-dest-file-function. 519 Instead, customize byte-compile-dest-file-function.
564 --- 520
565 *** `byte-compile-warnings' has new members, `constants' and `suspicious'. 521 *** `byte-compile-warnings' has new members, `constants' and `suspicious'.
566 522
567 ** New macro with-silent-modifications to tweak text properties without 523 ** New macro with-silent-modifications to tweak text properties without
568 affecting the buffer's modification state. 524 affecting the buffer's modification state.
569 525
570 +++
571 ** Hash tables have a new printed representation that is readable. 526 ** Hash tables have a new printed representation that is readable.
572 The feature `hashtable-print-readable' identifies this new 527 The feature `hashtable-print-readable' identifies this new
573 functionality. 528 functionality.
574 529
575 ** New functions for performing Unicode normalization: 530 ** New functions for performing Unicode normalization:
578 ucs-normalize-NFKD-region, ucs-normalize-NFKD-string, 533 ucs-normalize-NFKD-region, ucs-normalize-NFKD-string,
579 ucs-normalize-NFKC-region, ucs-normalize-NFKC-string, 534 ucs-normalize-NFKC-region, ucs-normalize-NFKC-string,
580 ucs-normalize-HFS-NFD-region, ucs-normalize-HFS-NFD-string, 535 ucs-normalize-HFS-NFD-region, ucs-normalize-HFS-NFD-string,
581 ucs-normalize-HFS-NFC-region, ucs-normalize-HFS-NFC-string. 536 ucs-normalize-HFS-NFC-region, ucs-normalize-HFS-NFC-string.
582 537
583 +++
584 ** Face aliases can now be marked as obsolete, using the macro 538 ** Face aliases can now be marked as obsolete, using the macro
585 `define-obsolete-face-alias'. 539 `define-obsolete-face-alias'.
586 540
587 +++
588 ** New function `window-full-height-p', analogous to the full-width version. 541 ** New function `window-full-height-p', analogous to the full-width version.
589 542
590 543
591 * Changes in Emacs 23.2 on non-free operating systems 544 * Changes in Emacs 23.2 on non-free operating systems
592 545
593 ---
594 ** On MS-Windows, `display-time' now displays the system load average 546 ** On MS-Windows, `display-time' now displays the system load average
595 as well as the time, as it does on GNU and Unix. 547 as well as the time, as it does on GNU and Unix.
596 548
597 549
598 * Installation Changes in Emacs 23.1 550 * Installation Changes in Emacs 23.1
1396 *** (The increasingly misnamed) F90 mode supports Fortran 2003 syntax. 1348 *** (The increasingly misnamed) F90 mode supports Fortran 2003 syntax.
1397 1349
1398 ** Gnus 1350 ** Gnus
1399 1351
1400 *** The Gnus package has been updated 1352 *** The Gnus package has been updated
1401 There are many news features, bug fixes and improvements; see the file 1353 There are many new features, bug fixes and improvements; see the file
1402 GNUS-NEWS or the node "No Gnus" in the Gnus manual for details. 1354 GNUS-NEWS or the node "No Gnus" in the Gnus manual for details.
1403 1355
1404 *** In Emacs 23, Gnus uses Emacs' new internal coding system `utf-8-emacs' for 1356 *** In Emacs 23, Gnus uses Emacs' new internal coding system `utf-8-emacs' for
1405 saving articles drafts and ~/.newsrc.eld. These file may not be read 1357 saving articles, drafts, and ~/.newsrc.eld. These file may not be read
1406 correctly in Emacs 22 and below. If you want to Gnus across different Emacs 1358 correctly in Emacs 22 and below. If you want to Gnus across different Emacs
1407 versions, you may set `mm-auto-save-coding-system' to `emacs-mule'. 1359 versions, you may set `mm-auto-save-coding-system' to `emacs-mule'.
1408 1360
1409 *** Passwords are consistently loaded through `auth-source' 1361 *** Passwords are consistently loaded through `auth-source'
1410 Gnus can use `auth-source' for POP and IMAP passwords. Also see that 1362 Gnus can use `auth-source' for POP and IMAP passwords. Also see that
1453 `isearch-fail' face. 1405 `isearch-fail' face.
1454 1406
1455 *** `C-h C-h' in Isearch mode displays isearch-specific Help screen, 1407 *** `C-h C-h' in Isearch mode displays isearch-specific Help screen,
1456 `C-h b' displays all Isearch key bindings, `C-h k' displays the full 1408 `C-h b' displays all Isearch key bindings, `C-h k' displays the full
1457 documentation of the given Isearch key sequence, `C-h m' displays 1409 documentation of the given Isearch key sequence, `C-h m' displays
1458 documentation of Isearch mode. All the rest Help commands exit Isearch mode 1410 documentation for Isearch mode. All the other Help commands exit
1459 and execute their global definitions. 1411 Isearch mode and execute their global definitions.
1460 1412
1461 *** When started in the minibuffer, Isearch searches in the minibuffer 1413 *** When started in the minibuffer, Isearch searches in the minibuffer
1462 history. See `Minibuffer changes', above. 1414 history. See `Minibuffer changes', above.
1463 1415
1464 ** MH-E 1416 ** MH-E