使用Emacs入门套件时,在Emacs中禁用hl-line?

时间:2010-08-23 07:21:18

标签: emacs clojure

这个问题正在削弱我的工作效率。

Emacs入门套件自动启用hl-line,突出显示当前行。这让我无法在当前行看到突出显示。

我已尝试全局设置(global-hl-line-mode nil)(hl-line-mode nil)并添加到模式挂钩,例如clojure-mode-hook,但它仍会显示。

我需要哪些elisp来禁用此功能?

7 个答案:

答案 0 :(得分:18)

在入门套件2中,要删除的相应钩子是:

(remove-hook 'prog-mode-hook 'esk-turn-on-hl-line-mode)

初始化套件初始化后,您需要将其添加到您自己的配置中。

答案 1 :(得分:9)

hl-line-mode由starter-kit-defuns.el中的以下行打开:

(add-hook 'coding-hook 'turn-on-hl-line-mode)

您可以注释掉该行,或者如果您不想触摸入门工具包文件,可以将以下内容放在个人初始文件中〜/ .emacs.d / {username} .el:

(remove-hook 'coding-hook 'turn-on-hl-line-mode)

答案 2 :(得分:4)

我知道这是一个老问题,但我最近遇到了同样的问题(使用emacs 24)并发现它也可以通过自定义“hl-line”面来解决:

  1. 执行“M-x customize-face”并输入“hl-line”。
  2. 根据自己的喜好自定义并“保存以备将来使用”。
  3. 如果关闭所有属性,则有效禁用该功能,至少从用户的角度来看。对我来说,转动颜色突出显示并将“重量”设置为“重量”将hl-line从烦恼转变为不显眼的,适度有用的功能。

答案 3 :(得分:1)

尝试将(global-hl-line-mode nil)放在.emacs的底部,这样就不会有其他命令覆盖它。

答案 4 :(得分:1)

我认为您的问题不是来自ESK - 它不支持hl-line-mode。如果确实如此,你必须在某处看到(global-hl-line-mode t)一行。我建议您只在配置中搜索该行,如果找到则删除它。还有其他突出显示模式。 ESK自动安装ELPA的空闲高亮 - 也许这就是你的意思。您可以通过从starter-kit-elpa.el中的这段代码中删除它的条目来删除它:

(defvar starter-kit-packages (list 'idle-highlight
                                   'ruby-mode
                                   'inf-ruby
                                   'css-mode
                                   'yaml-mode
                                   'find-file-in-project
                                   'magit
                                   'gist)

您还应该从ELPA的文件夹中删除下载的软件包,然后重新启动Emacs。

答案 5 :(得分:1)

如果您使用ESK,那么放置您自己的自定义项的最佳位置不是.emacs,而是.emacs.d / {username} .el或.emacs.d / {username} / {username} .el。

答案 6 :(得分:0)

你问过如何禁用hl-line-mode,但你说你想这样做是因为hl-line-mode掩盖了你喜欢看的正常语法高亮。那么,如果我告诉你可以同时使用突出显示的行和语法突出显示呢?试试这个:

;; Change the :background setting to a value that is only very subtly 
;; lighter than the default bg color.
(set-face-attribute 'hl-line nil
                    :background "#3d4753"
                    :foreground nil
                    :inherit t)

最终结果是突出显示的一行,在背景中具有非常精美的高光效果,并使所有有价值的语法高亮显示在前景中。如果您仔细选择背景颜色,那么fg / bg颜色的可读性冲突就不会有任何问题(我的意思是,如果您选择高对比度突出显示的线条颜色,则语法突出显示的颜色会发生冲突并且难以阅读,所以通过选择一种非常微妙的颜色,您仍然可以看到它而不必担心碰撞的fg颜色。