Including .chms linked in master TOC in search results

This forum is for all Flare issues related to the Microsoft HTML Help target.
This target produces "CHM" files in the output.
Post Reply
cburnett
Jr. Propeller Head
Posts: 8
Joined: Wed Nov 29, 2017 9:09 am

Including .chms linked in master TOC in search results

Post by cburnett »

My company recently acquired Flare and we're in the process of converting our documentation over from Help&Manual. My first project has been setting up the infrastructure for our HTML Help (.chm) database.

To briefly explain our setup: Each screen in our company's software is programmed to call for a specific .chm filename and keyword when F1 is pressed with the cursor in a field on that screen. For example, pressing F1 in the Principal Balance field on the Account Detail screen opens the HTML Help page for LoansInformationTabs.chm, keyword AccountPrincipalBalance. We have about 300 Flare projects converted over so far, one for each screen in our main software. Each Flare project has been set up with an HTML Help Target for publishing the project as a .chm file.

I have created a huge master project in Flare (MASTERHelpFile.flprj), the TOC of which is organized into a master table of contents for our entire software. This table contains links to every individual .htm file from every Flare-published .chm, each of which was imported to the MASTERHelpFile as an external file and added to its Content > Resources > CHMSupport folder.

This master project is also published as a .chm file (MASTERHelpFile.chm). Each Flare project's HTML Help Target designates its Master TOC as one that links to the MASTERHelpFile.chm. This means that, no matter where F1 Help is accessed in our software, the master table of contents (containing all help topics) is visible, navigable, and locatable on the left of the HTML Help dialog.

In terms of navigation, this setup works perfectly. The problem, however, has to do with the search function.

In our current setup, when F1 is pressed on a screen and the HTML Help Search tab is used, searches that are run ONLY search the accessed screen's .chm file, .chm files which are linked in the text of the accessed screen's .htm files, and .htm files that are unique to the MASTERHelpFile. Searches run from this tab do NOT include any results from the vast majority of .chm files linked in the MASTERHelpFile TOC.

Is there any way to adjust the HTML Help Search function so that it includes results from all .chm files linked in the accessed .chm file's designated TOC?

Thanks in advance for any input.
Last edited by cburnett on Thu Nov 30, 2017 8:42 am, edited 1 time in total.
cdschroeder
Sr. Propeller Head
Posts: 189
Joined: Mon Feb 22, 2016 9:18 am
Location: Cincinnati, OH

Re: Including .chms linked in master TOC in search results

Post by cdschroeder »

Are you particularly attached to having multiple .chm files? If you only use a single master .chm, you can set up context-sensitive links to call the correct page for each function.

That would solve your search problem, and make the output easier to maintain (while still keeping the F1 help for each function intact).
Casey

Image
ccfisher76
Propeller Head
Posts: 12
Joined: Thu Aug 31, 2017 7:43 am

Re: Including .chms linked in master TOC in search results

Post by ccfisher76 »

Hi, I am Charles' associate. Yes, we are committed to having many CHMs tied together by a master. It's both a strength and a weakness. The strength is that search results show what screen the help is found on because each screen is its own chm. The weakness is that we have a lot of help files and they don't work easily together because of the F1 component.

Your idea gave me some good insight, though. Our limitations are that the CHM files (we have 400) reside in a Help folder outside the exe. So the developers programmed the F1 key to look in that Help folder for the specific CHM call, but the hh.exe window resides with the exe. So even though the developer programmed the F1 key to go to the Help folder, hh.exe program remains with the exe location. And even though we've developed a Master TOC and each individual CHM uses a Master TOC, the hh.exe Search tab is still only looking in the location of just the individual CHM because that's where the programmer says it is. The Search tab is incapable of looking through all the CHM files. (Weird glitch, however: any links in the individual CHM magically cause the search to find those individual CHMs within the Master TOC. If there aren't any links, than the Master TOC only finds topics matching the help pulled from the F1 CHM).

Another limitation is that the developers haven't made each keyword unique across our entire system. For example, if you have an AccountNumber keyword in the CardOptions.chm, you may also have an AccountNumber keyword in the LoanPayment.chm. So when combined as a master file with run-time qualifications, both keywords come up if the Master CHM resides next to the exe. But since the F1 key is pointing back to a Help folder (that contains all the CHMs), it only looks for the specific CHM with the unique keyword within that individual CHM (e.g., it will only look in CardOptions.chm to find the AccountNumber.htm file). Whereas when I tried the F1 function like you suggested by having the MasterCHM reside next to the exe, the help came up with two windows for the CHM.

So I tried that idea you had about putting a MasterCHM in the same location as the exe. But what happened was I then had two help items appear when I pressed F1 in the program.
cdschroeder
Sr. Propeller Head
Posts: 189
Joined: Mon Feb 22, 2016 9:18 am
Location: Cincinnati, OH

Re: Including .chms linked in master TOC in search results

Post by cdschroeder »

ccfisher76 wrote:The strength is that search results show what screen the help is found on because each screen is its own chm.
Can you expand on what you mean by this? Off the top of my head, if I'm understanding you correctly, I would say that the topic title (as displayed in the search results) should suffice to show the feature that the help refers to. But I might be misunderstanding.

Also, to clarify: are you familiar with context-sensitive help, and how it can be implemented through Flare? What I was describing previously is a single .chm with many topics (in our case, 1000+), each with their own unique ID number that can be called via the software.
Casey

Image
ccfisher76
Propeller Head
Posts: 12
Joined: Thu Aug 31, 2017 7:43 am

Re: Including .chms linked in master TOC in search results

Post by ccfisher76 »

Yes, I am familiar with context-sensitive help. That is what we have too, but it is accessed through putting your cursor in a field in the program and press F1, instead of by clicking on icon or hovering over a help question mark.

We have a modular help system, which is a bunch of CHMs, and we as writers create a MasterCHM and insert all the smaller CHMs into the Master CHM. What it gives is a really cool, quick search function, as shown below:

Here's what the results look like with publish-time master:
publishtimemerge.png
Here's what the search results are for run-time master:
mergetimerun.png
I like how I can quickly tell which screen that help item is found.

Plus, a run-time compiled Master help is much smaller than a publish-time colossal Master help. (To think of it visually, it would be the difference between books on a library shelf verses a gigantic book that has all those pages from those books within the one book.)
You do not have the required permissions to view the files attached to this post.
cdschroeder
Sr. Propeller Head
Posts: 189
Joined: Mon Feb 22, 2016 9:18 am
Location: Cincinnati, OH

Re: Including .chms linked in master TOC in search results

Post by cdschroeder »

Gotcha. That's definitely a setup I haven't seen before, but it seems pretty useful. Unfortunately (having only worked with standalone .chms), I'm not sure how to approach your search issue without combining the files. But hopefully someone else chimes in with an idea! You could also try Flare support if you don't get an answer here.
Casey

Image
Post Reply