NAME

Search::Tools::SpellCheck - offer spelling suggestions

SYNOPSIS

use Search::Tools::SpellCheck;

my $query = 'the quick fox color:brown and "lazy dog" not jumped';
 
my $spellcheck = 
   Search::Tools::SpellCheck->new(
                       dict        => 'path/to/my/dictionary',
                       max_suggest => 4,
                       );
                       
my $suggestions = $spellcheck->suggest($query);

DESCRIPTION

This module offers suggestions for alternate spellings using Text::Aspell.

METHODS

new( %opts )

Create a new SpellCheck object. %opts should include:

dict

Path(s) to your dictionary.

lang

Language to use. Default is en_US.

max_suggest

Maximum number of suggested spellings to return. Default is 4.

query_parser

A Search::Tools::QueryParser object.

BUILD

Called internally by new().

suggest( @terms )

Returns an arrayref of hashrefs. Each hashref is composed of the following key/value pairs:

word

The keyword used.

suggestions

If value is 0 (zero) then the word was found in the dictionary and is spelled correctly.

If value is an arrayref, the array contains a list of suggested spellings.

aspell

If you need access to the Text::Aspell object used internally, this accessor will get/set it.

__END__

AUTHOR

Peter Karman <karman@cpan.org>

ACKNOWLEDGEMENTS

Thanks to Atomic Learning www.atomiclearning.com for sponsoring the development of this module.

Thanks to Bill Moseley, Text::Aspell maintainer, for the API suggestions for this module.

BUGS

Please report any bugs or feature requests to bug-search-tools at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Search-Tools. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Search::Tools

You can also look for information at:

COPYRIGHT

Copyright 2009 by Peter Karman.

This package is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Search::Tools::QueryParser, Text::Aspell