comparison etc/NEWS @ 35784:3fda213b2ac5

Move 19.x news to ONEWS.
author Gerd Moellmann <gerd@gnu.org>
date Wed, 31 Jan 2001 15:20:17 +0000
parents 214243110cef
children 83b8f5ad1f97
comparison
equal deleted inserted replaced
35783:13da98d275f6 35784:3fda213b2ac5
8652 8652
8653 An example of using this feature: if we define imenu items for the 8653 An example of using this feature: if we define imenu items for the
8654 #include directives in a C file, we can open the included file when we 8654 #include directives in a C file, we can open the included file when we
8655 select one of those items. 8655 select one of those items.
8656 8656
8657 * Emacs 19.34 is a bug-fix release with no user-visible changes.
8658
8659 * Changes in Emacs 19.33.
8660
8661 ** Bibtex mode no longer turns on Auto Fill automatically. (No major
8662 mode should do that--it is the user's choice.)
8663
8664 ** The variable normal-auto-fill-function specifies the function to
8665 use for auto-fill-function, if and when Auto Fill is turned on.
8666 Major modes can set this locally to alter how Auto Fill works.
8667
8668 * Editing Changes in Emacs 19.32
8669
8670 ** C-x f with no argument now signals an error.
8671 To set the fill column at the current column, use C-u C-x f.
8672
8673 ** Expanding dynamic abbrevs with M-/ is now smarter about case
8674 conversion. If you type the abbreviation with mixed case, and it
8675 matches the beginning of the expansion including case, then the
8676 expansion is copied verbatim. Using SPC M-/ to copy an additional
8677 word always copies it verbatim except when the previous copied word is
8678 all caps.
8679
8680 ** On a non-windowing terminal, which can display only one Emacs frame
8681 at a time, creating a new frame with C-x 5 2 also selects that frame.
8682
8683 When using a display that can show multiple frames at once, C-x 5 2
8684 does make the frame visible, but does not select it. This is the same
8685 as in previous Emacs versions.
8686
8687 ** You can use C-x 5 2 to create multiple frames on MSDOS, just as on a
8688 non-X terminal on Unix. Of course, only one frame is visible at any
8689 time, since your terminal doesn't have the ability to display multiple
8690 frames.
8691
8692 ** On Windows, set win32-pass-alt-to-system to a non-nil value
8693 if you would like tapping the Alt key to invoke the Windows menu.
8694 This feature is not enabled by default; since the Alt key is also the
8695 Meta key, it is too easy and painful to activate this feature by
8696 accident.
8697
8698 ** The command apply-macro-to-region-lines repeats the last defined
8699 keyboard macro once for each complete line within the current region.
8700 It does this line by line, by moving point to the beginning of that
8701 line and then executing the macro.
8702
8703 This command is not new, but was never documented before.
8704
8705 ** You can now use Mouse-1 to place the region around a string constant
8706 (something surrounded by doublequote characters or other delimiter
8707 characters of like syntax) by double-clicking on one of the delimiting
8708 characters.
8709
8710 ** Font Lock mode
8711
8712 *** Font Lock support modes
8713
8714 Font Lock can be configured to use Fast Lock mode and Lazy Lock mode (see
8715 below) in a flexible way. Rather than adding the appropriate function to the
8716 hook font-lock-mode-hook, you can use the new variable font-lock-support-mode
8717 to control which modes have Fast Lock mode or Lazy Lock mode turned on when
8718 Font Lock mode is enabled.
8719
8720 For example, to use Fast Lock mode when Font Lock mode is turned on, put:
8721
8722 (setq font-lock-support-mode 'fast-lock-mode)
8723
8724 in your ~/.emacs.
8725
8726 *** lazy-lock
8727
8728 The lazy-lock package speeds up Font Lock mode by making fontification occur
8729 only when necessary, such as when a previously unfontified part of the buffer
8730 becomes visible in a window. When you create a buffer with Font Lock mode and
8731 Lazy Lock mode turned on, the buffer is not fontified. When certain events
8732 occur (such as scrolling), Lazy Lock makes sure that the visible parts of the
8733 buffer are fontified. Lazy Lock also defers on-the-fly fontification until
8734 Emacs has been idle for a given amount of time.
8735
8736 To use this package, put in your ~/.emacs:
8737
8738 (setq font-lock-support-mode 'lazy-lock-mode)
8739
8740 To control the package behaviour, see the documentation for `lazy-lock-mode'.
8741
8742 ** Changes in BibTeX mode.
8743
8744 *** For all entries allow spaces and tabs between opening brace or
8745 paren and key.
8746
8747 *** Non-escaped double-quoted characters (as in `Sch"of') are now
8748 supported.
8749
8750 ** Gnus changes.
8751
8752 Gnus, the Emacs news reader, has undergone further rewriting. Many new
8753 commands and variables have been added. There should be no
8754 significant incompatibilities between this Gnus version and the
8755 previously released version, except in the message composition area.
8756
8757 Below is a list of the more user-visible changes. Coding changes
8758 between Gnus 5.1 and 5.2 are more extensive.
8759
8760 *** A new message composition mode is used. All old customization
8761 variables for mail-mode, rnews-reply-mode and gnus-msg are now
8762 obsolete.
8763
8764 *** Gnus is now able to generate "sparse" threads -- threads where
8765 missing articles are represented by empty nodes.
8766
8767 (setq gnus-build-sparse-threads 'some)
8768
8769 *** Outgoing articles are stored on a special archive server.
8770
8771 To disable this: (setq gnus-message-archive-group nil)
8772
8773 *** Partial thread regeneration now happens when articles are
8774 referred.
8775
8776 *** Gnus can make use of GroupLens predictions:
8777
8778 (setq gnus-use-grouplens t)
8779
8780 *** A trn-line tree buffer can be displayed.
8781
8782 (setq gnus-use-trees t)
8783
8784 *** An nn-like pick-and-read minor mode is available for the summary
8785 buffers.
8786
8787 (add-hook 'gnus-summary-mode-hook 'gnus-pick-mode)
8788
8789 *** In binary groups you can use a special binary minor mode:
8790
8791 `M-x gnus-binary-mode'
8792
8793 *** Groups can be grouped in a folding topic hierarchy.
8794
8795 (add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
8796
8797 *** Gnus can re-send and bounce mail.
8798
8799 Use the `S D r' and `S D b'.
8800
8801 *** Groups can now have a score, and bubbling based on entry frequency
8802 is possible.
8803
8804 (add-hook 'gnus-summary-exit-hook 'gnus-summary-bubble-group)
8805
8806 *** Groups can be process-marked, and commands can be performed on
8807 groups of groups.
8808
8809 *** Caching is possible in virtual groups.
8810
8811 *** nndoc now understands all kinds of digests, mail boxes, rnews news
8812 batches, ClariNet briefs collections, and just about everything else.
8813
8814 *** Gnus has a new backend (nnsoup) to create/read SOUP packets.
8815
8816 *** The Gnus cache is much faster.
8817
8818 *** Groups can be sorted according to many criteria.
8819
8820 For instance: (setq gnus-group-sort-function 'gnus-group-sort-by-rank)
8821
8822 *** New group parameters have been introduced to set list-address and
8823 expiration times.
8824
8825 *** All formatting specs allow specifying faces to be used.
8826
8827 *** There are several more commands for setting/removing/acting on
8828 process marked articles on the `M P' submap.
8829
8830 *** The summary buffer can be limited to show parts of the available
8831 articles based on a wide range of criteria. These commands have been
8832 bound to keys on the `/' submap.
8833
8834 *** Articles can be made persistent -- as an alternative to saving
8835 articles with the `*' command.
8836
8837 *** All functions for hiding article elements are now toggles.
8838
8839 *** Article headers can be buttonized.
8840
8841 (add-hook 'gnus-article-display-hook 'gnus-article-add-buttons-to-head)
8842
8843 *** All mail backends support fetching articles by Message-ID.
8844
8845 *** Duplicate mail can now be treated properly. See the
8846 `nnmail-treat-duplicates' variable.
8847
8848 *** All summary mode commands are available directly from the article
8849 buffer.
8850
8851 *** Frames can be part of `gnus-buffer-configuration'.
8852
8853 *** Mail can be re-scanned by a daemonic process.
8854
8855 *** Gnus can make use of NoCeM files to filter spam.
8856
8857 (setq gnus-use-nocem t)
8858
8859 *** Groups can be made permanently visible.
8860
8861 (setq gnus-permanently-visible-groups "^nnml:")
8862
8863 *** Many new hooks have been introduced to make customizing easier.
8864
8865 *** Gnus respects the Mail-Copies-To header.
8866
8867 *** Threads can be gathered by looking at the References header.
8868
8869 (setq gnus-summary-thread-gathering-function
8870 'gnus-gather-threads-by-references)
8871
8872 *** Read articles can be stored in a special backlog buffer to avoid
8873 refetching.
8874
8875 (setq gnus-keep-backlog 50)
8876
8877 *** A clean copy of the current article is always stored in a separate
8878 buffer to allow easier treatment.
8879
8880 *** Gnus can suggest where to save articles. See `gnus-split-methods'.
8881
8882 *** Gnus doesn't have to do as much prompting when saving.
8883
8884 (setq gnus-prompt-before-saving t)
8885
8886 *** gnus-uu can view decoded files asynchronously while fetching
8887 articles.
8888
8889 (setq gnus-uu-grabbed-file-functions 'gnus-uu-grab-view)
8890
8891 *** Filling in the article buffer now works properly on cited text.
8892
8893 *** Hiding cited text adds buttons to toggle hiding, and how much
8894 cited text to hide is now customizable.
8895
8896 (setq gnus-cited-lines-visible 2)
8897
8898 *** Boring headers can be hidden.
8899
8900 (add-hook 'gnus-article-display-hook 'gnus-article-hide-boring-headers)
8901
8902 *** Default scoring values can now be set from the menu bar.
8903
8904 *** Further syntax checking of outgoing articles have been added.
8905
8906 The Gnus manual has been expanded. It explains all these new features
8907 in greater detail.
8908
8909 * Lisp Changes in Emacs 19.32
8910
8911 ** The function set-visited-file-name now accepts an optional
8912 second argument NO-QUERY. If it is non-nil, then the user is not
8913 asked for confirmation in the case where the specified file already
8914 exists.
8915
8916 ** The variable print-length applies to printing vectors and bitvectors,
8917 as well as lists.
8918
8919 ** The new function keymap-parent returns the parent keymap
8920 of a given keymap.
8921
8922 ** The new function set-keymap-parent specifies a new parent for a
8923 given keymap. The arguments are KEYMAP and PARENT. PARENT must be a
8924 keymap or nil.
8925
8926 ** Sometimes menu keymaps use a command name, a symbol, which is really
8927 an automatically generated alias for some other command, the "real"
8928 name. In such a case, you should give that alias symbol a non-nil
8929 menu-alias property. That property tells the menu system to look for
8930 equivalent keys for the real name instead of equivalent keys for the
8931 alias.
8932
8933 * Editing Changes in Emacs 19.31
8934
8935 ** Freedom of the press restricted in the United States.
8936
8937 Emacs has been censored in accord with the Communications Decency Act.
8938 This includes removing some features of the doctor program. That law
8939 was described by its supporters as a ban on pornography, but it bans
8940 far more than that. The Emacs distribution has never contained any
8941 pornography, but parts of it were nonetheless prohibited.
8942
8943 For information on US government censorship of the Internet, and what
8944 you can do to bring back freedom of the press, see the web site
8945 `http://www.vtw.org/'.
8946
8947 ** A note about C mode indentation customization.
8948
8949 The old (Emacs 19.29) ways of specifying a C indentation style
8950 do not normally work in the new implementation of C mode.
8951 It has its own methods of customizing indentation, which are
8952 much more powerful than the old C mode. See the Editing Programs
8953 chapter of the manual for details.
8954
8955 However, you can load the library cc-compat to make the old
8956 customization variables take effect.
8957
8958 ** Marking with the mouse.
8959
8960 When you mark a region with the mouse, the region now remains
8961 highlighted until the next input event, regardless of whether you are
8962 using M-x transient-mark-mode.
8963
8964 ** Improved Windows NT/95 support.
8965
8966 *** Emacs now supports scroll bars on Windows NT and Windows 95.
8967
8968 *** Emacs now supports subprocesses on Windows 95. (Subprocesses used
8969 to work on NT only and not on 95.)
8970
8971 *** There are difficulties with subprocesses, though, due to problems
8972 in Windows, beyond the control of Emacs. They work fine as long as
8973 you run Windows applications. The problems arise when you run a DOS
8974 application in a subprocesses. Since current shells run as DOS
8975 applications, these problems are significant.
8976
8977 If you run a DOS application in a subprocess, then the application is
8978 likely to busy-wait, which means that your machine will be 100% busy.
8979 However, if you don't mind the temporary heavy load, the subprocess
8980 will work OK as long as you tell it to terminate before you start any
8981 other DOS application as a subprocess.
8982
8983 Emacs is unable to terminate or interrupt a DOS subprocess.
8984 You have to do this by providing input directly to the subprocess.
8985
8986 If you run two DOS applications at the same time in two separate
8987 subprocesses, even if one of them is asynchronous, you will probably
8988 have to reboot your machine--until then, it will remain 100% busy.
8989 Windows simply does not cope when one Windows process tries to run two
8990 separate DOS subprocesses. Typing CTL-ALT-DEL and then choosing
8991 Shutdown seems to work although it may take a few minutes.
8992
8993 ** M-x resize-minibuffer-mode.
8994
8995 This command, not previously mentioned in NEWS, toggles a mode in
8996 which the minibuffer window expands to show as many lines as the
8997 minibuffer contains.
8998
8999 ** `title' frame parameter and resource.
9000
9001 The `title' X resource now specifies just the frame title, nothing else.
9002 It does not affect the name used for looking up other X resources.
9003 It works by setting the new `title' frame parameter, which likewise
9004 affects just the displayed title of the frame.
9005
9006 The `name' parameter continues to do what it used to do:
9007 it specifies the frame name for looking up X resources,
9008 and also serves as the default for the displayed title
9009 when the `title' parameter is unspecified or nil.
9010
9011 ** Emacs now uses the X toolkit by default, if you have a new
9012 enough version of X installed (X11R5 or newer).
9013
9014 ** When you compile Emacs with the Motif widget set, Motif handles the
9015 F10 key by activating the menu bar. To avoid confusion, the usual
9016 Emacs binding of F10 is replaced with a no-op when using Motif.
9017
9018 If you want to be able to use F10 in Emacs, you can rebind the Motif
9019 menubar to some other key which you don't use. To do so, add
9020 something like this to your X resources file. This example rebinds
9021 the Motif menu bar activation key to S-F12:
9022
9023 Emacs*defaultVirtualBindings: osfMenuBar : Shift<Key>F12
9024
9025 ** In overwrite mode, DEL now inserts spaces in most cases
9026 to replace the characters it "deletes".
9027
9028 ** The Rmail summary now shows the number of lines in each message.
9029
9030 ** Rmail has a new command M-x unforward-rmail-message, which extracts
9031 a forwarded message from the message that forwarded it. To use it,
9032 select a message which contains a forwarded message and then type the command.
9033 It inserts the forwarded message as a separate Rmail message
9034 immediately after the selected one.
9035
9036 This command also undoes the textual modifications that are standardly
9037 made, as part of forwarding, by Rmail and other mail reader programs.
9038
9039 ** Turning off saving of .saves-... files in your home directory.
9040
9041 Each Emacs session writes a file named .saves-... in your home
9042 directory to record which files M-x recover-session should recover.
9043 If you exit Emacs normally with C-x C-c, it deletes that file. If
9044 Emacs or the operating system crashes, the file remains for M-x
9045 recover-session.
9046
9047 You can turn off the writing of these files by setting
9048 auto-save-list-file-name to nil. If you do this, M-x recover-session
9049 will not work.
9050
9051 Some previous Emacs versions failed to delete these files even on
9052 normal exit. This is fixed now. If you are thinking of turning off
9053 this feature because of past experiences with versions that had this
9054 bug, it would make sense to check whether you still want to do so
9055 now that the bug is fixed.
9056
9057 ** Changes to Version Control (VC)
9058
9059 There is a new variable, vc-follow-symlinks. It indicates what to do
9060 when you visit a link to a file that is under version control.
9061 Editing the file through the link bypasses the version control system,
9062 which is dangerous and probably not what you want.
9063
9064 If this variable is t, VC follows the link and visits the real file,
9065 telling you about it in the echo area. If it is `ask' (the default),
9066 VC asks for confirmation whether it should follow the link. If nil,
9067 the link is visited and a warning displayed.
9068
9069 ** iso-acc.el now lets you specify a choice of language.
9070 Languages include "latin-1" (the default) and "latin-2" (which
9071 is designed for entering ISO Latin-2 characters).
9072
9073 There are also choices for specific human languages such as French and
9074 Portuguese. These are subsets of Latin-1, which differ in that they
9075 enable only the accent characters needed for particular language.
9076 The other accent characters, not needed for the chosen language,
9077 remain normal.
9078
9079 ** Posting articles and sending mail now has M-TAB completion on various
9080 header fields (Newsgroups, To, CC, ...).
9081
9082 Completion in the Newsgroups header depends on the list of groups
9083 known to your news reader. Completion in the Followup-To header
9084 offers those groups which are in the Newsgroups header, since
9085 Followup-To usually just holds one of those.
9086
9087 Completion in fields that hold mail addresses works based on the list
9088 of local users plus your aliases. Additionally, if your site provides
9089 a mail directory or a specific host to use for any unrecognized user
9090 name, you can arrange to query that host for completion also. (See the
9091 documentation of variables `mail-directory-process' and
9092 `mail-directory-stream'.)
9093
9094 ** A greatly extended sgml-mode offers new features such as (to be configured)
9095 skeletons with completing read for tags and attributes, typing named
9096 characters including optionally all 8bit characters, making tags invisible
9097 with optional alternate display text, skipping and deleting tag(pair)s.
9098
9099 Note: since Emacs' syntax feature cannot limit the special meaning of ', " and
9100 - to inside <>, for some texts the result, especially of font locking, may be
9101 wrong (see `sgml-specials' if you get wrong results).
9102
9103 The derived html-mode configures this with tags and attributes more or
9104 less HTML3ish. It also offers optional quick keys like C-c 1 for
9105 headline or C-c u for unordered list (see `html-quick-keys'). Edit /
9106 Text Properties / Face or M-g combinations create tags as applicable.
9107 Outline minor mode is supported and level 1 font-locking tries to
9108 fontify tag contents (which only works when they fit on one line, due
9109 to a limitation in font-lock).
9110
9111 External viewing via browse-url can occur automatically upon saving.
9112
9113 ** M-x imenu-add-to-menubar now adds to the menu bar for the current
9114 buffer only. If you want to put an Imenu item in the menu bar for all
9115 buffers that use a particular major mode, use the mode hook, as in
9116 this example:
9117
9118 (add-hook 'emacs-lisp-mode-hook
9119 '(lambda () (imenu-add-to-menubar "Index")))
9120
9121 ** Changes in BibTeX mode.
9122
9123 *** Field names may now contain digits, hyphens, and underscores.
9124
9125 *** Font Lock mode is now supported.
9126
9127 *** bibtex-make-optional-field is no longer interactive.
9128
9129 *** If bibtex-maintain-sorted-entries is non-nil, inserting new
9130 entries is now done with a faster algorithm. However, inserting
9131 will fail in this case if the buffer contains invalid entries or
9132 isn't in sorted order, so you should finish each entry with C-c C-c
9133 (bibtex-close-entry) after you have inserted or modified it.
9134 The default value of bibtex-maintain-sorted-entries is nil.
9135
9136 *** Function `show-all' is no longer bound to a key, since C-u C-c C-q
9137 does the same job.
9138
9139 *** Entries with quotes inside quote-delimited fields (as `author =
9140 "Stefan Sch{\"o}f"') are now supported.
9141
9142 *** Case in field names doesn't matter anymore when searching for help
9143 text.
9144
9145 ** Font Lock mode
9146
9147 *** Global Font Lock mode
9148
9149 Font Lock mode can be turned on globally, in buffers that support it, by the
9150 new command global-font-lock-mode. You can use the new variable
9151 font-lock-global-modes to control which modes have Font Lock mode automagically
9152 turned on. By default, this variable is set so that Font Lock mode is turned
9153 on globally where the buffer mode supports it.
9154
9155 For example, to automagically turn on Font Lock mode where supported, put:
9156
9157 (global-font-lock-mode t)
9158
9159 in your ~/.emacs.
9160
9161 *** Local Refontification
9162
9163 In Font Lock mode, editing a line automatically refontifies that line only.
9164 However, if your change alters the syntactic context for following lines,
9165 those lines remain incorrectly fontified. To refontify them, use the new
9166 command M-g M-g (font-lock-fontify-block).
9167
9168 In certain major modes, M-g M-g refontifies the entire current function.
9169 (The variable font-lock-mark-block-function controls how to find the
9170 current function.) In other major modes, M-g M-g refontifies 16 lines
9171 above and below point.
9172
9173 With a prefix argument N, M-g M-g refontifies N lines above and below point.
9174
9175 ** Follow mode
9176
9177 Follow mode is a new minor mode combining windows showing the same
9178 buffer into one tall "virtual window". The windows are typically two
9179 side-by-side windows. Follow mode makes them scroll together as if
9180 they were a unit. To use it, go to a frame with just one window,
9181 split it into two side-by-side windows using C-x 3, and then type M-x
9182 follow-mode.
9183
9184 M-x follow-mode turns off Follow mode if it is already enabled.
9185
9186 To display two side-by-side windows and activate Follow mode, use the
9187 command M-x follow-delete-other-windows-and-split.
9188
9189 ** hide-show changes.
9190
9191 The hooks hs-hide-hooks and hs-show-hooks have been renamed
9192 to hs-hide-hook and hs-show-hook, to follow the convention for
9193 normal hooks.
9194
9195 ** Simula mode now has a menu containing the most important commands.
9196 The new command simula-indent-exp is bound to C-M-q.
9197
9198 ** etags can now handle programs written in Erlang. Files are
9199 recognised by the extensions .erl and .hrl. The tagged lines are
9200 those that begin a function, record, or macro.
9201
9202 ** MSDOS Changes
9203
9204 *** It is now possible to compile Emacs with the version 2 of DJGPP.
9205 Compilation with DJGPP version 1 also still works.
9206
9207 *** The documentation of DOS-specific aspects of Emacs was rewritten
9208 and expanded; see the ``MS-DOS'' node in the on-line docs.
9209
9210 *** Emacs now uses ~ for backup file names, not .bak.
9211
9212 *** You can simulate mouse-3 on two-button mice by simultaneously
9213 pressing both mouse buttons.
9214
9215 *** A number of packages and commands which previously failed or had
9216 restricted functionality on MS-DOS, now work. The most important ones
9217 are:
9218
9219 **** Printing (both with `M-x lpr-buffer' and with `ps-print' package)
9220 now works.
9221
9222 **** `Ediff' works (in a single-frame mode).
9223
9224 **** `M-x display-time' can be used on MS-DOS (due to the new
9225 implementation of Emacs timers, see below).
9226
9227 **** `Dired' supports Unix-style shell wildcards.
9228
9229 **** The `c-macro-expand' command now works as on other platforms.
9230
9231 **** `M-x recover-session' works.
9232
9233 **** `M-x list-colors-display' displays all the available colors.
9234
9235 **** The `TPU-EDT' package works.
9236
9237 * Lisp changes in Emacs 19.31.
9238
9239 ** The function using-unix-filesystems on Windows NT and Windows 95
9240 tells Emacs to read and write files assuming that they reside on a
9241 remote Unix filesystem. No CR/LF translation is done on any files in
9242 this case. Invoking using-unix-filesystems with t activates this
9243 behavior, and invoking it with any other value deactivates it.
9244
9245 ** Change in system-type and system-configuration values.
9246
9247 The value of system-type on a Linux-based GNU system is now `lignux',
9248 not `linux'. This means that some programs which use `system-type'
9249 need to be changed. The value of `system-configuration' will also
9250 be different.
9251
9252 It is generally recommended to use `system-configuration' rather
9253 than `system-type'.
9254
9255 See the file LINUX-GNU in this directory for more about this.
9256
9257 ** The functions shell-command and dired-call-process
9258 now run file name handlers for default-directory, if it has them.
9259
9260 ** Undoing the deletion of text now restores the positions of markers
9261 that pointed into or next to the deleted text.
9262
9263 ** Timers created with run-at-time now work internally to Emacs, and
9264 no longer use a separate process. Therefore, they now work more
9265 reliably and can be used for shorter time delays.
9266
9267 The new function run-with-timer is a convenient way to set up a timer
9268 to run a specified amount of time after the present. A call looks
9269 like this:
9270
9271 (run-with-timer SECS REPEAT FUNCTION ARGS...)
9272
9273 SECS says how many seconds should elapse before the timer happens.
9274 It may be an integer or a floating point number. When the timer
9275 becomes ripe, the action is to call FUNCTION with arguments ARGS.
9276
9277 REPEAT gives the interval for repeating the timer (measured in
9278 seconds). It may be an integer or a floating point number. nil or 0
9279 means don't repeat at all--call FUNCTION just once.
9280
9281 *** with-timeout provides an easy way to do something but give
9282 up if too much time passes.
9283
9284 (with-timeout (SECONDS TIMEOUT-FORMS...) BODY...)
9285
9286 This executes BODY, but gives up after SECONDS seconds.
9287 If it gives up, it runs the TIMEOUT-FORMS and returns the value
9288 of the last one of them. Normally it returns the value of the last
9289 form in BODY.
9290
9291 *** You can now arrange to call a function whenever Emacs is idle for
9292 a certain length of time. To do this, call run-with-idle-timer. A
9293 call looks like this:
9294
9295 (run-with-idle-timer SECS REPEAT FUNCTION ARGS...)
9296
9297 SECS says how many seconds of idleness should elapse before the timer
9298 runs. It may be an integer or a floating point number. When the
9299 timer becomes ripe, the action is to call FUNCTION with arguments
9300 ARGS.
9301
9302 Emacs becomes idle whenever it finishes executing a keyboard or mouse
9303 command. It remains idle until it receives another keyboard or mouse
9304 command.
9305
9306 REPEAT, if non-nil, means this timer should be activated again each
9307 time Emacs becomes idle and remains idle for SECS seconds The timer
9308 does not repeat if Emacs *remains* idle; it runs at most once after
9309 each time Emacs becomes idle.
9310
9311 If REPEAT is nil, the timer runs just once, the first time Emacs is
9312 idle for SECS seconds.
9313
9314 *** post-command-idle-hook is now obsolete; you shouldn't use it at
9315 all, because it interferes with the idle timer mechanism. If your
9316 programs use post-command-idle-hook, convert them to use idle timers
9317 instead.
9318
9319 *** y-or-n-p-with-timeout lets you ask a question but give up if
9320 there is no answer within a certain time.
9321
9322 (y-or-n-p-with-timeout PROMPT SECONDS DEFAULT-VALUE)
9323
9324 asks the question PROMPT (just like y-or-n-p). If the user answers
9325 within SECONDS seconds, it returns the answer that the user gave.
9326 Otherwise it gives up after SECONDS seconds, and returns DEFAULT-VALUE.
9327
9328 ** Minor change to `encode-time': you can now pass more than seven
9329 arguments. If you do that, the first six arguments have the usual
9330 meaning, the last argument is interpreted as the time zone, and the
9331 arguments in between are ignored.
9332
9333 This means that it works to use the list returned by `decode-time' as
9334 the list of arguments for `encode-time'.
9335
9336 ** The default value of load-path now includes the directory
9337 /usr/local/share/emacs/VERSION/site-lisp In addition to
9338 /usr/local/share/emacs/site-lisp. You can use this new directory for
9339 site-specific Lisp packages that belong with a particular Emacs
9340 version.
9341
9342 It is not unusual for a Lisp package that works well in one Emacs
9343 version to cause trouble in another. Sometimes packages need updating
9344 for incompatible changes; sometimes they look at internal data that
9345 has changed; sometimes the package has been installed in Emacs itself
9346 and the installed version should be used. Whatever the reason for the
9347 problem, this new feature makes it easier to solve.
9348
9349 ** When your program contains a fixed file name (like .completions or
9350 .abbrev.defs), the file name usually needs to be different on operating
9351 systems with limited file name syntax.
9352
9353 Now you can avoid ad-hoc conditionals by using the function
9354 convert-standard-filename to convert the file name to a proper form
9355 for each operating system. Here is an example of use, from the file
9356 completions.el:
9357
9358 (defvar save-completions-file-name
9359 (convert-standard-filename "~/.completions")
9360 "*The filename to save completions to.")
9361
9362 This sets the variable save-completions-file-name to a value that
9363 depends on the operating system, because the definition of
9364 convert-standard-filename depends on the operating system. On
9365 Unix-like systems, it returns the specified file name unchanged. On
9366 MS-DOS, it adapts the name to fit the limitations of that system.
9367
9368 ** The interactive spec N now returns the numeric prefix argument
9369 rather than the raw prefix argument. (It still reads a number using the
9370 minibuffer if there is no prefix argument at all.)
9371
9372 ** When a process is deleted, this no longer disconnects the process
9373 marker from its buffer position.
9374
9375 ** The variable garbage-collection-messages now controls whether
9376 Emacs displays a message at the beginning and end of garbage collection.
9377 The default is nil, meaning there are no messages.
9378
9379 ** The variable debug-ignored-errors specifies certain kinds of errors
9380 that should not enter the debugger. Its value is a list of error
9381 condition symbols and/or regular expressions. If the error has any
9382 of the condition symbols listed, or if any of the regular expressions
9383 matches the error message, then that error does not enter the debugger,
9384 regardless of the value of debug-on-error.
9385
9386 This variable is initialized to match certain common but uninteresting
9387 errors that happen often during editing.
9388
9389 ** The new function error-message-string converts an error datum
9390 into its error message. The error datum is what condition-case
9391 puts into the variable, to describe the error that happened.
9392
9393 ** Anything that changes which buffer appears in a given window
9394 now runs the window-scroll-functions for that window.
9395
9396 ** The new function get-buffer-window-list returns a list of windows displaying
9397 a buffer. The function is called with the buffer (a buffer object or a buffer
9398 name) and two optional arguments specifying the minibuffer windows and frames
9399 to search. Therefore this function takes optional args like next-window etc.,
9400 and not get-buffer-window.
9401
9402 ** buffer-substring now runs the hook buffer-access-fontify-functions,
9403 calling each function with two arguments--the range of the buffer
9404 being accessed. buffer-substring-no-properties does not call them.
9405
9406 If you use this feature, you should set the variable
9407 buffer-access-fontified-property to a non-nil symbol, which is a
9408 property name. Then, if all the characters in the buffer range have a
9409 non-nil value for that property, the buffer-access-fontify-functions
9410 are not called. When called, these functions should put a non-nil
9411 property on the text that they fontify, so that they won't get called
9412 over and over for the same text.
9413
9414 ** Changes in lisp-mnt.el
9415
9416 *** The lisp-mnt package can now recognize file headers that are written
9417 in the formats used by the `what' command and the RCS `ident' command:
9418
9419 ;; @(#) HEADER: text
9420 ;; $HEADER: text $
9421
9422 in addition to the normal
9423
9424 ;; HEADER: text
9425
9426 *** The commands lm-verify and lm-synopsis are now interactive. lm-verify
9427 checks that the library file has proper sections and headers, and
9428 lm-synopsis extracts first line "synopsis'"information.
9429
9430
9431
9432 * For older news, see the file ONEWS 8657 * For older news, see the file ONEWS
9433 8658
9434 ---------------------------------------------------------------------- 8659 ----------------------------------------------------------------------
9435 Copyright information: 8660 Copyright information:
9436 8661