### 10.10.1 Understanding how OmniHelp FTS works

OmniHelp supports single-term and Boolean (AND, OR, NOT) full-text search. A search on a phrase is implemented by successively ANDing the search terms: topics found include all terms in the phrase, except for stop words (see §10.10.6 Excluding search terms), whether or not those terms occur together.

There are some limitations:

• Search does not find terms that start with non-alphanumeric characters. For example, to find $$_currbase, you would have to search for currbase; and to find -progid, you would have to search for progid.

• Search does not find partial terms; for example, a search for curr finds <$Curr>, but not $$_currbase.

• Search reports every instance of a hit, even if several instances are in the same topic. To remove extra instances of a term from the search index, you can delete duplicate entries from the JavaScript array in myproj_ohs.js, either by hand or with a UNIX-style utility such as uniq, from Cygwin.

Because OmniHelp is Open Source, anyone can modify or replace the search function to overcome these limitations. You can contribute to the OmniHelp project any tool you make for this purpose, at Sourceforge:

https://sourceforge.net/projects/omnihelp/

See §10.1 Understanding how OmniHelp works.

| 10.10 Configuring full-text search for OmniHelp |  | 10.10.2 Generating search data |