* progmodes/dcl-mode.el: Require imenu at compile time.
* progmodes/cc-engine.el (c-maybe-stale-found-type): Pacify
byte-compiler.
* obsolete/fast-lock.el: Use featurep test instead of
string-match.
* eshell/esh-mode.el (eshell-handle-ansi-color): Require
ansi-color at compile time too.
* eshell/em-unix.el (eshell/info): Require info at compile time
too.
* w32-fns.el: Require w32-vars.
* diff-mode.el (diff-refine-hunk): Require smerge-mode at compile
time too.
(diff-hunk): Use it.
(diff-ignore-whitespace-hunk): Rename diff-refine-ignore-spaces-hunk.
(diff-refine-change): Rename from diff-fine-change. Change it.
(diff-refine-preproc): Rename from diff-fine-highlight-preproc.
(diff-refine-hunk): Rename from diff-fine-highlight.
(diff-end-of-hunk): Use it.
(diff-context->unified): Use the new `apply' undo element, if applicable,
so as to save undo-log space.
(diff-fine-change): New face.
(diff-fine-highlight-preproc): New function.
(diff-fine-highlight): New command.
Remove.
(vc-git-revision-completion-table): Enable.
* vc-hooks.el (vc-handled-backends): Add GIT and HG.
* vc.el (vc-directory-exclusion-list): Add .git and .hg.
* vc-hg.el (vc-hg-revision-completion-table): Re-enable.
* diff-mode.el (diff-mode-menu): New entries.
* diff-mode.el (diff-beginning-of-file-and-junk): New function.
(diff-file-kill): Use it.
(diff-beginning-of-hunk): Add arg `try-harder' using it.
(diff-restrict-view, diff-find-source-location, diff-refine-hunk):
Use it so they find the hunk even when we're in the file header.
* vc.el: Add new VC operation `revision-completion-table'.
(vc-default-revision-completion-table): New function.
(vc-version-diff, vc-version-other-window): Use it to provide
completion of revision names if the backend provides it.
* vc-arch.el (vc-arch--version-completion-table)
(vc-arch-revision-completion-table): New functions to provide
completion of revision names.
* vc-cvs.el: Require CL.
(vc-cvs-revision-table, vc-cvs-revision-completion-table):
New functions to provide completion of revision names.
* eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
* vc2-xtra.texi (Customizing VC): Add GIT and HG.
diff-refine-hunk. Adjust users.
(diff-unified-hunk-p, diff-splittable-p): New functions.
(diff-mode-menu): Use it to disable Split when it doesn't work.
(diff-file-kill): Use it.
(diff-beginning-of-hunk): Add arg `try-harder' using it.
(diff-restrict-view, diff-find-source-location, diff-refine-hunk):
Use it so they find the hunk even when we're in the file header.
(diff-unified->context, diff-context->unified)
(diff-reverse-direction): Make sure the end marker stays at the end.
(diff-mode): Add the keymap table at the end of docstring.
Use lexical-let rather than constructing a closure manually.
diff-default-read-only is non-nill.
* diff.el (diff-sentinel, diff): Set inhibit-read-only to t when
modifying the *Diff* buffer.
(diff-process-filter): New filter function for diff process that
sets inhibit-read-only to t when modifying the *Diff* buffer.
instead of `mark' and `point'.
(diff-unified->context, diff-reverse-direction, diff-fixup-modifs):
Operate on region in Transient Mark mode when the mark is active.
Use `region-beginning' and `region-end' instead of `mark' and `point'.
(diff-hunk-text, diff-goto-source): Doc fix.
yellow to green on light backgrounds.
(diff-context): Inherit from `shadow' only for color/grayscale
with more than 88 colors.
(diff-indicator-removed, diff-indicator-added)
(diff-indicator-changed): New faces.
(diff-font-lock-keywords): Use new faces. Regroup rules.
Add "^---$" for `normal' diff format. Fontify `#' lines with
font-lock-comment-delimiter-face and font-lock-comment-face.
Add `#' to ^[^...] in the rule for `diff-context-face'.