emacs magit diff突出显示

时间:2011-05-11 14:32:38

标签: emacs diff magit

我刚刚开始使用magit。 我非常喜欢它,除了diff查看器对我来说真的很烦人。块突出显示毫无意义,因为当我滚动光标随屏幕移动时,突出显示新区域。在magit diff模式中也没有其他语法高亮显示。有人知道如何禁用块突出显示并获得除灰色白色以外的更好的差异颜色吗?

感谢。

5 个答案:

答案 0 :(得分:13)

这是Magit与Emacs标准主题“wombat”相结合的问题。

要解决此问题,请执行

M-x customize

搜索magit-item-highlight,点击Show All Attributes,取消选中Inherit,然后Save and Apply(或者仅适用)。

你失去了当前大块差异的突出显示,但你仍然可以从大块头的方向判断,所以它有点多余。否则它很好地解决了这个问题。

答案 1 :(得分:5)

突出显示的区域对应于您点击“s”时暂存的存储空间。

在大块内部,差异应该是彩色的。您可以测试开发版本(请参阅https://github.com/magit/magit),如果这不能解决您的问题,请在https://github.com/magit/magit/issues/133中添加有关您的配置和确切问题的评论。

答案 2 :(得分:3)

如果您正在运行最新的1.0版本,您还可以导航到任何差异块,点击“e”键以获得差异的ediff演示。

答案 3 :(得分:2)

应该有一个自定义组magit,它允许您自定义diff查看器的所有不同面。

换句话说,你可以运行

M-x customize-group RET magit-faces RET

查看Magit使用的所有面孔的列表。当然,与diff查看器相关的那些是以Magit Diff开头的那些。

只需自定义并选择Apply and Save即可。或者,您可以使用“自定义”界面查看可用的面,然后使用set-face-foregroundset-face-background等直接在初始文件中设置它们。

答案 4 :(得分:0)

如果您由于某种原因不想尝试M-x customize,只需将以下代码段放在init.el

(defun disable-magit-highlight-in-buffer () 
  (face-remap-add-relative 'magit-item-highlight '()))

(add-hook 'magit-status-mode-hook 'disable-magit-highlight-in-buffer)

来源:https://github.com/magit/magit/issues/133