(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'.
(diff-index-face, diff-hunk-header-face, diff-removed-face)
(diff-added-face, diff-changed-face, diff-function-face)
(diff-context-face, diff-nonexistent-face): Put them in the
diff-mode customization group.
(diff-mode-hook): Make it a defcustom. Add some options.
(diff-mode-map): Bind diff-refine-hook.
(diff-yank-handler): New var.
(diff-yank-function): New fun.
(diff-font-lock-keywords): Use them.
(diff-end-of-file): Handle case where file-header looks like diff text.
(diff-hunk-kill): Adjust to "new" hunk-next behavior.
(diff-file-kill): Delete a subsequent empty line, if applicable.
(diff-hunk-file-names): New fun, extracted from diff-tell-file-name.
(diff-find-file-name): Use it.
(diff-tell-file-name): New command.
(diff-mode): Be careful with view-mode.
(diff-delete-if-empty, diff-delete-empty-files, diff-make-unified):
New functions, for use in diff-mode-hook.
(diff-find-source-location): Catch "regex too large" errors.
(diff-apply-hunk, diff-test-hunk): Go to old or new file.
(diff-refine-hunk): New command.
(diff-after-change-function): Fix typo.
(diff-post-command-hook): Take care of edge cases.
(diff-current-defun): Do `goto-char' after setting the mode.