Как мне настроить Emacs для использования 'ispell' в Mac OS X?

27

Я использую brewкак менеджер пакетов для Emacs и ispell. Я установил оба. Делая быстрый Google, я не смог понять, как сообщить Emacs, где находится ispell, и загрузить соответствующие словари.

Прямо сейчас , когда я делаю M-x ispell-check-version, Emacs дерзко отвечает: Searching for program: No such file or directory.

Как мне настроить Emacsиспользование ispell?

Эйвери Чан
источник

Ответы:

15

Переменная, которую вы ищете, это ispell-program-name. Наполните это где-нибудь в вашем .emacs:

(setq ispell-program-name "/path/to/ispell")

Или использовать M-x set-variableи т. Д.

Ссылки:

  • Из источников в ispell.el

    (defcustom ispell-program-name
      (or (locate-file "aspell"   exec-path exec-suffixes 'file-executable-p)
          (locate-file "ispell"   exec-path exec-suffixes 'file-executable-p)
          (locate-file "hunspell" exec-path exec-suffixes 'file-executable-p)
          "ispell")
      "Program invoked by \\[ispell-word] and \\[ispell-region] commands."
      :type 'string
      :group 'ispell)
    
  • Смотрите также: http://emacswiki.org/emacs/InteractiveSpell

Всякий раз, когда вы не можете найти функцию Emacs, запомните C-h f(или переменную:) C-h v. Ввод ispellв Describe functionподсказке говорит вам об этом ispell is an interactive compiled Lisp function in 'ispell.el'., и оттуда вы обычно можете найти то, что вы ищете.

ckhan
источник
1
Если вы используете set-variable для установки ispell-program-name, убедитесь, что вы поместили двойные кавычки вокруг значения. В моем случае это был "/ opt / local / bin / aspell"
Jistanidiot
11

То, что помогло мне решить эту проблему, не редактируя мои .emacsс абсолютными путями (что я не хотел делать, так как я делю файл между различными ОС), устанавливало ispell через brew

brew install ispell --with-lang-en

как объяснено в этом ответе (и мой комментарий).

metakermit
источник
1

Это проблема переменной среды. exec-path-from-shellПакет устранил эту проблему для меня.

После оценки (exec-path-from-shell-initialize)ispell работал.

тиски
источник
0

Даже если вы используете brew только для установки ispell и установили emacs из этого типа dmg , и вы запускаете emacs с иконки в доке, вы захотите выйти из системы и войти снова, так как OS X кэширует элементы в вашем пути и не увидит ispell сразу. Если эта информация не новость для вас, вы, возможно, все равно можете обойти эту проблему.

mrbobfrog
источник
0

Я уверен, что это должно быть решенной проблемой к настоящему времени, но все же хотел добавить, что я успешно использую ispell в Mac OS X. Установка ispell в homebrew и добавление правильного пути в .emacs (/ usr / local / bin) решена проблема для меня.

pratim
источник