Sman
==================
NAME
The sman README
What is sman?
Sman is the Searcher for Man pages. Based on the example of the
same name in Josh Rabinowitz's article "How To Index Anything"
in the July, 2003 issue of Linux Journal
(
http://www.linuxjournal.com/article.php?sid=6652), sman is
an enhanced version of 'apropos' and 'man -k'. Sman adds
several key abilities over its predecessors:
* Supports complex natural language text searches such as
"(linux and kernel) or (mach and microkernel)"
* Shows results in a ranked order, and optionally an extract
(using -e) of the manpage showing the searched text highlighted
* Allows for searches by manpage section, title,
body, or filename (use 'metaname=searchword')
* Indexes the complete contents of the man page, not just
the title and description
* Uses a prebuilt index to perform fast searches
* Performs 'stemming' so that a search for "searches"
will match a document with the word "searching"
Where do I get sman?
Sman is currently distributed from
http://joshr.com/src/sman.
It's always best to make sure you use a current version of sman.
How do I install sman?
To install this module type the following:
perl Makefile.PL
make
make test
make install
Dependencies:
Sman depends on SWISH-E 2.4 or above.
SWISH-E can be found at
http://www.swish-e.org/Download/
Building the index:
The included sman-update script is used to build (and rebuild)
the sman index, which is comprised of the files 'sman.index'
and 'sman.index.prop'.
Searching the man page index with sman:
The sman command is fairly simple. As its help output says:
Usage: sman [--max=#] [--rank] [--number] [--index='index']
[--file] [--help] [--repeats] [--begin=#'] [--config=file]
[--quote='"'] [--verbose] [--VERSION] searchwords
Ranked freetext searches on manpages.
Options:
--max=#: limit number of results, default 20
--number: show the number of each hit
--repeats: show repeat manpages
--begin=#: start showing hits at number N
--rank: show the rank of each hit
--file: show the source man file for each hit
--extract: show extraction of manpage for each hit
--config=my-sman.conf: a config file (specs an index file)
--index=index: specify an index (overrides config)
--quote="'": specify a quoting char for output
--verbose: show more output
--VERSION: show version and exit
--help: this help information
MORE INFO
Sman is somewhat thoroughly documented. For more info, see
'perldoc sman', 'perldoc sman-update', or the Sman distribution.
TESTING
Sman has been tested on several versions of perl and unix-like operating
systems. We welcome bug reports and fixes for all platforms!
COPYRIGHT AND LICENCE
This software is licensed the same as perl itself.
Copyright (C) 2003-2005 Josh Rabinowitz <joshr>