(rmail-new-summary): New arg redo-form. Considerable rewrite
of how and when buffers are selected.
(rmail-summary-mode): New local vars rmail-summary-redo,
revert-buffer-function, post-command-hook, rmail-current-message.
(rmail-summary-expunge): Use rmail-update-summary.
(rmail-summary-get-new-mail): Likewise.
(rmail-summary-expunge-and-save): Likewise.
(rmail-summary-input): Don't update summary at all.
(rmail-summary-reply): Do the work inside save-window-excursion,
then switch to the mail buffer.
(rmail-summary-retry-failure): Likewise.
(rmail-summary-edit-current-message): Delete spurious autoload.
(rmail-summary-summary): Function deleted.
Use plain rmail-summary on h and C-M-h.
(rmail-summary-rmail-update): New function.
Big rewrite from weiner@pts.mot.com.
Always do the motion in the rmail buffer; let that handle summary.
(rmail-undelete-previous-message): Likewise.
(rmail-select-summary): New macro.
(rmail-show-message): Use rmail-select-summary.
(rmail-get-new-mail): Likewise.
(rmail-expunge): Likewise.
(rmail-bury): Record Rmail buffer to bury it later.
Major changes from Bob Weiner <weiner@pts.mot.com>
Handle some Emacs 18 function names to run in 18.
This is to facilitate working with Weiner.
(rmail-reply-prefix): New variable.
(rmail-reply): Use that variable to add to subject.
(rmail-retry-failure): Change binding to M-m.
(rmail-forward): Look for >From as well as for From.
Handle case where neither is found.
(rmail-last-regexp): New variable.
(rmail-mode): Make rmail-last-regexp local.
(rmail): Don't update rmail-mode data for old buffer
if it's not in rmail mode.
Error if in Rmail Edit mode.
(rmail-bury): New command, plus key binding.
(rmail-summary-by-topic): New key binding.
(rmail-insert-inbox-text): Check for pop case earlier.
(rmail-convert-to-babyl-format): Handle Content-Length field.
(rmail-maybe-display-summary): New function.
(rmail-redisplay-summary): New user option.
(rmail-undelete-previous-message, rmail-delete-forward):
(rmail-get-new-mail, rmail-show-message): Update summary buffer if any.
Call rmail-maybe-display-summary to put it back on screen.
(rmail-only-expunge): Renamed from rmail-expunge.
(rmail-expunge): New function.
(rmail-message-recipients-p, rmail-message-regexp-p): New functions.
(rmail-summary-exists, rmail-summary-displayed): New functions.
before starting the expensive rcs2log process.
Use call-process instead of shell-command to invoke rcs2log;
this avoids undesired shell escapes and is more robust about errors.
Put mark at point-min, so that the new insertion is in the region.
(vc-checkin-hook): Fix `runs-hooks' typo.
(vc-checkout-writeable-buffer-hook): New var.
(vc-next-action): Fix bug: initial checkin was botched when C-x v v
was applied to a new file while vc-initial-comment was non-nil.
(vc-register): Don't barf when registering a new, empty buffer.
(vc-directory): The `No files are currently registered'
message was wrongly worded, because sometimes the message talks
about locked files, not registered files.
(vc-file-tree-walk): Change (apply 'funcall ...) to (apply
...), since the 'funcall is redundant.
When traversing a directory tree, message
"Traversing directory XXX" so that the user can see what progress is
being made. Traversal can take a long time. Omit first argument,
since it is always the current directory. All callers changed.
(vc-file-tree-walk-internal): New function.
(vc-do-command, vc-diff, vc-version-diff, vc-backend-diff):
Remove redundant calls to `format'.
(vc-diff): Remove unused variable `old'.
(vc-version-diff): When recursively generating a difference
listing, don't append the latest output unless diff was actually run;
otherwise, you'll get the output from the previous file by mistake.
For Emacs 19, use listify-key-sequence.
If not Emacs 19, assume they are a meta sequence.
(isearch-other-meta-char): Pass the whole key sequence.
(isearch-other-control-char): Make this alias for ...-meta-char.
the scroll bar parameters.
Use the term `scroll bar', instead of `scrollbar'.
* term/x-win.el, frame.el, mouse.el: Terminology changed.
* scrollbar.el: Renamed to scroll-bar.el.
`barf-if-buffer-read-only' instead of just `ding', to get the
appropriate error condition and message.
* simple.el (insert-buffer): Make sure this returns nil.
* simple.el (quoted-insert): Use insert-char, instead of writing
out the loop.
close to the top or bottom of a window, split at the closest
reasonable line. Give a helpful error message if the window is
too small to be split anywhere.
(mouse-split-window-horizontally): Similar changes.
INFOPATH, not INFODIR.
(Info-find-node): Don't try to set the info buffer's directory
according to Info-directory; that variable doesn't exist any more.
Instead, let Info-insert-dir set the current directory.
(Info-insert-dir): Properly check for upper- and lower-case forms
of "dir", with and without ".info" extension. Set the buffer's
default-directory to the directory containing the first dir file
we find, and cache it in Info-dir-contents-directory.
(Info-dir-contents-directory): New variable, to cache the
directory we decided to use as the merged directory's
default-directory.
functions to scrolbar.el.
* scrollbar.el (scroll-bar-mode, scroll-bar-mode): Here they are.
Make scroll-bar-mode set the {vertical,horizontal}-scrollbars
parameters in default-frame-alist, and modify all extant screens
using the correct parameter names.
argument, but leave interactive usage the same.
* vc.el (vc-resynch-window): Call vc-revert-buffer1 with the newly
appropriate arguments. This seems to be the only file which was
adjusted for the new meaning of the revert-buffer arguments.
breakpoint.
(gud-apply-from-source): New argument ARGS, to pass to FUNC. Now
it's really like `apply'.
(gud-set-break): Add another argument to this method.
Document it in the section describing how the methods are supposed
to be used.
(gud-gdb-set-break): New argument TEMP; if non-nil, set a
temporary breakpoint.
(gud-sdb-set-break, gud-dbx-set-break): New argument TEMP. Ignore
it, since I don't know how to set a temporary breakpoint in these
debuggers.
* gud.el (gud-break): With a prefix argument, set a temporary
breakpoint.
(gud-apply-from-source): New argument ARGS, to pass to FUNC. Now
it's really like `apply'.
(gud-set-break): Add another argument to this method.
Document it in the section describing how the methods are supposed
to be used.
(gud-gdb-set-break): New argument TEMP; if non-nil, set a
temporary breakpoint.
(gud-sdb-set-break, gud-dbx-set-break): New argument TEMP. Ignore
it, since I don't know how to set a temporary breakpoint in these
debuggers.
New arg no-recursive-edit, always non-nil for interactive call.
Rename first arg, and set it right in interactive call.
(isearch-forward-regexp): Likewise.
(isearch-forward, isearch-backward): Likewise no-recursive-edit.
(initial-frame-alist): Doc fix.
(minibuffer-frame-alist): New default value, with a reasonable height.
(filtered-frame-list, minibuffer-frame-list): New functions.
(frame-initialize): Use minibuffer-frame-list, instead of writing
it out.
(frame-notice-user-settings): Thoroughly rearranged.
Notice changes to default-frame-alist as well as initial-frame-alist.
Properly handle requests to make the initial frame into a
minibufferless or minibuffer-only frame.
Create a minibuffer-only frame if the initial frame should lack a
minibuffer and there are no other minibuffer frames created by the
user's initialization file.
Fix any frames using the initial frame as a surrogate minibuffer
frame.
Restore the current buffer after creating and deleting all these
frames.
* frame.el (set-default-font, set-frame-background,
set-frame-foreground, set-cursor-color, set-pointer-color,
set-auto-raise, set-auto-lower, set-vertical-bar,
set-horizontal-bar): Give these docstrings.
(set-auto-raise, set-auto-lower, set-vertical-bar,
set-horizontal-bar): Make these toggle or look at the prefix
argument, like minor modes.
* frame.el (set-vertical-bar): Use the proper parameter symbol.
(set-horizontal-bar): Signal an error indicating that horizontal
scrollbars are not implemented.
front of first argument to `insert-abbrev-table-description'.
* fortran.el (fortran-is-in-string-p): Fixed incorrect behaviour
when in first statement of a buffer.
compilation-directory-stack to nil; no need to loop through it.
(next-error): For a non-numeric prefix arg, pass nil for
compile-reinitialize-errors's FIND-AT-LEAST arg.
(next-error): When getting marker for error source location, be
sure to examine buffer local value of compilation-old-error-list
before switching to source file buffer.
* bytecomp.el (byte-decompile-bytecode): Add an autoload for this.
compiled-function-p has been renamed to byte-code-function-p.
* subr.el: Define compiled-function-p as an alias for it.
* bytecomp.el: Register compiled-function-p as obsolete.
* bytecomp.el, byte-opt.el, disass.el, help.el, map-ynp.el: Change
uses.
unread-command-event has been replaced by unread-command-events.
* simple.el (prefix-arg-internal): Use this to push back all
key sequences for processing by the main command loop, instead of
trying to simulate its behavior ourselves.
* bytecomp.el: Document unread-command-event as an obsolete
variable, although nothing but the GNU Emacs 19 sources use it.
Adjust obsolescence message for unread-command-char.
* comint.el (comint-dynamic-list-completions): Change uses of
unread-command-event to work with unread-command-events.
* ebuff-menu.el (electric-buffer-list, Electric-buffer-menu-exit):
Same.
* edebug.el (edebug-outside-excursion): Same.
* ehelp.el (electric-help-command-loop): Same.
* electric.el (Electric-command-loop): Same.
* emerge.el (emerge-show-file-name): Same.
* fortran.el (fortran-abbrev-start,
fortran-window-create-momentarily): Same.
* gnus.el (gnus-Subject-next-article): Same.
* info.el (Info-summary): Same.
* isearch-mode.el (isearch-update, isearch-unread): Same.
* map-ynp.el (map-y-or-n-p): Same.
* mlsupport.el (push-back-character): Same.
* replace.el (perform-replace): Same.
* simula.el (simula-electric-label): Same.
* subr.el (read-quoted-char, momentary-string-display): Same.
* sun-mouse.el (mouse-second-hit): Same.
* terminal.el (te-escape-extended-command-unread): Same.
* vip.el (vip-escape-to-emacs, vip-prefix-arg-value,
vip-prefix-arg-com): Same.
* subr.el: Define compiled-function-p as an alias for it.
* bytecomp.el: Register compiled-function-p as obsolete.
* bytecomp.el, byte-opt.el, disass.el, help.el, map-ynp.el: Change
uses.
x-own-selection has been renamed to x-set-selection, and the order
of its arguments has been reversed, for consistency with other
lisp functions like put and aset.
* term/x-win.el (x-select-text): Adjusted.
(x-cut-buffer-or-selection-value): Check the primary selection,
using x-selection, instead of checking the cut buffer again.
* term/x-win.el: Doc fix.