Отключить hl-line в Emacs при использовании Emacs Starter Kit? - PullRequest
16 голосов
/ 23 августа 2010

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

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

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

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

Ответы [ 7 ]

18 голосов
/ 19 октября 2011

В стартовом наборе 2 соответствующий крючок для удаления:

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

Вам необходимо добавить это в свою конфигурацию после инициализации стартового набора.

9 голосов
/ 23 августа 2010

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)
4 голосов
/ 29 января 2012

Я знаю, что это старый вопрос, но недавно у меня была та же проблема (с использованием emacs 24), и я обнаружил, что ее также можно решить, просто настроив лицо "hl-line":

  1. Выполните «M-x customize-face» и введите «hl-line».
  2. Настройте по своему вкусу и «сохраните для будущих сессий».

Если вы отключите все атрибуты, вы фактически отключите эту функцию, по крайней мере, с точки зрения пользователя. Для меня переключение цветовой подсветки и просто установка «Веса» на «тяжелый» превратили hl-line из раздражения в ненавязчивую, в меру полезную функцию.

1 голос
/ 23 августа 2010

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

1 голос
/ 23 августа 2010

Не думаю, что ваша проблема возникла из-за 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.

1 голос
/ 23 августа 2010

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

0 голосов
/ 09 апреля 2013

Вы спросили, как отключить 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 (я имею в виду, если вы выберете очень контрастный цвет выделенной линии, то цвета подсветки синтаксиса будут конфликтовать и их будет трудно прочитатьпоэтому, выбирая цвет, который немного отличается друг от друга, вы все равно можете видеть его, не беспокоясь о конфликтующих цветах).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...