我刚刚开始使用 magit。我真的很喜欢它,除了差异查看器对我来说真的很烦人。块突出显示没有意义,因为当我滚动光标时,光标会随着屏幕移动,突出显示新区域。在 magit diff 模式下也没有其他语法突出显示。有谁知道如何禁用块突出显示并获得比灰色上的白色更好的差异颜色?
谢谢。
这是 Magit 与 Emacs 标准主题“wombat”相结合的问题。
要解决此问题,请执行
M-x customize
搜索magit-item-highlight
,单击Show All Attributes
,取消选中Inherit
,然后Save and Apply
(或仅应用)。
你失去了当前差异大块的突出显示,但你仍然可以从大块的标题中看出这一点,所以它有点多余。否则它很好地解决了这个问题。
突出显示的区域对应于您按“s”时将上演的存储。
在大块内,差异应该是彩色的。您可以测试开发版本(请参阅https://github.com/magit/magit),如果这不能解决您的问题,请在https://github.com/magit/magit/issues/133中添加关于您的配置和确切的问题。
如果您正在运行最新的 1.0 版本,您还可以导航到任何差异块,点击“e”键以获得差异的 ediff 演示。
应该有一个自定义组 magit,它允许您为差异查看器自定义所有不同的面孔。
换句话说,您可以运行
M-x customize-group RET magit-faces RET
查看 Magit 使用的所有面的列表。当然,与差异查看器相关的是以 . 开头的那些Magit Diff
。
只需自定义并选择Apply and Save
. 或者,您可以只使用自定义界面查看可用的面,然后在您的 init 文件中直接使用set-face-foreground
、等设置它们。set-face-background
如果您出于某种原因不想尝试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)