packages icon
    The Swish-e README File

    If you are upgrading Swish-e, please review the CHANGES file before
    installation. The index format may change and existing indexes may need
    to be re-created before use.

    Swish-e is Simple Web Indexing System for Humans - Enhanced. Swish-e can
    quickly and easily index directories of files or remote web sites and
    search the generated indexes.

    Swish-e is extremely fast in both indexing and searching, highly
    configurable, and can be seamlessly integrated with existing web sites
    to maintain a consistent design. Swish-e can index web pages, but can
    just as easily index text files, mailing list archives, or data stored
    in a relational database.

    Swish is designed to index small- to medium-sized collection of
    documents, Although a few users are indexing over a million documents,
    typical usage is more often in the tens of thousands. Currently, Swish-e
    only indexes eight bit character encodings.

    Swish-e version 2.2 was a major rewrite of the code and the addition of
    many new features. Memory requirements for indexing have been reduced
    and indexing speed is significantly improved from previous versions. New
    features allow more control over indexing, better document parsing,
    improved indexing and searching logic, better filter code, and the
    ability to index from any data source.

    Swish-e version 2.4 includes a major rewrite of the C API and a new Perl
    module for accessing the Swish-e C library. In addition, Swish-e 2.4
    uses the GNU Auto Tools. The significant changes are where files are
    installed, and the use of Libtool to create the Swish-e library as a
    shared library on many platforms. Basically, installation is easier than
    previous versions, and more files are installed in "standard" locations
    (e.g. documentation is installed in "$prefix/share/doc/swish-e").

    Note: Due to the new build and installation system in Swish-e 2.4, some
    documentation may incorrectly list the location of files. Please report
    any documentation errors to the Swish-e Discussion list.

    Swish-e is not a "turn-key" indexing and searching solution. The Swish-e
    distribution contains most of the parts to create such a system, but you
    need to put the parts together as best meets your needs. This gives you
    the power to index and search your documents the way you wish and to
    seamlessly integrate a search engine into your web site or application.

    To use Swish-e, you will need to configure Swish-e to index your
    documents, create an index by running Swish-e, and setup an interface
    such as a CGI script (a script is included) to search the index and
    display results. Swish uses helper programs to index documents of types
    that Swish-e cannot natively index. These programs may need to be
    installed separately from Swish-e.

    Swish-e is an Open Source (see: ) program
    supported by developers and a large group of users. Please take time to
    join the Swish-e discussion list at .

  Key features
    *   Quickly index a large number of documents in different formats
        including text, HTML, and XML.

    *   Use "filters" to index other types of files such as PDF, gzip, or

    *   Includes a web spider for indexing remote documents over HTTP.
        Follows Robots Exclusion Rules (including META tags).

    *   Can use an external program to supply documents to Swish-e, such as
        an advanced spider for your web server or a program to read and
        format records from a relational database.

    *   Document "properties" (some subset of the source document, usually
        defined as a META or XML elements) may be stored in the index and
        returned with search results.

    *   Document summaries can be returned with each search.

    *   Word stemming, soundex, metaphone, and double-metaphone indexing for
        "fuzzy" searching

    *   Phrase searching and wildcard searching

    *   Limit searches to HTML links.

    *   Use powerful Regular Expressions to select documents for indexing or

    *   Easily limit searches to parts or all of your web site.

    *   Results can be sorted by relevance or by any number of properties in
        ascending or descending order.

    *   Limit searches to parts of documents such as certain HTML tags
        (META, TITLE, comments, etc.) or to XML elements.

    *   Can report structural errors in your XML and HTML documents.

    *   Index file is portable between platforms.

    *   A Swish-e library is provided to allow embedding Swish-e into your
        applications for very fast searching. A Perl module is available
        that provides a standard API for accessing Swish-e.

    *   Includes example search script with context summaries and search
        term and phrase highlighting. Can be used with popular Perl
        templating systems.

    *   Swish-e is fast.

    *   It's Open Source and FREE! You can customize Swish-e and you can
        contribute your fancy new features to the project.

    *   Supported by on-line user and developer groups.

Where do I get Swish-e?
    The current version of Swish-e can be found at:

    Please make sure you use a current version of Swish-e.

    Information about Windows binary distributions can also be found at this

How Do I Install Swish-e?
    Read the INSTALL page.

    Building from source is recommended. On most platforms, Swish-e should
    build without problems. A list of platforms where Swish-e has been built
    can be found in the INSTALL page. Information on building for VMS and
    Win32 can be found in sub-directories of the "src" directory. Check the
    Swish-e site for information about binary distributions (such as for

    In addition to the INSTALL page, make sure you read the SWISH-FAQ page
    if you have any questions, or to get an idea of questions that you might
    someday ask.

    Problems or questions about installing Swish-e should be directed to the
    Swish-e discussion list (see the Swish-e web site at

    Please read "Where do I get help with Swish-e?" below before posting any
    questions to the Swish-e list.

The Swish-e Documentation
    Documentation is provided as HTML pages installed in
    $prefix/share/doc/swish-e where $prefix is /usr/local if building from
    source, or /usr if installed as part of a package from your OS vendor.
    Under Windows $prefix is selected at installation time.

    A subset of the documentation is installed as system man pages as well.

    Documentation is also available on-line at

    Patches or updates to the documentation should be done against the POD
    files, located in the pod directory of the distribution, or (preferably)
    against the CVS repository.

Where do I get help with Swish-e?
    If you need help with installing or using Swish-e, please subscribe to
    the Swish-e mailing list. Visit the Swish-e web site (listed above) for
    information on subscribing to the mailing list.

    Before posting any questions, please read QUESTIONS AND TROUBLESHOOTING.

Speling mistakes
    Please contact the Swish-e list with corrections to this documentation.
    Any help in cleaning up the docs will be appreciated!

    Any patches should be made against the ".pod" files, not the ".html"

Swish-e Development
    Swish-e is currently being developed as an Open-Source project on

    Contact the Swish-e list for questions about Swish-e development.

Swish-e's History
    SWISH was created by Kevin Hughes, circa 1994, to fill the need of the
    growing number of Web administrators on the Internet - many of the
    indexing systems were not well documented, were hard to use and install,
    and were too complex for their own good. The system was widely used for
    several years, long enough to collect some bug fixes and requests for

    In Fall 1996, The Library of UC Berkeley received permission from Kevin
    Hughes to implement bug fixes and enhancements to the original binary.
    The result is Swish-enhanced or Swish-e, brought to you by the Swish-e
    Development Team.

Document Info
    Each document in the Swish-e distribution contains this section. It
    refers only to the specific page it's located in, and not to the Swish-e
    program or the documentation as a whole.

    $Id: README.pod 1663 2005-02-11 17:00:13Z whmoseley $