home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / progs / help / hlpdk.hdf < prev    next >
Text File  |  1993-09-27  |  58KB  |  1,676 lines

  1. ;******************************************************************************
  2. ;                                 .linkColor                                  *
  3. ; set link color to lightGreen on blue (lightGreen (10) + 16 * blue (1) )     *
  4. ; and link high color to lightGreen on light gray (10 + 16 * 7)               *
  5. ;******************************************************************************
  6. .linkColor 26
  7. .linkhigh 122
  8.  
  9. ;******************************************************************************
  10. ;                               .titleDefaults                                *
  11. ; default title attributes                                                    *
  12. ;******************************************************************************
  13. .titleDefaults box double
  14.  
  15. ;******************************************************************************
  16. ;                                 .fixedFont                                  *
  17. ; use a fixed font for Windows target ..                                      *
  18. ;******************************************************************************
  19. .fixedFont
  20.  
  21. ;******************************************************************************
  22. ;                                  overview                                   *
  23. ; notice - a .top = .topic = .entry                                           *
  24. ;******************************************************************************
  25. .top overview
  26. .title HLPDK System Overview
  27. .titleAttr box none
  28. .keywords contents
  29.  
  30. .ifdef windows
  31. .par bold on box shadow size 16 font 6 align center
  32. ISoft D&M, POB. 5517, Coralville IA 52241, U.S.A
  33. .endpar
  34. .else
  35.  ╔══════════════════════════════════════════════════════════════════════════╗
  36.  ║                                                                          ║
  37.  ║                                 ISoft D&M                                ║
  38.  ║                                 POB. 5517                                ║
  39.  ║                           Coralville IA 52241                            ║
  40.  ║                                   U.S.A                                  ║
  41.  ║                                                                          ║
  42.  ╚══════════════════════════════════════════════════════════════════════════╝ 
  43. .endif
  44.  
  45. .par
  46. The Help Engine Development Kit is a system that allows you to create 
  47. hyper-text database help systems with topics and hot links, using a simple
  48. text editor and the help compiler. 
  49. .endpar
  50.  
  51. .par
  52. The help databases can be distributed (free of charge) with the HELPENG or
  53. HE help engine display programs. 
  54. .endpar
  55.  
  56. .par
  57. The help database format is release to the public domain, if you own the 
  58. Paradox Engine you can use the help databases with your own programs. 
  59. .endpar
  60.  
  61. .par
  62. Borland Pascal Users can purchase the Help Engine Source Code even
  63. for Applications that do not use the paradox engine, using the Native Mem
  64. format.
  65. .endpar
  66.  
  67. .par font 13 bold on
  68. The helpC compiler that is part of this development kit includes the
  69. ability to create Windows Help source files from the same source the 
  70. dos help sources are created!. Write your help once, and create help
  71. databases for Dos, Windows, OS/2 and DESQview/X !
  72. .endpar
  73.  
  74. .par box thick italic on color 4
  75. Supported Formats :
  76. Native(PX), Native (Mem), Win30, Win31, QuickHelp, 
  77. THELP, TVHC, POPHELP, DESQview/X, OS/2, Text, Word Processors (RTF)
  78. .endpar
  79.  
  80. .par
  81. From the same source you created your hypertext database, you can create
  82. a text document with automatic table of contents and index sections!
  83. .endpar
  84.  
  85. .par
  86. Using the RTF target you can prepare your professional documentation
  87. by generating word processors documents, all from the same source!
  88. .endpar
  89.  
  90. .par bold on size 15
  91. Contact ISoft D&M if you want to purchase the WINTEXT UI library for 
  92. Turbo Pascal programs, and use the help engine window in your pascal
  93. programs.
  94. .endpar
  95.  
  96. .par font 13 bold on
  97. Related Topics :
  98. .endpar
  99. ~Registration~register~
  100. ~Contact~contact~
  101. ~File List~fileList~
  102. ~Credits~credits~
  103. ~Help Engine~helpeng~
  104. ~Help Compiler~helpC~
  105. ~Quick Start~quickStart~
  106. ~Related Products~otherProducts~
  107.  
  108. .endtop
  109.  
  110. ;******************************************************************************
  111. ;                                  register                                   *
  112. ;******************************************************************************
  113. .entry register
  114. .title Registration
  115. .keywords contact register
  116.  
  117. *******************************************************************************
  118. *                 Why Register and registration instructions                  *
  119. *******************************************************************************
  120.  
  121. .par
  122. The Help Engine Development Kit (HLPDK) is a shareware product, if you 
  123. find this product valuable, please register it. 
  124. This section describes the reasons you should register.
  125. .endpar
  126.  
  127. .par
  128. By registering you will receive a complete discussion of the help engine 
  129. features, and many examples of usage. You will receive a diskette with the
  130. latest HLPDK version, and DPMI (DOS protected mode) versions of the help 
  131. compiler and engines!. (The memory version of the help engine can display 
  132. huge databases only in the protected mode version).
  133. .endpar
  134.  
  135. .par
  136. Your registration will help us to create the next versions of HLPDK, that
  137. will include more options, and features, some of them might even be your
  138. enhancement requests!.
  139. .endpar
  140.   
  141. .par
  142. A point to consider - If you want to create Windows Help source files,
  143. you will have to purchase a word processor that can output RTF files,
  144. the WORD for Windows 2.0 package, for example, is listed at around $500!.
  145. .endpar
  146.  
  147. .par box normal align center
  148. To order your registered copy of HLPDK please do one of the following:
  149. .endpar
  150.  
  151.  1.     Order from ISoft D&M:     
  152.  You can order directly from ISoft D&M. Please refer to the supplied 
  153.  HLPDK.REG file. Edit it, print it and mail it (with a check) to: 
  154.         ISoft D&M,  
  155.         POBox 5517
  156.         Coralville Iowa 52241, U.S.A
  157.  
  158.  2.     Order from PsL:
  159.  You can order from Public (software) Library with your MC, Visa, AmEx 
  160.  or Discover card by calling 800-242-4PsL (from overseas: 713-524-6394) or 
  161.  by FAX to 713-524-6398 or by CompuServe to 71355,470. 
  162.  These numbers are for ordering only. ISoft D&M can NOT be reached at those 
  163.  numbers. Please contact ISoft D&M directly for any other type of problem 
  164.  (technical or other), information or request.
  165.                                               
  166. .par font 13 bold on
  167. Related Topics :
  168. .endpar
  169. ~Contact~contact~
  170. ~Overview~overview~
  171. .end-entry
  172.  
  173. ;******************************************************************************
  174. ;                                   Contact                                   *
  175. ;******************************************************************************
  176. .entry Contact
  177. .keywords register contact
  178.  
  179.   Please contact :
  180.  
  181.   ISoft D&M,  
  182.   P.O.B 5517
  183.   Coralville IA 52241,
  184.   U.S.A
  185.  
  186. .par italic on
  187. ISoft D&M e-mail address : CompuServe - 76350,333
  188. .endpar
  189.  
  190.   To contact the author directly : 
  191.  
  192.   Contact :     Loewy Ron,
  193.                 9 Haneveem st.
  194.                 Herzeliya, 46465
  195.                 ISRAEL.
  196.  
  197. .par italic on
  198. e-mail address : CompuServe - 100274,162
  199. .endpar
  200.  
  201. .par font 13 bold on
  202. Related Topics :
  203. .endpar
  204. ~Regsiteration~register~
  205. ~Overview~overview~
  206. .end-entry
  207.  
  208. ;******************************************************************************
  209. ;                                  fileList                                   *
  210. ;******************************************************************************
  211. .entry fileList
  212. .title HPLDK Distribution File List
  213.  
  214.  This package contains the following files in the following archives :
  215.  
  216. Archive A :
  217. -----------
  218.  READMEA.HDK    - File List for Archive A.
  219.  HELPC.EXE      - Help Compiler.
  220.  HLPDK.DOC      - This file.
  221.  HELPC.DOC      - Help Compiler documentation
  222.  HLPDK.REG      - Registration file.
  223.  HLPDK.HDF      - Help Development Kit hypertext help database source.
  224.  HLPDK.HLP      - WinHelp Version of the hlpdk hypertext source.
  225.  HLPDK.INF      - OS/2 IPF Version of the HLPDK hypertext source.
  226.  PROGRAMS.TXT   - ISoft D&M shareware products description.
  227.  HELPDEMO.HDF   - Demo Help Project.
  228.  2NDDEMO.HDF    - Demo Help Project - file 2.
  229.  
  230. Archive B :
  231. -----------
  232.  READMEB.HDK    - File List for Archive B.
  233.  HELPENG.EXE    - Help Engine (Native Paradox).
  234.  HE.EXE         - Help Engine (Native Memory).
  235.  HELPDEMO.HLP   - Demo Help Project file for Windows WINHELP. 
  236.  HLPDK.HDT      - Help Development Kit help database file. (Native Paradox)
  237.  HLPDK.SET      - Help Development Kit help database file.
  238.  HLPDKTOP.*     - Help Development Kit help database files.
  239.  HLPDKLNK.*     - Help Development Kit help database files.
  240.  HLPDKKEY.*     - Help Development Kit help database files.
  241.  
  242. .par font 13 bold on
  243. Related Topics :
  244. .endpar
  245. ~Overview~overview~
  246. ~Quick Start~quickStart~
  247. .end-entry
  248.  
  249. ;******************************************************************************
  250. ;                                   Credits                                   *
  251. ;******************************************************************************
  252. .entry Credits
  253.  
  254. .par
  255. HELPENG, HELPC were written using Turbo Pascal 6.0, and Borland Pascal 7.0,
  256. Paradox Engine 2.0, and Paradox Engine 3.0, 3.01. 
  257. (Trademarks of Borland International).
  258. .endpar
  259.  
  260. .par
  261. Windows, Microsoft, HC and Quick Help are trademarks or copyrights
  262. of Microsoft Corp.
  263. .endpar
  264.  
  265. .par
  266. The HELPENG program was written using the WINTEXT UI library, 
  267. (c) 1991,93 Loewy Ron.
  268. .endpar
  269.  
  270. THELP, HL and TVHC are Trademarks or copyrights Borland International.
  271.  
  272. POPHELP is a copyright of TurboPower Software.
  273.  
  274. TVHC support, and other ideas were suggested by MunLeong Chan.
  275.  
  276. .par
  277. Parts of the Help Engines were generated using Ron Loewy's WTGEN and dbGen
  278. CASE code generators.
  279. .endpar
  280.  
  281. .par
  282. Parts of the Help Compiler were generated using Ron Loewy's dbGen database 
  283. code generator.
  284. .endpar
  285.  
  286. .par
  287. Yaniv Golan helped me with beta-testing, debugging and suggestions.
  288. He is also the  author of the HPCHDK and POPHDK packages.
  289. .endpar
  290.  
  291. .par
  292. John Murphy notified me of the paragraph formatting difficulties that
  293. lead to the .PARAGRAPH .END-PARAGRAPH formatting capabilities.
  294. .endpar
  295.  
  296. DESQview/X is a trademark of Quarterdeck Office Systems.
  297.  
  298. .par
  299. MDVXHELP is a copyright (1992) of Daniel J. Bodoh. I have used his
  300. excelent documentation of DESQview/X help format to generate code
  301. to this environment.
  302. .endpar
  303.  
  304. .par
  305. The HC31 problem with characters with ordinal values biggen than 127
  306. was solved thanks to Mr. Lars Fosdal of Norway.
  307. .endpar
  308.  
  309. OS/2 is a registered trademark of International Bussiness Machines.
  310.  
  311. .par
  312. The Text Cursor restore problem in the help engines was reported by Prof.
  313. Timo Salmi of the Univ. of VAASA, Finland.
  314. .endpar
  315.  
  316. .par
  317. D.J. Murdoch suggested the Cross Reference Report enhancements, and winhelp
  318. Go To Search list box title problem.
  319. .endpar
  320.  
  321. Word for Windows is a trademark of Microsoft corp.
  322.  
  323. WordPerfect, WordPerfect for Windows are trademarks of WordPerfect corporation.
  324.  
  325. Lotus, AMI PRO are trademarks of Lotus corp.
  326.  
  327. Reuben Halevi from ISoft D&M did a lot to make this product real.
  328.  
  329. .par
  330. Slren Pingel Dalsgaard notified me of the small scroll box bug in helpeng, as
  331. well as some spelling mistakes in helpC.
  332. .endpar
  333.  
  334. .par font 13 bold on
  335. Related Topics :
  336. .endpar
  337. ~Overview~overview~
  338. .end-entry
  339.  
  340. ;******************************************************************************
  341. ;                                 quickStart                                  *
  342. ;******************************************************************************
  343. .entry quickStart
  344. .title Quick Start
  345. .keywords operation
  346.  
  347. From the command line enter HELPC HELPDEMO to compile the demo help database.
  348.  
  349. .par
  350. After the compilation process is ended, enter HELPENG HELPDEMO to browse the
  351. demo help database.
  352. .endpar
  353.  
  354. If you want to compile for windows :
  355.  
  356. from the command line enter HELPC HELPDEMO /W31
  357. and after that HC31 HELPDEMO
  358. (HC31 is the Microsoft Help Compiler)
  359. .par
  360. from windows, open the HELPDEMO.HLP file from the windows help engine.
  361. (Notice - if you do not have the HC help compiler from windows, we have
  362. included a compiled version of HELPDEMO (HELPDEMO.HLP) so you will be
  363. able to feel the quality of the output that can be generated, and decide
  364. if you want to purchase the HC31 program (Included with the SDK, BC++, 
  365. TPW, BP and probably some other packages), or download it from one of the
  366. sites Microsoft had uploaded it to).
  367. .endpar
  368.  
  369. .par
  370. If you use windows 3.0, or want your help file to be compatible with
  371. winHelp 3.0 use :
  372. .endpar
  373.         HELPC /W30 HELPDEMO
  374.         HC HELPDEMO
  375.  
  376. To compile for THELP use : 
  377.         HELPC /TH+ HELPDEMO
  378.         HL -x -e100 -p -i -oHELPDEMO.TPH HELPDEMO.HL
  379.  
  380. To compile for QuickHelp : 
  381.         HELPC /QH+ HELPDEMO
  382.         HELPMAKE -e15 -oHELPDEMO.QH HELPDEMO.SRC
  383.  
  384. To compile for TVHC :
  385.         HELPC /TV+ HELPDEMO
  386.         TVHC HELPDEMO.TXT
  387.  
  388. To compile for POPHELP :
  389.         HELPC /PH+ HELPDEMO
  390.         MAKEHELP /Q HELPDEMO
  391.  
  392. To compile for DESQview/X :
  393.         HELPC /XD+ HELPDEMO
  394.         MDVXHELP HELPDEMO.HLP @HELPDEMO.LST
  395.         COPY HELPDEMO.HLP d:\DVX\HELP
  396.  
  397. To compile for Native Mem Format :
  398.        HELPC /MT+ HELPDEMO
  399. (Use HE HELPDEMO to view that database).
  400.  
  401. To compile for IPF (OS/2) format :
  402.        HELPC /OS2 HELPDEMO 
  403.        Switch to an OS/2 session.
  404.        IPFC /INF HELPDEMO
  405. (Use the VIEW Command to browse the database).
  406.  
  407. To create a text document with table of contents, glossary and index :
  408.        HELPC /TXT HELPDEMO
  409.  
  410. To create a word processor document with table of contents, 
  411. glossary and index :
  412.        HELPC /RTF HELPDEMO
  413.        import helpdemo.rtf to your word-processor, and update fields.
  414.        (e.g. Microsoft WinWord : File|Open to open the document
  415.                                  Answer Yes to convert from Rich Text Format
  416.                                  Press F9 to update embedded format fields
  417.                                  somewhere in the first page (after the 
  418.                                  Table Of Contents title), and in the last 
  419.                                  page (after the index title).)
  420. .par font 13 bold on
  421. Related Topics :
  422. .endpar
  423. ~Overview~overview~
  424. ~File List~filelist~
  425. .end-entry
  426.  
  427. ;******************************************************************************
  428. ;                                   helpeng                                   *
  429. ;******************************************************************************
  430. .entry helpeng
  431. .title The Help Engine
  432. .keywords operation
  433.  
  434. .par
  435. To start the help engine program enter HELPENG on the command line, and 
  436. choose the help database you want to view from the list box. Use the Tab key
  437. to cycle between hot-link words, and press Enter to go to that link.
  438. .endpar
  439.  
  440. .par
  441. If you know the name of the SET file of the database you want to activate, you
  442. can enter it on the command line, and the help engine will display it.
  443. .endpar
  444.  
  445. .par
  446. If you have a mouse, you can use it to point at the hi-lighted links, and 
  447. activate them by pressing the left mouse button.
  448. .endpar
  449.  
  450. .par
  451. Press the ALT-T key combination to choose from a list of TOPICS in the 
  452. database, Press ALT-B to go back to the previous displayed TOPIC, Press
  453. ALT-X to exit the help engine.
  454. .endpar
  455.  
  456. The exit command can be given by pressing the right mouse button.
  457.  
  458. .par
  459. Use F10 to open the menu bar, and use the arrow keys to navigate the 
  460. options. When you find the option you are interested in, Use the Enter
  461. key to execute it, or the Esc key to cancel. The menu bar can be navigated
  462. using the mouse as well.
  463. .endpar
  464.  
  465. .par
  466. To create a new help database please refer to the ~HELPC~helpc~ documentation
  467. file.
  468. .endpar
  469.  
  470. .par
  471. If you want to use the Native Mem Format Databases, Please use the supplied
  472. HE.EXE program. 
  473. .endpar
  474.  
  475. .par font 13 bold on
  476. Related Topics :
  477. .endpar
  478. ~Trouble Shooting~Trouble~
  479. ~Overview~overview~
  480. .end-entry
  481.  
  482. ;******************************************************************************
  483. ;                                   Trouble                                   *
  484. ;******************************************************************************
  485. .entry Trouble
  486. .title Trouble Shooting
  487. .keywords operation
  488.  
  489. .par
  490. If you receive some kind of an error message while using the help development
  491. kit please refer to this section.
  492. .endpar
  493.  
  494. tableOps: xxxx error message :
  495. .par
  496. This message is generated by the Paradox Engine if an internal error occurs,
  497. if you receive a message that is not understood (e.g. Table is busy), 
  498. please try one of the following :
  499. .endpar
  500.  1. Try running the Help Compiler or the Help Engine with another input and 
  501.     notice if the problem exists, if it does, turn to the next entry,
  502.     otherwise try to see what the difference between the inputs is.
  503.  2. Check your free memory, try to move some TSR's from memory, or use the
  504.     protected mode compiler/engine available with the registered version.
  505.  3. Check if you have loaded dos SHARE program, it is advised to use SHARE
  506.     with programs that use the Paradox Engine. If you receive a table busy
  507.     error, try to see if you have another program that uses the same table 
  508.     in another session (Windows/DESQview etc..).
  509.  4. PANIC - Please contact the distibuter/author for additional help.
  510.  
  511. Microsoft's HC31 help compiler will generate a error in RTF file error :
  512.  
  513.  1. Re-compile using HELPC 4.0+. This should solve the problem, if the problem
  514.     still exists - please try steps 2 and 3, and notify the author. 
  515.  2. Use a binary disk editor to look at the character at the position x - 1
  516.     in the RTF file (where x is the error position reported by HC31).
  517.  3. Try to replace that charqacter from a special PC oem character to a 
  518.     "standard" ascii character (such as *). If the problem still occurs,
  519.     please contact ISoft D&M/The author, otherwise - you probably came 
  520.     accross a character that HC31 can not handle. In that case - try using
  521.     HC300b (the one that generates winHelp 3.0 format), or delete these 
  522.     characters from your source HDF file.
  523.  
  524. Borland's HL help linker will generate a FE02: Out Of Memory error :
  525.  1. Re-compile using HELPC V3.0+, to include ;INDEX directives after the
  526.     screen's definitions.
  527.  
  528. Borland's HL help linker will complain about undefined context numbers :
  529.  1. You probably have a contents.h file in the current directory, that hl
  530.     tries to use to bind the help topics to Borland's IDE on-line help,
  531.     try renaming this file, and re-compile with HL.
  532.  
  533. HelpC will not create the database when compiling to Native Mem (/MT+) :
  534.  1. Try compiling with report generation on (/R+) to Native Paradox
  535.     (/PX+) format. If there are errors, consult the HELPC.LST file, fix 
  536.     them, and re-try.
  537.  2. If the database is BIG, you might not have enough memory - Remember that
  538.     Native Mem tables are generated in memory. You will have to use the
  539.     HelpCX protected mode compiler (Available with the registered version).
  540.  
  541. HelpEng/HE will complain on an old-database when trying to open a help
  542. database with it :
  543.  1. Re-Compile the database using helpC.
  544.  
  545. HelpEng/HE will complain on un-supported database format, when trying to
  546. open a database :
  547.  1. HelpEng can not display Native Mem databases, and HE can not display
  548.     Native PX databases. Use the other help engine supplied.
  549.  
  550. HE will not be able to open a Native Mem database :
  551.  1. Use the protected mode HEX help engine. (Available for registered users).
  552.  
  553. Where is HL - Borland's Help Linker :
  554.  1. HL is not included with Borland C++ or Borland Pascal, Borland sells an
  555.     additional package called Borland Open Architecture (and Borlad OA for 
  556.     Pascal) that include among other things - the THELP help linker.
  557.  
  558. .par
  559. HelpEng/HE will complain on an old-database when tring to open a help
  560. database with it :
  561. .endpar
  562.  1. Re-Compile the database using helpC.
  563.  
  564. .par
  565. HelpEng/HE will complain on un-supported database format, when trying to
  566. open a database :
  567. .endpar
  568.  1. HelpEng can not display Native Mem databases, and HE can not display
  569.     Native PX databases. Use the other help engine supplied.
  570.  
  571. HE will not be able to open a Native Mem database :
  572.  1. Use the protected mode HEX help engine. (Available for registered users).
  573.  
  574. .par
  575. We have encountered some users that ran into problems, because they did 
  576. not use the dos SHARE program. We advise that you will always load the 
  577. SHARE program in your AUTOEXEC.BAT file.
  578. .endpar
  579.  
  580. .par font 13 bold on
  581. Related Topics :
  582. .endpar
  583. ~Overview~overview~
  584. ~Help Engine~helpeng~
  585. ~Help Compiler~helpC~
  586. .end-entry
  587.  
  588. ;******************************************************************************
  589. ;                                    helpC                                    *
  590. ;******************************************************************************
  591. .entry helpC
  592. .title Help Compiler
  593. .keywords operation
  594.  
  595. .par
  596. The HELPC help compiler is a dos command line program that receives a 
  597. help definition file (.HDF) and produce a help database. 
  598. .endpar
  599.  
  600.   The helpC command line is :
  601.  
  602.  HELPC source.fil [/NT:topic-table-name]
  603.                   [/NL:link-table-name] 
  604.                   [/ND:data-file-name] 
  605.                   [/NK:keywords-table-name] 
  606.                   [/D:conditional-define]
  607.                   [/ED=P|C|+]
  608.                   [/EL=x]
  609.                   [/R-]  [/ST-] [/CS+] [/EP+] [/WD-] [/RM-]
  610.                   [/W+]  [/W30] [/W31] [TH+] [/QH+] [/TV+] [/PH+] [/XD+]
  611.                   [/PX+] [/MT+] [/OS2] [/TXT] [/RTF]
  612. .par
  613. The output of the compiler is a set data file called source.SET, that
  614. includes the names of the other help database components. 
  615. .endpar
  616.  
  617. .par
  618. Please Notice - if the /W+ /W30 or /W31 switch is defined, the compiler 
  619. will generate a .HPJ and .RTF files that can be used with the Microsoft 
  620. HC (v3.00b) or HC31 help compiler, and output a .HLP windows help file!. 
  621. .endpar
  622.  
  623. .par
  624. By default the help compiler produces a help cross reference report on the 
  625. topics/links used in the database, if the /R- switch is set, no cross-ref
  626. report will be generated, and no database integrity indicators will be
  627. given.
  628. .endpar
  629.  
  630.  
  631. .par
  632. IMPORTANT - Scan the output cross reference report for links defined, that
  633. are not defined as topics!
  634. .endpar
  635.  
  636. .par
  637. Notice - An additional switch is available that instructs the help compiler
  638. to indicate it's parse and code generation progress. Use the /EP+ switch to
  639. see that the helpC compiler is active. Please understand that the compile
  640. process can take a long time, on complex help databases. This switch does
  641. nothing more that ensure to you that the help compiler is alive. 
  642. .endpar
  643.  
  644. .par
  645. The /ST switch defines if the topic name defined in the .TOPIC command
  646. can include embeded spaces. By default this switch is set to /ST- (No
  647. embedded spaces).
  648. .endpar
  649.  
  650. .par
  651. The /CS switch turns Topics and Links case sensativity to ON. Use this
  652. switch with care - Only if you must have a lower/mixed case index in THELP
  653. or POPHELP use this switch. Notice that help databases that compile fine
  654. with case sensativity set to off, might fail to do so in case sensativity
  655. on. By deafult this switch is set to off (-).
  656. .endpar
  657.  
  658. .par
  659. The /XD switch generates code to the MDVXHELP help compiler, available
  660. free in the file DVXHLP10.ZIP on the Internet. When this switch is given,
  661. a set of cover and section files is generated, as well as a response
  662. file that should be used to compile the help database.
  663. .endpar
  664.  
  665. .par
  666. The /OS2 switch generates IPF source code. You must compile the generated code 
  667. with IPFC, from within an OS/2 session (window or full screen).
  668. .endpar
  669.  
  670. .par
  671. The /WD switch controls Warning Display. By default Warning Display is On, if
  672. you do not want to see the Warnings issued by the compiler when a topic name 
  673. or link are found to be incompatible with the target source, and helpC 
  674. translate them to be syntax compatible with the target.
  675. .endpar
  676.  
  677. .par
  678. Use the /RTF switch to create a word-processor ready RTF file, import this
  679. file (and update the fields e.g.- F9 in WinWord) to create a professional
  680. formatted documentation from the same source code!.
  681. .endpar
  682.  
  683. .par
  684. Use the /TXT switch to create a text file document from your .HDF source.
  685. With this feature you can create on-line help and printed documentation
  686. from the same source!.
  687. .endpar
  688.  
  689. .par
  690. The /RM- switch uses disk cross-reference report tables. Usage of this 
  691. option will allow the creation of cross-reference report for huge databases.
  692. This options will slow the creation of reports, use it only for databases
  693. so big that the report can not be generated using memory tables.
  694. .endpar
  695.  
  696. .par
  697. The /ED= switch creates the external references (if ant are defined) in one
  698. of the following formats : /ED=P (Default) creates the external definitions
  699. in a pascal unit, /ED=C creates the external definitions in a C header 
  700. file, and /ED=+ creates a C++ header file.
  701. .endpar
  702.  
  703. .par
  704. The /EL= switch sets the Error Level used. This switch can be overriden
  705. by the .ERRORLEVEL statement. The acceptable error levels are :
  706. .endpar
  707.  
  708.       0    No Check  - (Default) - No action is taken.
  709.       1    Trap      - The link is replaced to a special topic named ERROR.
  710.       2    Strip     - The link is replaced by the Text part only.
  711.       3    Delete    - The text and link parts are deleted.
  712.       9    Abort     - helpC will abort with an error message, indicating the 
  713.                        line number.
  714. .par
  715. Please refer to the ~Exception Handling~exceptHandle~ section below about helpC error
  716. processing.
  717. .endpar
  718.  
  719. .par font 13 bold on
  720. Related Topics :
  721. .endpar
  722. ~Overview~overview~
  723. ~Command Line~commandline~
  724. ~Help Engine~helpeng~
  725. ~Technical Documentation~techdoc~
  726. .end-entry
  727.  
  728. ;******************************************************************************
  729. ;                                 commandline                                 *
  730. ;******************************************************************************
  731. .topic commandline
  732. .title Command Line
  733. .keywords operation
  734.  
  735. .par
  736. The compiler switches are defined on the command line. These switches can
  737. be placed before and after the source file name. The compiler will look for
  738. a file named HELPC.CFG in the current directory, and process it before any
  739. command line switches are processed. 
  740. .endpar
  741.  
  742. .par
  743. Switches on the command line will over-ride switches set before them, on the
  744. command line or in one of the response options file.
  745. .endpar
  746.  
  747. Response option files can be specified by prefixing their name with a @ sign.
  748.  
  749.  
  750.  Examples :
  751.  
  752.  If our HELPC.CFG file, in the current directory is :
  753.  
  754. /W31
  755. /R-
  756.  
  757.  And we compile using HELPC HELPDEMO
  758.  
  759.  The helpdemo.hdf file will be compiled, with the target set to winhelp 3.1
  760.  and no cross-reference report.
  761.  
  762.  Compile using HELPC HELPDEMO /r+
  763.  
  764.  Will create winhelp 3.1 sources, but a report will be generated.
  765.  
  766.  Compile using HELPC /w- HELPDEMO
  767.  
  768.  Will generate native format help database, no report is generated.
  769.  
  770.  If we have a file called MYSWITCH.CFG with the following lines :
  771.  
  772. /TH+
  773. /ST-
  774. /CS+
  775.  
  776.  And we compile using HELPC @MYSWITCH.CFG HELPDEMO
  777.  
  778.  A THELP source, using Long Topic Names, with case sensitivity will be 
  779.  generated, no cross reference report is generated. (HELPC.CFG contains /r-)
  780.  
  781. .par font 13 bold on
  782. Related Topics :
  783. .endpar
  784. ~Overview~Overview~
  785. ~Help Compiler~helpc~
  786.  
  787.  
  788. .end-topic
  789.  
  790. ;******************************************************************************
  791. ;                                   techDoc                                   *
  792. ;******************************************************************************
  793. .entry techDoc
  794. .title Technical Documentation
  795. .keywords programming
  796.  
  797. .par
  798. The Help Engine database is a combination of text that is read by the user,
  799. and a Topic and Links database that allows the user to view the topics
  800. he is interested in, using hyper-text methods.
  801. .endpar
  802.  
  803. .par
  804. This document describes the HLPDK language syntax, HELPC compiler operation
  805. and the native databases structure.
  806. .endpar
  807.  
  808. .par font 13 bold on
  809. Related Topics :
  810. .endpar
  811. ~Help Compiler~helpC~
  812. ~Help Engine~HelpEng~
  813. ~Help Definition Format~hdf~
  814. ~Native Format Structure~nativeFormat~
  815.  
  816. .end-topic
  817.  
  818. ;******************************************************************************
  819. ;                                nativeFormat                                 *
  820. ;******************************************************************************
  821. .topic nativeFormat
  822. .title Native Database Structure
  823. .keywords programming
  824.  
  825.   Each help database is built of 5 components : 
  826.  
  827.  1. Help Data File    - this file contains the raw text data.
  828.  2. Topic Index       - a database table that contains the topic names, and
  829.                         the references to the topics in the Data File.
  830.  3. Links Index       - a database table that contains the list of links 
  831.                         defined for each topic, and positional data.
  832.  4. Keywords Index    - a database table that contains the list of keywords,
  833.                         and the topics that have these keywords.
  834.  5. Set Data File     - a database configuration file that contains the
  835.                         names of the 3 components defined above, and some 
  836.                         additional information.
  837.  
  838. .par
  839. Version 1.x is the bare-bones version that includes only the basic
  840. operations needed from a hyper-text database, this version is implemented
  841. using the Paradox Engine V3.0 to manage the Topic and Link index tables.
  842. .endpar
  843.  
  844. .par
  845. Version 2.x has a new field in the topic table - the title field, help
  846. databases that were compiled with V1.x will not be executed by version
  847. 2.x, they will have to be re-compiled!.
  848. .endpar
  849.  
  850. .par
  851. Version 3.x fields have different length - the databases have to be 
  852. re-compiled.
  853. .endpar
  854.  
  855. .par
  856. Version 5.0+ has a new entry in the help set file, database have to be
  857. re-compiled, or the value 128 should be added in the last line of the help
  858. set file, and the version number should be changed to 5.0.
  859. .endpar
  860.  
  861. .par
  862. Version 6.0+ has added the keyword support - a new database table is added,
  863. and a new set format is defined. Help databases will have to be re-compiled
  864. for Natice targets.
  865. .endpar
  866.  
  867. .par
  868. In Version 7.0 the title field has been expanded once more - to 70 
  869. characters. Help databases will have to be re-compiled.
  870. .endpar
  871.  
  872. .par
  873. In Version 8.0 the tType field was added to the Topics database. Old databases
  874. will have to be re-compiled.
  875. .endpar
  876.  
  877. .par
  878. The format of the help database is released to the public domain, if
  879. you implement a database viewer on this database structure, I would be
  880. happy to receive a copy ..
  881. .endpar
  882.  
  883. .par font 13 bold on
  884. Related Topics :
  885. .endpar
  886. ~Help Compiler~helpC~
  887. ~Help Engine~HelpEng~
  888. ~Help Definition Format~hdf~
  889. ~Topic Index Format~tif~
  890. ~Links Index Format~lif~
  891. ~Keywords Index Format~kif~
  892. ~Set File Format~sff~
  893.  
  894. .end-entry
  895.  
  896. ;******************************************************************************
  897. ;                                     hdf                                     *
  898. ;******************************************************************************
  899. .entry hdf
  900. .title Help Definition Format
  901. .keywords programming
  902.  
  903.   The help definition file format is as follows :
  904.  
  905. | remarks ...
  906. | remarks ...
  907. | .ENTRY topic-name
  908. | [.TITLE optional title for topic]
  909. | [.TITLEATTR paragraph attributes]
  910. | [.KEYWORDS optional keywords for topic]
  911. | [.GROUPS group1 [group2 ..]]
  912. | topic text and link reference .. 
  913. | topic text and link reference .. 
  914. | topic text and link reference .. 
  915. | topic text and link reference .. 
  916. | .END-ENTRY 
  917. | remarks ...
  918. | .ENTRY topic2-name
  919. | [.KEYWORDS keyword1 keyword2 ..]
  920. | [.GROUPS group3 [group2 ..]]
  921. | [.PARAGRAPH [paragraph attributes]]
  922. | topic 2 text and link reference .. 
  923. | topic 2 text and link reference .. 
  924. | topic 2 text and link reference .. 
  925. | [.END-PARAGRAPH]
  926. | additional topic2 text ...
  927. | .END-ENTRY 
  928. |
  929. | .POPUP popup-name
  930. | [.TITLE optional title for popup]
  931. |   definition for some reference
  932. |   ...
  933. | .END-POPUP
  934.  
  935.   As can be seen - lines between the .ENTRY and .END-ENTRY keywords are
  936.  the lines processed by the help compiler, to create the help database, 
  937.  every other line is considered a remark, and is not parsed or evaluated by
  938.  the help compiler.
  939.  
  940.   The topic text and link reference lines are simple text lines, with
  941.  special link marks.
  942.  
  943.   A sample will provide the details :
  944.  
  945. This is a text help line that includes one ~~link~~link-topic-name~~ in it.
  946.  
  947.   This line will be displayed in the help engine program as :
  948.  
  949. This is a text help line that includes one link in it.
  950.  
  951.   The word "link" will be in a different color then the rest of the line, 
  952.  to indicate that this is a link. If the user hi-lights the link, and
  953.  presses Enter (or points the mouse cursor and clicks), the help engine will
  954.  look for a topic called "link-topic-name", and display it.
  955.  
  956.   Browse the HELPDEMO.HDF file for a demo of a help database definition file.
  957.  
  958.  Notes :
  959.  
  960.  1. The keywords .TOPIC and .END-TOPIC can be used instead of .ENTRY and
  961.   .  .END-ENTRY respectively.
  962.  
  963.     An equivalent pair of keywords are .TOP and .ENDTOP .
  964.  
  965.     You can use .EXT-TOPIC instead of .TOPIC/.ENTRY etc.. - topics created
  966.     with that statement are the same as regular topics, only - an external
  967.     reference is created for them to be linked to a pascal/C/C++ program.
  968.  
  969.  2. Keywords are NOT case sensitive. (.topic = .TOPIC = .eNTry)
  970.  
  971.  3. The .TITLE keyword is optional. If no title is defined, the topic name
  972.     is used as a title. The .TITLEATTR keyword is used to describe the
  973.     title text attributes. The syntax is the same as the .PARAGRAPH text
  974.     attributes. Please refer to the Text Attributes section below for further
  975.     discussion of the optional paragraph attributes.
  976.  
  977.  4. If you want the ~~ sign to appear in your help database, use ~~~~ in your
  978.     help source file. (e.g. "This is a ~~~~" will be "This is a ~~" in the final
  979.     help database.).
  980.  
  981.  5. The Optional .PARAGRAPH and .END-PARAGRAPH commands in the help topic text,
  982.     specify the start and the end of a paragraph. This feature is currently 
  983.     supported only for winhelp, RTF and IPF sources. This feature is important if you 
  984.     want to create long paragraphs that will wrap correctly when a user resizes
  985.     the help window. Please refer to the ~Text Attributes~textAttr~ section below for further
  986.     discussion of the optional paragraph attributes.
  987.  
  988.  6. When a .PARAGRAPH is issued, a .END-PARAGRAPH MUST be specified at the
  989.     end of the paragraph. These commands must appear as the first words in
  990.     a line. The text after the .PARAGRAPH command is NOT part of the text 
  991.     of the help topic.
  992.  
  993.  
  994.  7. The optional .KEYWORDS command can appear after the .TITLE command
  995.     (If there is one), or the .TOPIC header (otherwise), Use this command
  996.     to help the user search for sets of topics that are connected to a 
  997.     specific keyword. The syntax of this command is :
  998.     .KEYWORDS keyword-1 keyword-2 ... 
  999.  
  1000.  8. .POPUP and .END-POPUP (or .ENDPOP) are used to define popup topics that 
  1001.     are displayed on the same screen as the original topic that includes the
  1002.     link to them. Popup entries allow the user to consult a glossary, and 
  1003.     not lose the topic he was reading. Popups are supported in the winhelp,
  1004.     OS/2 IPF, Native PX and Native Mem formats. In the other formats Popups are 
  1005.     used as standard topics.
  1006.  
  1007.  9. In the Text target .POPUP entries will be automatically included in a 
  1008.     Glossary file that you can add as an appendix to your documentation.
  1009.  
  1010. 10. The .GROUPS statement associate a topic with several groups, you can 
  1011.     create topics with menus to groups of other topics using the statement
  1012.     ".INSERT GROUP group-name" in your topic text. Please refer to the 
  1013.     ~Groups~GroupsDoc~ section of this document for additional discussion of this
  1014.     function.
  1015.  
  1016. Additional commands include :
  1017.  
  1018. | .TEXTCOLOR, .LINKCOLOR and .LINKHIGH - VGA colors of text and links in normal 
  1019. and high (selected) states in the native help format.
  1020.  
  1021. The syntax of these commands is :
  1022.  
  1023. | .TEXTCOLOR w 
  1024.  
  1025. or
  1026.  
  1027. | .LINKCOLOR x
  1028.  
  1029. or
  1030.  
  1031. | .LINKHIGH y
  1032.  
  1033. Where w, x and y are the color of the text/link, which is a combination of the 
  1034. color of the foreground with the color of the background multiplied by 16.
  1035.  
  1036. The colors that can be used for both fore and background are :
  1037.  
  1038.   Black     = 0
  1039.   Blue      = 1
  1040.   Green     = 2
  1041.   Cyan      = 3
  1042.   Red       = 4
  1043.   Magenta   = 5
  1044.   Brown     = 6
  1045.   LightGray = 7
  1046.  
  1047. The colors that can be used only for the foreground are :
  1048.  
  1049.   DarkGray     = 8
  1050.   LightBlue    = 9
  1051.   LightGreen   = 10
  1052.   LightCyan    = 11
  1053.   LightRed     = 12
  1054.   LightMagenta = 13
  1055.   Yellow       = 14
  1056.   White        = 15
  1057.  
  1058. For example : to set the normal color of a link to light green on blue, use
  1059.  
  1060. | .LINKCOLOR 26
  1061.  
  1062. where 26 = 10 + 16 * 1. (10 = light green, 1 = blue).
  1063.  
  1064. Creating Multiple Source Projects :
  1065.  
  1066. Use the .INCLUDE commands in the source of your .HDF file, to include an
  1067. additional source file. .INCLUDE is not supported in the middle of a topic.
  1068.  
  1069. For Example :
  1070.  
  1071.  .. some stuff 
  1072.  
  1073. | .include 2ndfile.hdf
  1074.  
  1075.  .. additional stuff
  1076.  
  1077. will process 2NDFILE.HDF in the middle of our source file.
  1078.  
  1079. Please notice - .INCLUDE commands can be nested in your source file,
  1080. it is however not recommended to nest them too deep, helpC does not
  1081. close the input file when a .INCLUDEd file is processed, in order to
  1082. minimize help generation time - there is however, a limit on the number
  1083. of open files that can be used by a program - this is a limit set by dos.
  1084.  
  1085. Use the .INSERT CODE statement to insert target code that will not be 
  1086. translated by helpC. helpC will send un-translated code to the output target
  1087. until a .END-CODE statement is found.
  1088.  
  1089. For example - creating a small table in winhelp format :
  1090. | .. normal code
  1091. | .ifdef windows
  1092. | .insert code
  1093. | \pard{\tab column1\tab column2\tab column3}\par
  1094. | \pard{\par col1data\tab col2data ..}\par
  1095. | .end-code
  1096. | .endif
  1097.  
  1098. GUI Font based targets :
  1099.  
  1100. The .FIXEDFONT command is used to define a non proportional font as the 
  1101. default font of the help database. Currently the only targets affected
  1102. by this command are windows winHelp v3.x. If you find that your help 
  1103. databases are not aligned after they are converted to winHelp format, use 
  1104. this command and re-compile. This command has no effect on targets that are 
  1105. different from the targets mentioned before.
  1106.  
  1107. The .PCFONT command is used to define a font that has the standard pc 
  1108. character set (Terminal - in windows). If you convert a text based 
  1109. database that uses the PC's special characters, use this command to
  1110. set the default font. This command has no effect on targets that are 
  1111. different from the targets mentioned before.
  1112.  
  1113. Text targets :
  1114.  
  1115. The .PAGELENGTH and .PAGEWIDTH statements set the printed page length in
  1116. rows, and width in columns. The syntax is .PAGELENGTH xx or .PAGEWIDTH yy .
  1117.  
  1118. Use the .SETFONT command to change or add fonts to the font palette, The 
  1119. syntax is : .SETFONT font-number 'Font-Name-In-The-Target-Language'. If
  1120. for example we would like to change font number 3 in the windows target
  1121. to be a font X of family Y we would write : 
  1122. | .SETFONT 3 'Y X'
  1123.  
  1124. Use the .TITLEDEFAULTS statement to set the default text attributes of the
  1125. topics titles in the help database. These defaults can be over-ridden with
  1126. the .TITLEATTR statement in the topic definition. Please refer to the Text
  1127. Attributes section below for discussion of paragraph text attributes.
  1128.  
  1129. Use the .ATTRDEFAULTS statement to set the default text attributes of 
  1130. paragraph text in the database. Please refer to the Text Attributes section 
  1131. below.
  1132.  
  1133. Use the .ERRORLEVEL command to set the error level. The syntax is .ERRORLEVEL x
  1134. where x is one of the following :
  1135.  
  1136.       0    No Check  - (Default) - No action is taken.
  1137.       1    Trap      - The link is replaced to a special topic named ERROR.
  1138.       2    Strip     - The link is replaced by the Text part only.
  1139.       3    Delete    - The text and link parts are deleted.
  1140.       9    Abort     - helpC will abort with an error message, indicating the 
  1141.                        line number.
  1142. .par
  1143. Please refer to the ~Exception Handling~exceptHandle~ section below about helpC error
  1144. processing.
  1145. .endpar
  1146.  
  1147. .par
  1148. Use the .ALIAS command to substitute a popup/topic name with another name. The
  1149. syntax is .ALIAS newname origname. Whenever a newname link is found, the alias
  1150. of origname is used. This can be very useful when you want to give multiple
  1151. names to a topic, or when HLPDK source is the target of an incremental 
  1152. compiler.
  1153. .endpar
  1154.  
  1155. .par font 13 bold on
  1156. Related Topics :
  1157. .endpar
  1158. ~Technical Documentation~TechDoc~
  1159. ~Conditional Defines~condefine~
  1160. ~Groups~GroupsDoc~
  1161. ~Text Attributes~textAttr~
  1162.  
  1163. .end-entry
  1164.  
  1165.  
  1166. ;******************************************************************************
  1167. ;                                  conDefine                                  *
  1168. ;******************************************************************************
  1169. .topic conDefine
  1170. .title Conditional Defines
  1171. .keywords programming
  1172.  
  1173. .par
  1174. The helpC compiler supports conditional define directives that allow you to
  1175. tailor your source according to define symbols that are known to the compiler.
  1176. .endpar
  1177.  
  1178. .par
  1179. You can use the .ifdef, .ifndef, .else and .endif directives to test the
  1180. target of your compile and do different things according to this target.
  1181. .endpar
  1182.  
  1183. .par
  1184. If for example you have a Windows bitmap you want to include in your generated
  1185. RTF file, when you compile to winhelp format, but, you would like to use a
  1186. statement in other targets that do not support graphics, you could do the 
  1187. following :
  1188. .endpar
  1189.  
  1190. | .ifdef windows
  1191. |   some text {\bmc mybmp.bmp} some more text
  1192. | .else 
  1193. |   some text AND STATEMENT HERE some more text
  1194. | .endif
  1195.  
  1196. .par
  1197. When the compiler will generate the code, the RTF command \bmc will be 
  1198. inserted in the output of the compiler for windows targets (/W30, /W31), 
  1199. and a simple text statement will be inserted otherwise.
  1200. .endpar
  1201.  
  1202. The conditional directives supported are :
  1203.  
  1204. | .ifdef  SYMBOL - Compile code only if SYMBOL is defined.
  1205. | .ifndef SYMBOL - Compile code only if SYMBOL is NOT defined.
  1206. | .endif         - Any .ifdef/.ifndef should be terminated by a .endif .
  1207. | .else          - Reverse the previous .ifdef/.ifndef
  1208.  
  1209. The following SYMBOLS are automatically defined by the compiler :
  1210.  
  1211. Symbol          When Defined
  1212. ------          ------------
  1213. DEF             /PX+
  1214. W31             /W31
  1215. W30             /W30
  1216. THS             /TH+
  1217. QHS             /QH+
  1218. TVH             /TV+
  1219. PHS             /PH+
  1220. DVX             /XD+
  1221. MEM             /MT+
  1222. OS2             /OS2
  1223. TXT             /TXT
  1224. WINDOWS         /W30, /W31
  1225. THELP           /TH+
  1226. QUICKHELP       /QH+
  1227. TVHC            /TV+
  1228. NATIVEPARADOX   /PX+
  1229. POPHELP         /PH+
  1230. DESQVIEW/X      /XD+
  1231. NATIVEMEMORY    /MT+
  1232. VERx.y          When Compiling with helpC Vx.y 
  1233. NATIVE          /PX+, /MT+
  1234. DOCUMENT        /TXT, /RTF
  1235.  
  1236. .par
  1237. You can define your own conditional defines on the command line using the /D:
  1238. switch of helpC.
  1239. .endpar
  1240.  
  1241. e.g.
  1242.  
  1243. Source :
  1244.  
  1245. | ... some text ..
  1246. | .ifdef mydef
  1247. |   Special Text for mydef situation
  1248. | .endif
  1249. | ... more text
  1250.  
  1251. and you compile using HELPC /D:MYDEF the special text will be included.
  1252.  
  1253. .par font 13 bold on
  1254. Related Topics :
  1255. .endpar
  1256. ~Technical Documentation~techDoc~
  1257. ~Help Definition~hdf~
  1258.  
  1259. .end-topic
  1260.  
  1261. ;******************************************************************************
  1262. ;                                  textAttr                                   *
  1263. ;******************************************************************************
  1264. .topic textAttr
  1265. .title Text Attributes
  1266. .keywords programming
  1267.  
  1268. .par 
  1269. Topic's text can receive visual attributes such as a font, size, bold, 
  1270. italic etc.. by using the paragraph attributes on the .PARAGRAPH (.par)
  1271. line. Text attributes are currently supported in the winhelp and rtf targets.
  1272. .endpar
  1273.  
  1274. The attributes that can be applied to text are :
  1275.  
  1276. Font            - The font the text will be displayed in.
  1277. Bold            - The text is displayed in bold characters.
  1278. Italic          - The text is displayed in italic characters.
  1279. Underline       - The text is displayed in underline characters.
  1280. Size            - The size of the font.
  1281. Box             - The paragraph can be contained in a box.
  1282. Align           - The paragraph can be alligned.
  1283. Color           - The text foreground color.
  1284.  
  1285. The syntax is :
  1286.  
  1287. | .PARAGRAPH [attr1 attr1-parameters [attr2 attr2-parameters [..] ]]
  1288.  
  1289. The allowed parameters to attributes are :
  1290.  
  1291. 1. FONT font-number-in-font-palette : The font number in the font palette, there
  1292. is a standard font palette for winhelp and rtf targets that include the 
  1293. following fonts :
  1294.  
  1295.  0 : Times Roman        (roman Tms Rmn)
  1296.  1 : Symbol             (decor Symbol)
  1297.  2 : Helvetica          (swiss Helv)
  1298.  3 : LinePrinter        (modern LinePrinter)
  1299.  4 : Terminal           (roman Terminal)
  1300.  5 : Times New Roman    (roman Times New Roman)
  1301.  6 : Arial              (swiss Arial)
  1302.  7 : CG Times (WN)      (roman CG Times (WN))
  1303.  8 : Courier            (modern Courier)
  1304.  9 : Modern             (modern Modern)
  1305. 10 : Script             (script Script)
  1306. 11 : Univers (WN)       (swiss Univers (WN))
  1307. 12 : Wingdings          (nil Wingdings)
  1308. 13 : MS Sans Serif      (swiss MS Sans Serif)
  1309.  
  1310. 2. BOLD ON|OFF - Set bold mode to on/off.
  1311.  
  1312. 3. ITALIC ON|OFF - Set italic mode to on/off.
  1313.  
  1314. 4. UNDERLINE ON|OFF - Set underline mode on/off.
  1315.  
  1316. 5. SIZE font-size - Set the size of the font.
  1317.  
  1318. 6. BOX NONE|NORMAL|THICK|SHADOW|DOUBLE - Print paragraph in a box which has one
  1319. of the described borders : NONE is no border at all.
  1320.  
  1321. 7. ALIGN LEFT|RIGHT|CENTER|JUSTIFY - Print the text in the paragraph aligned
  1322. to one of the sides, the center or justified in the paragraph.
  1323.  
  1324. 8. COLOR color-number-in-color-palette - The numbers are the same numbers used
  1325. for dos native systems and described in the help definition format section
  1326. above, regarding the .LINKCOLOR, .TEXTCOLOR and .LINKHIGH statements.
  1327.  
  1328. Example :
  1329.  
  1330. | .PAR BOX SHADOW FONT 13 BOLD 
  1331. |    ... some text here ..
  1332. | .ENDPAR
  1333.  
  1334. Will display the paragraph in a shadow bordered box, using font 13 in the 
  1335. palette (MS Sans Serif assuming that the original palette is used) with bold
  1336. characters.
  1337.  
  1338. .par font 13 bold on
  1339. Related Topics :
  1340. .endpar
  1341. ~Technical Documentation~techDoc~
  1342. ~Help Definition~hdf~
  1343.  
  1344. .end-topic
  1345.  
  1346. ;******************************************************************************
  1347. ;                                  groupsDoc                                  *
  1348. ;******************************************************************************
  1349. .topic groupsDoc
  1350. .title Groups Definition and Usage
  1351. .keywords programming
  1352.  
  1353. Topics can be associated to groups using the .GROUPS statement in the topic
  1354. heading. Menus to these groups can later be created by using the 
  1355. command .INSERT GROUP group-name in the topic text.
  1356.  
  1357. An example will clarify the use of this function :
  1358.  
  1359. Let us assume that we have a car's collectors database, where the description
  1360. of each car is a topic. We would like to present a hierarchy to the user that
  1361. looks like that : 
  1362.  
  1363. Overview Screen
  1364.    |
  1365.    +--------- Cars by Country
  1366.    |               |
  1367.    |               +------------ U.S.A ... List of cars manufactured in U.S.A
  1368.    |               +------------ U.K.
  1369.    |               +------------ Italy
  1370.    |
  1371.    +--------- Cars by Maker
  1372.    |               |
  1373.    |               +------------ Alfa-Romeo ... List of Alfa-Romeo models
  1374.    |               +------------ GM
  1375.    |               +------------ Mazda
  1376.    |
  1377.    +--------- Cars by type
  1378.                    |
  1379.                    +------------ 4x4 & Jeeps
  1380.                    +------------ Sport Cars
  1381.                    +------------ Family Sedans
  1382.                         
  1383. We will create group references in the topics using the .GROUPS statement,
  1384. The Alfa Romeo Spider 2000 topic will look like :
  1385.  
  1386. | .topic alfa_romeo_spider_2000
  1387. | .title Alfa Romeo Spider 2000
  1388. | .keywords alfa spider convertible sport classic
  1389. | .groups italian alfa sport
  1390. | The Alfa Romeo ... 
  1391. | .end-topic
  1392.  
  1393. The Italian Cars Directory topic will be :
  1394.  
  1395. | .topic italy_directory
  1396. | .title Italian Cars Directory
  1397. | .keywords directory
  1398. | Cars Manufactured in Italy :
  1399. | .insert group italian
  1400. | .end-topic
  1401.  
  1402. If our database includes 3 cars that have a reference to the Italian group
  1403. this will be the equivalent of writing :
  1404.  
  1405. | .topic italy_directory
  1406. | .title Italian Cars Directory
  1407. | .keywords directory
  1408. | Cars Manufactured in Italy :
  1409. | ~~Alfa Romeo Spider 2000~~alfa_romeo_spider_2000~~
  1410. | ~~Ferrari 308 GTS~~Ferrari_308_gts~~
  1411. | ~~Fiat Uno 70S~~fiat_uno_70s~~
  1412. | .end-topic
  1413.  
  1414. .par font 13 bold on
  1415. Related Topics :
  1416. .endpar
  1417. ~Technical Documentation~TechDoc~
  1418. ~.HDF Syntax~hdf~
  1419. ~Conditional Defines~condefine~
  1420. .end-topic
  1421.  
  1422. ;******************************************************************************
  1423. ;                                exceptHandle                                 *
  1424. ;******************************************************************************
  1425. .topic exceptHandle
  1426. .title Exception Handling
  1427. .keywords programming exception
  1428.  
  1429. .par
  1430. helpC provides mechanism to handle link exceptions. An exception is a link
  1431. to an identifier that is not defined as a topic or popup. In order to help
  1432. you find these errors helpC contains the cross reference report that can
  1433. be produced using the /R+ switch. You can browse the HELPC.LST file generated
  1434. by helpC if a cross reference report is generated, and search for the string
  1435. ERROR that describes undefined links.
  1436. .endpar
  1437.  
  1438. .par
  1439. helpC provides additional exception handling facilities. When an error is found
  1440. during compile helpC can perform on of the following actions :
  1441. .endpar
  1442.  
  1443. 0: No Check - Default - helpC does not do anything. The link is passed as is to
  1444.               the target. The target help engine/compiler will handle the 
  1445.               exception as it is implemented.
  1446.  
  1447. 1: Trap     - helpC will replace the link key with the key ERROR. It is the 
  1448.               responsibility of the help database author to provide such a
  1449.               topic/popup.
  1450.  
  1451. 2: Strip    - helpC will pass the text of the link to the target with no link
  1452.               support. The text will appear as normal text.
  1453.  
  1454. 3: Delete   - Both the text and the link will be deleted and will not appear in
  1455.               the target.
  1456.  
  1457. 9: Abort    - helpC will abort, with an error message, and the line the link 
  1458.               is defined. This mode is recommended when you are debugging 
  1459.               your help database.
  1460.  
  1461. You can set the error level using the following techniques :
  1462.  
  1463. - Use the /EL=x switch on the helpC command line.
  1464.  
  1465. - Use the .ERRORLEVEL x .HDF statement.
  1466.  
  1467. .par bold on
  1468. Important Points :
  1469. .endpar
  1470.  
  1471. .par
  1472. 1. When errorLevel = 0 (default) no topic database is created during pass 1,
  1473. if you set .errorlevel somewhere in your source, after some topics/popups
  1474. have been defined, these topics will not be in the symbol table created by
  1475. helpC and will be considered an exception!.
  1476. .endpar
  1477.  
  1478. .par font 13 bold on
  1479. Related Topics :
  1480. .endpar
  1481. ~Technical Documentation~TechDoc~
  1482. ~.HDF Syntax~hdf~
  1483. ~Help Compiler~helpc~
  1484.  
  1485. .end-topic
  1486.  
  1487. ;******************************************************************************
  1488. ;                                     tif                                     *
  1489. ;******************************************************************************
  1490. .entry tif
  1491. .title Topic Index Format
  1492. .keywords programming
  1493.  
  1494.   The topic index table format is as follows :
  1495.  
  1496.   TOPIC     - 40 characters string key - this is the topic "name".
  1497.   FILENAME  - 38 characters string field - includes the name of the
  1498.               help raw data file. (Notice - V1.0 ignores the value of this 
  1499.               field, it is here for future expansion).
  1500.   START     - longint (long) field that contains the offset from the data file
  1501.               start, to the start of the topics text data, in bytes.
  1502.   LEN       - longint (long) field that contains the length (in bytes) of the 
  1503.               text data of the topic.
  1504.   TITLE     - 70 characters string key - the title of the topic.
  1505.   TTYPE     - 1 character - topic type. Currently supported types are :
  1506.               'T' = Topic.
  1507.               'P' = Popup.
  1508.  
  1509. .par font 13 bold on
  1510. Related Topics :
  1511. .endpar
  1512. ~Technical Documentation~TechDoc~
  1513. ~Links Index Format~lif~
  1514. ~Keywords Index Format~kif~
  1515. ~Set File Format~sff~
  1516. .end-entry
  1517.  
  1518. ;******************************************************************************
  1519. ;                                     lif                                     *
  1520. ;******************************************************************************
  1521. .entry lif
  1522. .title Links Index Format
  1523. .keywords programming
  1524.  
  1525.   The links index table format is as follows :
  1526.  
  1527.   TOPIC     - 40 characters string key - the name of the topic that 
  1528.               has the link.
  1529.   SEQ       - integer (int) key - contains the sequential number of 
  1530.               the link in the topic. (This way you can assign the links
  1531.               order in the topic).
  1532.   LINK      - 40 characters string key - the name of the link topic to
  1533.               display if the link is chosen.
  1534.   LINE      - integer (int) field - the line (from the start of the topic) 
  1535.               this link is displayed on.
  1536.   COL       - integer (int) field - the column this link is displayed on.
  1537.   TXT       - 70 characters string field - the text to display on the line.
  1538.  
  1539. .par font 13 bold on
  1540. Related Topics :
  1541. .endpar
  1542. ~Technical Documentation~TechDoc~
  1543. ~Topic Index Format~tif~
  1544. ~Keywords Index Format~kif~
  1545. ~Set File Format~sff~
  1546. .end-entry
  1547.  
  1548. ;******************************************************************************
  1549. ;                                     sff                                     *
  1550. ;******************************************************************************
  1551. .entry sff
  1552. .title Set File Format
  1553. .keywords programming
  1554.  
  1555.   The set file is a text file that contains one entry in each line, using
  1556.  the following format :
  1557.  
  1558. help-database-engine
  1559. version-of-generating-compiler
  1560. topic-index-table name
  1561. links-index-table name
  1562. keywords-index-table name
  1563. help-raw-data-file name
  1564. number-of-topics
  1565. length-of-file
  1566. link-normal-color
  1567. link-high-color
  1568. text-normal-color
  1569.  
  1570. .par
  1571. The help-database-engine values available today are DEF=Paradox and 
  1572. MEM=memory Tables.
  1573. .endpar
  1574.  
  1575. .par font 13 bold on
  1576. Related Topics:
  1577. .endpar
  1578. ~Technical Documentation~TechDoc~
  1579. ~Topic Index Format~tif~
  1580. ~Links Index Format~lif~
  1581. ~Keywords Index Format~kif~
  1582. .end-entry
  1583.  
  1584. ;******************************************************************************
  1585. ;                                     kif                                     *
  1586. ;******************************************************************************
  1587. .topic kif
  1588. .title Keywords Index Format
  1589. .keywords programming
  1590.  
  1591.   The keywords index table format is as follows :
  1592.  
  1593.   KEYWORD   - 40 characters string key - the keyword.
  1594.   TOPIC     - 40 characters string key - the topic name that this keyword is 
  1595.               assigned to.
  1596.  
  1597.   Notice - the database will include a row for each keyword, that has the 
  1598.   TOPIC field blank. This is used to display the first list of keywords, that
  1599.   if chosen, will display the 2nd list of topics that have the chosen keyword
  1600.   in their .KEYWORDS definition.
  1601.  
  1602. .par font 13 bold on
  1603. Related Topics:
  1604. .endpar
  1605. ~Technical Documentation~TechDoc~
  1606. ~Topic Index Format~tif~
  1607. ~Links Index Format~lif~
  1608. ~Set File Format~sff~
  1609. .end-topic
  1610.  
  1611. ;******************************************************************************
  1612. ;                                otherProducts                                *
  1613. ;******************************************************************************
  1614. .topic otherProducts
  1615. .title Related Products
  1616. .keywords contact
  1617.  
  1618. The following products/packages provide additional HLPDK functionality :
  1619.  
  1620. 1. Name         : IL2HDK - Interrupt List (Ralf Brown) 2 HLPDK convert program. 
  1621.    Version      : 2.2
  1622.    Availability : IL2HDK22.ZIP.
  1623.    Status       : Free. 
  1624.    Author       : Ron Loewy.
  1625.  
  1626. 2. Name         : HPCHDK - HelpPC 2 HLPDK convert program.
  1627.    Version      : 1.0
  1628.    Availability : HPCHDK10.ZIP.
  1629.    Status       : Free.
  1630.    Author       : Yaniv Golan (s2942275@tech02.technion.ac.il)
  1631.  
  1632. 3. Name         : SCANHELP - Turbo Pascal Scanner to help.
  1633.    Version      : 3.01
  1634.    Availability : ? (Contact Author)
  1635.    Status       : Shareware.
  1636.    Author       : Duncan J. Murdoch (dmurdoch@mast.QueensU.CA)
  1637.  
  1638. 4. Name         : NG2HDK - Norton Guides 2 HLPDK convert program.
  1639.    Version      : 1.0
  1640.    Availability : NG2HDK10.ZIP
  1641.    Status       : Free.
  1642.    Author       : Ron Loewy.
  1643.  
  1644. 5. Name         : NEWSDB - News Clips Hypertext system.
  1645.    Version      : Beta.
  1646.    Availability : Not in GA yet. (I hope it will be around in Oct.).
  1647.    Status       : To Be Determined.
  1648.    Author       : Ron Loewy.
  1649.  
  1650. 6. Name         : POPHDK - POPHELP 2 HLPDK convert program.
  1651.    Version      : 1.0
  1652.    Availability : POPHDK10.ZIP.
  1653.    Status       : Free.
  1654.    Author       : Yaniv Golan (s2942275@tech02.technion.ac.il)
  1655.  
  1656. 7. Name         : JARG2HDK - Jargon File to HLPDK convert program.
  1657.    Version      : 1.0
  1658.    Availability : ? (Contact Author)
  1659.    Status       : ?
  1660.    Author       : Slren Pingel Dalsgaard (pingel@daimi.aau.dk)
  1661.  
  1662. .end-topic
  1663.