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

时间:2010-11-02 16:29:18

标签: version-control emacs diff syntax-highlighting

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

Emacs vc-diff

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

  1. 突出显示不同颜色的-+行? (例如红色和蓝色)
  2. 突出显示字差异(如BitBucket和GitHub)

1 个答案:

答案 0 :(得分:14)

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

Emacs wiki还有一些常规差异文件的模式(就像你正在看的那样) - check it out

要更改您当前使用的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))