如何在Emacs diff模式下配置突出显示?

sas*_*nin 6 emacs version-control diff syntax-highlighting

我使用mercurial.elEmacs模式.当我运行时vc-diff,我可以看到差异,但是,与源代码不同,它没有很好地突出显示:

Emacs vc-diff

阅读这些差异很困难.我如何配置Emacs,

  1. 突出显示-+不同颜色的线条?(例如红色和蓝色)
  2. 突出显示单词差异(比如BitBucket和GitHub)

Tre*_*son 14

尝试使用M-x ediff-revision,ediff而不仅仅是常规差异.这将为您提供单词差异和并排(或顶部/底部)显示.查看ediff手册.

Emacs wiki还有许多模式可用于常规差异文件(就像你正在查看的那样) - 检查出来.

要更改diff-mode您当前使用的颜色,您可以执行以下操作:

(defun update-diff-colors ()
  "update the colors for diff faces"
  (set-face-attribute 'diff-added nil
                      :foreground "white" :background "blue")
  (set-face-attribute 'diff-removed nil
                      :foreground "white" :background "red3")
  (set-face-attribute 'diff-changed nil
                      :foreground "white" :background "purple"))
(eval-after-load "diff-mode"
  '(update-diff-colors))
Run Code Online (Sandbox Code Playgroud)