CHM/HHP: maximum length of variable names in [ALIAS] section

163 Views Asked by At

What is the maximum length of variable names in the [ALIAS] section of HHP files?

I_AM_WONDERING_ABOUT_THE_MAXIMUM_LENGTH_OF_THIS_STRING_RIGHT_HERE=this-is-some-really-helpful-html-file.html

I have found a CHM/HHP specification right here:

https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/chmspec.chm/hhp.html

That page only talks about the length of the overall line, though (and not about the length of the variable name). Very specific question, I know. Still, someone may be able to point me somewhere.

1

There are 1 best solutions below

5
On BEST ANSWER

As far as I know never asked before and I never heard about limitations. But I think this is because nobody used long variable names in this place so far.

The purpose of the two files e.g. alias.h and map.h is to ease the coordination between developer and help author. The mapping file links an ID to the map number - typically this can be easily created by the developer and passed to the help author. Then the help author creates an alias file linking the IDs to the topic names. That was the idea behind years (decades) ago by Ralph Walden (ex Microsoft).

Please note HTMLHelp is about 20 years old and these context ID strings inside a alias.h file were derived from WinHelp as a predecessor of HTMLHelp.

You'll find some further Information at Creating Context-Sensitive Help for Applications.

In general I'd recommend to use ID's with a fixed format because of the better legibility like shown below:

;-------------------------------------------------------------
; alias.h file example for HTMLHelp (CHM)
; www.help-info.de
;
; All IDH's > 10000 for better format
; last edited: 2006-07-09
;---------------------------------------------------
IDH_90001=index.htm
IDH_10000=Context-sensitive_example\contextID-10000.htm
IDH_10010=Context-sensitive_example\contextID-10010.htm
IDH_20000=Context-sensitive_example\contextID-20000.htm
IDH_20010=Context-sensitive_example\contextID-20010.htm

I'd recommend to use less than 1024 bytes per line.