7

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?

Karpov
  • 256
  • 1
  • 4
  • 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: http://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

1 Answers1

5

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/

Crest
  • 51
  • 1
  • 3