
What's covered?This topic covers the use of ZoomSearch, a search tool from Wrensoft. It is used on this site and can also be used in conjunction with a RoboHelp project. The instructions here specifically cover setting things up to work in RoboHelp projects but you should be able to adapt them for use with other HTML editing tools. Note that these instructions only apply to webhelp outputs. ZoomSearch will not work with compiled HTML help in CHM format. |
The way that RoboHelp's search function works suits many users but others are looking for something more. The most common requests are:
Some time ago I saw a post on the RoboHelp forums extolling the virtues of ZoomSearch and a while later I needed a search tool for an intranet. Having looked once before at such search tools, I was immediately impressed by the ZoomSearch interface. It is largely intuitive, where it isn't there is online help, and behind it all is David Wren who I have found most helpful. You don't need a developer's mindset to use ZoomSearch.
Nearly all the above! The exception is true natural language searches but
it does support basic boolean operations (AND, OR, NOT, Wild cards. Also exact
phrases except as mentioned later).
One of the cool things you can do is have more than one search option. By adding a Search Options page, you can offer the user the ability to search the whole help output, any number of specific areas or an external intranet. Take a look at how it works first.
Search on the word Child as to keep the demo compact, the topics contain few words. You can also see ZoomSearch working by using the Search menu on this site.
Create your help in the normal way, be that a single webhelp project or merged webhelp. You will need to both generate and publish your output later. When you generate the help, RoboHelp clears the output folders and generates new folders and topics whereas when you publish it simply updates some or all of your topics. We need to add some folders to the RoboHelp output that we do not want trashed each time we create a new output, hence working on the published output.
In the demo projects, I have set those stages up as:
This topic focuses on Stage 4.
Two things to do with your help before proceeding further.
Now we can open ZoomSearch. The size of the demos is such that you can use the free version from www.wrensoft.com. That gives you the chance to prove to yourself that it really is as straightforward as I describe.
When you open ZoomSearch you will see the first thing you need to do is define what is to be searched and how. Before you do that though I recommend you create a configuration file. ZoomSearch always opens to the default search configuration so select File | Save As and create a meaningful name. Now during this session of ZoomSearch any saves will be to your configuration.
Now you need to decide what how you are going to deploy ZoomSearch. For this topic I am going to use the javascript method but how do you decide what is right for you? If you visit Wrensoft's site, the differences are explained but for RoboHelp you need only consider PHP, CGI or Javascript.
In short:
Next you need to create a ZoomSearch configuration file for each search that you want. For now let's just think about creating a single search across the whole help project. We can cover multiple search options later.
ZoomSearch Tab |
Comments |
| General | The first thing you will see is the level of on screen support. Also note the Help button that takes you to good context sensitive help. In addition there is a more comprehensive PDF file on the Wrensoft site. Accept the defaults for now. |
| Search Page | Again the fields are all fairly obvious. Accept the defaults for now. |
| Scan Options | This lists all the file types that will be scanned. You will probably want to delete all except HTM and perhaps HTML. Note that plugins are available to also search PDF and DOC files. They are easy to set up and work well. I use them on a company intranet and they work very well but they are outside the scope of this topic. |
| Skip Options | This lists all the folders and files that will not be scanned and the words that will not be indexed. This tab requires some consideration. You need to exclude the internal folders and files that RoboHelp creates otherwise your users will be able to access them with ugly results.
For now, set up those exclusions. Examine the results of your first search later and make further changes if required. Note also the ability to define words not to be included in the search. If a user searches on one of those words, they will be told it has been excluded from the search. |
| Indexing Options | Accept the defaults for now. |
| Results Layout | Accept the defaults for now. You can only modify the template after creating your first index file so look at that later. |
| Categories | I haven't used this part of ZoomSearch but the word from someone who has was "doddle"! |
| Synonyms | This can be useful where, for example, you use the term Warehouse in your help but know your customers may use Depot or some similar term. |
| Limits | The maximum number of files that ZoomSearch will index varies with the version.
|
| Authentication | For most help projects this will not be required. Use if the help is on a publicly accessible site and you want to index the files on the server rather than a local copy. |
| FTP | Do remember you must run the index every time you create a new output. It is not done automatically when you generate the help. You can configure ZoomSearch to upload the files after indexing or you can upload them manually. |
| Languages | If these fields don't mean anything to you, leave them alone! You will know if they are relevant. |
| Status Log | This defines what you want to see displayed when the indexer runs. Accept the defaults for now. |
| Advanced | Accept the defaults for now. |
Before you run the indexer, click Save. You don't want to lose those settings.
Then click Start Indexing and sit back, not for long though unless you have a really heavyweight target!
Examine the statistics at the end of the log in the ZoomSearch screen. Do they seem about right?
Look at the files searched. Anything you do not want in the results? If there is, go back to the skip list and edit it, then run the indexer again.
At this point we have our help output and within its folders we have the search data. Trouble is that at the moment, they are not talking to each other.
I will cover two ways of linking the search to your project. The table should help you decide which method to use. Where merged webhelp is used you need to consider the options very carefully. For example, if you have a search that covers all topics and you then only deliver some of the child projects the search will include topics that you have not delivered and the user will get a page not found option. Oops!
Project and Search Type |
Method 1 |
Method 2 |
| Single Project - Single search. | ||
| Single Project - Search options. | ||
| Merged WebHelp - No search options. | ||
| Merged WebHelp - Search options given but the options do not include specific child projects. | ||
| Merged WebHelp - Search options including specific child projects. |
This method assumes your structure is the one I describe in Merging WebHelp. If you have a different structure you will have to adapt these steps. Try the steps using the downloadable demo to understand the concept first. At this stage I need to point out that so far you have only created one search database. The steps include creating the additional databases.
Now we need to change the way the search of all topics is configured and then set up the searches of the child projects.
In Stage 3 we create all the additional search options that are required. For the child projects, I suggest you create and save separate ZoomSearch configurations.
Remember, because you are using a tool external to RoboHelp, the search data is not automatically updated when you generate and publish. You have to remember to update the search when you update your output(s).
![]()
Date |
Changes to this page |
| 11 Jan 2007 | New topic. |