這個問題正在破壞我的生產力。使用Emacs Starter Kit時,在Emacs中禁用hl-line?
Emacs Starter Kit自動啓用hl-line,它突出顯示當前行。它使我無法看到當前行上的突出顯示。
我試過在全局設置(global-hl-line-mode nil)
和(hl-line-mode nil)
,並添加到諸如clojure-mode-hook之類的模式鉤子中,但它仍然顯示出來。
我需要什麼elisp來禁用此功能?
這個問題正在破壞我的生產力。使用Emacs Starter Kit時,在Emacs中禁用hl-line?
Emacs Starter Kit自動啓用hl-line,它突出顯示當前行。它使我無法看到當前行上的突出顯示。
我試過在全局設置(global-hl-line-mode nil)
和(hl-line-mode nil)
,並添加到諸如clojure-mode-hook之類的模式鉤子中,但它仍然顯示出來。
我需要什麼elisp來禁用此功能?
HL-行模式是通過下面的行啓動-KIT-defuns.el開啓:
(add-hook 'coding-hook 'turn-on-hl-line-mode)
您可以註釋掉該行,或者如果你寧願不碰首發包文件,你可以把下面的在〜/ .emacs.d/{用戶名}您的個人init文件.el:
(remove-hook 'coding-hook 'turn-on-hl-line-mode)
嘗試將(global-hl-line-mode nil)
放置在您的.emacs
的底部,因此沒有其他命令會覆蓋它。
我不認爲你的問題來自ESK - 它不啓用hl線路模式。如果這是真的,你必須在某個地方有一條看起來像(global-hl-line-mode t)
的線。我建議只需在你的配置中搜索該行,並在找到它時將其刪除。還有其他突出顯示模式。 ESK自動安裝ELPA的空閒高亮 - 也許這就是你的意思。您可以通過刪除它從這段代碼在初學者工具包 - 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。
如果您使用ESK,那麼放置自定義設置的最佳位置不是.emacs,而是.emacs.d/{用戶名} .el或.emacs.d/{用戶名}/{用戶名} .el。
在入門套件2對應的鉤去掉是:
(remove-hook 'prog-mode-hook 'esk-turn-on-hl-line-mode)
初學者入門套件初始化後,您需要將其添加到您自己的配置中。
我知道這是一個老問題,但最近我有同樣的問題(使用emacs 24),發現它也可以簡單地通過定製的「HL-線」面子解決:
如果關閉所有屬性,至少從用戶的角度來看,可以有效地禁用該功能。對於我來說,轉動顏色突出顯示並將「重量」設置爲「沉重」將hl-line從惱人轉變爲不顯眼且中等有用的特徵。
我用這個solutoin,改變hl模式身體我的當前行,不改變背景或forground的顏色,刪除繼承,現在它有點有用/愉快。 – PPPaul 2013-01-15 16:00:25
你問如何禁用HL-行模式,但你說你想這樣做,因爲HL-行模式掩蓋了正常的語法高亮,你更希望看到來代替。那麼,如果我告訴你可以同時使用突出顯示的行和語法突出顯示,那該怎麼辦?試試這個:
;; 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顏色)。
請注意'(hl-line-mode nil)'是一個切換鍵,所以它不是很健壯。 '(hl-line-mode 0)'總是關閉模式(但當然不會阻止別的東西在以後再打開它)。 – Gilles 2010-08-23 23:06:18