запуск emacs с подсветкой - PullRequest
       15

запуск emacs с подсветкой

1 голос
/ 16 декабря 2011

Я правильно изучил emacs и lisp, так что я уверен, что что-то упустил, но я пытаюсь заставить работать подсветку при запуске emacs.

У меня естьполучил файл highlight-indentation.el в моем пути emacs, и после запуска я могу сделать

Mx highlight-indentation

и все работает хорошо, но как мне заставить это работать при запуске,Я думал, что вставка

(выделение подсветки)

в мой файл .emacs будет работать, но это не сработало.Это потому, что выделение подсветкой является интерактивной функцией?

Ответы [ 3 ]

5 голосов
/ 16 декабря 2011

Функция применяется только к текущему буферу.Я бы порекомендовал использовать hook , как показано ниже.Функции, добавленные в ловушки основного режима, выполняются, когда основной режим включен для определенного буфера.

(defun my-emacs-lisp-mode-hook ()
  (highlight-indentation))
(add-hook 'emacs-lisp-mode-hook 'my-emacs-lisp-mode-hook)
3 голосов
/ 28 февраля 2012

highlight-indentation.el фактически создает второстепенный режим, который будет всегда автоматически выделять отступ, соответственно называемый highlight-indentation-mode. Вы можете увидеть соответствующие функции в разделах, которые говорят

### ;;; автозагрузку

, а именно

режим определения-второстепенного режима выделения-подсветки

и

define-minor-mode highlight-indentation-current-column-mode

Чтобы использовать их, добавьте хук, как предложил Lindydancer, но вместо создания нового хука, который вызывает функцию выделения подсветки, просто напишите:

(add-hook 'emacs-lisp-mode-hook' highlight-indentation-mode)

Я предпочитаю (довольно многословный) режим highlight-indentation-current-column-mode, который просто выделяет столбец, на котором находится курсор. Это немного чище, но все же показывает вам связь между различными уровнями кода.

Редактировать : Я уже два года опаздываю с обновлением, но для будущих странников Интернета, которые хотят, чтобы режим выделения подсветки работал для всех языков программирования, вы можете сделать это:

(add-hook 'prog-mode-hook' highlight-indentation-mode)

0 голосов
/ 16 декабря 2011

Это действительно зависит от того, что делает highlight-indentation. Проверьте, не видны ли его эффекты в буфере *scratch*.

...