Как отключить режим автозаполнения в emacs?
Сегодня я получил свой новый компьютер (выиграл 7, 32 бит) и установил Vincelt Goulets Emacs. Единственное, что я сделал, это обновление org-mode.
Теперь я застрял с auto-fill-mode
при каждом запуске emacs new, который я ненавижу. Я хотел бы отключить auto-fill-mode
, пока и навсегда. Я даже удалил файл .emacs, но auto-fill-mode
по-прежнему включался.
Единственное решение, которое сработало, было: (a) неприятное обходное решение или (b) всегда печатать M-x auto-fill-mode
каждый раз, когда я начинаю emacs заново.
Я был бы рад услышать любые решения.
Чтобы быть ясным, единственное, что содержится в текущем файле .emacs: '(inhibit-startup-screen t)
Ответы
Ответ 1
Добавьте к .emacs
,
(auto-fill-mode -1)
Если есть крючки для определенных режимов, вам также нужно их запереть. Мое подозрение в том, что по умолчанию во всех режимах нет режима автозаполнения, но с информацией, которую вы предоставили, по крайней мере, это должна быть отправная точка.
Разумной гарантией было бы также отключить режим автозаполнения из "text-mode-hook":
(remove-hook 'text-mode-hook #'turn-on-auto-fill)
Вам может понадобиться нечто подобное для других режимов.
Ответ 2
Предполагая, что он не внес фундаментальных изменений, у вас есть несколько путей:
Вы можете просто отключить режим в глобальном масштабе в файле .emacs
:
(turn-off-auto-fill)
;; ...or (auto-fill-mode -1)
Так как Emacs этого урожая также включает автозаполнение для text-mode
, добавьте:
(remove-hook 'text-mode-hook 'turn-on-auto-fill)
Это должно учитывать все места по умолчанию, но проверьте основные перехватчики режима, если у вас есть другие режимы, позволяющие это автоматически.
Ответ 3
Если вы хотите включить его в большинстве text-mode
, а отключите auto-fill
в определенных режимах, например. org-mode
в моем случае вы можете использовать следующее:
;; turn on auto-fill for text-mode
(add-hook 'text-mode-hook 'turn-on-auto-fill)
;; turn off auto-fill for org-mode
(add-hook 'org-mode-hook 'turn-off-auto-fill)