NAME
Perldoc::Search - Index and Search local Perl Documentation
SYNOPSIS
#######################################
# Command line utility:
#######################################
# This is permanent and needs to be performed only once
# (or if new documentation gets installed).
$ perldig -u
# Then, search:
$ perldig log AND apache AND connect
1) CGI/Carp.pm 2) CGI/Prototype.pm
3) DBI/Changes.pm 4) DBI/Changes.pm
Enter number of choice:
#######################################
# API
#######################################
use Perldoc::Search;
my $searcher = Perldoc::Search->new();
# This is permanent and needs to be performed only once
# (or if new documentation gets installed).
$searcher->update();
# Then, search:
for my $hit ($searcher->search("log AND apache")) {
print $hit->path(), "\n";
}
DESCRIPTION
Perldoc::Search
uses the swish-e engine to index the local Perl documentation. It provides both the command line utility perldig
and an API to perform searches on the index. It uses SWISH::API::Common
as the indexing and search engine.
Most likely, you will want the command line utility perldig
, please check the documentation that comes with it by calling
perldoc perldig
In case you're interested in the API, read on.
METHODS
my $searcher = Perldoc::Search-$<gt
new()>-
Instantiates a searcher object. Usually takes no parameters.
If you like to modify the searched directories or want to pass different options to
SWISH::API::Common
, go ahead:use Config; my $searcher = Perldoc::Search->new( dirs => [$Config{installsitearch}, $Config{installsitelib}, $Config{installarchlib}, $Config{installprivlib}, ], swish_options => { swish_adm_dir => "$ENV{HOME}/.perldig", } );
$searcher-
update()>-
Update the index. This operation might take a couple of minutes.
my @hits = $searcher-
search("log AND apache")>-
Perform a search on the index with the given query. Returns a list of result objects.
# Search documents containing # both "foo" and "bar" for my $hit ($swish->search("foo AND bar")) { print $hit->path(), "\n"; }
LEGALESE
Copyright 2005 by Mike Schilli, all rights reserved. This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.
AUTHOR
2005, Mike Schilli <cpan@perlmeister.com>