20

在我的 Mac(Snow Leopard,10.6.8)上,我正在使用此处提供的 Emacs 24.2 的修改版本来利用下载页面中的 Emacs Speaks Statistics (ESS) 。Emacs 可以工作,但我还不能让拼写检查器工作。

为了解决这个问题,我按照此页面的说明下载 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时,我可以“自动完成”它(即,通过按 Tab,它会给我正确的 flyspell 选项)但是当我按下时,RET我得到:

Searching for program: no such file or directory, ispell

这个问题这个问题中提出的解决方案都没有奏效,所以我不确定这里的问题是什么。有没有人有想法或以前遇到过这个问题?

4

3 回答 3

35

请在尝试来自随机网站的任意指令之前阅读Emacs 本身提供的文档。

Emacs 24.2 包括 Flyspell。您不得显式安装它。如果这样做,请撤消此操作,即flyspell.el/Applications/Emacs.app/Contents/Resources/site-lisp. 充其量,/Applications/Emacs.app完全删除,然后重新安装,从头开始。

但是,Flyspell 需要一个拼写检查工具,Emacs 中没有这个工具。错误消息告诉您没有安装此类工具。

您需要安装ASpell拼写检查器。您可以使用带有brew install aspell.

于 2013-06-15T21:46:16.297 回答
9

我使用自制软件来安装 ispell 和 apsell 并且会得到我在 ~/.emacs 中设置的任何一个

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

这里有类似的讨论

于 2016-11-12T03:51:45.683 回答
4

在 Windows 上,我必须执行以下操作才能启动 Ispell 进程:

  1. 下载 ispell ( http://www.ssc.wisc.edu/~dvanness/ispell.htm )
  2. 在我的路径中的文件夹中解压缩内容(即 Windows 或 c:\windows\system
  3. 下载 aspell ( http://aspell.net/win32/)-获取完整下载。请参阅页面上的链接。(是否需要ispell,我不确定)
  4. 将下面显示的代码添加到您的 init.el 文件中

  5. 运行 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"
    

许多人不必执行上述所有操作,但这对我在 Windows 7 上运行的 Emacs 有效。

于 2017-03-09T16:54:44.880 回答