2013-06-15 2 views
11

На моем Mac (Snow Leopard, 10.6.8) я использую модифицированную версию Emacs 24.2 provided here, чтобы использовать статистику Emacs Speaks (ESS) от downloads page. Emacs работает, но я еще не смог заставить проверку орфографии работать.Emacs не может найти flyspell/ispell

Чтобы исправить это, я следую инструкциям от this page, чтобы загрузить flyspell. Я скопировал файл flyspell.el в мой каталог /Applications/Emacs.app/Contents/Resources/site-lisp, который, по-видимому, является каталогом моего пути загрузки emacs (обратите внимание, что, например, файл auctex.el находится в этом каталоге).

Затем я изменил мой .emacs файл, добавив:

(autoload 'flyspell-mode "flyspell" "On-the-fly spelling checker." t) 
(autoload 'flyspell-delay-command "flyspell" "Delay on command." t) 
(autoload 'tex-mode-flyspell-verify "flyspell" "" t) 
(add-hook 'LaTeX-mode-hook 'turn-on-flyspell) 

Когда я открываю .tex файл и использовать M-x flyspell-mode, я могу «автозаполнение» он (т.е. вкладки нажатием дает мне правильный Flyspell варианты), но когда я нажимаю RET я получаю:

Searching for program: no such file or directory, ispell 

ни одно из решений не ставится в this question или this question работал, так что я не уверен, что вопрос здесь. Кто-нибудь есть идеи или столкнулся с этой проблемой раньше?

ответ

22

Просьба : документация, предоставленная Emacs, перед тем как попробовать произвольные инструкции со случайных сайтов.

Emacs 24.2 включает в себя Flyspell. Вы должны не явно установить его. Если вы это сделаете, отмените это, т. Е. Удалите flyspell.el от /Applications/Emacs.app/Contents/Resources/site-lisp. В лучшем случае полностью удалите /Applications/Emacs.app и переустановите его, чтобы начать с нуля.

Однако Flyspell нуждается в инструменте проверки орфографии, который не включен в Emacs. В сообщении об ошибке указано, что у вас нет такого инструмента.

Вам необходимо установить контрольную отметку ASpell. В OS X лучше всего установить его через диспетчер пакетов homebrew, то есть brew install aspell --with-lang-en.

+1

или MacPorts в качестве альтернативы Homebrew. – lawlist

+0

Если O.P. хочет сделать свою жизнь очень простой, вместо этого используйте Aquamacs - он использует встроенный в OSX NSSpellChecker. Тогда O.P. ничего не нужно. – lawlist

+0

@lawlist Aquamacs непросто. С Aquamacs он должен будет самостоятельно установить ESS, что, возможно, не сложнее, чем установка aspell, но это тоже нелегко. Кроме того, Aquamacs по-прежнему базируется на Emacs 23, который устарел и больше не поддерживается некоторыми пакетами. – lunaryorn

2

Я использовал homebrew установить Ispell и apsell и получите, которые когда-либо один я поставил в ~/.emacs с

[iMac ~]$ cat .emacs 
(setq ispell-program-name "/usr/local/bin/aspell") 

Существует аналогичное обсуждение этого here

2

На окнах я должен был выполните следующие действия, чтобы начать процесс Ispell:

  1. скачано Ispell (http://www.ssc.wisc.edu/~dvanness/ispell.htm)
  2. Распакуйте содержимое в папку, которая находится на моем пути (т. Окна или C: \ Windows \ система
  3. загрузить Aspell (http://aspell.net/win32/)- получить полной загрузки увидеть ссылку на странице (нужно ли Ispell или нет, я не уверен)
  4. Добавьте код.. как показано ниже в вашем init.эль-файл

  5. Run ASpell инсталлятор

  6. Начало Emacs снова, ошибка не должна придумать.

    (require 'package) 
    (add-to-list 'package-archives 
         '("MELPA Stable" . "http://stable.melpa.org/packages/") t) 
    (package-initialize) 
    (package-refresh-contents) 
    
    (package-install 'flycheck) 
    
    (global-flycheck-mode) 
    
    (use-package flycheck 
        :ensure t 
        :init 
        (global-flycheck-mode t)) 
    
    (setq ispell-program-name "C:\\Program Files (x86)\\Aspell\\bin\\aspell.exe" 
    

Вы много не нужно делать все выше, но это то, что работает для меня на Emacs работает на Windows 7.

Смежные вопросы