
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. |
When I wrote the first version of this article, the WebHelp search in RoboHelp was somewhat lacking. The most common requests for improvements were:
RoboHelp 8 has addressed those requirements and will meet the needs of many users. However, if cannot upgrade or you need any or all of these features, then you should consider ZoomSearch.
I first came across ZoomSearch when I saw a post on the RoboHelp forums extolling its virtues 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.
In this step you set up some folders in your source project(s). The folders needed will vary according to whether you are dealing with one project or a merge, they will also vary according to whether you want to offer one search or a number of searches. I have set out the details in the table below.
Also before you can do anything in ZoomSearch, you need a published output. That is not the same thing as a generated output.
If you don't currently publish, simply create a folder on your hard disk to which you can publish and then in RoboHelp, open the WebHelp layout and go to the last page of the wizard where you can set up the publishing details.
I strongly recommend that first time around, you work with a dummy project and use the Single Project, Single Search setup. Once you have got that working, it really will be much simpler to set up the others.
When you are ready to work on your real project, do so with a copy first. If you get it wrong, you can simply trash the copy and start again. So with that in mind, these are some suggested configurations. You may need others and you will be able to work those out once you have worked on the simpler setups first.
These suggestions are based on the method of merging described elsewhere on my site. If you do not follow that structure, you will need to modify these instructions to suit your setup.
Project and Search Type |
Action |
| Single Project - Single search. |
In Project Manager go to HTML Files (Topics) and create a folder with the name search_files.
|
| Single Project - Search options. | In Project Manager go to HTML Files (Topics) and create a folder with the name search_files. Then create sub-folders with a suitable name for each search. |
| Merged WebHelp - No search options. | Open the main child project (the one to which the redirect in the parent points). In Project Manager go to HTML Files (Topics) and create a folder with the name search_files. |
| Merged WebHelp - Search all projects plus separate searches for some or each of the child projects. | Open the main child project (the one to which the redirect in the parent points). In Project Manager go to HTML Files (Topics) and create a folder with the name search_files. Then create two sub-folders. One called all for the full search of the help and one called child1 for the search of just that project. Next open each child project that is to have its own search and create a folder with the name search_files. |
| Merged WebHelp - Search options not related to child projects. | Open the main child project (the one to which the redirect in the parent points). In Project Manager go to HTML Files (Topics) and create a folder with the name search_files. You will need sub-folders for the other searches with a meaningful name. |
After creating these folders, generate and publish your help.
You need equivalent folders in the published help as this is where ZoomSearch will create the files it requires.
If the output is a merged webhelp setup, these instructions assume your structure is the one I describe elsewhere on my site. If you have a different structure you will have to adapt these steps.
Project and Search Type |
Published Help Folders |
| Single Project - Single search. | For a single project with no search options, add a folder called search_files immediately below the folder to which you published the help.
|
| Single Project - Search options. | As above, then click on search_files and create sub-folders with a suitable name for each search. |
| Merged WebHelp - No search options. | Locate child_1 under mergedProjects and add a folder called search_files.
|
| Merged WebHelp - Search all projects plus separate searches for some or each of the child projects. | As above, then click on search_files and create two sub-folders, all and child1. Then go to the other child projects under mergedProjects and add a folder called search_files. |
| Merged WebHelp - Search options not related to child projects. | The folders need will vary according to what your search options need to cover. If the options spread across a number of the projects, it is likely you will need to add further folders to search_files within child1. If the options relate to specific child projects, then create further sub-folders. By the time you need to set up such options, how will be much clearer. |
Now we can open ZoomSearch. The free version from www.wrensoft.com allows you to search up to fifty pages so work with a suitable size project while you are testing. That gives you the chance to prove to yourself that it really is as straightforward as I describe.
This section describes Version 5 of ZoomSearch. I will shortly be updating it to cover Version 6.
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.
Each search option that you create will need its own configuration file and the details above will need to be amended for each option you offer.

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.
In short:
Next you need to set up the rest of the details for the ZoomSearch configuration files, one 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.
If your options include RoboHelp outputs outside the merge, note that ZoomSearch does not open the help using the method startpage.htm#path/target.htm.
If this is your first time working with ZoomSearch, remember that I suggested you work with a single project and a single search so please use Method 1 at this stage.
For use where the end user will be given just one search option.
For use where the end user will be given multiple options.
If the output is a merged webhelp setup, these instructions assume your structure is the one I describe elsewhere on my site. If you have a different structure you will have to adapt these steps.
In this step you will set up and test the page to which your users will go to select which search option they want to use.
Now you can link the search data for the whole output.
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).
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! The search data will need to be created again so that it does not include the details of the modules not delivered.
If you need to generate a number of configurations, James Reinhard very kindly sent me a batch file that he developed in consultation with Wrensoft. Download this text file in which James has put all the information you need.
![]()
Date |
Changes to this page |
| 13 May 2009 | Topic rewritten. |
| 30 Aug 2008 | Generating muliple ZoomSearch Configurations added. |
| 11 Jan 2007 | New topic. |