(compilation-minor-mode): New defvar.
(compilation-minor-mode-map): New defvar; keymap with the bindings
from compilation-mode-map except SPC and DEL.
(compilation-mode-map): Construct this keymap to inherit from
compilation-minor-mode-map.
(compilation-setup): New function, code broken out of compilation-mode.
(compilation-mode): Call it.
(compilation-minor-mode): New function to toggle
compilation-minor-mode; if setting it, call compilation-setup.
in. Something about the code now conditioned out by UNLOAD was screwing
up ordinary autoloads, notably of picture.el. When I figure out what, I'll
fix and re-enable this code.
picture-mode.
(move-to-column-force, picture-end-of-line): When movement is completed,
scroll horizontally if necessary to make point visible.
(picture-beginning-of-line): New function. Exists to force horizontal
scrolling if the buffer is wide.
(picture-mode-map): Instead of rebinding common keystrokes, use
substitute-key-definition to remap all keystrokes attached to the
corresponding commands.
(find-tag-noselect, find-tag, find-tag-other-window, find-tag-other-frame,
find-tag-regexp): Use it.
(find-tag, find-tag-other-window): Take new arg REGEXP-P, pass to
find-tag-noselect.
(find-tag-regexp): Call either find-tag-other-window or find-tag, rather
than find-tag-noselect and switch-to-buffer[-other-window].
(tags-location-stack): New defvar.
(find-tag-noselect): If NEXT-P is '-, pop location off tags-location-stack.
Discussion with Jim Blandy reveals that it can no longer be made to work
properly at all due to changes in Emacs's terminal-control interface. So
it's getting deep-sixed, but these cleanups go in on the outside chance that
we want to revive it someday.
in loaddefs.el or the user's .emacs, not in a terminal support package. Also
do the right thing and transplant all suspend-emacs bindings to iconify-frame,
rather than just C-z.
complex. The new version is smaller and faster. The interface is
unchanged, except that ring-remove now accepts an optional numeric argument
specifying the element to remove.
arg on an empty buffer.
(vc-directory): Better directory format --- replace the user and group IDs
with locking-user (if any).
(vc-finish-logentry, vc-next-comment, vc-previous-comment): Replace
*VC-comment-buffer* with a ring vector.
addition of new lines at end of buffer.
(up-arrow): Alias of previous-line, added for consistency.
These changes complete terminal-type-independent support for arrow keys.
to be applied manually. It's not worth trying to integrate this with
the rest of the mode more tightly until we decide whether and how
compile's interface is going to change away from a closed subsystem.
(cd-absolute): Added. This is actually the old cd code with a changed
doc string.
(parse-colon-path): Added. Path-to-string exploder --- may be useful elsewhere.
(ring-rotate): Nuked. It was (a) unused, and (b) totally broken (as in,
any attempt to use it died with a type error, and when I patched it to fix
that I found its algorithm was broken).
(ring-ref): Added doc string.
(kill-forward-chars, kill-backward-chars): Deleted. These were
internal subroutines used by delete-char and delete-backward-char
before those functions were moved into the C kernel. Now nothing uses
them.
(kill-line): Added kill-whole-line variable. Defaults to nil; a
non-nil value causes a kill-line at the beginning of a line to kill
the newline as well as the line. I find it very convenient. Emulates
Unipress' &kill-lines-magic variable.
(next-line): Added next-line-add-newlines variable. If nil, next-line will not
insert newlines when invoked at the end of a buffer. This obviates three LCD
packages.
(left-arrow, right-arrow): New functions. These do backward-char and
forward-char first. If line truncation is on, they then scroll left or
right as necessary to make sure point is visible.