Skip to main content
MW-ASI18
Participating Frequently
February 20, 2023
Question

CSH setup/configuration instructions/examples for developers - Responsive HTML5 (RH 2019 Classic)

  • February 20, 2023
  • 5 replies
  • 898 views

Request for Information:

I'm seeking Adobe documentation, instructions, videos, tutorials, or any type of information that explains the process for completing CSH setup for a help file using Responsive HTML5 output and/or a help file being converted from Webhelp to Responsive HTML5 output. If this information exists and links can be provided, fantastic, please reply to this post with those links. If nothing like that exists, what steps must be taken to get an existing RoboHelp customer the necessary information to provide to a developer? If this requires a consultation or contracted work from the Adobe RoboHelp team to implement, please explain.

Background:

We currently use RoboHelp 2019 Classic to create and successfully generate a content-sensitive help file using Webhelp output (e.g., all MapIDs are configured so that pressing [F1] opens the help file to the article/topic for the corresponding screen). Please note: my company has been using RoboHelp for more than a decade, and we recently upgraded from 2015 Classic to 2019 Classic (we chose that option specifically so that the context-sensitivity would not be affected).

However, we need to change the output of the help file from Webhelp to Responsive HTML5 and eventually upgrade RoboHelp to a non-Classic version, but the need for functional content-sensitivity has prevented us from moving forward. So, before we can begin the process of upgrading, we need to know how to configure the content-sensitivity to get it to work for Responsive HTML5. Unfortunately, our original and current configuration was completed a very long time ago, and absolutely no one knows where to start in terms of the work developers need to complete. [I should mention that our organization is rather medium-to-large size, and only the technical writers have access to Adobe RoboHelp 2019 Classic. It is not available to developers, nor are they aware of the application in terms of functions or usage.]

I have scoured the RoboHelp help file, related documentation, as well as the community, but I cannot locate any type of instructions for the developers. I am aware of the Program Files > Adobe > Adobe RoboHelp 2019 > CSH API folder and the various files for the different languages. I am also aware of the Documents > My RoboHelp Projects > Adobe RoboHelp Classic 2019 > Samples > Travel_the_Whirls > Travel_the_Whirls HTM files that attempt to provide some context (although they are extremely outdated, and the screenshots/info provided are so high-level that they are little value to a developer). In addition, I know how to configure the content-sensitive help in terms of the MapIDs, and recently learned of the Toolbox > CSH Test utility (even though it will not work for the newly published Responsive HTML5 output) because of a YouTube video posted by a non-Adobe employee. I also read the contents of the RoboHelp_CSH.js file (even though I'm unsure if that file is the language we're supposed to be using) and while it provides examples, again, there is just no context or examples. While I can provide those files to developers, they are not going to read through each of the CSH API folders/files to consume everything, and it's unrealistic to ask them to do so (it is very difficult to get developer resources/time as it is at any software company, let alone to do it without being able to provide any instructions, tutorials, examples, etc.)

Comments/Feedback:

I will also note that trying to locate this information is extremely frustrating - especially when there are bits and pieces in various locations but nothing truly comprehensive. While I expect that new customers are “hand-held” through the CSH setup process (at least to a degree), this information has to be valuable to many existing customers. I highly recommend that Adobe take the time to consolidate the information, update it where needed, and provide it somewhere easily found/referenced for all customers. This functionality is a value add to RoboHelp, but not if people cannot figure out how to get it to work for their needs.

Separately, I’m posting this request here because we currently must play “telephone” to get direct support from Adobe. By which I mean that we must go through a singular representative/contact at our organization (who may additionally have to go through a vendor) to get support. As previously mentioned, their unfamiliarity with RoboHelp and/or our needs, makes getting support very difficult and takes an extraordinary amount of time. It would be much easier if Adobe allowed direct-to-user support for organizations/corporations.

To anyone who responds, thank you very much for your time, consideration, and any assistance you can provide - it is truly appreciated.

This topic has been closed for replies.

5 replies

Peter Grainge
Community Expert
Community Expert
February 23, 2023

Does this help? RH2022 Calling Context Sensitive Help (grainge.org) CHMs are at the end.

 

RoboHelp's own API can be found at 

C:\Program Files\Adobe\Adobe RoboHelp\CSH_API

________________________________________________________

My site www.grainge.org includes many free Authoring and RoboHelp resources that may be of help.

 

Use menu (bottom right) to mark as Best Answer or to Highlight particularly useful replies. Found the answer elsewhere? Share it here.
MW-ASI18
MW-ASI18Author
Participating Frequently
February 24, 2023

Thanks for providing that link Peter. First, we're currently using RH 2019 Classic, so I'm not sure if those details are only for 2022 or if they'll apply to the version we're currently using. There was a previous post (from Jeff - see above) with a link to your website and some similar information. I will say, I have used your site before for other RH information and have found it very useful (it was specifically to resolve the issue with the print button not displaying for Webhelp outputs - thank you).

However, in these circumstances, I was really seeking a video tutorial that went through the complete setup of CSH in terms of a developer (although, to be fair, since I'm a technical writer, I'm not even certain which language is used for our legacy application that we're attemptin to provide CSH for the Responsive HTML5 output). I am aware that it was previously only a desktop/local application, but it is changing to be completely web-based in the near future. 
So, our needs are twofold. First, we need to figure out how to get CSH to work for the Responsive HTML5 output (apparently this was tried many years ago but never successful). Next, we need to understand the CSH implementation in terms of the application being completely web-based (I'm presuming through the usage of APIs and possibly JavaScript - although there has to be at least one other language since I know some form of database is incorporated as well - so I'm not 100% certain, but now that I understand CSH a tiny bit better, I realize that info is critical). 
My ultimate goal was to try and gather as much information, tutorials, videos, etc. and become as familiar as I could before beginning the discussion with our DEV teams. While I realize I don't know the coding languages necessary (I don't claim to be a DEV and would only call myself well-versed in HTML at best), I thought perhaps someone would have provided a very simplified explanation and demonstration in generic terms. This way I could provide some background/context when talking to developers and point them to the necessary materials for more specific details. 

We are also investigating other documentation tooling/applications, but anything we use must have CSH functionality. I just figured it might be easiest to start with RoboHelp, since I'm familiar (e.g., "the devil you know") with the application and (at some point) CSH was implemented for the Webhelp output successfully. 
[I often get asked why I document processes/procedures in such detail, especially for things that aren't done often. Although CSH implementation was long before my time, this is a perfect example of why I spend the time to do so - that way people can easily look at the background and have a clear understanding of what was done as well as what may need to be done going forward.]
Thank you again for your time and the information you provided!

Jeff_Coatsworth
Community Expert
Community Expert
February 24, 2023

Yeah, it's always the stuff that you don't do very often that needs the most documentation. It would probably help you tremendously if you asked your devs what language is being used right now for the desktop version & what will be planned for use in the web-based redesign (they may not have a plan yet for that bit). That will give you a leg up on looking at what CSH method will work best for both situations.

Community Expert
February 21, 2023

It saddens me that after more than 20 years developers still don't know what context sensitive help is or how to implement it. Having to teach my devs how to do it (when I don't know anything about programming) 20 years ago was exhausting, so I feel your frustration. 😞 But given CSH predates Adobe and is not proprietary to them, I don't lay the responsibility on them (which is not to absolve their documentation...)

 

Going to web-based the javascript api is probably what you want. (Going from desktop to web probably means the whole thing is being written from scratch.) The API takes care of all the url stuff as long as you use the right function call. Your devs need to add the js file to the application. Each item you want to link to the help needs a unique identifier - usually it's the screen level, but may be field level depending on the requirements of th application. Then the button/f1 whatever needs to call the relevant function from the js file, passing the relevant parameters. Your web developers should easily understand the js file, and it's actually very clearly documented in that file (at least up to RH2020 - I don't have RH2022 to look at right now).

 

I suppose there may be cases where the api won't work and you need to hard code the url for every item you want to link to help, in which case your devs will need to use one of the URL structures described in Peter's article.

MW-ASI18
MW-ASI18Author
Participating Frequently
February 22, 2023

Thanks so much Amebr - I really do appreciate the details and insight you've provided. I'm glad you understand my frustrations (of course, when do developers really think about the documentation aspect in terms of end users, lol). I'd still like to see Adobe provide some form of tutorial or even hold a learning session specifically about CSH, but I'll have to ask them if they will provide direct assistance (if needed), although there will almost certainly be an expense attached.

Based on the fact that there have been over 135 view of my post already, I have to presume that my questions are fairly common and that it's an opportunity for someone to create some content, videos, or even provide contractual support. 

I'm not going to make this as "Correct Answer" yet, just to see if anyone else has resources or info that can help me and anyone else out there with similar questions. 

Jeff_Coatsworth
Community Expert
Community Expert
February 22, 2023

I'm just confused about your situation - since you are already doing CSH in the existing product, your devs must have some idea of how they launch the help based on your Map file. It shouldn't be that hard to switch the call when using Responsive HTML5 as the output. Your Map file still is intact and can be used.

Jeff_Coatsworth
Community Expert
Community Expert
February 21, 2023

See Peter's site - https://www.grainge.org/pages/authoring/calling_help/calling_help.htm - the CSH call did change when you go from WebHelp to Responsive HTML5.

MW-ASI18
MW-ASI18Author
Participating Frequently
February 21, 2023

Thanks so much Jeff, I'll have to take a look at the details on that website.

I do find it frustrating that Adobe doesn't have this information clearly documented/demonstrated (since I'm sure a lot of customers specifically use RoboHelp because of the ability to implement context-sensitivity). 

Community Expert
February 21, 2023

It's good they updated the chm file in either update 13 or 14 from the RH10 help, which I currently have in update 12. 😛  But a shame they lost the context sensitive info in the process.

 

What you and your developers need to do depends on how the CSH was implemented initially. I haven't done CSH for a long time and don't have any developers available right now to check with, but I think the following summary is correct.

 

If the application is a desktop app, they might have implemented the API in the language the application is written. I think they need to copy the new API files to use in the application.

 

I don't know enough about most of the languages to suggest if any other changes are necessary, but your developers should be able to work this out by comparing with the files in the application source. The main thing would be ensuring the way the URL is constructed matches the new Responsive csh url, and may be as simple as changing the function called. See my commments on the javascript one below, which I'm slight more familiar with.

 

If they used the javascript API, they may need to change the function call in the application from RH_ShowHelp to the applicable responsive function (either mapno or mapid).  If thers's still a function for"browser-based help", don't use it as I think it's actually for a form of AirHelp which is defunct. Multiscreen doesn't exist in New UI so ignore those functions if they exist as well.

 

If they wrote their own context call (Context Sensitive Help > Information for Developers > Steps without using Support Files) then what they need to do depends on how it was coded. The main thing would be ensuring the way the URL is constructed matches the new Responsive csh url.

 

If they used a URL or hard coded the mapid url, they will need to update every instance of the URL to the new format for Responsive. The link in the PDF to Peter's site provides the most comprehensive information about the url structure for each output type. Under Webhelp you can see an example of the csh part of the mapid and URL methods from Classic and what it needs to change to in New UI

 

Adobe employees don't really monitor these forums, so any suggestions will need to be made directly to Adobe. I'm not sure where the correct feedback location for the help is, but you could try logging a feature request: https://tracker.adobe.com/  
Post the item number in the discussion so people can easily vote if they want the same functionality.

 

Hopefully that helps you and your developers figure out how the CSH was implemented and the changes needed. Post back with any more specific questions for your situation and I'll see what I can dig out of the far corners of my memory. 🙂

MW-ASI18
MW-ASI18Author
Participating Frequently
February 21, 2023

Thanks so much for taking the time to provide this information, I really do appreciate it.

While we originally had a desktop application, it is moving to an entirely web-based platform. So, in addition to changing the output type from Webhelp to Responsive HTML5, I'm sure being entirely web-based is going to change things even further. 

Since context-sensitivity is absolutely critical for a lot of proprietary applications (in terms of users being able to quickly reference corresponding help file topics/articles), I was really hoping Adobe had some sort of videos or tutorials that I could watch/reference and/or provide to our development team(s). Alas, I have a distinct feeling that you're correct about having to elicit help from an Adobe Support representative (and that this is going to be a much more involved process than I had hoped in terms of developer resources/time). 

MW-ASI18
MW-ASI18Author
Participating Frequently
February 20, 2023

I will note that I found a whole chapter (#11) that only exists if you download the PDF for Adobe RoboHelp 2019 Classic. This chapter is not available when accessing the help file from within the product for some reason.
While that information is the best I've seen so far, I know my developers are not going to read 50 pages in an age where (most) things have videos for complex tasks/subjects (tldr).