Отключить hl- в Emacs при использовании Emacs Starter Kit?

Эта проблема убивает мою продуктивность.

Emacs Starter Kit автоматически включает hl-line, которая выделяет текущую строку. Из-за этого я не могу видеть выделение в текущей строке.

I ' Мы пробовали установить (global-hl-line-mode nil) и (hl-line-mode nil) глобально и добавили к хукам режима, таким как clojure-mode-hook, но он по-прежнему отображается.

Какой elisp мне нужен, чтобы отключить эту функцию?

16
задан Alex Miller 22 July 2016 в 22:00
поделиться

4 ответа

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)
9
ответ дан 30 November 2019 в 17:03
поделиться

Я не думаю, что ваша проблема возникла из-за ESK - он не включает hl-line-mode. Если бы это было так, у вас должна была бы быть строка вида (global-hl-line-mode t) где-нибудь. Я предлагаю просто найти эту строку в вашей конфигурации и удалить ее, если вы ее найдете. Есть и другие режимы подсветки. ESK автоматически устанавливает idle-highlight из 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.

1
ответ дан 30 November 2019 в 17:03
поделиться

Если вы используете ESK, то лучшее место для размещения ваших собственных настроек - это не .emacs, а .emacs.d / {username} .el или .emacs.d / {username} / {username } .el.

1
ответ дан 30 November 2019 в 17:03
поделиться

Попробуйте поместить (global-hl-line-mode nil) в конец вашего .emacs , чтобы никакая другая команда не перезаписывала его.

1
ответ дан 30 November 2019 в 17:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: