4

I'm having difficulty getting flyspell to accept a personal dictionary.

In my .emacs file I have the line:

(setq ispell-personal-dictionary "~/.karpov_dic")

This .karpov_dic file only has a few words such as:

Orionis
Virginis

The words are separated by \n characters. There's only one word per line, which is how I have seen ispell/aspell customized dictionaries so far.

Yet, in Emacs, when I start

M-x flyspell-mode

I get this:

Error: The file "/home/karpov/.karpov_dic is not in the proper format.

Any clues?

  • 2
    The format of the personal dictionary depends on the back-end used (it could be either genuine Ispell, Aspell or Hunspell, maybe more). The program used can be found by examining the value of ispell-program-name variable. Here are instructions for creating a personal dictionary with Aspell: aspell.net/man-html/Creating-an-Individual-Word-List.html – wvxvw Jun 24 '15 at 23:07
  • Thanks! The program is aspell. But I don't quite get why it has to be so complicated. I've used aspell with text editors like gedit on Debian and Ubuntu (gnome, XFCE, etc.) and the personal dictionary is just a simple list of words which aspell accepts every time. I'm trying to figure out why it seems to be so different with Emacs. – Karpov Jun 25 '15 at 14:59
  • 1
    Well, I think that the motivation for having a special dictionary format is, from the program perspective, that it will take less space and facilitate faster word lookup (looking up a word in a list would take time proportional to the length of a list, but structures like queues may offer logarithmic time, and hash-tables can do lookups in amortized constant time). Without knowing the details, I'd imagine that other editors run Aspell on the file supplied by the user to create a dictionary, but maybe there's more going on. – wvxvw Jun 25 '15 at 15:40
  • @wxvw The link you have indicated (aspell.net/man-html/Creating-an-Individual-Word-List.html), if I get it right, says that the dictionaries are compiled and platform dependent. Having large personal dictionaries that I need to use, I guess I'll have to do the spellchecks out of Emacs :( Except of course if I can find another spellcheck program for Emacs that accepts personal dictionaries like other text editors out there use. – Karpov Jun 25 '15 at 21:04
2

The error appears if you have an empty file or no file in place. You need at least a header line in your dictionary file. following the format

personal_ws-1.1 lang num [encoding]

like

personal_ws-1.1 en 0

as described in aspell documentation

See also:https://blog.samat.org/2008/11/02/creating-your-own-personal-aspell-dictionary/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.