* viper.el (viper-remove-hooks): remove some additional viper hooks
when the user calls viper-go-away.
(viper-go-away): restore the default of default-major-mode.
Save the value of default-major-mode before vaperization.
* viper-cmd.el: Replace error "" with "Viper bell".
* viper-ex.el: Replace error "" with "Viper bell".
* ediff-util.el (ediff-make-temp-file): use the coding system of the
buffer for which file is created.
(tpu-gold-map, tpu-global-map): Comment-out the bindings to nil.
(tpu-gold-map): Bind F to tpu-cursor-free-mode.
(minibuffer-local-map): Use funkey symbols rather than esc-sequence.
Put its autoloads into tpu-edt.el rather than loaddefs.el.
(tpu-cursor-free-mode): Rename from tpu-cursor-free.
Make into a proper minor-mode.
(tpu-backward-char, tpu-next-line, tpu-previous-line)
(tpu-next-end-of-line, tpu-current-end-of-line): Use new name.
(tpu-trim-line-ends-if-needed): Rename from tpu-before-save-hook.
(tpu-set-cursor-free, tpu-set-cursor-bound):
Delegate to tpu-cursor-free-mode.
(tpu-next-line, tpu-previous-line, tpu-forward-line)
(tpu-backward-line, tpu-scroll-window-down, tpu-scroll-window-up):
Use line-move or forward-line instead of next-line-internal.
Activate it with add-hook on buffer-save-hook.
(newline, newline-and-indent, do-auto-fill): Use advice instead of
redefining the function.
(tpu-set-scroll-margins): Activate the pieces of advice.
* viper.el (viper-describe-key-ad, viper-describe-key-briefly-ad):
different advices for Emacs and XEmacs. Compile them conditionally.
(viper-version): belated version change.
(tpu-lucid-emacs-p): Remove. Use (featurep 'xemacs) instead.
(CSI-map, GOLD-CSI-map, GOLD-SS3-map, SS3-map): Delete vars.
(tpu-gold-map, tpu-global-map): Add all the SS3 and CSI bindings, using
keysyms rather than byte sequences.
(tpu-copy-keyfile): Don't force the user to use tpu-mapper.el.
(tpu-original-global-map) Variable deleted.
(tpu-control-keys-map) New keymap variable.
(tpu-set-control-keys) Use tpu-reset-control-keys rather than
setting keymapping directly.
(tpu-reset-control-keys) Use tpu-control-keys-map instead of tpu-global-map.
(tpu-edt-on): Activate the tpu-global-map.
(tpu-edt-off): Deactivate the tpu-global-map.
* ediff-util.el (ediff-clone-buffer-for-region-comparison): change text
of message. Activate mark.
(ediff-activate-mark): set transient-mark-mode to t.
* ediff.el (ediff-regions-wordwise,ediff-regions-linewise): changed
docstrings.
* viper-keym.el (viper-insert-basic-map): deleted binding for S-TAB.
* ediff-diff.el (ediff-diff-options): clarify docstring.
(ediff-setup-diff-regions): disallow -u in ediff-diff-options.
* viper-cmd.el (viper-post-command-sentinel): protect against errors in
hooks.
(viper-add-newline-at-eob-if-necessary): add newline only if we
actually modify buffer; ignore errors if occur.
(cua-paste-pop): Rework last change for cua-paste-pop-rotate-temporarily,
so first M-y and C-y works alike, pasting the head of the kill-ring, and
prefix arg C-u M-y inserts the text inserted by the last M-y command.
(cua-repeat-replace-region): Make M-v more robust.
(cua-paste-pop-rotate-temporarily): New defcustom.
(cua-paste-pop): Use it.
(cua-auto-mark-last-change): New defcustom.
(cua-pop-to-last-change): New helper function.
(cua-set-mark): Use them.
changes done in August 2006.
* viper-cmd (viper-next-line-at-bol): make sure button-at, push-button
are defined.
* ediff-util.el (ediff-add-to-history): new function.
* ediff.el: use ediff-add-to-history instead of add-to-history.
* viper-cmd.el (viper-special-read-and-insert-char): convert events to
chars if XEmacs.
(viper-after-change-undo-hook): check if undo-in-progress is bound.
* viper.el (viper-set-hooks): use frame bindings for
viper-vi-state-cursor-color.
(viper-non-hook-settings): don't set default
mode-line-buffer-identification.
* viper-util.el (viper-set-cursor-color-according-to-state): new
function.
(viper-set-cursor-color-according-to-state,
viper-get-saved-cursor-color-in-replace-mode,
viper-get-saved-cursor-color-in-insert-mode): make conditional on
viper-emacs-state-cursor-color.
* viper-cmd.el (viper-envelop-ESC-key): bug fix.
(viper-undo): use point if undo-beg-posn is nil.
(viper-insert-state-post-command-sentinel,viper-change-state-to-emacs,
viper-after-change-undo-hook): don't use
viper-emacs-state-cursor-color by default.
(viper-undo): more sensible positioning after undo.
* viper-ex.el (ex-splice-args-in-1-letr-cmd): got rid of caddr.
(viper-emacs-state-cursor-color): default to nil, since this feature
doesn't work well yet.
* ediff-mult.el (ediff-intersect-directories,
ediff-get-directory-files-under-revision, ediff-dir-diff-copy-file):
always expand filenames.
(cua-rectangle-modifier-key): Add `alt' modifier.
(cua-replace-region): Don't delete if cua-delete-selection is nil.
(cua-set-mark): Don't clear mark if cua-toggle-set-mark is nil.
Suggested by Klaus Zeitler <kzeitler@lucent.com>.
* viper-cmd.el (viper-special-read-and-insert-char): use
read-key-sequence.
(viper-after-change-undo-hook): enhancements.
(viper-after-change-undo-hook): new hook.
(viper-undo): use viper-after-change-undo-hook.
(viper-add-newline-at-eob-if-necessary): widen before making changes.
(viper-next-line-at-bol): If point is on a widget or a button, simulate
clicking on that widget/button.
* viper.el (viper-mode): allow for a separate cursor color in Emacs
state.
* ediff-diff (ediff-test-patch-utility): catch errors.
(ediff-actual-diff-options, ediff-actual-diff3-options): new variables.
(ediff-set-actual-diff-options): new function.
(ediff-reset-diff-options, ediff-toggle-ignore-case):
use ediff-set-actual-diff-options.
(ediff-extract-diffs): catch errors.
(ediff-whitespace): add nonbreakable space.
(ediff-same-file-contents): catch errors.
* ediff-mult.el (ediff-collect-custom-diffs): save
coding-system-for-read.
* ediff-vers.el (ediff-keep-tmp-versions): new var.
(ediff-vc-internal, ediff-vc-merge-internal): use
ediff-delete-version-file.
(ediff-delete-version-file): new function.
* ediff-wind.el (ediff-control-frame-parameters): set frame fringes.
* ediff.el (ediff-directories, ediff-directory-revisions,
ediff-merge-directories, ediff-merge-directories-with-ancestor,
ediff-directories-internal, ediff-merge-directory-revisions,
ediff-merge-directory-revisions-with-ancestor,
ediff-directories3): use read-directory-name.