Dynamically merged Reverb helpsets
Dynamic Help Merge How-To for Reverb
This question was asked on the wwp-users group, but that archive does not display code examples. I am not the questioner, but I am copying this message here for others.
A few years ago, I created a merged multivolume WWHelp project by converting the books individually then, running a script on the directory that merged the output. I would like to do something similar with Reverb help. I'd like to be able to convert the books one at a time as they become available then merge it into a multivolume help set. Is this possible with Reverb?
Description
Ben Allums responds:
Yes, this is definitely possible.
To do it, you need to be able to copy files/folders and be able to paste in an HTML link.
Here's an example (using our installed help):
C:\Program Files (x86)\WebWorks\ePublisher\2012.3\ePublisher Designer\Help\en
Background:
Your generated Reverb help is contained in a folder along with up to 3 data files. They are:
<group> --> Folder containing all generated HTML pages
<group>.html --> Contains TOC data along with topic aliases
<group>_ix.html --> Contains Index data (if generated)
<group>_sx.js --> Contains Search data (if client-side search)
To combine Reverb help sets, copy those generated files into a common folder. Each help set can keep its folder structure, but they have to be in the same folder hierarchy.
Next, to enable the Reverb runtime to link everything together, you will need to transfer your helpset link from "index.html" into your combined "index.html" (or other entry point file).
The links you need are at the bottom of the "index.html" page in a section labeled "Parcels". Here's an example:
<!-- Parcels --> <!-- --> <div id="parcels"> <ul> <li> <div class="ww_skin_toc_entry ww_skin_toc_folder"> <span class="ww_skin ww_skin_toc_dropdown ww_skin_toc_dropdown_closed"> </span> <a id="welcome:-PSLHoOfCRk" href="01.Welcome%20to%20ePublisher.html" target="_self" title="Welcome to ePublisher">Welcome to ePublisher</a> </div> </li> <li> <div class="ww_skin_toc_entry ww_skin_toc_folder"> <span class="ww_skin ww_skin_toc_dropdown ww_skin_toc_dropdown_closed"> </span> <a id="designing:35jFuetcask" href="02.Designing%20Templates%20and%20Stationery.html" target="_self" title="Designing Templates and Stationery">Designing Templates and Stationery</a> </div> </li> <li> <div class="ww_skin_toc_entry ww_skin_toc_folder"> <span class="ww_skin ww_skin_toc_dropdown ww_skin_toc_dropdown_closed"> </span> <a id="preparing:8mVXggMJy44" href="03.Preparing%20and%20Publishing%20Content.html" target="_self" title="Preparing and Publishing Content">Preparing and Publishing Content</a> </div> </li> <li> <div class="ww_skin_toc_entry ww_skin_toc_folder"> <span class="ww_skin ww_skin_toc_dropdown ww_skin_toc_dropdown_closed"> </span> <a id="reference:XuDJXbqjfiI" href="04.Reference%20Information.html" target="_self" title="Reference Information">Reference Information</a> </div> </li> </ul> </div>
You can dynamically change which helpsets are included in the rendered Reverb view by adding or removing these links. For example, this is valid:
<!-- Parcels --> <!-- --> <div id="parcels"> <ul> <li> <div class="ww_skin_toc_entry ww_skin_toc_folder"> <span class="ww_skin ww_skin_toc_dropdown ww_skin_toc_dropdown_closed"> </span> <a id="welcome:-PSLHoOfCRk" href="01.Welcome%20to%20ePublisher.html" target="_self" title="Welcome to ePublisher">Welcome to ePublisher</a> </div> </li> </ul> </div>
The key point is that each group ID (ex. id="welcome:-PSLHoOfCRk") must be unique because it is used to define the help context for each help set.
I suggest you try playing around with this by making a copy of ePublisher's built-in help and trying to create different combinations of the help.