Re: Using aspell programmatically

Kevin Atkinson <[email protected]> Fri, 7 May 2010 16:20:02 -0600 (MDT)
Newsgroups gmane.comp.gnu.aspell.user
Message-ID <[email protected]>
On Thu, 6 May 2010, John P. Hartmann wrote:

> On 6 May 2010 00:26, Kevin Atkinson <[email protected]> wrote:
>> Basically, if you really want it in there, there are ways to get around
>> this.
>
> I do; how, please?

You can get Aspell to accept any words when creating a dictionary using 
the "--dont-validate-words" command line option.  However, you won't be 
able to use them unless you use the C ABI.  Basically if you add "foo-bar" 
and then have "foo-bar" in a document Aspell will still check for "foo" 
and "bar" and never "foo-bar", but if you use the aspell_speller_check or 
aspell_speller_suggest things will work as expected.

>> I fail to see where Aspell is getting /home/john/aspell/private.  If it is a
>> config variable remove it for now and use
>>  aspell list -d ./private
>> If that doesn't work you might need to rename the dict. to private.rws
>
> With this config:
>
> dict-dir /home/john/aspell/dicts
> data-dir /home/john/aspell/data/aspell5-en-6.0-0
> lang en_GB
> home-dir /home/john/aspell
> personal private.rws
>
> I get:
>
> j /home/john/aspell: mv private private.rws
> j /home/john/aspell: aspell list -d ./private.rws
> <hangs, does not loop>
>
> Commenting out personal in the config file:
>
> j /home/john/aspell: aspell list -d ./private.rws
> Error: The file "/home/john/aspell/private.rws" is not in the proper format.
>
> Regenerating the directory using ./private.rws makes no difference in behaviour.
>
> I then regenerated the directory without the hyphenated word and now
> it hangs when I comment out personal in the config file and issues the
> message when the line is active.

You did not create a personal word list.  You created a read-only word 
list, thus it should not be used as a personal one.  "-d ./private.rws" 
might not work because Aspell expected a ".multi" file.  Look at the 
installed dictionaries for the format.  Also see
   http://aspell.net/man-html/Using-Multi-Dictionaries.html#Using-Multi-Dictionaries

> About pushing/popping private word lists:

You lost me.

> const struct AspellWordList * aspell_speller_personal_word_list(struct
> AspellSpeller * ths);
>
> Gets me the word list, which has a string enumeration member.  I
> suppose that is what needs to be cloned/restored.  Except there is no
> C API functions that look like doing the job.  Any suggestions?

_______________________________________________
Aspell-user mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/aspell-user