perlindex man page

perlindex — index and query perl manual pages

Synopsis

perlindex -index
perlindex tell me where the flowers are

Description

""perlindex -index"" generates an AnyDBM_File index which can be searched with free text queries ""perlindex" a verbose query".

Each word of the query is searched in the index and a score is generated for each document containing it. Scores for all words are added and the documents with the highest score are printed. All words are stemed with Porters algorithm (see Text::English) before indexing and searching happens.

The score is computed as:

$score{$document} += $tf{$word,$document}/$maxtf{$document}
                     * log ($N/$n{$word});

where

$N
is the number of documents in the index,
$n{$word}
is the number of documents containing the word,
$tf{$word,$document}
is the number of occurances of word in the document, and
$maxtf{$document}
is the maximum freqency of any word in document.

Options

All options may be abreviated.

-maxhits maxhits
Maximum numer of hits to display. Default is 15.
-menu
-nomenu
Use the matches as menu for calling "man". Default is -menu.q
-cbreak
-nocbreak
Switch to cbreak in menu mode or dont. -cbreak is the default.
-verbose
Generates additional information which query words have been not found in the database and which words of the query are stopwords.

Example

perlindex foo bar
1  3.735 lib/pod/perlbot.pod
2  2.640 lib/pod/perlsec.pod
3  2.153 lib/pod/perldata.pod
4  1.920 lib/Symbol.pm
5  1.802 lib/pod/perlsub.pod
6  1.586 lib/Getopt/Long.pm
7  1.190 lib/File/Path.pm
8  1.042 lib/pod/perlop.pod
9  0.857 lib/pod/perlre.pod
a  0.830 lib/Shell.pm
b  0.691 lib/strict.pm
c  0.691 lib/Carp.pm
d  0.680 lib/pod/perlpod.pod
e  0.680 lib/File/Find.pm
f  0.626 lib/pod/perlsyn.pod
Enter Number or 'q'>

Hitting the keys 1 to "f" will display the corresponding manual page. Hitting "q" quits. All other keys display this manual page.

Files

The index will be generated in your man directory. Strictly speaking in "$Config{man1direxp}/.."

The following files will be generated:
index_fn           # docid -> (max frequency, filename)
index_idf          # term  -> number of documents containing term
index_if           # term  -> (docid, frequency)*
index_seen         # fn    -> indexed?

Author

Ulrich Pfeifer <pfeifer@ls6.informatik.uni-dortmund.de>

Info

2016-05-15 perl v5.24.0 User Contributed Perl Documentation