aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Moellmann2001-01-31 15:19:32 +0000
committerGerd Moellmann2001-01-31 15:19:32 +0000
commit2eba3201c78d2058c45f93ed1e64bb66a79f0379 (patch)
tree3a64230a2ed69ffd75ee77a3636a033d326023cc
parent60dc655805a9dc6b926f5a7fa81d1e28dcd4e55c (diff)
downloademacs-2eba3201c78d2058c45f93ed1e64bb66a79f0379.tar.gz
emacs-2eba3201c78d2058c45f93ed1e64bb66a79f0379.zip
Move 19.x news from NEWS here.
-rw-r--r--etc/ONEWS779
1 files changed, 777 insertions, 2 deletions
diff --git a/etc/ONEWS b/etc/ONEWS
index c99afb60793..5b03b80ef63 100644
--- a/etc/ONEWS
+++ b/etc/ONEWS
@@ -1,9 +1,784 @@
1GNU Emacs NEWS -- history of user-visible changes. 1992. 1GNU Emacs NEWS -- history of user-visible changes. 1992.
2Copyright (C) 1995 Free Software Foundation, Inc. 2Copyright (C) 1995, 2001 Free Software Foundation, Inc.
3See the end for copying conditions. 3See the end for copying conditions.
4 4
5For older news, see the file ONEWS.4. 5For older news, see the file ONEWS.4.
6 6
7* Emacs 19.34 is a bug-fix release with no user-visible changes.
8
9* Changes in Emacs 19.33.
10
11** Bibtex mode no longer turns on Auto Fill automatically. (No major
12mode should do that--it is the user's choice.)
13
14** The variable normal-auto-fill-function specifies the function to
15use for auto-fill-function, if and when Auto Fill is turned on.
16Major modes can set this locally to alter how Auto Fill works.
17
18* Editing Changes in Emacs 19.32
19
20** C-x f with no argument now signals an error.
21To set the fill column at the current column, use C-u C-x f.
22
23** Expanding dynamic abbrevs with M-/ is now smarter about case
24conversion. If you type the abbreviation with mixed case, and it
25matches the beginning of the expansion including case, then the
26expansion is copied verbatim. Using SPC M-/ to copy an additional
27word always copies it verbatim except when the previous copied word is
28all caps.
29
30** On a non-windowing terminal, which can display only one Emacs frame
31at a time, creating a new frame with C-x 5 2 also selects that frame.
32
33When using a display that can show multiple frames at once, C-x 5 2
34does make the frame visible, but does not select it. This is the same
35as in previous Emacs versions.
36
37** You can use C-x 5 2 to create multiple frames on MSDOS, just as on a
38non-X terminal on Unix. Of course, only one frame is visible at any
39time, since your terminal doesn't have the ability to display multiple
40frames.
41
42** On Windows, set win32-pass-alt-to-system to a non-nil value
43if you would like tapping the Alt key to invoke the Windows menu.
44This feature is not enabled by default; since the Alt key is also the
45Meta key, it is too easy and painful to activate this feature by
46accident.
47
48** The command apply-macro-to-region-lines repeats the last defined
49keyboard macro once for each complete line within the current region.
50It does this line by line, by moving point to the beginning of that
51line and then executing the macro.
52
53This command is not new, but was never documented before.
54
55** You can now use Mouse-1 to place the region around a string constant
56(something surrounded by doublequote characters or other delimiter
57characters of like syntax) by double-clicking on one of the delimiting
58characters.
59
60** Font Lock mode
61
62*** Font Lock support modes
63
64Font Lock can be configured to use Fast Lock mode and Lazy Lock mode (see
65below) in a flexible way. Rather than adding the appropriate function to the
66hook font-lock-mode-hook, you can use the new variable font-lock-support-mode
67to control which modes have Fast Lock mode or Lazy Lock mode turned on when
68Font Lock mode is enabled.
69
70For example, to use Fast Lock mode when Font Lock mode is turned on, put:
71
72 (setq font-lock-support-mode 'fast-lock-mode)
73
74in your ~/.emacs.
75
76*** lazy-lock
77
78The lazy-lock package speeds up Font Lock mode by making fontification occur
79only when necessary, such as when a previously unfontified part of the buffer
80becomes visible in a window. When you create a buffer with Font Lock mode and
81Lazy Lock mode turned on, the buffer is not fontified. When certain events
82occur (such as scrolling), Lazy Lock makes sure that the visible parts of the
83buffer are fontified. Lazy Lock also defers on-the-fly fontification until
84Emacs has been idle for a given amount of time.
85
86To use this package, put in your ~/.emacs:
87
88 (setq font-lock-support-mode 'lazy-lock-mode)
89
90To control the package behaviour, see the documentation for `lazy-lock-mode'.
91
92** Changes in BibTeX mode.
93
94*** For all entries allow spaces and tabs between opening brace or
95paren and key.
96
97*** Non-escaped double-quoted characters (as in `Sch"of') are now
98supported.
99
100** Gnus changes.
101
102Gnus, the Emacs news reader, has undergone further rewriting. Many new
103commands and variables have been added. There should be no
104significant incompatibilities between this Gnus version and the
105previously released version, except in the message composition area.
106
107Below is a list of the more user-visible changes. Coding changes
108between Gnus 5.1 and 5.2 are more extensive.
109
110*** A new message composition mode is used. All old customization
111variables for mail-mode, rnews-reply-mode and gnus-msg are now
112obsolete.
113
114*** Gnus is now able to generate "sparse" threads -- threads where
115missing articles are represented by empty nodes.
116
117 (setq gnus-build-sparse-threads 'some)
118
119*** Outgoing articles are stored on a special archive server.
120
121 To disable this: (setq gnus-message-archive-group nil)
122
123*** Partial thread regeneration now happens when articles are
124referred.
125
126*** Gnus can make use of GroupLens predictions:
127
128 (setq gnus-use-grouplens t)
129
130*** A trn-line tree buffer can be displayed.
131
132 (setq gnus-use-trees t)
133
134*** An nn-like pick-and-read minor mode is available for the summary
135buffers.
136
137 (add-hook 'gnus-summary-mode-hook 'gnus-pick-mode)
138
139*** In binary groups you can use a special binary minor mode:
140
141 `M-x gnus-binary-mode'
142
143*** Groups can be grouped in a folding topic hierarchy.
144
145 (add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
146
147*** Gnus can re-send and bounce mail.
148
149 Use the `S D r' and `S D b'.
150
151*** Groups can now have a score, and bubbling based on entry frequency
152is possible.
153
154 (add-hook 'gnus-summary-exit-hook 'gnus-summary-bubble-group)
155
156*** Groups can be process-marked, and commands can be performed on
157groups of groups.
158
159*** Caching is possible in virtual groups.
160
161*** nndoc now understands all kinds of digests, mail boxes, rnews news
162batches, ClariNet briefs collections, and just about everything else.
163
164*** Gnus has a new backend (nnsoup) to create/read SOUP packets.
165
166*** The Gnus cache is much faster.
167
168*** Groups can be sorted according to many criteria.
169
170 For instance: (setq gnus-group-sort-function 'gnus-group-sort-by-rank)
171
172*** New group parameters have been introduced to set list-address and
173expiration times.
174
175*** All formatting specs allow specifying faces to be used.
176
177*** There are several more commands for setting/removing/acting on
178process marked articles on the `M P' submap.
179
180*** The summary buffer can be limited to show parts of the available
181articles based on a wide range of criteria. These commands have been
182bound to keys on the `/' submap.
183
184*** Articles can be made persistent -- as an alternative to saving
185articles with the `*' command.
186
187*** All functions for hiding article elements are now toggles.
188
189*** Article headers can be buttonized.
190
191 (add-hook 'gnus-article-display-hook 'gnus-article-add-buttons-to-head)
192
193*** All mail backends support fetching articles by Message-ID.
194
195*** Duplicate mail can now be treated properly. See the
196`nnmail-treat-duplicates' variable.
197
198*** All summary mode commands are available directly from the article
199buffer.
200
201*** Frames can be part of `gnus-buffer-configuration'.
202
203*** Mail can be re-scanned by a daemonic process.
204
205*** Gnus can make use of NoCeM files to filter spam.
206
207 (setq gnus-use-nocem t)
208
209*** Groups can be made permanently visible.
210
211 (setq gnus-permanently-visible-groups "^nnml:")
212
213*** Many new hooks have been introduced to make customizing easier.
214
215*** Gnus respects the Mail-Copies-To header.
216
217*** Threads can be gathered by looking at the References header.
218
219 (setq gnus-summary-thread-gathering-function
220 'gnus-gather-threads-by-references)
221
222*** Read articles can be stored in a special backlog buffer to avoid
223refetching.
224
225 (setq gnus-keep-backlog 50)
226
227*** A clean copy of the current article is always stored in a separate
228buffer to allow easier treatment.
229
230*** Gnus can suggest where to save articles. See `gnus-split-methods'.
231
232*** Gnus doesn't have to do as much prompting when saving.
233
234 (setq gnus-prompt-before-saving t)
235
236*** gnus-uu can view decoded files asynchronously while fetching
237articles.
238
239 (setq gnus-uu-grabbed-file-functions 'gnus-uu-grab-view)
240
241*** Filling in the article buffer now works properly on cited text.
242
243*** Hiding cited text adds buttons to toggle hiding, and how much
244cited text to hide is now customizable.
245
246 (setq gnus-cited-lines-visible 2)
247
248*** Boring headers can be hidden.
249
250 (add-hook 'gnus-article-display-hook 'gnus-article-hide-boring-headers)
251
252*** Default scoring values can now be set from the menu bar.
253
254*** Further syntax checking of outgoing articles have been added.
255
256The Gnus manual has been expanded. It explains all these new features
257in greater detail.
258
259* Lisp Changes in Emacs 19.32
260
261** The function set-visited-file-name now accepts an optional
262second argument NO-QUERY. If it is non-nil, then the user is not
263asked for confirmation in the case where the specified file already
264exists.
265
266** The variable print-length applies to printing vectors and bitvectors,
267as well as lists.
268
269** The new function keymap-parent returns the parent keymap
270of a given keymap.
271
272** The new function set-keymap-parent specifies a new parent for a
273given keymap. The arguments are KEYMAP and PARENT. PARENT must be a
274keymap or nil.
275
276** Sometimes menu keymaps use a command name, a symbol, which is really
277an automatically generated alias for some other command, the "real"
278name. In such a case, you should give that alias symbol a non-nil
279menu-alias property. That property tells the menu system to look for
280equivalent keys for the real name instead of equivalent keys for the
281alias.
282
283* Editing Changes in Emacs 19.31
284
285** Freedom of the press restricted in the United States.
286
287Emacs has been censored in accord with the Communications Decency Act.
288This includes removing some features of the doctor program. That law
289was described by its supporters as a ban on pornography, but it bans
290far more than that. The Emacs distribution has never contained any
291pornography, but parts of it were nonetheless prohibited.
292
293For information on US government censorship of the Internet, and what
294you can do to bring back freedom of the press, see the web site
295`http://www.vtw.org/'.
296
297** A note about C mode indentation customization.
298
299The old (Emacs 19.29) ways of specifying a C indentation style
300do not normally work in the new implementation of C mode.
301It has its own methods of customizing indentation, which are
302much more powerful than the old C mode. See the Editing Programs
303chapter of the manual for details.
304
305However, you can load the library cc-compat to make the old
306customization variables take effect.
307
308** Marking with the mouse.
309
310When you mark a region with the mouse, the region now remains
311highlighted until the next input event, regardless of whether you are
312using M-x transient-mark-mode.
313
314** Improved Windows NT/95 support.
315
316*** Emacs now supports scroll bars on Windows NT and Windows 95.
317
318*** Emacs now supports subprocesses on Windows 95. (Subprocesses used
319to work on NT only and not on 95.)
320
321*** There are difficulties with subprocesses, though, due to problems
322in Windows, beyond the control of Emacs. They work fine as long as
323you run Windows applications. The problems arise when you run a DOS
324application in a subprocesses. Since current shells run as DOS
325applications, these problems are significant.
326
327If you run a DOS application in a subprocess, then the application is
328likely to busy-wait, which means that your machine will be 100% busy.
329However, if you don't mind the temporary heavy load, the subprocess
330will work OK as long as you tell it to terminate before you start any
331other DOS application as a subprocess.
332
333Emacs is unable to terminate or interrupt a DOS subprocess.
334You have to do this by providing input directly to the subprocess.
335
336If you run two DOS applications at the same time in two separate
337subprocesses, even if one of them is asynchronous, you will probably
338have to reboot your machine--until then, it will remain 100% busy.
339Windows simply does not cope when one Windows process tries to run two
340separate DOS subprocesses. Typing CTL-ALT-DEL and then choosing
341Shutdown seems to work although it may take a few minutes.
342
343** M-x resize-minibuffer-mode.
344
345This command, not previously mentioned in NEWS, toggles a mode in
346which the minibuffer window expands to show as many lines as the
347minibuffer contains.
348
349** `title' frame parameter and resource.
350
351The `title' X resource now specifies just the frame title, nothing else.
352It does not affect the name used for looking up other X resources.
353It works by setting the new `title' frame parameter, which likewise
354affects just the displayed title of the frame.
355
356The `name' parameter continues to do what it used to do:
357it specifies the frame name for looking up X resources,
358and also serves as the default for the displayed title
359when the `title' parameter is unspecified or nil.
360
361** Emacs now uses the X toolkit by default, if you have a new
362enough version of X installed (X11R5 or newer).
363
364** When you compile Emacs with the Motif widget set, Motif handles the
365F10 key by activating the menu bar. To avoid confusion, the usual
366Emacs binding of F10 is replaced with a no-op when using Motif.
367
368If you want to be able to use F10 in Emacs, you can rebind the Motif
369menubar to some other key which you don't use. To do so, add
370something like this to your X resources file. This example rebinds
371the Motif menu bar activation key to S-F12:
372
373 Emacs*defaultVirtualBindings: osfMenuBar : Shift<Key>F12
374
375** In overwrite mode, DEL now inserts spaces in most cases
376to replace the characters it "deletes".
377
378** The Rmail summary now shows the number of lines in each message.
379
380** Rmail has a new command M-x unforward-rmail-message, which extracts
381a forwarded message from the message that forwarded it. To use it,
382select a message which contains a forwarded message and then type the command.
383It inserts the forwarded message as a separate Rmail message
384immediately after the selected one.
385
386This command also undoes the textual modifications that are standardly
387made, as part of forwarding, by Rmail and other mail reader programs.
388
389** Turning off saving of .saves-... files in your home directory.
390
391Each Emacs session writes a file named .saves-... in your home
392directory to record which files M-x recover-session should recover.
393If you exit Emacs normally with C-x C-c, it deletes that file. If
394Emacs or the operating system crashes, the file remains for M-x
395recover-session.
396
397You can turn off the writing of these files by setting
398auto-save-list-file-name to nil. If you do this, M-x recover-session
399will not work.
400
401Some previous Emacs versions failed to delete these files even on
402normal exit. This is fixed now. If you are thinking of turning off
403this feature because of past experiences with versions that had this
404bug, it would make sense to check whether you still want to do so
405now that the bug is fixed.
406
407** Changes to Version Control (VC)
408
409There is a new variable, vc-follow-symlinks. It indicates what to do
410when you visit a link to a file that is under version control.
411Editing the file through the link bypasses the version control system,
412which is dangerous and probably not what you want.
413
414If this variable is t, VC follows the link and visits the real file,
415telling you about it in the echo area. If it is `ask' (the default),
416VC asks for confirmation whether it should follow the link. If nil,
417the link is visited and a warning displayed.
418
419** iso-acc.el now lets you specify a choice of language.
420Languages include "latin-1" (the default) and "latin-2" (which
421is designed for entering ISO Latin-2 characters).
422
423There are also choices for specific human languages such as French and
424Portuguese. These are subsets of Latin-1, which differ in that they
425enable only the accent characters needed for particular language.
426The other accent characters, not needed for the chosen language,
427remain normal.
428
429** Posting articles and sending mail now has M-TAB completion on various
430header fields (Newsgroups, To, CC, ...).
431
432Completion in the Newsgroups header depends on the list of groups
433known to your news reader. Completion in the Followup-To header
434offers those groups which are in the Newsgroups header, since
435Followup-To usually just holds one of those.
436
437Completion in fields that hold mail addresses works based on the list
438of local users plus your aliases. Additionally, if your site provides
439a mail directory or a specific host to use for any unrecognized user
440name, you can arrange to query that host for completion also. (See the
441documentation of variables `mail-directory-process' and
442`mail-directory-stream'.)
443
444** A greatly extended sgml-mode offers new features such as (to be configured)
445skeletons with completing read for tags and attributes, typing named
446characters including optionally all 8bit characters, making tags invisible
447with optional alternate display text, skipping and deleting tag(pair)s.
448
449Note: since Emacs' syntax feature cannot limit the special meaning of ', " and
450- to inside <>, for some texts the result, especially of font locking, may be
451wrong (see `sgml-specials' if you get wrong results).
452
453The derived html-mode configures this with tags and attributes more or
454less HTML3ish. It also offers optional quick keys like C-c 1 for
455headline or C-c u for unordered list (see `html-quick-keys'). Edit /
456Text Properties / Face or M-g combinations create tags as applicable.
457Outline minor mode is supported and level 1 font-locking tries to
458fontify tag contents (which only works when they fit on one line, due
459to a limitation in font-lock).
460
461External viewing via browse-url can occur automatically upon saving.
462
463** M-x imenu-add-to-menubar now adds to the menu bar for the current
464buffer only. If you want to put an Imenu item in the menu bar for all
465buffers that use a particular major mode, use the mode hook, as in
466this example:
467
468 (add-hook 'emacs-lisp-mode-hook
469 '(lambda () (imenu-add-to-menubar "Index")))
470
471** Changes in BibTeX mode.
472
473*** Field names may now contain digits, hyphens, and underscores.
474
475*** Font Lock mode is now supported.
476
477*** bibtex-make-optional-field is no longer interactive.
478
479*** If bibtex-maintain-sorted-entries is non-nil, inserting new
480entries is now done with a faster algorithm. However, inserting
481will fail in this case if the buffer contains invalid entries or
482isn't in sorted order, so you should finish each entry with C-c C-c
483(bibtex-close-entry) after you have inserted or modified it.
484The default value of bibtex-maintain-sorted-entries is nil.
485
486*** Function `show-all' is no longer bound to a key, since C-u C-c C-q
487does the same job.
488
489*** Entries with quotes inside quote-delimited fields (as `author =
490"Stefan Sch{\"o}f"') are now supported.
491
492*** Case in field names doesn't matter anymore when searching for help
493text.
494
495** Font Lock mode
496
497*** Global Font Lock mode
498
499Font Lock mode can be turned on globally, in buffers that support it, by the
500new command global-font-lock-mode. You can use the new variable
501font-lock-global-modes to control which modes have Font Lock mode automagically
502turned on. By default, this variable is set so that Font Lock mode is turned
503on globally where the buffer mode supports it.
504
505For example, to automagically turn on Font Lock mode where supported, put:
506
507 (global-font-lock-mode t)
508
509in your ~/.emacs.
510
511*** Local Refontification
512
513In Font Lock mode, editing a line automatically refontifies that line only.
514However, if your change alters the syntactic context for following lines,
515those lines remain incorrectly fontified. To refontify them, use the new
516command M-g M-g (font-lock-fontify-block).
517
518In certain major modes, M-g M-g refontifies the entire current function.
519(The variable font-lock-mark-block-function controls how to find the
520current function.) In other major modes, M-g M-g refontifies 16 lines
521above and below point.
522
523With a prefix argument N, M-g M-g refontifies N lines above and below point.
524
525** Follow mode
526
527Follow mode is a new minor mode combining windows showing the same
528buffer into one tall "virtual window". The windows are typically two
529side-by-side windows. Follow mode makes them scroll together as if
530they were a unit. To use it, go to a frame with just one window,
531split it into two side-by-side windows using C-x 3, and then type M-x
532follow-mode.
533
534M-x follow-mode turns off Follow mode if it is already enabled.
535
536To display two side-by-side windows and activate Follow mode, use the
537command M-x follow-delete-other-windows-and-split.
538
539** hide-show changes.
540
541The hooks hs-hide-hooks and hs-show-hooks have been renamed
542to hs-hide-hook and hs-show-hook, to follow the convention for
543normal hooks.
544
545** Simula mode now has a menu containing the most important commands.
546The new command simula-indent-exp is bound to C-M-q.
547
548** etags can now handle programs written in Erlang. Files are
549recognised by the extensions .erl and .hrl. The tagged lines are
550those that begin a function, record, or macro.
551
552** MSDOS Changes
553
554*** It is now possible to compile Emacs with the version 2 of DJGPP.
555Compilation with DJGPP version 1 also still works.
556
557*** The documentation of DOS-specific aspects of Emacs was rewritten
558and expanded; see the ``MS-DOS'' node in the on-line docs.
559
560*** Emacs now uses ~ for backup file names, not .bak.
561
562*** You can simulate mouse-3 on two-button mice by simultaneously
563pressing both mouse buttons.
564
565*** A number of packages and commands which previously failed or had
566restricted functionality on MS-DOS, now work. The most important ones
567are:
568
569**** Printing (both with `M-x lpr-buffer' and with `ps-print' package)
570now works.
571
572**** `Ediff' works (in a single-frame mode).
573
574**** `M-x display-time' can be used on MS-DOS (due to the new
575implementation of Emacs timers, see below).
576
577**** `Dired' supports Unix-style shell wildcards.
578
579**** The `c-macro-expand' command now works as on other platforms.
580
581**** `M-x recover-session' works.
582
583**** `M-x list-colors-display' displays all the available colors.
584
585**** The `TPU-EDT' package works.
586
587* Lisp changes in Emacs 19.31.
588
589** The function using-unix-filesystems on Windows NT and Windows 95
590tells Emacs to read and write files assuming that they reside on a
591remote Unix filesystem. No CR/LF translation is done on any files in
592this case. Invoking using-unix-filesystems with t activates this
593behavior, and invoking it with any other value deactivates it.
594
595** Change in system-type and system-configuration values.
596
597The value of system-type on a Linux-based GNU system is now `lignux',
598not `linux'. This means that some programs which use `system-type'
599need to be changed. The value of `system-configuration' will also
600be different.
601
602It is generally recommended to use `system-configuration' rather
603than `system-type'.
604
605See the file LINUX-GNU in this directory for more about this.
606
607** The functions shell-command and dired-call-process
608now run file name handlers for default-directory, if it has them.
609
610** Undoing the deletion of text now restores the positions of markers
611that pointed into or next to the deleted text.
612
613** Timers created with run-at-time now work internally to Emacs, and
614no longer use a separate process. Therefore, they now work more
615reliably and can be used for shorter time delays.
616
617The new function run-with-timer is a convenient way to set up a timer
618to run a specified amount of time after the present. A call looks
619like this:
620
621 (run-with-timer SECS REPEAT FUNCTION ARGS...)
622
623SECS says how many seconds should elapse before the timer happens.
624It may be an integer or a floating point number. When the timer
625becomes ripe, the action is to call FUNCTION with arguments ARGS.
626
627REPEAT gives the interval for repeating the timer (measured in
628seconds). It may be an integer or a floating point number. nil or 0
629means don't repeat at all--call FUNCTION just once.
630
631*** with-timeout provides an easy way to do something but give
632up if too much time passes.
633
634 (with-timeout (SECONDS TIMEOUT-FORMS...) BODY...)
635
636This executes BODY, but gives up after SECONDS seconds.
637If it gives up, it runs the TIMEOUT-FORMS and returns the value
638of the last one of them. Normally it returns the value of the last
639form in BODY.
640
641*** You can now arrange to call a function whenever Emacs is idle for
642a certain length of time. To do this, call run-with-idle-timer. A
643call looks like this:
644
645 (run-with-idle-timer SECS REPEAT FUNCTION ARGS...)
646
647SECS says how many seconds of idleness should elapse before the timer
648runs. It may be an integer or a floating point number. When the
649timer becomes ripe, the action is to call FUNCTION with arguments
650ARGS.
651
652Emacs becomes idle whenever it finishes executing a keyboard or mouse
653command. It remains idle until it receives another keyboard or mouse
654command.
655
656REPEAT, if non-nil, means this timer should be activated again each
657time Emacs becomes idle and remains idle for SECS seconds The timer
658does not repeat if Emacs *remains* idle; it runs at most once after
659each time Emacs becomes idle.
660
661If REPEAT is nil, the timer runs just once, the first time Emacs is
662idle for SECS seconds.
663
664*** post-command-idle-hook is now obsolete; you shouldn't use it at
665all, because it interferes with the idle timer mechanism. If your
666programs use post-command-idle-hook, convert them to use idle timers
667instead.
668
669*** y-or-n-p-with-timeout lets you ask a question but give up if
670there is no answer within a certain time.
671
672 (y-or-n-p-with-timeout PROMPT SECONDS DEFAULT-VALUE)
673
674asks the question PROMPT (just like y-or-n-p). If the user answers
675within SECONDS seconds, it returns the answer that the user gave.
676Otherwise it gives up after SECONDS seconds, and returns DEFAULT-VALUE.
677
678** Minor change to `encode-time': you can now pass more than seven
679arguments. If you do that, the first six arguments have the usual
680meaning, the last argument is interpreted as the time zone, and the
681arguments in between are ignored.
682
683This means that it works to use the list returned by `decode-time' as
684the list of arguments for `encode-time'.
685
686** The default value of load-path now includes the directory
687/usr/local/share/emacs/VERSION/site-lisp In addition to
688/usr/local/share/emacs/site-lisp. You can use this new directory for
689site-specific Lisp packages that belong with a particular Emacs
690version.
691
692It is not unusual for a Lisp package that works well in one Emacs
693version to cause trouble in another. Sometimes packages need updating
694for incompatible changes; sometimes they look at internal data that
695has changed; sometimes the package has been installed in Emacs itself
696and the installed version should be used. Whatever the reason for the
697problem, this new feature makes it easier to solve.
698
699** When your program contains a fixed file name (like .completions or
700.abbrev.defs), the file name usually needs to be different on operating
701systems with limited file name syntax.
702
703Now you can avoid ad-hoc conditionals by using the function
704convert-standard-filename to convert the file name to a proper form
705for each operating system. Here is an example of use, from the file
706completions.el:
707
708(defvar save-completions-file-name
709 (convert-standard-filename "~/.completions")
710 "*The filename to save completions to.")
711
712This sets the variable save-completions-file-name to a value that
713depends on the operating system, because the definition of
714convert-standard-filename depends on the operating system. On
715Unix-like systems, it returns the specified file name unchanged. On
716MS-DOS, it adapts the name to fit the limitations of that system.
717
718** The interactive spec N now returns the numeric prefix argument
719rather than the raw prefix argument. (It still reads a number using the
720minibuffer if there is no prefix argument at all.)
721
722** When a process is deleted, this no longer disconnects the process
723marker from its buffer position.
724
725** The variable garbage-collection-messages now controls whether
726Emacs displays a message at the beginning and end of garbage collection.
727The default is nil, meaning there are no messages.
728
729** The variable debug-ignored-errors specifies certain kinds of errors
730that should not enter the debugger. Its value is a list of error
731condition symbols and/or regular expressions. If the error has any
732of the condition symbols listed, or if any of the regular expressions
733matches the error message, then that error does not enter the debugger,
734regardless of the value of debug-on-error.
735
736This variable is initialized to match certain common but uninteresting
737errors that happen often during editing.
738
739** The new function error-message-string converts an error datum
740into its error message. The error datum is what condition-case
741puts into the variable, to describe the error that happened.
742
743** Anything that changes which buffer appears in a given window
744now runs the window-scroll-functions for that window.
745
746** The new function get-buffer-window-list returns a list of windows displaying
747a buffer. The function is called with the buffer (a buffer object or a buffer
748name) and two optional arguments specifying the minibuffer windows and frames
749to search. Therefore this function takes optional args like next-window etc.,
750and not get-buffer-window.
751
752** buffer-substring now runs the hook buffer-access-fontify-functions,
753calling each function with two arguments--the range of the buffer
754being accessed. buffer-substring-no-properties does not call them.
755
756If you use this feature, you should set the variable
757buffer-access-fontified-property to a non-nil symbol, which is a
758property name. Then, if all the characters in the buffer range have a
759non-nil value for that property, the buffer-access-fontify-functions
760are not called. When called, these functions should put a non-nil
761property on the text that they fontify, so that they won't get called
762over and over for the same text.
763
764** Changes in lisp-mnt.el
765
766*** The lisp-mnt package can now recognize file headers that are written
767in the formats used by the `what' command and the RCS `ident' command:
768
769;; @(#) HEADER: text
770;; $HEADER: text $
771
772in addition to the normal
773
774;; HEADER: text
775
776*** The commands lm-verify and lm-synopsis are now interactive. lm-verify
777checks that the library file has proper sections and headers, and
778lm-synopsis extracts first line "synopsis'"information.
779
780
781
7* Editing Changes in Emacs 19.30. 782* Editing Changes in Emacs 19.30.
8 783
9** Be sure to recompile your byte-compiled Emacs Lisp files 784** Be sure to recompile your byte-compiled Emacs Lisp files
@@ -254,7 +1029,7 @@ your working file with the latest version from the master.
254*** RCS customization. 1029*** RCS customization.
255 1030
256There is a new variable vc-consult-headers. If it is t (the default), 1031There is a new variable vc-consult-headers. If it is t (the default),
257VC searches for RCS headers in working files (like `$Id: ONEWS,v 1.3 2000/11/02 13:34:50 gerd Exp $') and 1032VC searches for RCS headers in working files (like `$Id: ONEWS,v 1.4 2000/11/20 16:15:34 gerd Exp $') and
258determines the state of the file from them, not from the master file. 1033determines the state of the file from them, not from the master file.
259This is fast and more reliable when you use branches. (The variable 1034This is fast and more reliable when you use branches. (The variable
260was already present in Emacs 19.29, but didn't get mentioned in the 1035was already present in Emacs 19.29, but didn't get mentioned in the