PageRenderTime 113ms CodeModel.GetById 3ms app.highlight 97ms RepoModel.GetById 1ms app.codeStats 0ms

/etc/NEWS.19

http://github.com/emacsmirror/emacs
Unknown | 1631 lines | 1163 code | 468 blank | 0 comment | 0 complexity | a7848f4bcac06446a7f02498a9296f8e MD5 | raw file

Large files files are truncated, but you can click here to view the full file

   1GNU Emacs NEWS -- history of user-visible changes.  1992.
   2
   3Copyright (C) 1993-1995, 2001, 2006-2012  Free Software Foundation, Inc.
   4See the end of the file for license conditions.
   5
   6
   7This file is about changes in emacs versions 19.
   8
   9
  10
  11* Emacs 19.34 is a bug-fix release with no user-visible changes.
  12
  13
  14
  15* Changes in Emacs 19.33.
  16
  17** Bibtex mode no longer turns on Auto Fill automatically.  (No major
  18mode should do that--it is the user's choice.)
  19
  20** The variable normal-auto-fill-function specifies the function to
  21use for auto-fill-function, if and when Auto Fill is turned on.
  22Major modes can set this locally to alter how Auto Fill works.
  23
  24
  25
  26* Editing Changes in Emacs 19.32
  27
  28** C-x f with no argument now signals an error.
  29To set the fill column at the current column, use C-u C-x f.
  30
  31** Expanding dynamic abbrevs with M-/ is now smarter about case
  32conversion.  If you type the abbreviation with mixed case, and it
  33matches the beginning of the expansion including case, then the
  34expansion is copied verbatim.  Using SPC M-/ to copy an additional
  35word always copies it verbatim except when the previous copied word is
  36all caps.
  37
  38** On a non-windowing terminal, which can display only one Emacs frame
  39at a time, creating a new frame with C-x 5 2 also selects that frame.
  40
  41When using a display that can show multiple frames at once, C-x 5 2
  42does make the frame visible, but does not select it.  This is the same
  43as in previous Emacs versions.
  44
  45** You can use C-x 5 2 to create multiple frames on MSDOS, just as on a
  46non-X terminal on Unix.  Of course, only one frame is visible at any
  47time, since your terminal doesn't have the ability to display multiple
  48frames.
  49
  50** On Windows, set win32-pass-alt-to-system to a non-nil value
  51if you would like tapping the Alt key to invoke the Windows menu.
  52This feature is not enabled by default; since the Alt key is also the
  53Meta key, it is too easy and painful to activate this feature by
  54accident.
  55
  56** The command apply-macro-to-region-lines repeats the last defined
  57keyboard macro once for each complete line within the current region.
  58It does this line by line, by moving point to the beginning of that
  59line and then executing the macro.
  60
  61This command is not new, but was never documented before.
  62
  63** You can now use Mouse-1 to place the region around a string constant
  64(something surrounded by doublequote characters or other delimiter
  65characters of like syntax) by double-clicking on one of the delimiting
  66characters.
  67
  68** Font Lock mode
  69
  70*** Font Lock support modes
  71
  72Font Lock can be configured to use Fast Lock mode and Lazy Lock mode (see
  73below) in a flexible way.  Rather than adding the appropriate function to the
  74hook font-lock-mode-hook, you can use the new variable font-lock-support-mode
  75to control which modes have Fast Lock mode or Lazy Lock mode turned on when
  76Font Lock mode is enabled.
  77
  78For example, to use Fast Lock mode when Font Lock mode is turned on, put:
  79
  80 (setq font-lock-support-mode 'fast-lock-mode)
  81
  82in your ~/.emacs.
  83
  84*** lazy-lock
  85
  86The lazy-lock package speeds up Font Lock mode by making fontification occur
  87only when necessary, such as when a previously unfontified part of the buffer
  88becomes visible in a window.  When you create a buffer with Font Lock mode and
  89Lazy Lock mode turned on, the buffer is not fontified.  When certain events
  90occur (such as scrolling), Lazy Lock makes sure that the visible parts of the
  91buffer are fontified.  Lazy Lock also defers on-the-fly fontification until
  92Emacs has been idle for a given amount of time.
  93
  94To use this package, put in your ~/.emacs:
  95
  96 (setq font-lock-support-mode 'lazy-lock-mode)
  97
  98To control the package behavior, see the documentation for `lazy-lock-mode'.
  99
 100** Changes in BibTeX mode.
 101
 102*** For all entries allow spaces and tabs between opening brace or
 103paren and key.
 104
 105*** Non-escaped double-quoted characters (as in `Sch"of') are now
 106supported.
 107
 108** Gnus changes.
 109
 110Gnus, the Emacs news reader, has undergone further rewriting.  Many new
 111commands and variables have been added.  There should be no
 112significant incompatibilities between this Gnus version and the
 113previously released version, except in the message composition area.
 114
 115Below is a list of the more user-visible changes.  Coding changes
 116between Gnus 5.1 and 5.2 are more extensive.
 117
 118*** A new message composition mode is used.  All old customization
 119variables for mail-mode, rnews-reply-mode and gnus-msg are now
 120obsolete.
 121
 122*** Gnus is now able to generate "sparse" threads -- threads where
 123missing articles are represented by empty nodes.
 124
 125    (setq gnus-build-sparse-threads 'some)
 126
 127*** Outgoing articles are stored on a special archive server.
 128
 129    To disable this:  (setq gnus-message-archive-group nil)
 130
 131*** Partial thread regeneration now happens when articles are
 132referred.
 133
 134*** Gnus can make use of GroupLens predictions:
 135
 136    (setq gnus-use-grouplens t)
 137
 138*** A trn-line tree buffer can be displayed.
 139
 140    (setq gnus-use-trees t)
 141
 142*** An nn-like pick-and-read minor mode is available for the summary
 143buffers.
 144
 145    (add-hook 'gnus-summary-mode-hook 'gnus-pick-mode)
 146
 147*** In binary groups you can use a special binary minor mode:
 148
 149    `M-x gnus-binary-mode'
 150
 151*** Groups can be grouped in a folding topic hierarchy.
 152
 153    (add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
 154
 155*** Gnus can re-send and bounce mail.
 156
 157    Use the `S D r' and `S D b'.
 158
 159*** Groups can now have a score, and bubbling based on entry frequency
 160is possible.
 161
 162    (add-hook 'gnus-summary-exit-hook 'gnus-summary-bubble-group)
 163
 164*** Groups can be process-marked, and commands can be performed on
 165groups of groups.
 166
 167*** Caching is possible in virtual groups.
 168
 169*** nndoc now understands all kinds of digests, mail boxes, rnews news
 170batches, ClariNet briefs collections, and just about everything else.
 171
 172*** Gnus has a new backend (nnsoup) to create/read SOUP packets.
 173
 174*** The Gnus cache is much faster.
 175
 176*** Groups can be sorted according to many criteria.
 177
 178    For instance: (setq gnus-group-sort-function 'gnus-group-sort-by-rank)
 179
 180*** New group parameters have been introduced to set list-address and
 181expiration times.
 182
 183*** All formatting specs allow specifying faces to be used.
 184
 185*** There are several more commands for setting/removing/acting on
 186process marked articles on the `M P' submap.
 187
 188*** The summary buffer can be limited to show parts of the available
 189articles based on a wide range of criteria.  These commands have been
 190bound to keys on the `/' submap.
 191
 192*** Articles can be made persistent -- as an alternative to saving
 193articles with the `*' command.
 194
 195*** All functions for hiding article elements are now toggles.
 196
 197*** Article headers can be buttonized.
 198
 199    (add-hook 'gnus-article-display-hook 'gnus-article-add-buttons-to-head)
 200
 201*** All mail backends support fetching articles by Message-ID.
 202
 203*** Duplicate mail can now be treated properly.  See the
 204`nnmail-treat-duplicates' variable.
 205
 206*** All summary mode commands are available directly from the article
 207buffer.
 208
 209*** Frames can be part of `gnus-buffer-configuration'.
 210
 211*** Mail can be re-scanned by a daemonic process.
 212
 213*** Gnus can make use of NoCeM files to filter spam.
 214
 215    (setq gnus-use-nocem t)
 216
 217*** Groups can be made permanently visible.
 218
 219    (setq gnus-permanently-visible-groups "^nnml:")
 220
 221*** Many new hooks have been introduced to make customizing easier.
 222
 223*** Gnus respects the Mail-Copies-To header.
 224
 225*** Threads can be gathered by looking at the References header.
 226
 227    (setq gnus-summary-thread-gathering-function
 228          'gnus-gather-threads-by-references)
 229
 230*** Read articles can be stored in a special backlog buffer to avoid
 231refetching.
 232
 233    (setq gnus-keep-backlog 50)
 234
 235*** A clean copy of the current article is always stored in a separate
 236buffer to allow easier treatment.
 237
 238*** Gnus can suggest where to save articles.  See `gnus-split-methods'.
 239
 240*** Gnus doesn't have to do as much prompting when saving.
 241
 242    (setq gnus-prompt-before-saving t)
 243
 244*** gnus-uu can view decoded files asynchronously while fetching
 245articles.
 246
 247    (setq gnus-uu-grabbed-file-functions 'gnus-uu-grab-view)
 248
 249*** Filling in the article buffer now works properly on cited text.
 250
 251*** Hiding cited text adds buttons to toggle hiding, and how much
 252cited text to hide is now customizable.
 253
 254    (setq gnus-cited-lines-visible 2)
 255
 256*** Boring headers can be hidden.
 257
 258    (add-hook 'gnus-article-display-hook 'gnus-article-hide-boring-headers)
 259
 260*** Default scoring values can now be set from the menu bar.
 261
 262*** Further syntax checking of outgoing articles have been added.
 263
 264The Gnus manual has been expanded.  It explains all these new features
 265in greater detail.
 266
 267
 268* Lisp Changes in Emacs 19.32
 269
 270** The function set-visited-file-name now accepts an optional
 271second argument NO-QUERY.  If it is non-nil, then the user is not
 272asked for confirmation in the case where the specified file already
 273exists.
 274
 275** The variable print-length applies to printing vectors and bitvectors,
 276as well as lists.
 277
 278** The new function keymap-parent returns the parent keymap
 279of a given keymap.
 280
 281** The new function set-keymap-parent specifies a new parent for a
 282given keymap.  The arguments are KEYMAP and PARENT.  PARENT must be a
 283keymap or nil.
 284
 285** Sometimes menu keymaps use a command name, a symbol, which is really
 286an automatically generated alias for some other command, the "real"
 287name.  In such a case, you should give that alias symbol a non-nil
 288menu-alias property.  That property tells the menu system to look for
 289equivalent keys for the real name instead of equivalent keys for the
 290alias.
 291
 292
 293
 294* Editing Changes in Emacs 19.31
 295
 296** Freedom of the press restricted in the United States.
 297
 298Emacs has been censored in accord with the Communications Decency Act.
 299This includes removing some features of the doctor program.  That law
 300was described by its supporters as a ban on pornography, but it bans
 301far more than that.  The Emacs distribution has never contained any
 302pornography, but parts of it were nonetheless prohibited.
 303
 304For information on US government censorship of the Internet, and what
 305you can do to bring back freedom of the press, see the web site
 306`http://www.vtw.org/'.
 307
 308** A note about C mode indentation customization.
 309
 310The old (Emacs 19.29) ways of specifying a C indentation style
 311do not normally work in the new implementation of C mode.
 312It has its own methods of customizing indentation, which are
 313much more powerful than the old C mode.  See the Editing Programs
 314chapter of the manual for details.
 315
 316However, you can load the library cc-compat to make the old
 317customization variables take effect.
 318
 319** Marking with the mouse.
 320
 321When you mark a region with the mouse, the region now remains
 322highlighted until the next input event, regardless of whether you are
 323using M-x transient-mark-mode.
 324
 325** Improved Windows NT/95 support.
 326
 327*** Emacs now supports scroll bars on Windows NT and Windows 95.
 328
 329*** Emacs now supports subprocesses on Windows 95.  (Subprocesses used
 330to work on NT only and not on 95.)
 331
 332*** There are difficulties with subprocesses, though, due to problems
 333in Windows, beyond the control of Emacs.  They work fine as long as
 334you run Windows applications.  The problems arise when you run a DOS
 335application in a subprocesses.  Since current shells run as DOS
 336applications, these problems are significant.
 337
 338If you run a DOS application in a subprocess, then the application is
 339likely to busy-wait, which means that your machine will be 100% busy.
 340However, if you don't mind the temporary heavy load, the subprocess
 341will work OK as long as you tell it to terminate before you start any
 342other DOS application as a subprocess.
 343
 344Emacs is unable to terminate or interrupt a DOS subprocess.
 345You have to do this by providing input directly to the subprocess.
 346
 347If you run two DOS applications at the same time in two separate
 348subprocesses, even if one of them is asynchronous, you will probably
 349have to reboot your machine--until then, it will remain 100% busy.
 350Windows simply does not cope when one Windows process tries to run two
 351separate DOS subprocesses.  Typing CTL-ALT-DEL and then choosing
 352Shutdown seems to work although it may take a few minutes.
 353
 354** M-x resize-minibuffer-mode.
 355
 356This command, not previously mentioned in NEWS, toggles a mode in
 357which the minibuffer window expands to show as many lines as the
 358minibuffer contains.
 359
 360** `title' frame parameter and resource.
 361
 362The `title' X resource now specifies just the frame title, nothing else.
 363It does not affect the name used for looking up other X resources.
 364It works by setting the new `title' frame parameter, which likewise
 365affects just the displayed title of the frame.
 366
 367The `name' parameter continues to do what it used to do:
 368it specifies the frame name for looking up X resources,
 369and also serves as the default for the displayed title
 370when the `title' parameter is unspecified or nil.
 371
 372** Emacs now uses the X toolkit by default, if you have a new
 373enough version of X installed (X11R5 or newer).
 374
 375** When you compile Emacs with the Motif widget set, Motif handles the
 376F10 key by activating the menu bar.  To avoid confusion, the usual
 377Emacs binding of F10 is replaced with a no-op when using Motif.
 378
 379If you want to be able to use F10 in Emacs, you can rebind the Motif
 380menubar to some other key which you don't use.  To do so, add
 381something like this to your X resources file.  This example rebinds
 382the Motif menu bar activation key to S-F12:
 383
 384   Emacs*defaultVirtualBindings:  osfMenuBar : Shift<Key>F12
 385
 386** In overwrite mode, DEL now inserts spaces in most cases
 387to replace the characters it "deletes".
 388
 389** The Rmail summary now shows the number of lines in each message.
 390
 391** Rmail has a new command M-x unforward-rmail-message, which extracts
 392a forwarded message from the message that forwarded it.  To use it,
 393select a message which contains a forwarded message and then type the command.
 394It inserts the forwarded message as a separate Rmail message
 395immediately after the selected one.
 396
 397This command also undoes the textual modifications that are standardly
 398made, as part of forwarding, by Rmail and other mail reader programs.
 399
 400** Turning off saving of .saves-... files in your home directory.
 401
 402Each Emacs session writes a file named .saves-... in your home
 403directory to record which files M-x recover-session should recover.
 404If you exit Emacs normally with C-x C-c, it deletes that file.  If
 405Emacs or the operating system crashes, the file remains for M-x
 406recover-session.
 407
 408You can turn off the writing of these files by setting
 409auto-save-list-file-name to nil.  If you do this, M-x recover-session
 410will not work.
 411
 412Some previous Emacs versions failed to delete these files even on
 413normal exit.  This is fixed now.  If you are thinking of turning off
 414this feature because of past experiences with versions that had this
 415bug, it would make sense to check whether you still want to do so
 416now that the bug is fixed.
 417
 418** Changes to Version Control (VC)
 419
 420There is a new variable, vc-follow-symlinks.  It indicates what to do
 421when you visit a link to a file that is under version control.
 422Editing the file through the link bypasses the version control system,
 423which is dangerous and probably not what you want.
 424
 425If this variable is t, VC follows the link and visits the real file,
 426telling you about it in the echo area.  If it is `ask' (the default),
 427VC asks for confirmation whether it should follow the link.  If nil,
 428the link is visited and a warning displayed.
 429
 430** iso-acc.el now lets you specify a choice of language.
 431Languages include "latin-1" (the default) and "latin-2" (which
 432is designed for entering ISO Latin-2 characters).
 433
 434There are also choices for specific human languages such as French and
 435Portuguese.  These are subsets of Latin-1, which differ in that they
 436enable only the accent characters needed for particular language.
 437The other accent characters, not needed for the chosen language,
 438remain normal.
 439
 440** Posting articles and sending mail now has M-TAB completion on various
 441header fields (Newsgroups, To, CC, ...).
 442
 443Completion in the Newsgroups header depends on the list of groups
 444known to your news reader.  Completion in the Followup-To header
 445offers those groups which are in the Newsgroups header, since
 446Followup-To usually just holds one of those.
 447
 448Completion in fields that hold mail addresses works based on the list
 449of local users plus your aliases.  Additionally, if your site provides
 450a mail directory or a specific host to use for any unrecognized user
 451name, you can arrange to query that host for completion also.  (See the
 452documentation of variables `mail-directory-process' and
 453`mail-directory-stream'.)
 454
 455** A greatly extended sgml-mode offers new features such as (to be configured)
 456skeletons with completing read for tags and attributes, typing named
 457characters including optionally all 8bit characters, making tags invisible
 458with optional alternate display text, skipping and deleting tag(pair)s.
 459
 460Note: since Emacs' syntax feature cannot limit the special meaning of ', " and
 461- to inside <>, for some texts the result, especially of font locking, may be
 462wrong (see `sgml-specials' if you get wrong results).
 463
 464The derived html-mode configures this with tags and attributes more or
 465less HTML3ish.  It also offers optional quick keys like C-c 1 for
 466headline or C-c u for unordered list (see `html-quick-keys').  Edit /
 467Text Properties / Face or M-g combinations create tags as applicable.
 468Outline minor mode is supported and level 1 font-locking tries to
 469fontify tag contents (which only works when they fit on one line, due
 470to a limitation in font-lock).
 471
 472External viewing via browse-url can occur automatically upon saving.
 473
 474** M-x imenu-add-to-menubar now adds to the menu bar for the current
 475buffer only.  If you want to put an Imenu item in the menu bar for all
 476buffers that use a particular major mode, use the mode hook, as in
 477this example:
 478
 479    (add-hook 'emacs-lisp-mode-hook
 480	      '(lambda () (imenu-add-to-menubar "Index")))
 481
 482** Changes in BibTeX mode.
 483
 484*** Field names may now contain digits, hyphens, and underscores.
 485
 486*** Font Lock mode is now supported.
 487
 488*** bibtex-make-optional-field is no longer interactive.
 489
 490*** If bibtex-maintain-sorted-entries is non-nil, inserting new
 491entries is now done with a faster algorithm.  However, inserting
 492will fail in this case if the buffer contains invalid entries or
 493isn't in sorted order, so you should finish each entry with C-c C-c
 494(bibtex-close-entry) after you have inserted or modified it.
 495The default value of bibtex-maintain-sorted-entries is nil.
 496
 497*** Function `show-all' is no longer bound to a key, since C-u C-c C-q
 498does the same job.
 499
 500*** Entries with quotes inside quote-delimited fields (as `author =
 501"Stefan Sch{\"o}f"') are now supported.
 502
 503*** Case in field names doesn't matter anymore when searching for help
 504text.
 505
 506** Font Lock mode
 507
 508*** Global Font Lock mode
 509
 510Font Lock mode can be turned on globally, in buffers that support it, by the
 511new command global-font-lock-mode.  You can use the new variable
 512font-lock-global-modes to control which modes have Font Lock mode automagically
 513turned on.  By default, this variable is set so that Font Lock mode is turned
 514on globally where the buffer mode supports it.
 515
 516For example, to automagically turn on Font Lock mode where supported, put:
 517
 518 (global-font-lock-mode t)
 519
 520in your ~/.emacs.
 521
 522*** Local Refontification
 523
 524In Font Lock mode, editing a line automatically refontifies that line only.
 525However, if your change alters the syntactic context for following lines,
 526those lines remain incorrectly fontified.  To refontify them, use the new
 527command M-g M-g (font-lock-fontify-block).
 528
 529In certain major modes, M-g M-g refontifies the entire current function.
 530(The variable font-lock-mark-block-function controls how to find the
 531current function.)  In other major modes, M-g M-g refontifies 16 lines
 532above and below point.
 533
 534With a prefix argument N, M-g M-g refontifies N lines above and below point.
 535
 536** Follow mode
 537
 538Follow mode is a new minor mode combining windows showing the same
 539buffer into one tall "virtual window".  The windows are typically two
 540side-by-side windows.  Follow mode makes them scroll together as if
 541they were a unit.  To use it, go to a frame with just one window,
 542split it into two side-by-side windows using C-x 3, and then type M-x
 543follow-mode.
 544
 545M-x follow-mode turns off Follow mode if it is already enabled.
 546
 547To display two side-by-side windows and activate Follow mode, use the
 548command M-x follow-delete-other-windows-and-split.
 549
 550** hide-show changes.
 551
 552The hooks hs-hide-hooks and hs-show-hooks have been renamed
 553to hs-hide-hook and hs-show-hook, to follow the convention for
 554normal hooks.
 555
 556** Simula mode now has a menu containing the most important commands.
 557The new command simula-indent-exp is bound to C-M-q.
 558
 559** etags can now handle programs written in Erlang.  Files are
 560recognized by the extensions .erl and .hrl.  The tagged lines are
 561those that begin a function, record, or macro.
 562
 563** MSDOS Changes
 564
 565*** It is now possible to compile Emacs with the version 2 of DJGPP.
 566Compilation with DJGPP version 1 also still works.
 567
 568*** The documentation of DOS-specific aspects of Emacs was rewritten
 569and expanded; see the ``MS-DOS'' node in the on-line docs.
 570
 571*** Emacs now uses ~ for backup file names, not .bak.
 572
 573*** You can simulate mouse-3 on two-button mice by simultaneously
 574pressing both mouse buttons.
 575
 576*** A number of packages and commands which previously failed or had
 577restricted functionality on MS-DOS, now work.  The most important ones
 578are:
 579
 580**** Printing (both with `M-x lpr-buffer' and with `ps-print' package)
 581now works.
 582
 583**** `Ediff' works (in a single-frame mode).
 584
 585**** `M-x display-time' can be used on MS-DOS (due to the new
 586implementation of Emacs timers, see below).
 587
 588**** `Dired' supports Unix-style shell wildcards.
 589
 590**** The `c-macro-expand' command now works as on other platforms.
 591
 592**** `M-x recover-session' works.
 593
 594**** `M-x list-colors-display' displays all the available colors.
 595
 596**** The `TPU-EDT' package works.
 597
 598
 599* Lisp changes in Emacs 19.31.
 600
 601** The function using-unix-filesystems on Windows NT and Windows 95
 602tells Emacs to read and write files assuming that they reside on a
 603remote Unix filesystem.  No CR/LF translation is done on any files in
 604this case.  Invoking using-unix-filesystems with t activates this
 605behavior, and invoking it with any other value deactivates it.
 606
 607** Change in system-type and system-configuration values.
 608
 609The value of system-type on a Linux-based GNU system is now `lignux',
 610not `linux'.  This means that some programs which use `system-type'
 611need to be changed.  The value of `system-configuration' will also
 612be different.
 613
 614It is generally recommended to use `system-configuration' rather
 615than `system-type'.
 616
 617See the file LINUX-GNU in this directory for more about this.
 618
 619** The functions shell-command and dired-call-process
 620now run file name handlers for default-directory, if it has them.
 621
 622** Undoing the deletion of text now restores the positions of markers
 623that pointed into or next to the deleted text.
 624
 625** Timers created with run-at-time now work internally to Emacs, and
 626no longer use a separate process.  Therefore, they now work more
 627reliably and can be used for shorter time delays.
 628
 629The new function run-with-timer is a convenient way to set up a timer
 630to run a specified amount of time after the present.  A call looks
 631like this:
 632
 633  (run-with-timer SECS REPEAT FUNCTION ARGS...)
 634
 635SECS says how many seconds should elapse before the timer happens.
 636It may be an integer or a floating point number.  When the timer
 637becomes ripe, the action is to call FUNCTION with arguments ARGS.
 638
 639REPEAT gives the interval for repeating the timer (measured in
 640seconds).  It may be an integer or a floating point number.  nil or 0
 641means don't repeat at all--call FUNCTION just once.
 642
 643*** with-timeout provides an easy way to do something but give
 644up if too much time passes.
 645
 646  (with-timeout (SECONDS TIMEOUT-FORMS...) BODY...)
 647
 648This executes BODY, but gives up after SECONDS seconds.
 649If it gives up, it runs the TIMEOUT-FORMS and returns the value
 650of the last one of them.  Normally it returns the value of the last
 651form in BODY.
 652
 653*** You can now arrange to call a function whenever Emacs is idle for
 654a certain length of time.  To do this, call run-with-idle-timer.  A
 655call looks like this:
 656
 657  (run-with-idle-timer SECS REPEAT FUNCTION ARGS...)
 658
 659SECS says how many seconds of idleness should elapse before the timer
 660runs.  It may be an integer or a floating point number.  When the
 661timer becomes ripe, the action is to call FUNCTION with arguments
 662ARGS.
 663
 664Emacs becomes idle whenever it finishes executing a keyboard or mouse
 665command.  It remains idle until it receives another keyboard or mouse
 666command.
 667
 668REPEAT, if non-nil, means this timer should be activated again each
 669time Emacs becomes idle and remains idle for SECS seconds The timer
 670does not repeat if Emacs *remains* idle; it runs at most once after
 671each time Emacs becomes idle.
 672
 673If REPEAT is nil, the timer runs just once, the first time Emacs is
 674idle for SECS seconds.
 675
 676*** post-command-idle-hook is now obsolete; you shouldn't use it at
 677all, because it interferes with the idle timer mechanism.  If your
 678programs use post-command-idle-hook, convert them to use idle timers
 679instead.
 680
 681*** y-or-n-p-with-timeout lets you ask a question but give up if
 682there is no answer within a certain time.
 683
 684  (y-or-n-p-with-timeout PROMPT SECONDS DEFAULT-VALUE)
 685
 686asks the question PROMPT (just like y-or-n-p).  If the user answers
 687within SECONDS seconds, it returns the answer that the user gave.
 688Otherwise it gives up after SECONDS seconds, and returns DEFAULT-VALUE.
 689
 690** Minor change to `encode-time': you can now pass more than seven
 691arguments.  If you do that, the first six arguments have the usual
 692meaning, the last argument is interpreted as the time zone, and the
 693arguments in between are ignored.
 694
 695This means that it works to use the list returned by `decode-time' as
 696the list of arguments for `encode-time'.
 697
 698** The default value of load-path now includes the directory
 699/usr/local/share/emacs/VERSION/site-lisp In addition to
 700/usr/local/share/emacs/site-lisp.  You can use this new directory for
 701site-specific Lisp packages that belong with a particular Emacs
 702version.
 703
 704It is not unusual for a Lisp package that works well in one Emacs
 705version to cause trouble in another.  Sometimes packages need updating
 706for incompatible changes; sometimes they look at internal data that
 707has changed; sometimes the package has been installed in Emacs itself
 708and the installed version should be used.  Whatever the reason for the
 709problem, this new feature makes it easier to solve.
 710
 711** When your program contains a fixed file name (like .completions or
 712.abbrev.defs), the file name usually needs to be different on operating
 713systems with limited file name syntax.
 714
 715Now you can avoid ad-hoc conditionals by using the function
 716convert-standard-filename to convert the file name to a proper form
 717for each operating system.  Here is an example of use, from the file
 718completions.el:
 719
 720(defvar save-completions-file-name
 721        (convert-standard-filename "~/.completions")
 722  "*The filename to save completions to.")
 723
 724This sets the variable save-completions-file-name to a value that
 725depends on the operating system, because the definition of
 726convert-standard-filename depends on the operating system.  On
 727Unix-like systems, it returns the specified file name unchanged.  On
 728MS-DOS, it adapts the name to fit the limitations of that system.
 729
 730** The interactive spec N now returns the numeric prefix argument
 731rather than the raw prefix argument.  (It still reads a number using the
 732minibuffer if there is no prefix argument at all.)
 733
 734** When a process is deleted, this no longer disconnects the process
 735marker from its buffer position.
 736
 737** The variable garbage-collection-messages now controls whether
 738Emacs displays a message at the beginning and end of garbage collection.
 739The default is nil, meaning there are no messages.
 740
 741** The variable debug-ignored-errors specifies certain kinds of errors
 742that should not enter the debugger.  Its value is a list of error
 743condition symbols and/or regular expressions.  If the error has any
 744of the condition symbols listed, or if any of the regular expressions
 745matches the error message, then that error does not enter the debugger,
 746regardless of the value of debug-on-error.
 747
 748This variable is initialized to match certain common but uninteresting
 749errors that happen often during editing.
 750
 751** The new function error-message-string converts an error datum
 752into its error message.  The error datum is what condition-case
 753puts into the variable, to describe the error that happened.
 754
 755** Anything that changes which buffer appears in a given window
 756now runs the window-scroll-functions for that window.
 757
 758** The new function get-buffer-window-list returns a list of windows displaying
 759a buffer.  The function is called with the buffer (a buffer object or a buffer
 760name) and two optional arguments specifying the minibuffer windows and frames
 761to search.  Therefore this function takes optional args like next-window etc.,
 762and not get-buffer-window.
 763
 764** buffer-substring now runs the hook buffer-access-fontify-functions,
 765calling each function with two arguments--the range of the buffer
 766being accessed.  buffer-substring-no-properties does not call them.
 767
 768If you use this feature, you should set the variable
 769buffer-access-fontified-property to a non-nil symbol, which is a
 770property name.  Then, if all the characters in the buffer range have a
 771non-nil value for that property, the buffer-access-fontify-functions
 772are not called.  When called, these functions should put a non-nil
 773property on the text that they fontify, so that they won't get called
 774over and over for the same text.
 775
 776** Changes in lisp-mnt.el
 777
 778*** The lisp-mnt package can now recognize file headers that are written
 779in the formats used by the `what' command and the RCS `ident' command:
 780
 781;; @(#) HEADER: text
 782;; $HEADER: text $
 783
 784in addition to the normal
 785
 786;; HEADER: text
 787
 788*** The commands lm-verify and lm-synopsis are now interactive.  lm-verify
 789checks that the library file has proper sections and headers, and
 790lm-synopsis extracts first line "synopsis'"information.
 791
 792
 793
 794* Editing Changes in Emacs 19.30.
 795
 796** Be sure to recompile your byte-compiled Emacs Lisp files
 797if you last compiled them with Emacs 19.28 or earlier.
 798You can use M-x byte-force-recompile to recompile all the .elc files
 799in a specified directory.
 800
 801** Emacs now provides multiple-frame support on Windows NT
 802and Windows 95.
 803
 804** M-x column-number-mode toggles a minor mode which displays
 805the current column number in the mode line.
 806
 807** Line Number mode is now enabled by default.
 808
 809** M-x what-line now displays the line number in the accessible
 810portion of the buffer as well as the line number in the full buffer,
 811when narrowing is in effect.
 812
 813** If you type a M-x command that has an equivalent key binding,
 814the equivalent is shown in the minibuffer before the command executes.
 815This feature is enabled by default for the sake of beginning users.
 816You can turn the feature off by setting suggest-key-bindings to nil.
 817
 818** The menu bar is now visible on text-only terminals.  To choose a
 819command from the menu bar when you have no mouse, type M-`
 820(Meta-Backquote) or F10.  To turn off menu bar display,
 821do (menu-bar-mode -1).
 822
 823** Whenever you invoke a minibuffer, it appears in the minibuffer
 824window that the current frame uses.
 825
 826Emacs can only use one minibuffer window at a time.  If you activate
 827the minibuffer while a minibuffer window is active in some other
 828frame, the outer minibuffer window disappears while the inner one is
 829active.
 830
 831** Echo area messages always appear in the minibuffer window that the
 832current frame uses.  If a minibuffer is active in some other frame,
 833the echo area message does not hide it even temporarily.
 834
 835** The minibuffer now has a menu-bar menu.  You can use it to exit or
 836abort the minibuffer, or to ask for completion.
 837
 838** Dead-key and composite character processing is done in the standard
 839X11R6 manner (through the default "input method" using the
 840/usr/lib/X11/locale/*/Compose databases of key combinations).  I.e. if
 841it works in xterm, it should also work in emacs now.
 842
 843** Mouse changes
 844
 845*** You can now use the mouse when running Emacs in an xterm.
 846Use M-x xterm-mouse-mode to let emacs take control over the mouse.
 847
 848*** C-mouse-1 now once again provides a menu of buffers to select.
 849S-mouse-1 is now the way to select a default font for the frame.
 850
 851*** There is a new mouse-scroll-min-lines variable to control the
 852minimum number of lines scrolled by dragging the mouse outside a
 853window's edge.
 854
 855*** Dragging mouse-1 on a vertical line that separates windows
 856now moves the line, thus changing the widths of the two windows.
 857(This feature is available only if you don't have vertical scroll bars.
 858If you do use them, a scroll bar separates two side-by-side windows.)
 859
 860*** Double-click mouse-1 on a character with "symbol" syntax (such as
 861underscore, in C mode) selects the entire symbol surrounding that
 862character.  (Double-click mouse-1 on a letter selects a whole word.)
 863
 864** When incremental search wraps around to the beginning (or end) of
 865the buffer, if you keep on searching until you go past the original
 866starting point of the search, the echo area changes from "Wrapped" to
 867"Overwrapped".  That tells you that you are revisiting matches that
 868you have already seen.
 869
 870** Filling changes.
 871
 872*** If the variable colon-double-space is non-nil, the explicit fill
 873commands put two spaces after a colon.
 874
 875*** Auto-Fill mode now supports Adaptive Fill mode just as the
 876explicit fill commands do.  The variable adaptive-fill-regexp
 877specifies a regular expression to match text at the beginning of
 878a line that should be the fill prefix.
 879
 880*** Adaptive Fill mode can take a fill prefix from the first line of a
 881paragraph, *provided* that line is not a paragraph-starter line.
 882
 883Paragraph-starter lines are indented lines that start a new
 884paragraph because they are indented.  This indentation shouldn't
 885be copied to additional lines.
 886
 887Whether indented lines are paragraph lines depends on the value of the
 888variable paragraph-start.  Some major modes set this; you can set it
 889by hand or in mode hooks as well.  For editing text in which paragraph
 890first lines are not indented, and which contains paragraphs in which
 891all lines are indented, you should use Indented Text mode or arrange
 892for paragraph-start not to match these lines.
 893
 894*** You can specify more complex ways of choosing a fill prefix
 895automatically by setting `adaptive-fill-function'.  This function
 896is called with point after the left margin of a line, and it should
 897return the appropriate fill prefix based on that line.
 898If it returns nil, that means it sees no fill prefix in that line.
 899
 900** Gnus changes.
 901
 902Gnus, the Emacs news reader, has been rewritten and expanded.  Most
 903things that worked with the old version should still work with the new
 904version.  Code that relies heavily on Gnus internals is likely to
 905fail, though.
 906
 907*** Incompatibilities with the old GNUS.
 908
 909**** All interactive commands have kept their names, but many internal
 910functions have changed names.
 911
 912**** The summary mode gnus-uu commands have been moved from the `C-c
 913C-v' keymap to the `X' keymap.
 914
 915**** There can now be several summary buffers active at once.
 916Variables that are relevant to each summary buffer are buffer-local to
 917that buffer.
 918
 919**** Old hilit code doesn't work at all.  Gnus performs its own
 920highlighting based not only on what's visible in the buffer, but on
 921other data structures.
 922
 923**** Old packages like `expire-kill' will no longer work.
 924
 925**** `C-c C-l' in the group buffer no longer switches to a different
 926buffer, but instead lists killed groups in the group buffer.
 927
 928*** New features.
 929
 930**** The look of all buffers can be changed by setting format-like
 931variables.
 932
 933**** Local spool and several NNTP servers can be used at once.
 934
 935**** Groups can be combined into virtual groups.
 936
 937**** Different mail formats can be read much the same way as one would
 938read newsgroups.  All the mail backends implement mail expiry schemes.
 939
 940**** Gnus can use various strategies for gathering threads that have
 941lost their roots (thereby gathering loose sub-threads into one thread)
 942or it can go back and retrieve enough headers to build a complete
 943thread.
 944
 945**** Killed groups can be read.
 946
 947**** Gnus can do partial group updates - you do not have to retrieve
 948the entire active file just to check for new articles in a few groups.
 949
 950**** Gnus implements a sliding scale of subscribedness to groups.
 951
 952**** You can score articles according to any number of criteria.  You
 953can get Gnus to score articles for you using adaptive scoring.
 954
 955**** Gnus maintains a dribble buffer that is auto-saved the normal
 956Emacs manner, so it should be difficult to lose much data on what you
 957have read if your machine should go down.
 958
 959**** Gnus now has its own startup file (`.gnus.el') to avoid
 960cluttering up the `.emacs' file.
 961
 962**** You can set the process mark on both groups and articles and
 963perform operations on all the marked items.
 964
 965**** You can grep through a subset of groups and create a group from
 966the results.
 967
 968**** You can list subsets of groups using matches on group names or
 969group descriptions.
 970
 971**** You can browse foreign servers and subscribe to groups from those
 972servers.
 973
 974**** Gnus can pre-fetch articles asynchronously on a second connection
 975to the servers.
 976
 977**** You can cache articles locally.
 978
 979**** Gnus can fetch FAQs to and descriptions of groups.
 980
 981**** Digests (and other files) can be used as the basis for groups.
 982
 983**** Articles can be highlighted and customized.
 984
 985** Changes to Version Control (VC)
 986
 987*** General changes (all backends).
 988
 989VC directory listings (C-x v d) are now kept up to date when you do a
 990vc-next-action (C-x v v) on the marked files.  The `g' command updates
 991the buffer properly.  `=' in a VC dired buffer produces a version
 992control diff, not an ordinary diff.
 993
 994*** CVS changes.
 995
 996Under CVS, you no longer need to type C-x C-q before you can edit a
 997file.  VC doesn't write-protect unmodified buffers anymore; you can
 998freely change them at any time.  The mode line keeps track of the
 999file status.
1000
1001If you do want unmodified files to be write-protected, set your
1002CVSREAD environment variable.  VC sees this and behaves accordingly;
1003that will give you the behavior of Emacs 19.29, similar to that under
1004RCS and SCCS.  In this mode, if the variable vc-mistrust-permissions
1005is nil, VC learns the modification state from the file permissions.
1006When setting CVSREAD for the first time, you should check out the
1007whole module anew, so that the file permissions are set correctly.
1008
1009VC also works with remote repositories now.  When you visit a file, it
1010doesn't run "cvs status" anymore, so there shouldn't be any long delays.
1011
1012Directory listings under VC/CVS have been enhanced.  Type C-x v d, and
1013you get a list of all files in or below the current directory that are
1014not up-to-date.  The actual status (modified, merge, conflict, ...) is
1015displayed for each file.  If you give a prefix argument (C-u C-x v d),
1016up-to-date files are also listed.  You can mark any number of files,
1017and execute the next logical version control command on them (C-x v v).
1018
1019*** Starting a new branch.
1020
1021If you try to lock a version that is not the latest on its branch,
1022VC asks for confirmation in the minibuffer.  If you say no, it offers
1023to lock the latest version instead.
1024
1025*** RCS non-strict locking.
1026
1027VC can now handle RCS non-strict locking, too.  In this mode, working
1028files are always writable and you needn't lock the file before making
1029changes, similar to the default mode under CVS.  To enable non-strict
1030locking for a file, use the "rcs -U" command.
1031
1032*** Sharing RCS master files.
1033
1034If you share RCS subdirs with other users (through symbolic links),
1035and you always want to work on the latest version, set
1036vc-consult-headers to nil and vc-mistrust-permissions to `t'.
1037Then you see the state of the *latest* version on the mode line, not
1038that of your working file.  When you do a check out, VC overwrites
1039your working file with the latest version from the master.
1040
1041*** RCS customization.
1042
1043There is a new variable vc-consult-headers.  If it is t (the default),
1044VC searches for RCS headers in working files (like `$Id$') and
1045determines the state of the file from them, not from the master file.
1046This is fast and more reliable when you use branches.  (The variable
1047was already present in Emacs 19.29, but didn't get mentioned in the
1048NEWS.)
1049
1050** Calendar changes.
1051
1052*** New calendars supported: Chinese, Coptic, Ethiopic
1053
1054Here are the commands for converting to and from these calendars:
1055
1056   gC: calendar-goto-chinese-date
1057   gk: calendar-goto-coptic-date
1058   ge: calendar-goto-ethiopic-date
1059
1060   pC: calendar-print-chinese-date
1061   pk: calendar-print-coptic-date
1062   pe: calendar-print-ethiopic-date
1063
1064*** Printed calendars
1065
1066Calendar mode now has commands to produce fancy printed calendars via
1067LaTeX.  You can ask for a calendar for one or more days, weeks, months
1068or years.  The commands all start with `t'; see the manual for a list
1069of them.
1070
1071*** New sexp diary entry type
1072
1073Reminders that apply in the days leading up to an event.
1074
1075** The CC-mode package now provides the default C and C++ modes.
1076See the manual for documentation of its features.
1077
1078** The uniquify package chooses buffer names differently when you
1079visit multiple files with the same name (in different directories).
1080
1081** RMAIL now always uses the movemail program when it renames an
1082inbox file, so that it can interlock properly with the mailer
1083no matter where it is delivering mail.
1084
1085** tex-start-of-header and tex-end-of-header are now regular expressions,
1086not strings.
1087
1088** To enable automatic uncompression of compressed files,
1089type M-x auto-compression-mode.  (This command used to be called
1090toggle-auto-compression, but was not documented before.)  In Lisp,
1091you can do
1092
1093   (auto-compression-mode 1)
1094
1095to turn the mode on.
1096
1097** The new pc-select package emulates the key bindings for cutting and
1098pasting, and selection of regions, found in Windows, Motif, and the
1099Macintosh.
1100
1101** Help buffers now use a special major mode, Help mode.  This mode
1102normally turns on View mode; it also provides a hook, help-mode-hook,
1103which you can use for other customization.
1104
1105** Apropos now uses faces for enhanced legibility.  It now describes
1106symbol properties as well as their function definitions and variable
1107values.  You can use Mouse-2 or RET to get more information about a
1108function definition, variable, or property.
1109
1110** Font Lock mode
1111
1112*** Supports Scheme, TCL and Help modes
1113
1114For example, to automatically turn on Font Lock mode in the *Help*
1115buffer, put:
1116
1117 (add-hook 'help-mode-hook 'turn-on-font-lock)
1118
1119in your ~/.emacs.
1120
1121*** Enhanced fontification
1122
1123The structure of font-lock-keywords is extended to allow "anchored" keywords.
1124Typically, a keyword item of font-lock-keywords comprises a regexp to search
1125for and information to specify how the regexp should be highlighted.  However,
1126the highlighting information is extended so that it can be another keyword
1127item.  This keyword item, its regexp and highlighting information, is processed
1128before resuming with the keyword item of which it is part.
1129
1130For example, a typical keyword item might be:
1131
1132 ("\\<anchor\\>" (0 anchor-face))
1133
1134which fontifies each occurrence of the discrete word "anchor" in the value of
1135the variable anchor-face.  However, the highlighting information can be used to
1136fontify text that is anchored to the word "anchor".  For example:
1137
1138 ("\\<anchor\\>" (0 anchor-face) ("\\=[ ,]*\\(item\\)" nil nil (1 item-face)))
1139
1140which fontifies each occurrence of "anchor" as above, but for each occurrence
1141of "anchor", each occurrence of "item", in any following comma separated list,
1142is fontified in the value of the variable item-face.  Thus the "item" text is
1143anchored to the "anchor" text.  See the variable documentation for further
1144information.
1145
1146This feature is used to extend the level and quality of fontification in a
1147number of modes.  For example, C/C++ modes now have level 3 decoration that
1148includes the fontification of variable and function names in declaration lists.
1149In this instance, the "anchor" described in the above example is a type or
1150class name, and an "item" is a variable or function name.
1151
1152*** Fontification levels
1153
1154The variables font-lock-maximum-decoration and font-lock-maximum-size are
1155extended to specify levels and sizes for specific modes.  The variable
1156font-lock-maximum-decoration specifies the preferred level of fontification for
1157modes that provide multiple levels (typically from "subdued" to "gaudy").  The
1158variable font-lock-maximum-size specifies the buffer size for which buffer
1159fontification is suppressed when Font Lock mode is turned on (typically because
1160it would take too long).
1161
1162These variables can now specify values for individual modes, by supplying
1163lists of mode names and values.  For example, to use the above mentioned level
11643 decoration for buffers in C/C++ modes, and default decoration otherwise, put:
1165
1166 (setq font-lock-maximum-decoration '((c-mode . 3) (c++-mode . 3)))
1167
1168in your ~/.emacs.  Maximum buffer size values for individual modes are
1169specified in the same way with the variable font-lock-maximum-size.
1170
1171*** Font Lock configuration
1172
1173The mechanism to provide default settings for Font Lock mode are the variables
1174font-lock-defaults and font-lock-maximum-decoration.  Typically, you should
1175only need to change the value of font-lock-maximum-decoration.  However, to
1176support Font Lock mode for buffers in modes that currently do not support Font
1177Lock mode, you should set a buffer local value of font-lock-defaults for that
1178mode, typically via its mode hook.
1179
1180These variables are used by Font Lock mode to set the values of the variables
1181font-lock-keywords, font-lock-keywords-only, font-lock-syntax-table,
1182font-lock-beginning-of-syntax-function and font-lock-keywords-case-fold-search.
1183
1184You need not set these variables directly, and should not set them yourself
1185since the underlining mechanism may change in future.
1186
1187** Archive mode is now the default mode for various sorts of
1188archive files (files whose names end with .arc, .lzh, .zip, and .zoo).
1189
1190** You can automatically update the years in copyright notice by
1191means of (add-hook 'write-file-hooks 'copyright-update).
1192Optionally it can update the GPL version as well.
1193
1194** Scripts of various languages (Shell, AWK, Perl, makefiles ...) can
1195be automatically provided with a magic number and be made executable
1196by their respective modes under control of various user variables.
1197The mode must call (executable-set-magic "perl") or
1198(executable-set-magic "make" "-f").  The latter for example has no
1199effect on [Mm]akefile.
1200
1201** Shell script mode now supports over 15 different shells.  The new
1202command C-c ! executes the region, and optionally beginning of script
1203as well, by passing them to the shell.
1204
1205Cases such as `sh' being a `bash' are now accounted for.
1206Fontification now also does variables, the magic number and all
1207builtin commands.  Shell script mode no longer mingles `tab-width' and
1208indentation style.  The variable `sh-tab-width' has been renamed to
1209`sh-indentation'.  Empty lines are now indented like previous
1210non-empty line, rather than just previous line.
1211
1212The annoying $ variable prompting has been eliminated.  Instead, shell
1213script mode uses `comint-dynamic-completion' for commands, variables
1214and filenames.
1215
1216** Two-column mode now automatically scrolls both buffers together,
1217which makes it possible to eliminate the special scrolling commands
1218that used to do so.
1219
1220The commands that operate in two-column mode are no longer bound to
1221keys outside that mode.  f2 o will now position at the same point in
1222associated buffer.
1223
1224the new command f2 RET inserts a newline in both buffers, at point and
1225at the corresponding position in the associated buffer.
1226
1227** Skeleton commands now work smoothly as abbrev definitions.  The
1228element < no longer exists, ' is a new element.
1229
1230** The autoinsert insert facility for prefilling empty files as soon
1231as they are found has been extended to accommodate skeletons or calling
1232functions.  See the function auto-insert.
1233
1234** TPU-edt Changes
1235
1236Loading tpu-edt no longer turns on tpu-edt mode.  In fact, it is no
1237longer necessary to explicitly load tpu-edt.  All you need to do to
1238turn on tpu-edt is run the tpu-edt function.  Here's how to run
1239tpu-edt instead of loading the file:
1240
1241  Running Emacs:   Type      emacs -f tpu-edt
1242                    not      emacs -l tpu-edt
1243
1244  Within Emacs:    Type      M-x tpu-edt <ret>
1245                    not      M-x load-library <ret> tpu-edt <ret>
1246
1247  In .emacs:       Use       (tpu-edt)
1248                   not       (load "tpu-edt")
1249
1250The default name of the tpu-edt X key definition file has changed from
1251~/.tpu-gnu-keys to ~/.tpu-keys.  If you don't rename the file yourself,
1252tpu-edt will offer to rename it the first time you invoke it under
1253x-windows.
1254
1255** MS-DOS Enhancements:
1256
1257*** Better mouse control by adding the following functions [in dosfns.c]
1258msdos-mouse-enable, msdos-mouse-disable, msdos-mouse-init.
1259
1260*** If another foreground/background color than the default is setup in
1261your ~/_emacs, then the screen briefly flickers with the default
1262colors before changing to the colors you have specified.  To avoid
1263this, the EMACSCOLORS environment variable exists.  It shall be
1264defined as a string with the following elements:
1265
1266    set EMACSCOLORS=fb;fb
1267
1268The first set of "fb" defines the initial foreground and background
1269colors using standard dos color numbers (0=black,.., 7=white).
1270If specified, the second set of "fb" defines the colors which are
1271restored when you leave emacs.
1272
1273*** The new SUSPEND environment variable can now be set as the shell to
1274use when suspending emacs.  This can be used to override the stupid
1275limitation on the environment of sub-shells in MS-DOS (they are just
1276large enough to hold the currently defined variables, not leaving
1277room for more); to overcome this limitation, add this to autoexec.b

Large files files are truncated, but you can click here to view the full file