如何使diff模式显示空白与其他编程模式类似?

时间:2014-09-17 18:31:46

标签: emacs

当我使用添加的空格选项启用whitespace-mode时:

(add-hook 'diff-mode-hook (lambda ()
                            (setq-local whitespace-style
                                        '(face
                                          tabs
                                          spaces
                                          wspaces
                                          trailing
                                          indentation::space
                                          indentation::tab
                                          newline))
                            (whitespace-mode 1)))

但是我没有看到类似于编程模式的外观,而是只用颜色来表示不同类型的空白,看起来很不愉快。有没有办法让它看起来像编程模式?

2 个答案:

答案 0 :(得分:1)

space-mark默认为中点(Unicode \ u00B7 ·) - “SPACE和HARD SPACE通过显示表可视化。wspaces 是有效设置 - 因此,将wspaces替换为space-mark

原始海报也可能对使用tab-mark(Unicode \ u00BB »)可视化标签感兴趣;使用newline-mark(即美元符号$)获得高额回报。它们都通过显示表可视化。

(add-hook 'diff-mode-hook (lambda ()
                            (setq-local whitespace-style
                                        '(face
                                          tabs
                                          tab-mark
                                          spaces
                                          space-mark
                                          trailing
                                          indentation::space
                                          indentation::tab
                                          newline
                                          newline-mark))
                            (whitespace-mode 1)))

答案 1 :(得分:0)

  1. 不知道你的意思是什么让它看起来像编程模式。您可能想要解释或举例。

  2. highlight-chars.el为您提供更多灵活性,以指示空格(和其他字符)。见Highlight Chars。你几乎可以随心所欲。 (但请参阅#1:更好地描述您真正想要的内容。)