This content has been marked as final. Show 7 replies
The way context sensitive help was designed for compiled HTML Help was so that you could have one map file that the developer could produce. As the help author, with two .chm files, you might have two alias files, however. Open up your .h (or .hh) and .ali files from your project. These will both be text files so you can open them in notepad. The .hh file will have the syntax #define IDH_IDNAME mapnumber and the .ali file will have the syntax IDH_IDNAME=topicfilename.htm. The two file technique is used to allow just what your developer is asking for. The developer wants to produce a single map file and you want to link the same map number to different topics.
I'm not sure how to tell you how to do this in RoboHelp - I would manually edit the .ali file - and a lot depends on how you are producing the two .chm files. Are they separate projects or are you using build tags from a single project?
John, I am using build tags to produce two .chm files from a single project.
That complicates things for me because I am not very familiar with the latest versions of RoboHelp. I don't know if you can easily manage two .ali files from within RH. My version of RH predates build tags and I do a lot of work outside of RH. I don't know if that would be practical in your development environment. I'm sorry I can't be of more help. Hopefully, someone more knowledgable will pick up this thread.
No problem. Thank you for pointing me toward multiple alias files as a possible solution.
I think John is on the right track here. If you are producing different .chms from the one single source, you need to be able to manipulate the .ali file that will be used with each of the compiles.
I had to do a similar thing recently to maintain different wording on TOCs for two builds from the one project. I just shuffled the .hhc files from my two special 'holding pens' and copied the one I wanted back into the project before I compiled.
You could create one .ali file by linking the context ids to the relevant topics for the first build and then copy it to a 'holding pen' directory somewhere safe. Then create the .ali file for the second build and copy it to another holding pen.
Then when you need to compile you could copy the relevant .ali for the build you are working on. Then replace it for the next compile.
As it can't be automated, you'd have to be very deligent about updating both .ali files with new topics and changes as they occur.
It's a bit of a drag - but it does work.
I think multiple .ali files is the right solution.
Just for grins and giggles, did you try a single .ali file with all the topics and duplicate IDHNAMEs? I don't know if you're allowed to do this in the RH GUI, or if you can get away with it in Notepad, but it might be worth testing on a copy of your project for a small subset of screens.
.hh file -
#define INVENTORY 31 (31 is the map ID for the app Inventory screen)
.ali file -
With any luck, the CSH call will find whichever of the topics actually exists in this conditional build. (This inspiration is courtesy of AuthorAnne, who just explained to me that merged .chms work kind of like this.)
Thanks so much Kathy and Elisa!