2011-05-11 140 views
12

我刚刚开始使用magit。 我真的很喜欢它,但差异查看器真的很烦人。块突出显示是没有意义的,因为随着我滚动光标随屏幕移动,突出显示新区域。在magit diff模式中也没有其他语法突出显示。有人知道如何禁用块突出显示并获得比灰色白色更好的比较颜色吗?emacs magit diff突出显示

谢谢。

回答

2

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

换句话说,你可以运行

M-x customize-group RET magit-faces RET 

地看到Magit使用的所有面的列表。与差异查看器相关的那些当然是以Magit Diff开头的那些。

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

+4

这里的一些细节将会很好 – unohoo 2014-07-28 11:02:22

5

突出显示的区域对应于当您点击“s”时将会上演的藏品。

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

+0

不知道它应该在默认情况下是上。做了一些挖掘,并发现我的emacs颜色主题正在阻碍。禁用它,它会好一点。灰色突出显示仍然清除了文本,但我可以处理,最终可能会修复它。 – 2011-05-11 15:26:45

2

如果您正在运行最新的1.0版本,您还可以导航到任何diff区块,按'e'键以获得差异的ediff演示文稿。

+0

我正在运行版本1.0。在状态缓冲区中打e要么说:“不能解决大块”或“无法解决” – 2011-05-11 15:27:41

13

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

要解决这个问题,为magit-item-highlight

M-x customize 

搜索,单击Show All Attributes,取消Inherit,然后Save and Apply(或者只适用)。

你失去了当前差异大块的突出显示,但你仍然可以从大块头中看出来,所以它有点多余。否则它会很好地解决问题。

+0

这样我也失去了突出显示在它似乎有用的地方,例如在日志中... – doublep 2015-05-04 14:27:49

+1

非常有用的描述如何定制。帮助我成为emacs新手。 – 2015-06-03 09:10:52

0

如果你不想尝试M-x customize出于某种原因,只要把下面的代码片段在​​

(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