comparison etc/NEWS @ 62043:68790e90773f

More rearrangements.
author Richard M. Stallman <rms@gnu.org>
date Mon, 02 May 2005 21:34:26 +0000
parents 54584b534be1
children c84f1e028ace
comparison
equal deleted inserted replaced
62042:54584b534be1 62043:68790e90773f
48 Emacs with Leim. 48 Emacs with Leim.
49 49
50 +++ 50 +++
51 ** The Emacs Lisp Reference Manual is now part of the distribution. 51 ** The Emacs Lisp Reference Manual is now part of the distribution.
52 52
53 The ELisp reference manual in Info format is built as part of the 53 The Emacs Lisp Reference Manual in Info format is built as part of the
54 Emacs build procedure and installed together with the Emacs User 54 Emacs build procedure and installed together with the Emacs User
55 Manual. A menu item was added to the menu bar that makes it easy 55 Manual. A menu item was added to the menu bar that makes it easy
56 accessible (Help->More Manuals->Emacs Lisp Reference). 56 accessible (Help->More Manuals->Emacs Lisp Reference).
57 57
58 --- 58 ---
63 together with the Emacs User Manual, into the Info directory. A menu 63 together with the Emacs User Manual, into the Info directory. A menu
64 item was added to the menu bar that makes it easy accessible 64 item was added to the menu bar that makes it easy accessible
65 (Help->More Manuals->Introduction to Emacs Lisp). 65 (Help->More Manuals->Introduction to Emacs Lisp).
66 66
67 --- 67 ---
68 ** New translations of the Emacs Tutorial are available in the following 68 ** New translations of the Emacs Tutorial are available in the
69 languages: Brasilian, Bulgarian, Chinese (both with simplified and 69 following languages: Brasilian Portuguese, Bulgarian, Chinese (both
70 traditional characters), French, and Italian. Type `C-u C-h t' to 70 with simplified and traditional characters), French, and Italian.
71 choose one of them in case your language setup doesn't automatically 71 Type `C-u C-h t' to choose one of them in case your language setup
72 select the right one. 72 doesn't automatically select the right one.
73 73
74 --- 74 ---
75 ** A French translation of the `Emacs Survival Guide' is available. 75 ** A French translation of the `Emacs Survival Guide' is available.
76 76
77 --- 77 ---
102 the files mac/README and mac/INSTALL for build instructions. 102 the files mac/README and mac/INSTALL for build instructions.
103 103
104 --- 104 ---
105 ** Building with -DENABLE_CHECKING does not automatically build with union 105 ** Building with -DENABLE_CHECKING does not automatically build with union
106 types any more. Add -DUSE_LISP_UNION_TYPE if you want union types. 106 types any more. Add -DUSE_LISP_UNION_TYPE if you want union types.
107
108 107
109 * Changes in Emacs 22.1 108 * Startup Changes in Emacs 22.1
110 109
111 ** New command line option -Q or --quick. 110 ** New command line option -Q or --quick.
112 This is like using -q --no-site-file, but in addition it also disables 111 This is like using -q --no-site-file, but in addition it also disables
113 the fancy startup screen. 112 the fancy startup screen.
114 113
159 automatically at startup, if it exists. When Emacs offers to save 158 automatically at startup, if it exists. When Emacs offers to save
160 modified buffers, it saves the abbrevs too if they have changed. It 159 modified buffers, it saves the abbrevs too if they have changed. It
161 can do this either silently or asking for confirmation first, 160 can do this either silently or asking for confirmation first,
162 according to the value of `save-abbrevs'. 161 according to the value of `save-abbrevs'.
163 162
163
164 * Editing Changes in Emacs 22.1
165
164 +++ 166 +++
165 ** The mode line position information now comes before the major mode. 167 ** The mode line position information now comes before the major mode.
166 When the file is maintained under version control, that information 168 When the file is maintained under version control, that information
167 appears between the position information and the major mode. 169 appears between the position information and the major mode.
168 170
187 ** You can now switch buffers in a cyclic order with C-x C-left and 189 ** You can now switch buffers in a cyclic order with C-x C-left and
188 (prev-buffer) and C-x C-right (next-buffer). C-x left and C-x right 190 (prev-buffer) and C-x C-right (next-buffer). C-x left and C-x right
189 can be used as well. 191 can be used as well.
190 192
191 +++ 193 +++
192 ** New command `Buffer-menu-toggle-files-only' toggles display of file
193 buffers only in the Buffer Menu. It is bound to `T' in Buffer Menu
194 mode.
195
196 +++
197 ** `buffer-menu' and `list-buffers' now list buffers whose names begin
198 with a space, when those buffers are visiting files. Normally buffers
199 whose names begin with space are omitted.
200
201 ---
202 ** The new options `buffers-menu-show-directories' and
203 `buffers-menu-show-status' let you control how buffers are displayed
204 in the menu dropped down when you click "Buffers" from the menu bar.
205
206 `buffers-menu-show-directories' controls whether the menu displays
207 leading directories as part of the file name visited by the buffer.
208 If its value is `unless-uniquify', the default, directories are
209 shown unless uniquify-buffer-name-style' is non-nil. The value of nil
210 and t turn the display of directories off and on, respectively.
211
212 `buffers-menu-show-status' controls whether the Buffers menu includes
213 the modified and read-only status of the buffers. By default it is
214 t, and the status is shown.
215
216 Setting these variables directly does not take effect until next time
217 the Buffers menu is regenerated.
218
219 +++
220 ** The old bindings C-M-delete and C-M-backspace have been deleted, 194 ** The old bindings C-M-delete and C-M-backspace have been deleted,
221 since there are situations where one or the other will shut down 195 since there are situations where one or the other will shut down
222 the operating system or your X server. 196 the operating system or your X server.
223 197
224 +++ 198 +++
230 you about it. 204 you about it.
231 205
232 +++ 206 +++
233 ** M-SPC (just-one-space) when given a numeric argument N 207 ** M-SPC (just-one-space) when given a numeric argument N
234 converts whitespace around point to N spaces. 208 converts whitespace around point to N spaces.
209
210 +++
211 ** line-move-ignore-invisible now defaults to t.
212
213 ---
214 ** New commands to operate on pairs of open and close characters:
215 `insert-pair', `delete-pair', `raise-sexp'.
235 216
236 --- 217 ---
237 ** New command `kill-whole-line' kills an entire line at once. 218 ** New command `kill-whole-line' kills an entire line at once.
238 By default, it is bound to C-S-<backspace>. 219 By default, it is bound to C-S-<backspace>.
239 220
251 +++ 232 +++
252 ** Movement commands `beginning-of-buffer', `end-of-buffer', 233 ** Movement commands `beginning-of-buffer', `end-of-buffer',
253 `beginning-of-defun', `end-of-defun' do not set the mark if the mark 234 `beginning-of-defun', `end-of-defun' do not set the mark if the mark
254 is already active in Transient Mark mode. 235 is already active in Transient Mark mode.
255 236
256 +++ 237 ** Mark Changes:
257 ** The parameters of automatic hscrolling can now be customized. 238
258 The variable `hscroll-margin' determines how many columns away from 239 +++
259 the window edge point is allowed to get before automatic hscrolling 240 *** A prefix argument is no longer required to repeat a jump to a
260 will horizontally scroll the window. The default value is 5.
261
262 The variable `hscroll-step' determines how many columns automatic
263 hscrolling scrolls the window when point gets too close to the
264 window edge. If its value is zero, the default, Emacs scrolls the
265 window so as to center point. If its value is an integer, it says how
266 many columns to scroll. If the value is a floating-point number, it
267 gives the fraction of the window's width to scroll the window.
268
269 The variable `automatic-hscrolling' was renamed to
270 `auto-hscroll-mode'. The old name is still available as an alias.
271
272 +++
273 ** A prefix argument is no longer required to repeat a jump to a
274 previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the 241 previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the
275 mark ring. Use C-u C-u C-SPC to set the mark immediately after a jump. 242 mark ring. Use C-u C-u C-SPC to set the mark immediately after a jump.
276 243
277 +++ 244 +++
278 ** Marking commands extend the region when invoked multiple times. If 245 *** Marking commands extend the region when invoked multiple times. If
279 you hit M-C-SPC (mark-sexp), M-@ (mark-word), M-h (mark-paragraph), or 246 you hit M-C-SPC (mark-sexp), M-@ (mark-word), M-h (mark-paragraph), or
280 C-M-h (mark-defun) repeatedly, the marked region extends each time, so 247 C-M-h (mark-defun) repeatedly, the marked region extends each time, so
281 you can mark the next two sexps with M-C-SPC M-C-SPC, for example. 248 you can mark the next two sexps with M-C-SPC M-C-SPC, for example.
282 This feature also works for mark-end-of-sentence, if you bind that to 249 This feature also works for mark-end-of-sentence, if you bind that to
283 a key. It also extends the region when the mark is active in Transient 250 a key. It also extends the region when the mark is active in Transient
284 Mark mode, regardless of the last command. To start a new region with 251 Mark mode, regardless of the last command. To start a new region with
285 one of marking commands in Transient Mark mode, you can deactivate the 252 one of marking commands in Transient Mark mode, you can deactivate the
286 active region with C-g, or set the new mark with C-SPC. 253 active region with C-g, or set the new mark with C-SPC.
287 254
288 +++ 255 +++
289 ** M-h (mark-paragraph) now accepts a prefix arg. 256 *** M-h (mark-paragraph) now accepts a prefix arg.
290 With positive arg, M-h marks the current and the following paragraphs; 257 With positive arg, M-h marks the current and the following paragraphs;
291 if the arg is negative, it marks the current and the preceding 258 if the arg is negative, it marks the current and the preceding
292 paragraphs. 259 paragraphs.
293 260
294 +++ 261 +++
295 ** Some commands do something special in Transient Mark mode when the 262 *** Some commands do something special in Transient Mark mode when the
296 mark is active--for instance, they limit their operation to the 263 mark is active--for instance, they limit their operation to the
297 region. Even if you don't normally use Transient Mark mode, you might 264 region. Even if you don't normally use Transient Mark mode, you might
298 want to get this behavior from a particular command. There are two 265 want to get this behavior from a particular command. There are two
299 ways you can enable Transient Mark mode and activate the mark, for one 266 ways you can enable Transient Mark mode and activate the mark, for one
300 command only. 267 command only.
307 After these commands, Transient Mark mode remains enabled until you 274 After these commands, Transient Mark mode remains enabled until you
308 deactivate the mark. That typically happens when you type a command 275 deactivate the mark. That typically happens when you type a command
309 that alters the buffer, but you can also deactivate the mark by typing 276 that alters the buffer, but you can also deactivate the mark by typing
310 C-g. 277 C-g.
311 278
312 +++ 279 ** Help command changes:
313 ** find-file-read-only visits multiple files in read-only mode, 280
281 +++
282 *** Changes in C-h bindings:
283
284 C-h e displays the *Messages* buffer.
285
286 C-h followed by a control character is used for displaying files
287 that do not change:
288
289 C-h C-f displays the FAQ.
290 C-h C-e displays the PROBLEMS file.
291
292 The info-search bindings on C-h C-f, C-h C-k and C-h C-i
293 have been moved to C-h F, C-h K and C-h S.
294
295 C-h c, C-h k, C-h w, and C-h f now handle remapped interactive commands.
296
297 - C-h c and C-h k report the actual command (after possible remapping)
298 run by the key sequence.
299
300 - C-h w and C-h f on a command which has been remapped now report the
301 command it is remapped to, and the keys which can be used to run
302 that command.
303
304 For example, if C-k is bound to kill-line, and kill-line is remapped
305 to new-kill-line, these commands now report:
306
307 - C-h c and C-h k C-k reports:
308 C-k runs the command new-kill-line
309
310 - C-h w and C-h f kill-line reports:
311 kill-line is remapped to new-kill-line which is on C-k, <deleteline>
312
313 - C-h w and C-h f new-kill-line reports:
314 new-kill-line is on C-k
315
316 ---
317 *** Help commands `describe-function' and `describe-key' now show function
318 arguments in lowercase italics on displays that support it. To change the
319 default, customize face `help-argument-name' or redefine the function
320 `help-default-arg-highlight'.
321
322 +++
323 *** C-h v and C-h f commands now include a hyperlink to the C source for
324 variables and functions defined in C (if the C source is available).
325
326 +++
327 *** Help mode now only makes hyperlinks for faces when the face name is
328 preceded or followed by the word `face'. It no longer makes
329 hyperlinks for variables without variable documentation, unless
330 preceded by one of the words `variable' or `option'. It now makes
331 hyperlinks to Info anchors (or nodes) if the anchor (or node) name is
332 enclosed in single quotes and preceded by `info anchor' or `Info
333 anchor' (in addition to earlier `info node' and `Info node').
334
335 +++
336 *** The new command `describe-char' (C-u C-x =) pops up a buffer with
337 description various information about a character, including its
338 encodings and syntax, its text properties, how to input, overlays, and
339 widgets at point. You can get more information about some of them, by
340 clicking on mouse-sensitive areas or moving there and pressing RET.
341
342 +++
343 *** New command `display-local-help' displays any local help at point
344 in the echo area. It is bound to `C-h .'. It normally displays the
345 same string that would be displayed on mouse-over using the
346 `help-echo' property, but, in certain cases, it can display a more
347 keyboard oriented alternative.
348
349 +++
350 *** New user option `help-at-pt-display-when-idle' allows to
351 automatically show the help provided by `display-local-help' on
352 point-over, after suitable idle time. The amount of idle time is
353 determined by the user option `help-at-pt-timer-delay' and defaults
354 to one second. This feature is turned off by default.
355
356 ** Buffer Menu changes
357
358 +++
359 *** New command `Buffer-menu-toggle-files-only' toggles display of file
360 buffers only in the Buffer Menu. It is bound to `T' in Buffer Menu
361 mode.
362
363 +++
364 *** `buffer-menu' and `list-buffers' now list buffers whose names begin
365 with a space, when those buffers are visiting files. Normally buffers
366 whose names begin with space are omitted.
367
368 ---
369 *** The new options `buffers-menu-show-directories' and
370 `buffers-menu-show-status' let you control how buffers are displayed
371 in the menu dropped down when you click "Buffers" from the menu bar.
372
373 `buffers-menu-show-directories' controls whether the menu displays
374 leading directories as part of the file name visited by the buffer.
375 If its value is `unless-uniquify', the default, directories are
376 shown unless uniquify-buffer-name-style' is non-nil. The value of nil
377 and t turn the display of directories off and on, respectively.
378
379 `buffers-menu-show-status' controls whether the Buffers menu includes
380 the modified and read-only status of the buffers. By default it is
381 t, and the status is shown.
382
383 Setting these variables directly does not take effect until next time
384 the Buffers menu is regenerated.
385
386 ** File Operation Changes:
387
388 +++
389 *** find-file-read-only visits multiple files in read-only mode,
314 when the file name contains wildcard characters. 390 when the file name contains wildcard characters.
315 391
316 +++ 392 +++
317 ** find-alternate-file replaces the current file with multiple files, 393 *** find-alternate-file replaces the current file with multiple files,
318 when the file name contains wildcard characters. 394 when the file name contains wildcard characters.
319 395
320 +++ 396 +++
321 ** Auto Compression mode is now enabled by default. 397 *** Auto Compression mode is now enabled by default.
322 398
323 --- 399 ---
324 ** C-x C-f RET, typing nothing in the minibuffer, is no longer a special case. 400 *** C-x C-f RET, typing nothing in the minibuffer, is no longer a special case.
325 401
326 Since the default input is the current directory, this has the effect 402 Since the default input is the current directory, this has the effect
327 of specifying the current directory. Normally that means to visit the 403 of specifying the current directory. Normally that means to visit the
328 directory with Dired. 404 directory with Dired.
329 405
330 +++ 406 +++
331 ** When you are root, and you visit a file whose modes specify 407 *** When you are root, and you visit a file whose modes specify
332 read-only, the Emacs buffer is now read-only too. Type C-x C-q if you 408 read-only, the Emacs buffer is now read-only too. Type C-x C-q if you
333 want to make the buffer writable. (As root, you can in fact alter the 409 want to make the buffer writable. (As root, you can in fact alter the
334 file.) 410 file.)
335 411
336 +++ 412 +++
337 ** C-x s (save-some-buffers) now offers an option `d' to diff a buffer 413 *** C-x s (save-some-buffers) now offers an option `d' to diff a buffer
338 against its file, so you can see what changes you would be saving. 414 against its file, so you can see what changes you would be saving.
339 415
340 +++ 416 +++
341 ** The commands copy-file, rename-file, make-symbolic-link and 417 *** The commands copy-file, rename-file, make-symbolic-link and
342 add-name-to-file, when given a directory as the "new name" argument, 418 add-name-to-file, when given a directory as the "new name" argument,
343 convert it to a file name by merging in the within-directory part of 419 convert it to a file name by merging in the within-directory part of
344 the existing file's name. (This is the same convention that shell 420 the existing file's name. (This is the same convention that shell
345 commands cp, mv, and ln follow.) Thus, M-x copy-file RET ~/foo RET 421 commands cp, mv, and ln follow.) Thus, M-x copy-file RET ~/foo RET
346 /tmp RET copies ~/foo to /tmp/foo. 422 /tmp RET copies ~/foo to /tmp/foo.
347 423
348 --- 424 ---
349 ** When used interactively, `format-write-file' now asks for confirmation 425 *** When used interactively, `format-write-file' now asks for confirmation
350 before overwriting an existing file, unless a prefix argument is 426 before overwriting an existing file, unless a prefix argument is
351 supplied. This behavior is analogous to `write-file'. 427 supplied. This behavior is analogous to `write-file'.
352 428
353 --- 429 ---
354 ** The variable `auto-save-file-name-transforms' now has a third element that 430 *** The variable `auto-save-file-name-transforms' now has a third element that
355 controls whether or not the function `make-auto-save-file-name' will 431 controls whether or not the function `make-auto-save-file-name' will
356 attempt to construct a unique auto-save name (e.g. for remote files). 432 attempt to construct a unique auto-save name (e.g. for remote files).
357 433
358 +++ 434 +++
435 *** If the user visits a file larger than `large-file-warning-threshold',
436 Emacs prompts her for confirmation.
437
438 +++
439 *** require-final-newline now has two new possible values:
440
441 `visit' means add a newline (as an undoable change) if it's needed
442 when visiting the file.
443
444 `visit-save' means add a newline (as an undoable change) if it's
445 needed when visiting the file, and also add a newline if it's needed
446 when saving the file.
447
448 +++
449 *** The new option mode-require-final-newline controls how certain
450 major modes enable require-final-newline. Any major mode that's
451 designed for a kind of file that should normally end in a newline
452 sets require-final-newline based on mode-require-final-newline.
453 So you can customize mode-require-final-newline to control what these
454 modes do.
455
456 +++
359 ** The max size of buffers and integers has been doubled. 457 ** The max size of buffers and integers has been doubled.
360 On 32bit machines, it is now 256M (i.e. 268435455). 458 On 32bit machines, it is now 256M (i.e. 268435455).
361 459
362 +++ 460 ** Minibuffer changes:
363 ** If the user visits a file larger than `large-file-warning-threshold', 461
364 Emacs prompts her for confirmation. 462 +++
365 463 *** There's a new face `minibuffer-prompt'.
366 +++
367 ** There's a new face `minibuffer-prompt'.
368 Emacs adds this face to the list of text properties stored in the 464 Emacs adds this face to the list of text properties stored in the
369 variable `minibuffer-prompt-properties', which is used to display the 465 variable `minibuffer-prompt-properties', which is used to display the
370 prompt string. 466 prompt string.
371 467
372 --- 468 ---
373 ** Enhanced visual feedback in *Completions* buffer. 469 *** Enhanced visual feedback in *Completions* buffer.
374 470
375 Completions lists use faces to highlight what all completions 471 Completions lists use faces to highlight what all completions
376 have in common and where they begin to differ. 472 have in common and where they begin to differ.
377 473
378 The common prefix shared by all possible completions uses the face 474 The common prefix shared by all possible completions uses the face
383 `completions-common-part' is that you can use it to make the common 479 `completions-common-part' is that you can use it to make the common
384 parts less visible than normal, so that the rest of the differing 480 parts less visible than normal, so that the rest of the differing
385 parts is, by contrast, slightly highlighted. 481 parts is, by contrast, slightly highlighted.
386 482
387 +++ 483 +++
388 ** File-name completion can now ignore directories. 484 *** File-name completion can now ignore directories.
389 If an element of the list in `completion-ignored-extensions' ends in a 485 If an element of the list in `completion-ignored-extensions' ends in a
390 slash `/', it indicates a subdirectory that should be ignored when 486 slash `/', it indicates a subdirectory that should be ignored when
391 completing file names. Elements of `completion-ignored-extensions' 487 completing file names. Elements of `completion-ignored-extensions'
392 which do not end in a slash are never considered when a completion 488 which do not end in a slash are never considered when a completion
393 candidate is a directory. 489 candidate is a directory.
394 490
395 +++ 491 +++
396 ** The completion commands TAB, SPC and ? in the minibuffer apply only 492 *** The completion commands TAB, SPC and ? in the minibuffer apply only
397 to the text before point. If there is text in the buffer after point, 493 to the text before point. If there is text in the buffer after point,
398 it remains unchanged. 494 it remains unchanged.
399 495
400 +++ 496 +++
401 ** New user option `history-delete-duplicates'. 497 *** New user option `history-delete-duplicates'.
402 If set to t when adding a new history element, all previous identical 498 If set to t when adding a new history element, all previous identical
403 elements are deleted. 499 elements are deleted.
404 500
405 +++ 501 ** Redisplay Changes
406 ** You can now customize fill-nobreak-predicate to control where 502
407 filling can break lines. The value is now normally a list of 503 +++
408 functions, but it can also be a single function, for compatibility. 504 *** Control characters and escape glyphs are now shown in the new
409
410 We provide two sample predicates, fill-single-word-nobreak-p and
411 fill-french-nobreak-p, for use in the value of fill-nobreak-predicate.
412
413 +++
414 ** require-final-newline now has two new possible values:
415
416 `visit' means add a newline (as an undoable change) if it's needed
417 when visiting the file.
418
419 `visit-save' means add a newline (as an undoable change) if it's
420 needed when visiting the file, and also add a newline if it's needed
421 when saving the file.
422
423 +++
424 ** The new option mode-require-final-newline controls how certain
425 major modes enable require-final-newline. Any major mode that's
426 designed for a kind of file that should normally end in a newline
427 sets require-final-newline based on mode-require-final-newline.
428 So you can customize mode-require-final-newline to control what these
429 modes do.
430
431 +++
432 ** Control characters and escape glyphs are now shown in the new
433 escape-glyph face. 505 escape-glyph face.
434 506
435 +++ 507 +++
436 ** Non-breaking space and hyphens are now prefixed with an escape 508 *** Non-breaking space and hyphens are now prefixed with an escape
437 character, unless the new user variable `show-nonbreak-escape' is set 509 character, unless the new user variable `show-nonbreak-escape' is set
438 to nil. 510 to nil.
439 511
440 +++ 512 +++
441 ** In graphical mode, with a C program, GUD Tooltips have been extended to 513 *** The parameters of automatic hscrolling can now be customized.
514 The variable `hscroll-margin' determines how many columns away from
515 the window edge point is allowed to get before automatic hscrolling
516 will horizontally scroll the window. The default value is 5.
517
518 The variable `hscroll-step' determines how many columns automatic
519 hscrolling scrolls the window when point gets too close to the
520 window edge. If its value is zero, the default, Emacs scrolls the
521 window so as to center point. If its value is an integer, it says how
522 many columns to scroll. If the value is a floating-point number, it
523 gives the fraction of the window's width to scroll the window.
524
525 The variable `automatic-hscrolling' was renamed to
526 `auto-hscroll-mode'. The old name is still available as an alias.
527
528 *** Moving or scrolling through images (and other lines) taller that
529 the window now works sensible, by automatically adjusting the window's
530 vscroll property.
531
532 +++
533 *** In graphical mode, with a C program, GUD Tooltips have been extended to
442 display the #define directive associated with an identifier when program is 534 display the #define directive associated with an identifier when program is
443 not executing. 535 not executing.
444 536
445 ** Moving or scrolling through images (and other lines) taller that 537 +++
446 the window now works sensible, by automatically adjusting the window's 538 *** The new face `mode-line-inactive' is used to display the mode line
447 vscroll property. 539 of non-selected windows. The `mode-line' face is now used to display
540 the mode line of the currently selected window.
541
542 The new variable `mode-line-in-non-selected-windows' controls whether
543 the `mode-line-inactive' face is used.
544
545 +++
546 *** You can now customize the use of window fringes. To control this
547 for all frames, use M-x fringe-mode or the Show/Hide submenu of the
548 top-level Options menu, or customize the `fringe-mode' variable. To
549 control this for a specific frame, use the command M-x
550 set-fringe-style.
551
552 +++
553 *** The buffer boundaries (i.e. first and last line in the buffer) may
554 now be marked with angle bitmaps in the fringes. In addition, up and
555 down arrow bitmaps may be shown at the top and bottom of the left or
556 right fringe if the window can be scrolled in either direction.
557
558 This behavior is activated by setting the buffer-local variable
559 `indicate-buffer-boundaries' to a non-nil value. The default value of
560 this variable is found in `default-indicate-buffer-boundaries'.
561
562 If value is `left' or `right', both angle and arrow bitmaps are
563 displayed in the left or right fringe, resp.
564
565 Value may also be an alist which specifies the presense and position
566 of each bitmap individually.
567
568 For example, ((top . left) (t . right)) places the top angle bitmap
569 in left fringe, the bottom angle bitmap in right fringe, and both
570 arrow bitmaps in right fringe. To show just the angle bitmaps in the
571 left fringe, but no arrow bitmaps, use ((top . left) (bottom . left)).
572
573 +++
574 *** On window systems, lines which are exactly as wide as the window
575 (not counting the final newline character) are no longer broken into
576 two lines on the display (with just the newline on the second line).
577 Instead, the newline now "overflows" into the right fringe, and the
578 cursor will be displayed in the fringe when positioned on that newline.
579
580 The new user option 'overflow-newline-into-fringe' may be set to nil to
581 revert to the old behavior of continuing such lines.
582
583 +++
584 *** When display margins are present in a window, the fringes are now
585 displayed between the margins and the buffer's text area, rather than
586 at the edges of the window.
587
588 +++
589 *** A window may now have individual fringe and scroll-bar settings,
590 in addition to the individual display margin settings.
591
592 Such individual settings are now preserved when windows are split
593 horizontally or vertically, a saved window configuration is restored,
594 or when the frame is resized.
595
596 ** Cursor Display Changes
597
598 +++
599 *** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is
600 now controlled by the variable `blink-cursor-alist'.
601
602 +++
603 *** The X resource cursorBlink can be used to turn off cursor blinking.
604
605 +++
606 *** Emacs can produce an underscore-like (horizontal bar) cursor.
607 The underscore cursor is set by putting `(cursor-type . hbar)' in
608 default-frame-alist. It supports variable heights, like the `bar'
609 cursor does.
610
611 +++
612 *** Display of hollow cursors now obeys the buffer-local value (if any)
613 of `cursor-in-non-selected-windows' in the buffer that the cursor
614 appears in.
615
616 +++
617 *** The variable `cursor-in-non-selected-windows' can now be set to any
618 of the recognized cursor types.
448 619
449 +++ 620 +++
450 ** font-lock-lines-before specifies a number of lines before the 621 ** font-lock-lines-before specifies a number of lines before the
451 current line that should be refontified when you change the buffer. 622 current line that should be refontified when you change the buffer.
452 The default value is 1. 623 The default value is 1.
472 643
473 jit-lock-defer-contextually is renamed jit-lock-contextually and 644 jit-lock-defer-contextually is renamed jit-lock-contextually and
474 jit-lock-context-time determines the delay after which contextual 645 jit-lock-context-time determines the delay after which contextual
475 refontification takes place. 646 refontification takes place.
476 647
477 +++ 648 ** Menu Bar changes
478 ** line-move-ignore-invisible now defaults to t. 649
479 650 ---
480 --- 651 *** A menu item "Show/Hide" was added to the top-level menu "Options".
481 ** A menu item "Show/Hide" was added to the top-level menu "Options".
482 This menu allows you to turn various display features on and off (such 652 This menu allows you to turn various display features on and off (such
483 as the fringes, the tool bar, the speedbar, and the menu bar itself). 653 as the fringes, the tool bar, the speedbar, and the menu bar itself).
484 You can also move the vertical scroll bar to either side here or turn 654 You can also move the vertical scroll bar to either side here or turn
485 it off completely. There is also a menu-item to toggle displaying of 655 it off completely. There is also a menu-item to toggle displaying of
486 current date and time, current line and column number in the 656 current date and time, current line and column number in the
487 mode-line. 657 mode-line.
488 658
489 --- 659 ---
490 ** Speedbar has moved from the "Tools" top level menu to "Show/Hide". 660 *** Speedbar has moved from the "Tools" top level menu to "Show/Hide".
491 661
492 +++ 662 +++
493 ** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is 663 ** You can now customize fill-nobreak-predicate to control where
494 now controlled by the variable `blink-cursor-alist'. 664 filling can break lines. The value is now normally a list of
495 665 functions, but it can also be a single function, for compatibility.
496 +++ 666
497 ** The X resource cursorBlink can be used to turn off cursor blinking. 667 We provide two sample predicates, fill-single-word-nobreak-p and
498 668 fill-french-nobreak-p, for use in the value of fill-nobreak-predicate.
499 +++
500 ** Emacs can produce an underscore-like (horizontal bar) cursor.
501 The underscore cursor is set by putting `(cursor-type . hbar)' in
502 default-frame-alist. It supports variable heights, like the `bar'
503 cursor does.
504
505 +++
506 ** Display of hollow cursors now obeys the buffer-local value (if any)
507 of `cursor-in-non-selected-windows' in the buffer that the cursor
508 appears in.
509
510 +++
511 ** The variable `cursor-in-non-selected-windows' can now be set to any
512 of the recognized cursor types.
513
514 +++
515 ** The new face `mode-line-inactive' is used to display the mode line
516 of non-selected windows. The `mode-line' face is now used to display
517 the mode line of the currently selected window.
518
519 The new variable `mode-line-in-non-selected-windows' controls whether
520 the `mode-line-inactive' face is used.
521 669
522 +++ 670 +++
523 ** New display feature: focus follows the mouse from one Emacs window 671 ** New display feature: focus follows the mouse from one Emacs window
524 to another, even within a frame. If you set the variable 672 to another, even within a frame. If you set the variable
525 mouse-autoselect-window to non-nil value, moving the mouse to a 673 mouse-autoselect-window to non-nil value, moving the mouse to a
539 ** When you specify a frame size with --geometry, the size applies to 687 ** When you specify a frame size with --geometry, the size applies to
540 all frames you create. A position specified with --geometry only 688 all frames you create. A position specified with --geometry only
541 affects the initial frame. 689 affects the initial frame.
542 690
543 +++ 691 +++
544 ** You can now customize the use of window fringes. To control this
545 for all frames, use M-x fringe-mode or the Show/Hide submenu of the
546 top-level Options menu, or customize the `fringe-mode' variable. To
547 control this for a specific frame, use the command M-x
548 set-fringe-style.
549
550 +++
551 ** The buffer boundaries (i.e. first and last line in the buffer) may
552 now be marked with angle bitmaps in the fringes. In addition, up and
553 down arrow bitmaps may be shown at the top and bottom of the left or
554 right fringe if the window can be scrolled in either direction.
555
556 This behavior is activated by setting the buffer-local variable
557 `indicate-buffer-boundaries' to a non-nil value. The default value of
558 this variable is found in `default-indicate-buffer-boundaries'.
559
560 If value is `left' or `right', both angle and arrow bitmaps are
561 displayed in the left or right fringe, resp.
562
563 Value may also be an alist which specifies the presense and position
564 of each bitmap individually.
565
566 For example, ((top . left) (t . right)) places the top angle bitmap
567 in left fringe, the bottom angle bitmap in right fringe, and both
568 arrow bitmaps in right fringe. To show just the angle bitmaps in the
569 left fringe, but no arrow bitmaps, use ((top . left) (bottom . left)).
570
571 +++
572 ** On window systems, lines which are exactly as wide as the window
573 (not counting the final newline character) are no longer broken into
574 two lines on the display (with just the newline on the second line).
575 Instead, the newline now "overflows" into the right fringe, and the
576 cursor will be displayed in the fringe when positioned on that newline.
577
578 The new user option 'overflow-newline-into-fringe' may be set to nil to
579 revert to the old behavior of continuing such lines.
580
581 +++
582 ** When display margins are present in a window, the fringes are now
583 displayed between the margins and the buffer's text area, rather than
584 at the edges of the window.
585
586 +++
587 ** A window may now have individual fringe and scroll-bar settings,
588 in addition to the individual display margin settings.
589
590 Such individual settings are now preserved when windows are split
591 horizontally or vertically, a saved window configuration is restored,
592 or when the frame is resized.
593
594 +++
595 ** `special-display-buffer-names' and `special-display-regexps' now 692 ** `special-display-buffer-names' and `special-display-regexps' now
596 understand two new boolean pseudo-frame-parameters `same-frame' and 693 understand two new boolean pseudo-frame-parameters `same-frame' and
597 `same-window'. 694 `same-window'.
598
599 +++
600 ** Changes in C-h bindings:
601
602 C-h e displays the *Messages* buffer.
603
604 C-h followed by a control character is used for displaying files
605 that do not change:
606
607 C-h C-f displays the FAQ.
608 C-h C-e displays the PROBLEMS file.
609
610 The info-search bindings on C-h C-f, C-h C-k and C-h C-i
611 have been moved to C-h F, C-h K and C-h S.
612
613 C-h c, C-h k, C-h w, and C-h f now handle remapped interactive commands.
614
615 - C-h c and C-h k report the actual command (after possible remapping)
616 run by the key sequence.
617
618 - C-h w and C-h f on a command which has been remapped now report the
619 command it is remapped to, and the keys which can be used to run
620 that command.
621
622 For example, if C-k is bound to kill-line, and kill-line is remapped
623 to new-kill-line, these commands now report:
624
625 - C-h c and C-h k C-k reports:
626 C-k runs the command new-kill-line
627
628 - C-h w and C-h f kill-line reports:
629 kill-line is remapped to new-kill-line which is on C-k, <deleteline>
630
631 - C-h w and C-h f new-kill-line reports:
632 new-kill-line is on C-k
633
634 ---
635 ** Help commands `describe-function' and `describe-key' now show function
636 arguments in lowercase italics on displays that support it. To change the
637 default, customize face `help-argument-name' or redefine the function
638 `help-default-arg-highlight'.
639
640 +++
641 ** C-h v and C-h f commands now include a hyperlink to the C source for
642 variables and functions defined in C (if the C source is available).
643
644 +++
645 ** Help mode now only makes hyperlinks for faces when the face name is
646 preceded or followed by the word `face'. It no longer makes
647 hyperlinks for variables without variable documentation, unless
648 preceded by one of the words `variable' or `option'. It now makes
649 hyperlinks to Info anchors (or nodes) if the anchor (or node) name is
650 enclosed in single quotes and preceded by `info anchor' or `Info
651 anchor' (in addition to earlier `info node' and `Info node').
652
653 +++
654 ** The new command `describe-char' (C-u C-x =) pops up a buffer with
655 description various information about a character, including its
656 encodings and syntax, its text properties, how to input, overlays, and
657 widgets at point. You can get more information about some of them, by
658 clicking on mouse-sensitive areas or moving there and pressing RET.
659
660 +++
661 ** New command `display-local-help' displays any local help at point
662 in the echo area. It is bound to `C-h .'. It normally displays the
663 same string that would be displayed on mouse-over using the
664 `help-echo' property, but, in certain cases, it can display a more
665 keyboard oriented alternative.
666 695
667 --- 696 ---
668 ** New commands `scan-buf-next-region' and `scan-buf-previous-region' 697 ** New commands `scan-buf-next-region' and `scan-buf-previous-region'
669 move to the start of the next (previous, respectively) region with 698 move to the start of the next (previous, respectively) region with
670 non-nil help-echo property and display any help found there in the 699 non-nil help-echo property and display any help found there in the
671 echo area, using `display-local-help'. 700 echo area, using `display-local-help'.
672
673 +++
674 ** New user option `help-at-pt-display-when-idle' allows to
675 automatically show the help provided by `display-local-help' on
676 point-over, after suitable idle time. The amount of idle time is
677 determined by the user option `help-at-pt-timer-delay' and defaults
678 to one second. This feature is turned off by default.
679
680 ---
681 ** New commands to operate on pairs of open and close characters:
682 `insert-pair', `delete-pair', `raise-sexp'.
683 701
684 +++ 702 +++
685 ** In processing a local variables list, Emacs strips the prefix and 703 ** In processing a local variables list, Emacs strips the prefix and
686 suffix are from every line before processing all the lines. 704 suffix are from every line before processing all the lines.
687 705
1228 +++ 1246 +++
1229 ** New user option `add-log-always-start-new-record'. 1247 ** New user option `add-log-always-start-new-record'.
1230 When this option is enabled, M-x add-change-log-entry always 1248 When this option is enabled, M-x add-change-log-entry always
1231 starts a new record regardless of when the last record is. 1249 starts a new record regardless of when the last record is.
1232 1250
1251 ** Menu support:
1252
1253 ---
1254 *** Dialogs and menus pop down if you type C-g.
1255
1256 ---
1257 *** The menu item "Open File..." has been split into two items, "New File..."
1258 and "Open File...". "Open File..." now opens only existing files. This is
1259 to support existing GUI file selection dialogs better.
1260
1261 +++
1262 *** The file selection dialog for Gtk+, Mac, W32 and Motif/Lesstif can be
1263 disabled by customizing the variable `use-file-dialog'.
1264
1265 ** X Windows Support:
1266
1267 +++
1268 *** Emacs now supports drag and drop for X. Dropping a file on a window
1269 opens it, dropping text inserts the text. Dropping a file on a dired
1270 buffer copies or moves the file to that directory.
1271
1272 +++
1273 *** Under X11, it is possible to swap Alt and Meta (and Super and Hyper).
1274 The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym',
1275 and `x-super-keysym' can be used to choose which keysyms Emacs should
1276 use for the modifiers. For example, the following two lines swap
1277 Meta and Alt:
1278 (setq x-alt-keysym 'meta)
1279 (setq x-meta-keysym 'alt)
1280
1281 +++
1282 *** The X resource useXIM can be used to turn off use of XIM, which may
1283 speed up Emacs with slow networking to the X server.
1284
1285 If the configure option `--without-xim' was used to turn off use of
1286 XIM by default, the X resource useXIM can be used to turn it on.
1287
1288 ---
1289 *** The new variable `x-select-request-type' controls how Emacs
1290 requests X selection. The default value is nil, which means that
1291 Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING,
1292 and use the more appropriately result.
1293
1294 ---
1295 *** The scrollbar under LessTif or Motif has a smoother drag-scrolling.
1296 On the other hand, the size of the thumb does not represent the actual
1297 amount of text shown any more (only a crude approximation of it).
1298
1299 ---
1300 *** The pop up menus for Lucid now stay up if you do a fast click and can
1301 be navigated with the arrow keys (like Gtk+, Mac and W32).
1302
1303 +++
1304 *** The Lucid menus can display multilingual text in your locale. You have
1305 to explicitly specify a fontSet resource for this to work, for example
1306 `-xrm "Emacs*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*"'.
1307
1308 ---
1309 *** Dialogs for Lucid/Athena and Lesstif/Motif now pops down when pressing
1310 ESC, like they do for Gtk+, Mac and W32.
1311
1312 +++
1313 ** For Gtk+ version 2.4, you can make Emacs use the old file dialog
1314 by setting the variable `x-use-old-gtk-file-dialog' to t. Default is to use
1315 the new dialog.
1316
1317 ** Xterm support:
1318
1319 ---
1320 *** Emacs now responds to mouse-clicks on the mode-line, header-line and
1321 display margin, when run in an xterm.
1322
1323 ---
1324 *** Improved key bindings support when running in an xterm.
1325 When emacs is running in an xterm more key bindings are available. The
1326 following should work:
1327 {C,S,C-S,A}-{right,left,up,down,prior,next,delete,insert,F1-12}.
1328 These key bindings work on xterm from X.org 6.8, they might not work on
1329 some older versions of xterm, or on some proprietary versions.
1330
1331 ** Changes in support of colors on character terminals
1332
1333 +++
1334 *** The new command-line option --color=MODE lets you specify a standard
1335 mode for a tty color support. It is meant to be used on character
1336 terminals whose capabilities are not set correctly in the terminal
1337 database, or with terminal emulators which support colors, but don't
1338 set the TERM environment variable to a name of a color-capable
1339 terminal. "emacs --color" uses the same color commands as GNU `ls'
1340 when invoked with "ls --color", so if your terminal can support colors
1341 in "ls --color", it will support "emacs --color" as well. See the
1342 user manual for the possible values of the MODE parameter.
1343
1344 ---
1345 *** Emacs now supports several character terminals which provide more
1346 than 8 colors. For example, for `xterm', 16-color, 88-color, and
1347 256-color modes are supported. Emacs automatically notes at startup
1348 the extended number of colors, and defines the appropriate entries for
1349 all of these colors.
1350
1351 +++
1352 *** Emacs now uses the full range of available colors for the default
1353 faces when running on a color terminal, including 16-, 88-, and
1354 256-color xterms. This means that when you run "emacs -nw" on an
1355 88-color or 256-color xterm, you will see essentially the same face
1356 colors as on X.
1357
1358 ---
1359 *** There's a new support for colors on `rxvt' terminal emulator.
1360
1361 ---
1362 ** M-x view-file and commands that use it now avoid interfering
1363 with special modes such as Tar mode.
1364
1365 +++
1366 ** Filesets are collections of files. You can define a fileset in
1367 various ways, such as based on a directory tree or based on
1368 program files that include other program files.
1369
1370 Once you have defined a fileset, you can perform various operations on
1371 all the files in it, such as visiting them or searching and replacing
1372 in them.
1373
1374 ---
1375 ** Commands winner-redo and winner-undo, from winner.el, are now bound to
1376 C-c <left> and C-c <right>, respectively. This is an incompatible change.
1377
1378 ---
1379 ** global-whitespace-mode is a new alias for whitespace-global-mode.
1380
1381 +++
1382 ** The command `list-text-properties-at' has been deleted because
1383 C-u C-x = gives the same information and more.
1384
1385 * New modes and packages in Emacs 22.1
1386
1387 +++
1388 ** New package benchmark.el contains simple support for convenient
1389 timing measurements of code (including the garbage collection component).
1390
1391 +++
1392 ** Calc is now part of the Emacs distribution.
1393
1394 Calc is an advanced desk calculator and mathematical tool written in
1395 Emacs Lisp. Its documentation is in a separate manual; within Emacs,
1396 type "C-h i m calc RET" to read that manual. A reference card is
1397 available in `etc/calccard.tex' and `etc/calccard.ps'.
1398
1399 ---
1400 ** `cfengine-mode' is a major mode for editing GNU Cfengine
1401 configuration files.
1402
1403 +++
1404 ** The new package conf-mode.el handles thousands of configuration files, with
1405 varying syntaxes for comments (;, #, //, /* */ or !), assignment (var = value,
1406 var : value, var value or keyword var value) and sections ([section] or
1407 section { }). Many files under /etc/, or with suffixes like .cf through
1408 .config, .properties (Java), .desktop (KDE/Gnome), .ini and many others are
1409 recognized.
1410
1411 ---
1412 ** CUA mode is now part of the Emacs distribution.
1413
1414 The new cua package provides CUA-like keybindings using C-x for
1415 cut (kill), C-c for copy, C-v for paste (yank), and C-z for undo.
1416 With cua, the region can be set and extended using shifted movement
1417 keys (like pc-selection-mode) and typed text replaces the active
1418 region (like delete-selection-mode). Do not enable these modes with
1419 cua-mode. Customize the variable `cua-mode' to enable cua.
1420
1421 In addition, cua provides unified rectangle support with visible
1422 rectangle highlighting: Use S-return to start a rectangle, extend it
1423 using the movement commands (or mouse-3), and cut or copy it using C-x
1424 or C-c (using C-w and M-w also works).
1425
1426 Use M-o and M-c to `open' or `close' the rectangle, use M-b or M-f, to
1427 fill it with blanks or another character, use M-u or M-l to upcase or
1428 downcase the rectangle, use M-i to increment the numbers in the
1429 rectangle, use M-n to fill the rectangle with a numeric sequence (such
1430 as 10 20 30...), use M-r to replace a regexp in the rectangle, and use
1431 M-' or M-/ to restrict command on the rectangle to a subset of the
1432 rows. See the commentary in cua-base.el for more rectangle commands.
1433
1434 Cua also provides unified support for registers: Use a numeric
1435 prefix argument between 0 and 9, i.e. M-0 .. M-9, for C-x, C-c, and
1436 C-v to cut or copy into register 0-9, or paste from register 0-9.
1437
1438 The last text deleted (not killed) is automatically stored in
1439 register 0. This includes text deleted by typing text.
1440
1441 Finally, cua provides a global mark which is set using S-C-space.
1442 When the global mark is active, any text which is cut or copied is
1443 automatically inserted at the global mark position. See the
1444 commentary in cua-base.el for more global mark related commands.
1445
1446 The features of cua also works with the standard emacs bindings for
1447 kill, copy, yank, and undo. If you want to use cua mode, but don't
1448 want the C-x, C-c, C-v, and C-z bindings, you may customize the
1449 `cua-enable-cua-keys' variable.
1450
1451 Note: This version of cua mode is not backwards compatible with older
1452 versions of cua.el and cua-mode.el. To ensure proper operation, you
1453 must remove older versions of cua.el or cua-mode.el as well as the
1454 loading and customization of those packages from the .emacs file.
1455
1456 +++
1457 ** The new package dns-mode.el add syntax highlight of DNS master files.
1458 The key binding C-c C-s (`dns-mode-soa-increment-serial') can be used
1459 to increment the SOA serial.
1460
1461 ---
1462 ** The new global minor mode `file-name-shadow-mode' modifies the way
1463 filenames being entered by the user in the minibuffer are displayed, so
1464 that it's clear when part of the entered filename will be ignored due to
1465 emacs' filename parsing rules. The ignored portion can be made dim,
1466 invisible, or otherwise less visually noticable. The display method may
1467 be displayed by customizing the variable `file-name-shadow-properties'.
1468
1469 +++
1470 ** The new package flymake.el does on-the-fly syntax checking of program
1471 source files. See the Flymake's Info manual for more details.
1472
1473 ---
1474 ** The new Lisp library fringe.el controls the appearance of fringes.
1475
1476 ---
1477 ** GDB-Script-mode is used for files like .gdbinit.
1478
1479 +++
1480 ** The new package gdb-ui.el provides an enhanced graphical interface to
1481 GDB. You can interact with GDB through the GUD buffer in the usual way, but
1482 there are also further buffers which control the execution and describe the
1483 state of your program. It separates the input/output of your program from
1484 that of GDB and watches expressions in the speedbar. It also uses features of
1485 Emacs 21 such as the display margin for breakpoints, and the toolbar.
1486
1487 Use M-x gdba to start GDB-UI.
1488
1489 ---
1490 ** The new package ibuffer provides a powerful, completely
1491 customizable replacement for buff-menu.el.
1492
1493 ---
1494 ** Ido mode is now part of the Emacs distribution.
1495
1496 The ido (interactively do) package is an extension of the iswitchb
1497 package to do interactive opening of files and directories in addition
1498 to interactive buffer switching. Ido is a superset of iswitchb (with
1499 a few exceptions), so don't enable both packages.
1500
1501 +++
1502 ** Image files are normally visited in Image mode, which lets you toggle
1503 between viewing the image and viewing the text using C-c C-c.
1504
1505 +++
1506 ** The new keypad setup package provides several common bindings for
1507 the numeric keypad which is available on most keyboards. The numeric
1508 keypad typically has the digits 0 to 9, a decimal point, keys marked
1509 +, -, /, and *, an Enter key, and a NumLock toggle key. The keypad
1510 package only controls the use of the digit and decimal keys.
1511
1512 By customizing the variables `keypad-setup', `keypad-shifted-setup',
1513 `keypad-numlock-setup', and `keypad-numlock-shifted-setup', or by
1514 using the function `keypad-setup', you can rebind all digit keys and
1515 the decimal key of the keypad in one step for each of the four
1516 possible combinations of the Shift key state (not pressed/pressed) and
1517 the NumLock toggle state (off/on).
1518
1519 The choices for the keypad keys in each of the above states are:
1520 `Plain numeric keypad' where the keys generates plain digits,
1521 `Numeric keypad with decimal key' where the character produced by the
1522 decimal key can be customized individually (for internationalization),
1523 `Numeric Prefix Arg' where the keypad keys produce numeric prefix args
1524 for emacs editing commands, `Cursor keys' and `Shifted Cursor keys'
1525 where the keys work like (shifted) arrow keys, home/end, etc., and
1526 `Unspecified/User-defined' where the keypad keys (kp-0, kp-1, etc.)
1527 are left unspecified and can be bound individually through the global
1528 or local keymaps.
1529
1530 +++
1531 ** The new kmacro package provides a simpler user interface to
1532 emacs' keyboard macro facilities.
1533
1534 Basically, it uses two function keys (default F3 and F4) like this:
1535 F3 starts a macro, F4 ends the macro, and pressing F4 again executes
1536 the last macro. While defining the macro, F3 inserts a counter value
1537 which automatically increments every time the macro is executed.
1538
1539 There is now a keyboard macro ring which stores the most recently
1540 defined macros.
1541
1542 The C-x C-k sequence is now a prefix for the kmacro keymap which
1543 defines bindings for moving through the keyboard macro ring,
1544 C-x C-k C-p and C-x C-k C-n, editing the last macro C-x C-k C-e,
1545 manipulating the macro counter and format via C-x C-k C-c,
1546 C-x C-k C-a, and C-x C-k C-f. See the commentary in kmacro.el
1547 for more commands.
1548
1549 The normal macro bindings C-x (, C-x ), and C-x e now interfaces to
1550 the keyboard macro ring.
1551
1552 The C-x e command now automatically terminates the current macro
1553 before calling it, if used while defining a macro.
1554
1555 In addition, when ending or calling a macro with C-x e, the macro can
1556 be repeated immediately by typing just the `e'. You can customize
1557 this behavior via the variable kmacro-call-repeat-key and
1558 kmacro-call-repeat-with-arg.
1559
1560 Keyboard macros can now be debugged and edited interactively.
1561 C-x C-k SPC steps through the last keyboard macro one key sequence
1562 at a time, prompting for the actions to take.
1563
1564 +++
1565 ** The new package longlines.el provides a minor mode for editing text
1566 files composed of long lines, based on the `use-hard-newlines'
1567 mechanism. The long lines are broken up by inserting soft newlines,
1568 which are automatically removed when saving the file to disk or
1569 copying into the kill ring, clipboard, etc. By default, Longlines
1570 mode inserts soft newlines automatically during editing, a behavior
1571 referred to as "soft word wrap" in other text editors. This is
1572 similar to Refill mode, but more reliable. To turn the word wrap
1573 feature off, set `longlines-auto-wrap' to nil.
1574
1575 ---
1576 ** The old Octave mode bindings C-c f and C-c i have been changed
1577 to C-c C-f and C-c C-i. The C-c C-i subcommands now have duplicate
1578 bindings on control characters--thus, C-c C-i C-b is the same as
1579 C-c C-i b, and so on.
1580
1581 ** The printing package is now part of the Emacs distribution.
1582
1583 If you enable the printing package by including (require 'printing) in
1584 the .emacs file, the normal Print item on the File menu is replaced
1585 with a Print sub-menu which allows you to preview output through
1586 ghostview, use ghostscript to print (if you don't have a PostScript
1587 printer) or send directly to printer a PostScript code generated by
1588 `ps-print' package. Use M-x pr-help for more information.
1589
1590 +++
1591 ** The new python.el package is used to edit Python and Jython programs.
1592
1593 ---
1594 ** The minor mode Reveal mode makes text visible on the fly as you
1595 move your cursor into hidden regions of the buffer.
1596 It should work with any package that uses overlays to hide parts
1597 of a buffer, such as outline-minor-mode, hs-minor-mode, hide-ifdef-mode, ...
1598
1599 There is also Global Reveal mode which affects all buffers.
1600
1601 ---
1602 ** The ruler-mode.el library provides a minor mode for displaying an
1603 "active" ruler in the header line. You can use the mouse to visually
1604 change the `fill-column', `window-margins' and `tab-stop-list'
1605 settings.
1606
1607 +++
1608 ** SES mode (ses-mode) is a new major mode for creating and editing
1609 spreadsheet files. Besides the usual Emacs features (intuitive command
1610 letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers
1611 viral immunity and import/export of tab-separated values.
1612
1613 +++
1614 ** The new global minor mode `size-indication-mode' (off by default)
1615 shows the size of accessible part of the buffer on the mode line.
1616
1617 +++
1618 ** The new package table.el implements editable, WYSIWYG, embedded
1619 `text tables' in Emacs buffers. It simulates the effect of putting
1620 these tables in a special major mode. The package emulates WYSIWYG
1621 table editing available in modern word processors. The package also
1622 can generate a table source in typesetting and markup languages such
1623 as latex and html from the visually laid out text table.
1624
1625 +++
1626 ** The thumbs.el package allows you to preview image files as thumbnails
1627 and can be invoked from a Dired buffer.
1628
1629 +++
1630 ** Tramp is now part of the distribution.
1631
1632 This package is similar to Ange-FTP: it allows you to edit remote
1633 files. But whereas Ange-FTP uses FTP to access the remote host,
1634 Tramp uses a shell connection. The shell connection is always used
1635 for filename completion and directory listings and suchlike, but for
1636 the actual file transfer, you can choose between the so-called
1637 `inline' methods (which transfer the files through the shell
1638 connection using base64 or uu encoding) and the `out-of-band' methods
1639 (which invoke an external copying program such as `rcp' or `scp' or
1640 `rsync' to do the copying).
1641
1642 Shell connections can be acquired via `rsh', `ssh', `telnet' and also
1643 `su' and `sudo'. Ange-FTP is still supported via the `ftp' method.
1644
1645 If you want to disable Tramp you should set
1646
1647 (setq tramp-default-method "ftp")
1648
1649 ---
1650 ** The library tree-widget.el provides a new widget to display a set
1651 of hierarchical data as an outline. For example, the tree-widget is
1652 well suited to display a hierarchy of directories and files.
1653
1654 ---
1655 ** The URL package (which had been part of W3) is now part of Emacs.
1656
1657 ---
1658 ** New minor mode, Visible mode, toggles invisibility in the current buffer.
1659 When enabled, it makes all invisible text visible. When disabled, it
1660 restores the previous value of `buffer-invisibility-spec'.
1661
1662 +++
1663 ** The wdired.el package allows you to use normal editing commands on Dired
1664 buffers to change filenames, permissions, etc...
1665
1666 * Changes in specialized modes and packages:
1667
1668 +++
1669 ** There is a new user option `mail-default-directory' that allows you
1670 to specify the value of `default-directory' for mail buffers. This
1671 directory is used for auto-save files of mail buffers. It defaults to
1672 "~/".
1673
1674 +++
1675 ** Emacs can now indicate in the mode-line the presence of new e-mail
1676 in a directory or in a file. See the documentation of the user option
1677 `display-time-mail-directory'.
1678
1679 ---
1680 ** PO translation files are decoded according to their MIME headers
1681 when Emacs visits them.
1682
1233 ** Info mode: 1683 ** Info mode:
1234 1684
1235 +++ 1685 +++
1236 *** A numeric prefix argument of `info' selects an Info buffer 1686 *** A numeric prefix argument of `info' selects an Info buffer
1237 with the number appended to the *info* buffer name (e.g. "*info*<2>"). 1687 with the number appended to the *info* buffer name (e.g. "*info*<2>").
1289 *** The default value for `Info-scroll-prefer-subnodes' is now nil. 1739 *** The default value for `Info-scroll-prefer-subnodes' is now nil.
1290 1740
1291 --- 1741 ---
1292 *** Info-index offers completion. 1742 *** Info-index offers completion.
1293 1743
1294 --- 1744 ** Lisp mode changes:
1295 ** Lisp mode now uses font-lock-doc-face for the docstrings. 1745
1296 1746 ---
1297 +++ 1747 *** Lisp mode now uses font-lock-doc-face for the docstrings.
1298 ** A prefix argument of C-M-q in Emacs Lisp mode pretty-printifies the 1748
1749 +++
1750 *** A prefix argument of C-M-q in Emacs Lisp mode pretty-printifies the
1299 list starting after point. 1751 list starting after point.
1300 1752
1301 ** New features in evaluation commands 1753 *** New features in evaluation commands
1302 1754
1303 +++ 1755 +++
1304 *** The function `eval-defun' (C-M-x) called on defface reinitializes 1756 *** The function `eval-defun' (C-M-x) called on defface reinitializes
1305 the face to the value specified in the defface expression. 1757 the face to the value specified in the defface expression.
1306 1758
1601 syntactic indentation. 2053 syntactic indentation.
1602 2054
1603 --- 2055 ---
1604 ** Perl mode has a new variable `perl-indent-continued-arguments'. 2056 ** Perl mode has a new variable `perl-indent-continued-arguments'.
1605 2057
1606 --- 2058 ** Fortran mode changes:
1607 ** Fortran mode does more font-locking by default. Use level 3 2059
2060 ---
2061 *** Fortran mode does more font-locking by default. Use level 3
1608 highlighting for the old default. 2062 highlighting for the old default.
1609 2063
1610 +++ 2064 +++
1611 ** Fortran mode has a new variable `fortran-directive-re'. 2065 *** Fortran mode has a new variable `fortran-directive-re'.
1612 Adapt this to match the format of any compiler directives you use. 2066 Adapt this to match the format of any compiler directives you use.
1613 Lines that match are never indented, and are given distinctive font-locking. 2067 Lines that match are never indented, and are given distinctive font-locking.
1614 2068
1615 +++ 2069 +++
1616 ** F90 mode and Fortran mode have new navigation commands 2070 *** F90 mode and Fortran mode have new navigation commands
1617 `f90-end-of-block', `f90-beginning-of-block', `f90-next-block', 2071 `f90-end-of-block', `f90-beginning-of-block', `f90-next-block',
1618 `f90-previous-block', `fortran-end-of-block', 2072 `f90-previous-block', `fortran-end-of-block',
1619 `fortran-beginning-of-block'. 2073 `fortran-beginning-of-block'.
1620 2074
1621 --- 2075 ---
1622 ** F90 mode and Fortran mode have support for hs-minor-mode (hideshow). 2076 *** F90 mode and Fortran mode have support for hs-minor-mode (hideshow).
1623 It cannot deal with every code format, but ought to handle a sizeable 2077 It cannot deal with every code format, but ought to handle a sizeable
1624 majority. 2078 majority.
1625 2079
1626 --- 2080 ---
1627 ** The new function `f90-backslash-not-special' can be used to change 2081 *** The new function `f90-backslash-not-special' can be used to change
1628 the syntax of backslashes in F90 buffers. 2082 the syntax of backslashes in F90 buffers.
1629 2083
1630 --- 2084 ---
1631 ** Prolog mode has a new variable `prolog-font-lock-keywords' 2085 ** Prolog mode has a new variable `prolog-font-lock-keywords'
1632 to support use of font-lock. 2086 to support use of font-lock.
1633 2087
1634 --- 2088 ** HTML/SGML changes:
1635 ** Emacs now tries to set up buffer coding systems for HTML/XML files 2089
2090 ---
2091 *** Emacs now tries to set up buffer coding systems for HTML/XML files
1636 automatically. 2092 automatically.
1637 2093
1638 +++ 2094 +++
1639 ** SGML mode has indentation and supports XML syntax. 2095 *** SGML mode has indentation and supports XML syntax.
1640 The new variable `sgml-xml-mode' tells SGML mode to use XML syntax. 2096 The new variable `sgml-xml-mode' tells SGML mode to use XML syntax.
1641 When this option is enabled, SGML tags are inserted in XML style, 2097 When this option is enabled, SGML tags are inserted in XML style,
1642 i.e., there is always a closing tag. 2098 i.e., there is always a closing tag.
1643 By default, its setting is inferred on a buffer-by-buffer basis 2099 By default, its setting is inferred on a buffer-by-buffer basis
1644 from the file name or buffer contents. 2100 from the file name or buffer contents.
1645 2101
1646 +++ 2102 +++
1647 ** `xml-mode' is now an alias for `sgml-mode', which has XML support. 2103 *** `xml-mode' is now an alias for `sgml-mode', which has XML support.
1648 2104
1649 ** TeX modes: 2105 ** TeX modes:
1650 2106
1651 +++ 2107 +++
1652 *** C-c C-c prompts for a command to run, and tries to offer a good default. 2108 *** C-c C-c prompts for a command to run, and tries to offer a good default.
1711 +++ 2167 +++
1712 ** In Enriched mode, `set-left-margin' and `set-right-margin' are now 2168 ** In Enriched mode, `set-left-margin' and `set-right-margin' are now
1713 by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l' 2169 by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l'
1714 and `C-c C-r'. 2170 and `C-c C-r'.
1715 2171
1716 +++ 2172 ** GUD changes:
1717 ** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program 2173
2174 +++
2175 *** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program
1718 counter to the specified source line (the one where point is). 2176 counter to the specified source line (the one where point is).
1719 2177
1720 --- 2178 ---
1721 ** GUD mode has its own tool bar for controlling execution of the inferior 2179 *** GUD mode has its own tool bar for controlling execution of the inferior
1722 and other common debugger commands. 2180 and other common debugger commands.
1723 2181
1724 --- 2182 ---
1725 ** GUD mode improvements for jdb: 2183 ** GUD mode improvements for jdb:
1726 2184
1762 `starttls-use-gnutls' to switch to GNUTLS (or simply remove the 2220 `starttls-use-gnutls' to switch to GNUTLS (or simply remove the
1763 "starttls" tool). 2221 "starttls" tool).
1764 2222
1765 *** Do not allow debugger output history variable to grow without bounds. 2223 *** Do not allow debugger output history variable to grow without bounds.
1766 2224
1767 +++ 2225 ** Auto-Revert changes:
1768 ** You can now use Auto Revert mode to `tail' a file. 2226
2227 +++
2228 *** You can now use Auto Revert mode to `tail' a file.
1769 If point is at the end of a file buffer before reverting, Auto Revert 2229 If point is at the end of a file buffer before reverting, Auto Revert
1770 mode keeps it at the end after reverting. Similarly if point is 2230 mode keeps it at the end after reverting. Similarly if point is
1771 displayed at the end of a file buffer in any window, it stays at 2231 displayed at the end of a file buffer in any window, it stays at
1772 the end of the buffer in that window. This allows to tail a file: 2232 the end of the buffer in that window. This allows to tail a file:
1773 just put point at the end of the buffer and it stays there. This 2233 just put point at the end of the buffer and it stays there. This
1778 then you can tail the file more efficiently by using the new minor 2238 then you can tail the file more efficiently by using the new minor
1779 mode Auto Revert Tail mode. The function `auto-revert-tail-mode' 2239 mode Auto Revert Tail mode. The function `auto-revert-tail-mode'
1780 toggles this mode. 2240 toggles this mode.
1781 2241
1782 +++ 2242 +++
1783 ** Auto Revert mode is now more careful to avoid excessive reverts and 2243 *** Auto Revert mode is now more careful to avoid excessive reverts and
1784 other potential problems when deciding which non-file buffers to 2244 other potential problems when deciding which non-file buffers to
1785 revert. This matters especially if Global Auto Revert mode is enabled 2245 revert. This matters especially if Global Auto Revert mode is enabled
1786 and `global-auto-revert-non-file-buffers' is non-nil. Auto Revert 2246 and `global-auto-revert-non-file-buffers' is non-nil. Auto Revert
1787 mode only reverts a non-file buffer if the buffer has a non-nil 2247 mode only reverts a non-file buffer if the buffer has a non-nil
1788 `revert-buffer-function' and a non-nil `buffer-stale-function', which 2248 `revert-buffer-function' and a non-nil `buffer-stale-function', which
1789 decides whether the buffer should be reverted. Currently, this means 2249 decides whether the buffer should be reverted. Currently, this means
1790 that auto reverting works for Dired buffers (although this may not 2250 that auto reverting works for Dired buffers (although this may not
1791 work properly on all operating systems) and for the Buffer Menu. 2251 work properly on all operating systems) and for the Buffer Menu.
1792 2252
1793 +++ 2253 +++
1794 ** If the new user option `auto-revert-check-vc-info' is non-nil, Auto 2254 *** If the new user option `auto-revert-check-vc-info' is non-nil, Auto
1795 Revert mode reliably updates version control info (such as the version 2255 Revert mode reliably updates version control info (such as the version
1796 control number in the mode line), in all version controlled buffers in 2256 control number in the mode line), in all version controlled buffers in
1797 which it is active. If the option is nil, the default, then this info 2257 which it is active. If the option is nil, the default, then this info
1798 only gets updated whenever the buffer gets reverted. 2258 only gets updated whenever the buffer gets reverted.
1799 2259
1993 2453
1994 +++ 2454 +++
1995 *** New backends for Subversion and Meta-CVS. 2455 *** New backends for Subversion and Meta-CVS.
1996 2456
1997 +++ 2457 +++
1998 ** vc-annotate-mode enhancements 2458 *** vc-annotate-mode enhancements
1999 2459
2000 In vc-annotate mode, you can now use the following key bindings for 2460 In vc-annotate mode, you can now use the following key bindings for
2001 enhanced functionality to browse the annotations of past revisions, or 2461 enhanced functionality to browse the annotations of past revisions, or
2002 to view diffs or log entries directly from vc-annotate-mode: 2462 to view diffs or log entries directly from vc-annotate-mode:
2003 2463
2007 A: annotates the revision previous to line 2467 A: annotates the revision previous to line
2008 D: shows the diff of the revision at line with its previous revision 2468 D: shows the diff of the revision at line with its previous revision
2009 L: shows the log of the revision at line 2469 L: shows the log of the revision at line
2010 W: annotates the workfile (most up to date) version 2470 W: annotates the workfile (most up to date) version
2011 2471
2012 +++ 2472 ** pcl-cvs changes:
2013 ** In pcl-cvs mode, there is a new `d y' command to view the diffs 2473
2474 +++
2475 *** In pcl-cvs mode, there is a new `d y' command to view the diffs
2014 between the local version of the file and yesterday's head revision 2476 between the local version of the file and yesterday's head revision
2015 in the repository. 2477 in the repository.
2016 2478
2017 +++ 2479 +++
2018 ** In pcl-cvs mode, there is a new `d r' command to view the changes 2480 *** In pcl-cvs mode, there is a new `d r' command to view the changes
2019 anyone has committed to the repository since you last executed 2481 anyone has committed to the repository since you last executed
2020 "checkout", "update" or "commit". That means using cvs diff options 2482 "checkout", "update" or "commit". That means using cvs diff options
2021 -rBASE -rHEAD. 2483 -rBASE -rHEAD.
2022
2023 +++
2024 ** There is a new user option `mail-default-directory' that allows you
2025 to specify the value of `default-directory' for mail buffers. This
2026 directory is used for auto-save files of mail buffers. It defaults to
2027 "~/".
2028
2029 +++
2030 ** Emacs can now indicate in the mode-line the presence of new e-mail
2031 in a directory or in a file. See the documentation of the user option
2032 `display-time-mail-directory'.
2033
2034 ---
2035 ** PO translation files are decoded according to their MIME headers
2036 when Emacs visits them.
2037 2484
2038 ** Gnus package 2485 ** Gnus package
2039 2486
2040 --- 2487 ---
2041 *** Gnus now includes Sieve and PGG 2488 *** Gnus now includes Sieve and PGG
2061 ** MH-E changes. 2508 ** MH-E changes.
2062 2509
2063 Upgraded to MH-E version 7.82. There have been major changes since 2510 Upgraded to MH-E version 7.82. There have been major changes since
2064 version 5.0.2; see MH-E-NEWS for details. 2511 version 5.0.2; see MH-E-NEWS for details.
2065 2512
2066 +++ 2513 ** Calendar changes:
2067 ** There is a new calendar package, icalendar.el, that can be used to 2514
2515 +++
2516 *** There is a new calendar package, icalendar.el, that can be used to
2068 convert Emacs diary entries to/from the iCalendar format. 2517 convert Emacs diary entries to/from the iCalendar format.
2069 2518
2070 +++ 2519 +++
2071 ** Diary sexp entries can have custom marking in the calendar. 2520 *** Diary sexp entries can have custom marking in the calendar.
2072 Diary sexp functions which only apply to certain days (such as 2521 Diary sexp functions which only apply to certain days (such as
2073 `diary-block' or `diary-cyclic') now take an optional parameter MARK, 2522 `diary-block' or `diary-cyclic') now take an optional parameter MARK,
2074 which is the name of a face or a single-character string indicating 2523 which is the name of a face or a single-character string indicating
2075 how to highlight the day in the calendar display. Specifying a 2524 how to highlight the day in the calendar display. Specifying a
2076 single-character string as @var{mark} places the character next to the 2525 single-character string as @var{mark} places the character next to the
2077 day in the calendar. Specifying a face highlights the day with that 2526 day in the calendar. Specifying a face highlights the day with that
2078 face. This lets you have different colors or markings for vacations, 2527 face. This lets you have different colors or markings for vacations,
2079 appointments, paydays or anything else using a sexp. 2528 appointments, paydays or anything else using a sexp.
2080 2529
2081 +++ 2530 +++
2082 ** The new function `calendar-goto-day-of-year' (g D) prompts for a 2531 *** The new function `calendar-goto-day-of-year' (g D) prompts for a
2083 year and day number, and moves to that date. Negative day numbers 2532 year and day number, and moves to that date. Negative day numbers
2084 count backward from the end of the year. 2533 count backward from the end of the year.
2085 2534
2086 +++ 2535 +++
2087 ** The new Calendar function `calendar-goto-iso-week' (g w) 2536 *** The new Calendar function `calendar-goto-iso-week' (g w)
2088 prompts for a year and a week number, and moves to the first 2537 prompts for a year and a week number, and moves to the first
2089 day of that ISO week. 2538 day of that ISO week.
2090 2539
2091 --- 2540 ---
2092 ** The new variable `calendar-minimum-window-height' affects the 2541 *** The new variable `calendar-minimum-window-height' affects the
2093 window generated by the function `generate-calendar-window'. 2542 window generated by the function `generate-calendar-window'.
2094 2543
2095 --- 2544 ---
2096 ** The functions `holiday-easter-etc' and `holiday-advent' now take 2545 *** The functions `holiday-easter-etc' and `holiday-advent' now take
2097 optional arguments, in order to only report on the specified holiday 2546 optional arguments, in order to only report on the specified holiday
2098 rather than all. This makes customization of variables such as 2547 rather than all. This makes customization of variables such as
2099 `christian-holidays' simpler. 2548 `christian-holidays' simpler.
2100 2549
2101 --- 2550 ---
2102 ** The function `simple-diary-display' now by default sets a header line. 2551 *** The function `simple-diary-display' now by default sets a header line.
2103 This can be controlled through the variables `diary-header-line-flag' 2552 This can be controlled through the variables `diary-header-line-flag'
2104 and `diary-header-line-format'. 2553 and `diary-header-line-format'.
2105 2554
2106 +++ 2555 +++
2107 ** The procedure for activating appointment reminders has changed: use 2556 *** The procedure for activating appointment reminders has changed: use
2108 the new function `appt-activate'. The new variable 2557 the new function `appt-activate'. The new variable
2109 `appt-display-format' controls how reminders are displayed, replacing 2558 `appt-display-format' controls how reminders are displayed, replacing
2110 appt-issue-message, appt-visible, and appt-msg-window. 2559 appt-issue-message, appt-visible, and appt-msg-window.
2111 2560
2112 +++ 2561 +++
2113 ** The new functions `diary-from-outlook', `diary-from-outlook-gnus', 2562 *** The new functions `diary-from-outlook', `diary-from-outlook-gnus',
2114 and `diary-from-outlook-rmail' can be used to import diary entries 2563 and `diary-from-outlook-rmail' can be used to import diary entries
2115 from Outlook-format appointments in mail messages. The variable 2564 from Outlook-format appointments in mail messages. The variable
2116 `diary-outlook-formats' can be customized to recognize additional 2565 `diary-outlook-formats' can be customized to recognize additional
2117 formats. 2566 formats.
2118
2119 +++
2120 ** Emacs now supports drag and drop for X. Dropping a file on a window
2121 opens it, dropping text inserts the text. Dropping a file on a dired
2122 buffer copies or moves the file to that directory.
2123
2124 +++
2125 ** Under X11, it is possible to swap Alt and Meta (and Super and Hyper).
2126 The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym',
2127 and `x-super-keysym' can be used to choose which keysyms Emacs should
2128 use for the modifiers. For example, the following two lines swap
2129 Meta and Alt:
2130 (setq x-alt-keysym 'meta)
2131 (setq x-meta-keysym 'alt)
2132
2133 +++
2134 ** The X resource useXIM can be used to turn off use of XIM, which may
2135 speed up Emacs with slow networking to the X server.
2136
2137 If the configure option `--without-xim' was used to turn off use of
2138 XIM by default, the X resource useXIM can be used to turn it on.
2139
2140 ---
2141 ** The new variable `x-select-request-type' controls how Emacs
2142 requests X selection. The default value is nil, which means that
2143 Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING,
2144 and use the more appropriately result.
2145
2146 ---
2147 ** The scrollbar under LessTif or Motif has a smoother drag-scrolling.
2148 On the other hand, the size of the thumb does not represent the actual
2149 amount of text shown any more (only a crude approximation of it).
2150
2151 ---
2152 ** The pop up menus for Lucid now stay up if you do a fast click and can
2153 be navigated with the arrow keys (like Gtk+, Mac and W32).
2154
2155 +++
2156 ** The Lucid menus can display multilingual text in your locale. You have
2157 to explicitly specify a fontSet resource for this to work, for example
2158 `-xrm "Emacs*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*"'.
2159
2160 ---
2161 ** Dialogs for Lucid/Athena and Lesstif/Motif now pops down when pressing
2162 ESC, like they do for Gtk+, Mac and W32.
2163
2164 ---
2165 ** Dialogs and menus pop down if you type C-g.
2166
2167 ---
2168 ** The menu item "Open File..." has been split into two items, "New File..."
2169 and "Open File...". "Open File..." now opens only existing files. This is
2170 to support existing GUI file selection dialogs better.
2171
2172 +++
2173 ** The file selection dialog for Gtk+, Mac, W32 and Motif/Lesstif can be
2174 disabled by customizing the variable `use-file-dialog'.
2175
2176 +++
2177 ** For Gtk+ version 2.4, you can make Emacs use the old file dialog
2178 by setting the variable `x-use-old-gtk-file-dialog' to t. Default is to use
2179 the new dialog.
2180
2181 ---
2182 ** Emacs now responds to mouse-clicks on the mode-line, header-line and
2183 display margin, when run in an xterm.
2184
2185 ** Improved key bindings support when running in an xterm.
2186 When emacs is running in an xterm more key bindings are available. The
2187 following should work:
2188 {C,S,C-S,A}-{right,left,up,down,prior,next,delete,insert,F1-12}.
2189 These key bindings work on xterm from X.org 6.8, they might not work on
2190 some older versions of xterm, or on some proprietary versions.
2191
2192 ** Changes in support of colors on character terminals
2193
2194 +++
2195 *** The new command-line option --color=MODE lets you specify a standard
2196 mode for a tty color support. It is meant to be used on character
2197 terminals whose capabilities are not set correctly in the terminal
2198 database, or with terminal emulators which support colors, but don't
2199 set the TERM environment variable to a name of a color-capable
2200 terminal. "emacs --color" uses the same color commands as GNU `ls'
2201 when invoked with "ls --color", so if your terminal can support colors
2202 in "ls --color", it will support "emacs --color" as well. See the
2203 user manual for the possible values of the MODE parameter.
2204
2205 ---
2206 *** Emacs now supports several character terminals which provide more
2207 than 8 colors. For example, for `xterm', 16-color, 88-color, and
2208 256-color modes are supported. Emacs automatically notes at startup
2209 the extended number of colors, and defines the appropriate entries for
2210 all of these colors.
2211
2212 +++
2213 *** Emacs now uses the full range of available colors for the default
2214 faces when running on a color terminal, including 16-, 88-, and
2215 256-color xterms. This means that when you run "emacs -nw" on an
2216 88-color or 256-color xterm, you will see essentially the same face
2217 colors as on X.
2218
2219 ---
2220 *** There's a new support for colors on `rxvt' terminal emulator.
2221
2222 +++
2223 ** Passing resources on the command line now works on MS Windows.
2224 You can use --xrm to pass resource settings to Emacs, overriding any
2225 existing values. For example:
2226
2227 emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20"
2228
2229 will start up Emacs on an initial frame of 100x20 with red background,
2230 irrespective of geometry or background setting on the Windows registry.
2231
2232 ---
2233 ** On MS Windows, the "system caret" now follows the cursor.
2234 This enables Emacs to work better with programs that need to track
2235 the cursor, for example screen magnifiers and text to speech programs.
2236
2237 ---
2238 ** Tooltips now work on MS Windows.
2239 See the Emacs 21.1 NEWS entry for tooltips for details.
2240
2241 ---
2242 ** Images are now supported on MS Windows.
2243 PBM and XBM images are supported out of the box. Other image formats
2244 depend on external libraries. All of these libraries have been ported
2245 to Windows, and can be found in both source and binary form at
2246 http://gnuwin32.sourceforge.net/. Note that libpng also depends on
2247 zlib, and tiff depends on the version of jpeg that it was compiled
2248 against. For additional information, see nt/INSTALL.
2249
2250 ---
2251 ** Sound is now supported on MS Windows.
2252 WAV format is supported on all versions of Windows, other formats such
2253 as AU, AIFF and MP3 may be supported in the more recent versions of
2254 Windows, or when other software provides hooks into the system level
2255 sound support for those formats.
2256
2257 ---
2258 ** Different shaped mouse pointers are supported on MS Windows.
2259 The mouse pointer changes shape depending on what is under the pointer.
2260
2261 ---
2262 ** Pointing devices with more than 3 buttons are now supported on MS Windows.
2263 The new variable `w32-pass-extra-mouse-buttons-to-system' controls
2264 whether Emacs should handle the extra buttons itself (the default), or
2265 pass them to Windows to be handled with system-wide functions.
2266
2267 ---
2268 ** Emacs takes note of colors defined in Control Panel on MS-Windows.
2269 The Control Panel defines some default colors for applications in much
2270 the same way as wildcard X Resources do on X. Emacs now adds these
2271 colors to the colormap prefixed by System (eg SystemMenu for the
2272 default Menu background, SystemMenuText for the foreground), and uses
2273 some of them to initialize some of the default faces.
2274 `list-colors-display' shows the list of System color names, in case
2275 you wish to use them in other faces.
2276
2277 ---
2278 ** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations.
2279 Those systems use Unicode internally, so this allows Emacs to share
2280 multilingual text with other applications. On other versions of
2281 MS Windows, Emacs now uses the appropriate locale coding-system, so
2282 the clipboard should work correctly for your local language without
2283 any customizations.
2284
2285 ---
2286 ** On Mac OS, the value of the variable `keyboard-coding-system' is
2287 now dynamically changed according to the current keyboard script. The
2288 variable `mac-keyboard-text-encoding' and the constants
2289 `kTextEncodingMacRoman', `kTextEncodingISOLatin1', and
2290 `kTextEncodingISOLatin2' are obsolete.
2291 2567
2292 --- 2568 ---
2293 ** sql changes. 2569 ** sql changes.
2294 2570
2295 *** The variable `sql-product' controls the highlightng of different 2571 *** The variable `sql-product' controls the highlightng of different
2363 2639
2364 --- 2640 ---
2365 *** Support for the SQLite interpreter has been added to sql.el by calling 2641 *** Support for the SQLite interpreter has been added to sql.el by calling
2366 'sql-sqlite'. 2642 'sql-sqlite'.
2367 2643
2368 --- 2644 ** FFAP changes:
2369 ** M-x view-file and commands that use it now avoid interfering
2370 with special modes such as Tar mode.
2371
2372 +++
2373 ** Filesets are collections of files. You can define a fileset in
2374 various ways, such as based on a directory tree or based on
2375 program files that include other program files.
2376
2377 Once you have defined a fileset, you can perform various operations on
2378 all the files in it, such as visiting them or searching and replacing
2379 in them.
2380
2381 ---
2382 ** Commands winner-redo and winner-undo, from winner.el, are now bound to
2383 C-c <left> and C-c <right>, respectively. This is an incompatible change.
2384
2385 ** FFAP
2386 2645
2387 +++ 2646 +++
2388 *** New ffap commands and keybindings: C-x C-r (`ffap-read-only'), 2647 *** New ffap commands and keybindings: C-x C-r (`ffap-read-only'),
2389 C-x C-v (`ffap-alternate-file'), C-x C-d (`ffap-list-directory'), 2648 C-x C-v (`ffap-alternate-file'), C-x C-d (`ffap-list-directory'),
2390 C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'), 2649 C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'),
2450 --- 2709 ---
2451 ** `uniquify-strip-common-suffix' tells uniquify to prefer 2710 ** `uniquify-strip-common-suffix' tells uniquify to prefer
2452 `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'. 2711 `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'.
2453 2712
2454 --- 2713 ---
2455 ** rx.el has new corresponding `symbol-end' and `symbol-start' elements.
2456
2457 ---
2458 ** Support for `magic cookie' standout modes has been removed. 2714 ** Support for `magic cookie' standout modes has been removed.
2459 Emacs will still work on terminals that require magic cookies in order 2715 Emacs will still work on terminals that require magic cookies in order
2460 to use standout mode, however they will not be able to display 2716 to use standout mode, however they will not be able to display
2461 mode-lines in inverse-video. 2717 mode-lines in inverse-video.
2462 2718
2476 character is used every few digits, making it easier to see byte 2732 character is used every few digits, making it easier to see byte
2477 boundries etc. For more info, see the documentation of the variable 2733 boundries etc. For more info, see the documentation of the variable
2478 `calculator-radix-grouping-mode'. 2734 `calculator-radix-grouping-mode'.
2479 2735
2480 --- 2736 ---
2481 ** global-whitespace-mode is a new alias for whitespace-global-mode.
2482
2483 +++
2484 ** The command `list-text-properties-at' has been deleted because
2485 C-u C-x = gives the same information and more.
2486
2487 ---
2488 ** fast-lock.el and lazy-lock.el are obsolete. Use jit-lock.el instead. 2737 ** fast-lock.el and lazy-lock.el are obsolete. Use jit-lock.el instead.
2489 2738
2490 --- 2739 ---
2491 ** iso-acc.el is now obsolete. Use one of the latin input methods instead. 2740 ** iso-acc.el is now obsolete. Use one of the latin input methods instead.
2492 2741
2493 --- 2742 ---
2494 ** cplus-md.el has been removed to avoid problems with Custom. 2743 ** cplus-md.el has been removed to avoid problems with Custom.
2495
2496 2744
2497 * New modes and packages in Emacs 22.1 2745 * Changes for non-free operating systems
2498 2746
2499 +++ 2747 +++
2500 ** New package benchmark.el contains simple support for convenient 2748 ** Passing resources on the command line now works on MS Windows.
2501 timing measurements of code (including the garbage collection component). 2749 You can use --xrm to pass resource settings to Emacs, overriding any
2502 2750 existing values. For example:
2503 +++ 2751
2504 ** Calc is now part of the Emacs distribution. 2752 emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20"
2505 2753
2506 Calc is an advanced desk calculator and mathematical tool written in 2754 will start up Emacs on an initial frame of 100x20 with red background,
2507 Emacs Lisp. Its documentation is in a separate manual; within Emacs, 2755 irrespective of geometry or background setting on the Windows registry.
2508 type "C-h i m calc RET" to read that manual. A reference card is 2756
2509 available in `etc/calccard.tex' and `etc/calccard.ps'. 2757 ---
2510 2758 ** On MS Windows, the "system caret" now follows the cursor.
2511 --- 2759 This enables Emacs to work better with programs that need to track
2512 ** `cfengine-mode' is a major mode for editing GNU Cfengine 2760 the cursor, for example screen magnifiers and text to speech programs.
2513 configuration files. 2761
2514 2762 ---
2515 +++ 2763 ** Tooltips now work on MS Windows.
2516 ** The new package conf-mode.el handles thousands of configuration files, with 2764 See the Emacs 21.1 NEWS entry for tooltips for details.
2517 varying syntaxes for comments (;, #, //, /* */ or !), assignment (var = value, 2765
2518 var : value, var value or keyword var value) and sections ([section] or 2766 ---
2519 section { }). Many files under /etc/, or with suffixes like .cf through 2767 ** Images are now supported on MS Windows.
2520 .config, .properties (Java), .desktop (KDE/Gnome), .ini and many others are 2768 PBM and XBM images are supported out of the box. Other image formats
2521 recognized. 2769 depend on external libraries. All of these libraries have been ported
2522 2770 to Windows, and can be found in both source and binary form at
2523 --- 2771 http://gnuwin32.sourceforge.net/. Note that libpng also depends on
2524 ** CUA mode is now part of the Emacs distribution. 2772 zlib, and tiff depends on the version of jpeg that it was compiled
2525 2773 against. For additional information, see nt/INSTALL.
2526 The new cua package provides CUA-like keybindings using C-x for 2774
2527 cut (kill), C-c for copy, C-v for paste (yank), and C-z for undo. 2775 ---
2528 With cua, the region can be set and extended using shifted movement 2776 ** Sound is now supported on MS Windows.
2529 keys (like pc-selection-mode) and typed text replaces the active 2777 WAV format is supported on all versions of Windows, other formats such
2530 region (like delete-selection-mode). Do not enable these modes with 2778 as AU, AIFF and MP3 may be supported in the more recent versions of
2531 cua-mode. Customize the variable `cua-mode' to enable cua. 2779 Windows, or when other software provides hooks into the system level
2532 2780 sound support for those formats.
2533 In addition, cua provides unified rectangle support with visible 2781
2534 rectangle highlighting: Use S-return to start a rectangle, extend it 2782 ---
2535 using the movement commands (or mouse-3), and cut or copy it using C-x 2783 ** Different shaped mouse pointers are supported on MS Windows.
2536 or C-c (using C-w and M-w also works). 2784 The mouse pointer changes shape depending on what is under the pointer.
2537 2785
2538 Use M-o and M-c to `open' or `close' the rectangle, use M-b or M-f, to 2786 ---
2539 fill it with blanks or another character, use M-u or M-l to upcase or 2787 ** Pointing devices with more than 3 buttons are now supported on MS Windows.
2540 downcase the rectangle, use M-i to increment the numbers in the 2788 The new variable `w32-pass-extra-mouse-buttons-to-system' controls
2541 rectangle, use M-n to fill the rectangle with a numeric sequence (such 2789 whether Emacs should handle the extra buttons itself (the default), or
2542 as 10 20 30...), use M-r to replace a regexp in the rectangle, and use 2790 pass them to Windows to be handled with system-wide functions.
2543 M-' or M-/ to restrict command on the rectangle to a subset of the 2791
2544 rows. See the commentary in cua-base.el for more rectangle commands. 2792 ---
2545 2793 ** Emacs takes note of colors defined in Control Panel on MS-Windows.
2546 Cua also provides unified support for registers: Use a numeric 2794 The Control Panel defines some default colors for applications in much
2547 prefix argument between 0 and 9, i.e. M-0 .. M-9, for C-x, C-c, and 2795 the same way as wildcard X Resources do on X. Emacs now adds these
2548 C-v to cut or copy into register 0-9, or paste from register 0-9. 2796 colors to the colormap prefixed by System (eg SystemMenu for the
2549 2797 default Menu background, SystemMenuText for the foreground), and uses
2550 The last text deleted (not killed) is automatically stored in 2798 some of them to initialize some of the default faces.
2551 register 0. This includes text deleted by typing text. 2799 `list-colors-display' shows the list of System color names, in case
2552 2800 you wish to use them in other faces.
2553 Finally, cua provides a global mark which is set using S-C-space. 2801
2554 When the global mark is active, any text which is cut or copied is 2802 ---
2555 automatically inserted at the global mark position. See the 2803 ** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations.
2556 commentary in cua-base.el for more global mark related commands. 2804 Those systems use Unicode internally, so this allows Emacs to share
2557 2805 multilingual text with other applications. On other versions of
2558 The features of cua also works with the standard emacs bindings for 2806 MS Windows, Emacs now uses the appropriate locale coding-system, so
2559 kill, copy, yank, and undo. If you want to use cua mode, but don't 2807 the clipboard should work correctly for your local language without
2560 want the C-x, C-c, C-v, and C-z bindings, you may customize the 2808 any customizations.
2561 `cua-enable-cua-keys' variable. 2809
2562 2810 ---
2563 Note: This version of cua mode is not backwards compatible with older 2811 ** On Mac OS, the value of the variable `keyboard-coding-system' is
2564 versions of cua.el and cua-mode.el. To ensure proper operation, you 2812 now dynamically changed according to the current keyboard script. The
2565 must remove older versions of cua.el or cua-mode.el as well as the 2813 variable `mac-keyboard-text-encoding' and the constants
2566 loading and customization of those packages from the .emacs file. 2814 `kTextEncodingMacRoman', `kTextEncodingISOLatin1', and
2567 2815 `kTextEncodingISOLatin2' are obsolete.
2568 +++
2569 ** The new package dns-mode.el add syntax highlight of DNS master files.
2570 The key binding C-c C-s (`dns-mode-soa-increment-serial') can be used
2571 to increment the SOA serial.
2572
2573 ---
2574 ** The new global minor mode `file-name-shadow-mode' modifies the way
2575 filenames being entered by the user in the minibuffer are displayed, so
2576 that it's clear when part of the entered filename will be ignored due to
2577 emacs' filename parsing rules. The ignored portion can be made dim,
2578 invisible, or otherwise less visually noticable. The display method may
2579 be displayed by customizing the variable `file-name-shadow-properties'.
2580
2581 +++
2582 ** The new package flymake.el does on-the-fly syntax checking of program
2583 source files. See the Flymake's Info manual for more details.
2584
2585 ---
2586 ** The new Lisp library fringe.el controls the appearance of fringes.
2587
2588 ---
2589 ** GDB-Script-mode is used for files like .gdbinit.
2590
2591 +++
2592 ** The new package gdb-ui.el provides an enhanced graphical interface to
2593 GDB. You can interact with GDB through the GUD buffer in the usual way, but
2594 there are also further buffers which control the execution and describe the
2595 state of your program. It separates the input/output of your program from
2596 that of GDB and watches expressions in the speedbar. It also uses features of
2597 Emacs 21 such as the display margin for breakpoints, and the toolbar.
2598
2599 Use M-x gdba to start GDB-UI.
2600
2601 ---
2602 ** The new package ibuffer provides a powerful, completely
2603 customizable replacement for buff-menu.el.
2604
2605 ---
2606 ** Ido mode is now part of the Emacs distribution.
2607
2608 The ido (interactively do) package is an extension of the iswitchb
2609 package to do interactive opening of files and directories in addition
2610 to interactive buffer switching. Ido is a superset of iswitchb (with
2611 a few exceptions), so don't enable both packages.
2612
2613 +++
2614 ** Image files are normally visited in Image mode, which lets you toggle
2615 between viewing the image and viewing the text using C-c C-c.
2616
2617 +++
2618 ** The new keypad setup package provides several common bindings for
2619 the numeric keypad which is available on most keyboards. The numeric
2620 keypad typically has the digits 0 to 9, a decimal point, keys marked
2621 +, -, /, and *, an Enter key, and a NumLock toggle key. The keypad
2622 package only controls the use of the digit and decimal keys.
2623
2624 By customizing the variables `keypad-setup', `keypad-shifted-setup',
2625 `keypad-numlock-setup', and `keypad-numlock-shifted-setup', or by
2626 using the function `keypad-setup', you can rebind all digit keys and
2627 the decimal key of the keypad in one step for each of the four
2628 possible combinations of the Shift key state (not pressed/pressed) and
2629 the NumLock toggle state (off/on).
2630
2631 The choices for the keypad keys in each of the above states are:
2632 `Plain numeric keypad' where the keys generates plain digits,
2633 `Numeric keypad with decimal key' where the character produced by the
2634 decimal key can be customized individually (for internationalization),
2635 `Numeric Prefix Arg' where the keypad keys produce numeric prefix args
2636 for emacs editing commands, `Cursor keys' and `Shifted Cursor keys'
2637 where the keys work like (shifted) arrow keys, home/end, etc., and
2638 `Unspecified/User-defined' where the keypad keys (kp-0, kp-1, etc.)
2639 are left unspecified and can be bound individually through the global
2640 or local keymaps.
2641
2642 +++
2643 ** The new kmacro package provides a simpler user interface to
2644 emacs' keyboard macro facilities.
2645
2646 Basically, it uses two function keys (default F3 and F4) like this:
2647 F3 starts a macro, F4 ends the macro, and pressing F4 again executes
2648 the last macro. While defining the macro, F3 inserts a counter value
2649 which automatically increments every time the macro is executed.
2650
2651 There is now a keyboard macro ring which stores the most recently
2652 defined macros.
2653
2654 The C-x C-k sequence is now a prefix for the kmacro keymap which
2655 defines bindings for moving through the keyboard macro ring,
2656 C-x C-k C-p and C-x C-k C-n, editing the last macro C-x C-k C-e,
2657 manipulating the macro counter and format via C-x C-k C-c,
2658 C-x C-k C-a, and C-x C-k C-f. See the commentary in kmacro.el
2659 for more commands.
2660
2661 The normal macro bindings C-x (, C-x ), and C-x e now interfaces to
2662 the keyboard macro ring.
2663
2664 The C-x e command now automatically terminates the current macro
2665 before calling it, if used while defining a macro.
2666
2667 In addition, when ending or calling a macro with C-x e, the macro can
2668 be repeated immediately by typing just the `e'. You can customize
2669 this behavior via the variable kmacro-call-repeat-key and
2670 kmacro-call-repeat-with-arg.
2671
2672 Keyboard macros can now be debugged and edited interactively.
2673 C-x C-k SPC steps through the last keyboard macro one key sequence
2674 at a time, prompting for the actions to take.
2675
2676 +++
2677 ** The new package longlines.el provides a minor mode for editing text
2678 files composed of long lines, based on the `use-hard-newlines'
2679 mechanism. The long lines are broken up by inserting soft newlines,
2680 which are automatically removed when saving the file to disk or
2681 copying into the kill ring, clipboard, etc. By default, Longlines
2682 mode inserts soft newlines automatically during editing, a behavior
2683 referred to as "soft word wrap" in other text editors. This is
2684 similar to Refill mode, but more reliable. To turn the word wrap
2685 feature off, set `longlines-auto-wrap' to nil.
2686
2687 ---
2688 ** The old Octave mode bindings C-c f and C-c i have been changed
2689 to C-c C-f and C-c C-i. The C-c C-i subcommands now have duplicate
2690 bindings on control characters--thus, C-c C-i C-b is the same as
2691 C-c C-i b, and so on.
2692
2693 ** The printing package is now part of the Emacs distribution.
2694
2695 If you enable the printing package by including (require 'printing) in
2696 the .emacs file, the normal Print item on the File menu is replaced
2697 with a Print sub-menu which allows you to preview output through
2698 ghostview, use ghostscript to print (if you don't have a PostScript
2699 printer) or send directly to printer a PostScript code generated by
2700 `ps-print' package. Use M-x pr-help for more information.
2701
2702 +++
2703 ** The new python.el package is used to edit Python and Jython programs.
2704
2705 ---
2706 ** The minor mode Reveal mode makes text visible on the fly as you
2707 move your cursor into hidden regions of the buffer.
2708 It should work with any package that uses overlays to hide parts
2709 of a buffer, such as outline-minor-mode, hs-minor-mode, hide-ifdef-mode, ...
2710
2711 There is also Global Reveal mode which affects all buffers.
2712
2713 ---
2714 ** The ruler-mode.el library provides a minor mode for displaying an
2715 "active" ruler in the header line. You can use the mouse to visually
2716 change the `fill-column', `window-margins' and `tab-stop-list'
2717 settings.
2718
2719 +++
2720 ** SES mode (ses-mode) is a new major mode for creating and editing
2721 spreadsheet files. Besides the usual Emacs features (intuitive command
2722 letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers
2723 viral immunity and import/export of tab-separated values.
2724
2725 +++
2726 ** The new global minor mode `size-indication-mode' (off by default)
2727 shows the size of accessible part of the buffer on the mode line.
2728
2729 +++
2730 ** The new package table.el implements editable, WYSIWYG, embedded
2731 `text tables' in Emacs buffers. It simulates the effect of putting
2732 these tables in a special major mode. The package emulates WYSIWYG
2733 table editing available in modern word processors. The package also
2734 can generate a table source in typesetting and markup languages such
2735 as latex and html from the visually laid out text table.
2736
2737 +++
2738 ** The thumbs.el package allows you to preview image files as thumbnails
2739 and can be invoked from a Dired buffer.
2740
2741 +++
2742 ** Tramp is now part of the distribution.
2743
2744 This package is similar to Ange-FTP: it allows you to edit remote
2745 files. But whereas Ange-FTP uses FTP to access the remote host,
2746 Tramp uses a shell connection. The shell connection is always used
2747 for filename completion and directory listings and suchlike, but for
2748 the actual file transfer, you can choose between the so-called
2749 `inline' methods (which transfer the files through the shell
2750 connection using base64 or uu encoding) and the `out-of-band' methods
2751 (which invoke an external copying program such as `rcp' or `scp' or
2752 `rsync' to do the copying).
2753
2754 Shell connections can be acquired via `rsh', `ssh', `telnet' and also
2755 `su' and `sudo'. Ange-FTP is still supported via the `ftp' method.
2756
2757 If you want to disable Tramp you should set
2758
2759 (setq tramp-default-method "ftp")
2760
2761 ---
2762 ** The library tree-widget.el provides a new widget to display a set
2763 of hierarchical data as an outline. For example, the tree-widget is
2764 well suited to display a hierarchy of directories and files.
2765
2766 ---
2767 ** The URL package (which had been part of W3) is now part of Emacs.
2768
2769 ---
2770 ** New minor mode, Visible mode, toggles invisibility in the current buffer.
2771 When enabled, it makes all invisible text visible. When disabled, it
2772 restores the previous value of `buffer-invisibility-spec'.
2773
2774 +++
2775 ** The wdired.el package allows you to use normal editing commands on Dired
2776 buffers to change filenames, permissions, etc...
2777
2778 2816
2779 * Incompatible Lisp Changes in Emacs 22.1 2817 * Incompatible Lisp Changes in Emacs 22.1
2780 2818
2781 +++ 2819 +++
2782 ** The new interactive-specification `G' reads a file name 2820 ** The new interactive-specification `G' reads a file name
4350 --- 4388 ---
4351 ** `easy-menu-define' now allows you to use nil for the symbol name 4389 ** `easy-menu-define' now allows you to use nil for the symbol name
4352 if you don't need to give the menu a name. If you install the menu 4390 if you don't need to give the menu a name. If you install the menu
4353 into other keymaps right away (MAPS is non-nil), it usually doesn't 4391 into other keymaps right away (MAPS is non-nil), it usually doesn't
4354 need to have a name. 4392 need to have a name.
4393
4394 ---
4395 ** rx.el has new corresponding `symbol-end' and `symbol-start' elements.
4355 4396
4356 ** New functions, macros, and commands: 4397 ** New functions, macros, and commands:
4357 4398
4358 +++ 4399 +++
4359 *** The new function `assoc-string' replaces `assoc-ignore-case' and 4400 *** The new function `assoc-string' replaces `assoc-ignore-case' and