Comment configurer Emacs pour utiliser 'ispell' sur Mac OS X?


27

J'utilise brewcomme gestionnaire de paquets pour Emacs et ispell. J'ai installé les deux. En faisant un rapide google, je n'ai pas réussi à savoir comment dire à Emacs où se trouve ispell et à charger les dictionnaires appropriés.

En ce moment , quand je fais un M-x ispell-check-version, Emacs répond insolemment: Searching for program: No such file or directory.

Comment configurer Emacspour utiliser ispell?

Réponses:


15

La variable que vous recherchez est ispell-program-name. Remplissez ceci quelque part dans votre .emacs:

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

Ou utiliser M-x set-variable, etc.

Les références:

  • Des sources aux 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)
    
  • Voir aussi: http://emacswiki.org/emacs/InteractiveSpell

Chaque fois que vous ne trouvez pas de fonction Emacs, souvenez-vous C-h f(ou d'une variable:) C-h v. Saisie ispellà l' Describe functioninvite vous le dit ispell is an interactive compiled Lisp function in 'ispell.el'., et à partir de là, vous pouvez généralement trouver ce que vous recherchez.


1
Si vous utilisez set-variable pour définir ispell-program-name, assurez-vous de mettre des guillemets doubles autour de la valeur. Dans mon cas, c'était "/ opt / local / bin / aspell"
Jistanidiot

11

Ce qui m'a aidé à résoudre ce problème sans modifier mon .emacsavec des chemins absolus (ce que j'étais réticent à faire, car je partage le fichier entre différents systèmes d'exploitation) a été d'installer ispell via brew

brew install ispell --with-lang-en

comme expliqué dans cette réponse (et mon commentaire).


1

Il s'agit d'un problème de variable d'environnement. Le exec-path-from-shellpackage a résolu ce problème pour moi.

Après évaluation (exec-path-from-shell-initialize), ispell a fonctionné.


0

Même si vous n'utilisez brew que pour l'installation ispell et que vous avez installé emacs à partir de ce type de dmg , et que vous exécutez emacs à partir d'une icône dans le dock, vous voudrez vous déconnecter et vous reconnecter, car OS X met en cache les éléments de votre chemin et ne verra pas ispell immédiatement. Si ces informations ne sont pas nouvelles pour vous, vous pouvez probablement contourner ce problème de toute façon.


0

Je suis à peu près sûr que cela doit être un problème résolu à l'heure actuelle, mais je voulais quand même ajouter que j'ai utilisé avec succès ispell dans Mac OS X. Installer ispell dans homebrew puis ajouter le chemin d'accès correct dans .emacs (/ usr / local / bin) résolu le problème pour moi.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.