home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / progmisc / hlpdk60.zip / HLPDK.HDF < prev    next >
Text File  |  1993-06-21  |  34KB  |  986 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. ;                                 .fixedFont                                  *
  11. ; use a fixed font for Windows target ..                                      *
  12. ;******************************************************************************
  13. .fixedFont
  14.  
  15. ;******************************************************************************
  16. ;                                  overview                                   *
  17. ; notice - a .top = .topic = .entry                                           *
  18. ;******************************************************************************
  19. .top overview
  20. .title HLPDK System Overview
  21. .keywords contents
  22.  
  23.  ****************************************************************************
  24.  *                                                                          *
  25.  *                                 ISoft D&M                                *
  26.  *                                 POB. 5517                                *
  27.  *                           Coralville IA 52241                            *
  28.  *                                   U.S.A                                  *
  29.  *                                                                          *
  30.  **************************************************************************** 
  31.  
  32. .par
  33. The Help Engine Development Kit is a system that allows you to create 
  34. hyper-text database help systems with topics and hot links, using a simple
  35. text editor and the help compiler. 
  36. .endpar
  37.  
  38. .par
  39. The help databases can be distributed (free of charge) with the HELPENG or
  40. HE help engine display programs. 
  41. .endpar
  42.  
  43. .par
  44. The help database format is release to the public domain, if you own the 
  45. Paradox Engine you can use the help databases with your own programs. 
  46. .endpar
  47.  
  48. .par
  49. Borland Pascal Users can purchase the Help Engine Source Code even
  50. for Applications that do not use the paradox engine, using the Native Mem
  51. format.
  52. .endpar
  53.  
  54. .par
  55. The helpC compiler that is part of this development kit includes the
  56. ability to create Windows Help source files from the same source the 
  57. dos help sources are created!. Write your help once, and create help
  58. databases for Dos, Windows, OS/2 and DESQview/X !
  59. .endpar
  60.  
  61.         Supported Formats :
  62.  
  63.         Native(PX), Native (Mem), Win30, Win31, QuickHelp, 
  64.         THELP, TVHC, POPHELP, DESQview/X, OS/2
  65.  
  66. .par
  67. Contact ISoft D&M if you want to purchase the WINTEXT UI library for 
  68. Turbo Pascal programs, and use the help engine window in your pascal
  69. programs.
  70. .endpar
  71.  
  72. Related Topics :
  73. ~Registration~register~
  74. ~Contact~contact~
  75. ~File List~fileList~
  76. ~Credits~credits~
  77. ~Help Engine~helpeng~
  78. ~Help Compiler~helpC~
  79. ~Quick Start~quickStart~
  80.  
  81. .endtop
  82.  
  83. ;******************************************************************************
  84. ;                                  register                                   *
  85. ;******************************************************************************
  86. .entry register
  87. .title Registration
  88. .keywords contact 
  89.  
  90. .par
  91. The Help Engine Development Kit (HLPDK) is a shareware product, 
  92. if you find this product valuable, please register it. 
  93. This section describes the reasons you should register.
  94. .endpar
  95.  
  96. .par
  97. By registering you will receive a complete discussion
  98. of the help engine features, and many examples of usage. You will receive a 
  99. diskette with the latest HLPDK version, and DPMI (dos protected mode)
  100. versions of the help compiler and engines!.(The memory version of the
  101. help engine can display huge databases only in the protected mode
  102. version).
  103. .endpar
  104.  
  105. .par
  106. Your registration will help us to create the next versions of HLPDK, that
  107. will include more options, and features, some of them might even be your
  108. enhancement requests!.
  109. .endpar
  110.  
  111. .par
  112. A point to consider - If you want to create Windows Help source files,
  113. you will have to purchase a word processor that can output RTF files,
  114. the WORD for Windows 2.0 package, for example, is listed at around $500!.
  115. .endpar
  116.  
  117. Related Topics :
  118. ~Contact~contact~
  119. ~Overview~overview~
  120. .end-entry
  121.  
  122. ;******************************************************************************
  123. ;                                   Contact                                   *
  124. ;******************************************************************************
  125. .entry Contact
  126. .keywords register
  127.  
  128.   Please contact :
  129.  
  130.   ISoft D&M,  
  131.   P.O.B 5517
  132.   Coralville IA 52241,
  133.   U.S.A
  134.  
  135.   To contact the author directly : 
  136.  
  137.   Contact :     Loewy Ron,
  138.                 9 Haneveem st.
  139.                 Herzeliya, 46465
  140.                 ISRAEL.
  141.  
  142.   e-mail address : CompuServe - 100274,162
  143.  
  144. Related Topics :
  145. ~Regsiteration~register~
  146. ~Overview~overview~
  147. .end-entry
  148.  
  149. ;******************************************************************************
  150. ;                                  fileList                                   *
  151. ;******************************************************************************
  152. .entry fileList
  153. .title HPLDK Distribution File List
  154.  
  155. This package contains the following files :
  156.  
  157.  HELPENG.EXE    - Help Engine.
  158.  HELPC.EXE      - Help Compiler.
  159.  HE.EXE         - Mem Help Engine.
  160.  HLPDK.DOC      - This file.
  161.  HELPC.DOC      - Help Compiler documentation
  162.  HELPDEMO.HDF   - Demo Help Project.
  163.  2NDDEMO.HDF    - Demo Help Project - file 2.
  164.  HELPDEMO.HLP   - Demo Help Project file for Windows WINHELP. 
  165.  HLPDK.REG      - Registration file.
  166.  HLPDK.HDF      - Help Development Kit hypertext help database source.
  167.  HLPDK.HDT      - Help Development Kit help database file.
  168.  HLPDK.SET      - Help Development Kit help database file.
  169.  HLPDKTOP.*     - Help Development Kit help database files.
  170.  HLPDKLNK.*     - Help Development Kit help database files.
  171.  HLPDKKEY.*     - Help Development Kit Help datanase files.
  172.  PROGRAMS.TXT   - ISoft D&M shareware products description.
  173.  
  174. Related Topics :
  175. ~Overview~overview~
  176. ~Quick Start~quickStart~
  177. .end-entry
  178.  
  179. ;******************************************************************************
  180. ;                                   Credits                                   *
  181. ;******************************************************************************
  182. .entry Credits
  183.  
  184. .par
  185. HELPENG, HELPC were written using Turbo Pascal 6.0, and Borland Pascal 7.0,
  186. Paradox Engine 2.0, and Paradox Engine 3.0, 3.01. 
  187. (Trademarks of Borland International).
  188. .endpar
  189.  
  190. .par
  191. Windows, Microsoft, HC and Quick Help are trademarks or copyrights
  192. of Microsoft Corp.
  193. .endpar
  194.  
  195. .par
  196. The HELPENG program was written using the WINTEXT UI library, 
  197. (c) 1991,93 Loewy Ron.
  198. .endpar
  199.  
  200. THELP, HL and TVHC are Trademarks or copyrights Borland International.
  201.  
  202. POPHELP is a copyright of TurboPower Software.
  203.  
  204. TVHC support, and other ideas were suggested by MunLeong Chan.
  205.  
  206. .par
  207. Parts of the Help Engines were generated using Ron Loewy's WTGEN and dbGen
  208. CASE code generators.
  209. .endpar
  210.  
  211. .par
  212. Parts of the Help Compiler were generated using Ron Loewy's dbGen database 
  213. code generator.
  214. .endpar
  215.  
  216. Yaniv Golan helped me with beta-testing, debugging and suggestions.
  217.  
  218. .par
  219. John Murphy notified me of the paragraph formtting difficulties that
  220. lead to the .PARAGRAPH .END-PARAGRAPH formatting capabilities.
  221. .endpar
  222.  
  223. DESQview/X is a trademark of Quarterdeck Office Systems.
  224.  
  225. .par
  226. MDVXHELP is a copyright (1992) of Daniel J. Bodoh. I have used his
  227. excelent documentation of DESQview/X help format to generate code
  228. to this environment.
  229. .endpar
  230.  
  231. .par
  232. The HC31 problem with characters with ordinal values biggen than 127
  233. was solved thanks to Mr. Lars Fosdal of Norway.
  234. .endpar
  235.  
  236. OS/2 is a registered trademark of International Bussiness Machines.
  237.  
  238. .par
  239. The Text Cursor restore problem in the help engines was reported by Prof.
  240. Timo Salmi of the Univ. of VAASA, Finland.
  241. .endpar
  242.  
  243. Related Topics :
  244. ~Overview~overview~
  245. .end-entry
  246.  
  247. ;******************************************************************************
  248. ;                                 quickStart                                  *
  249. ;******************************************************************************
  250. .entry quickStart
  251. .title Quick Start
  252. .keywords operation
  253.  
  254. From the command line enter HELPC HELPDEMO to compile the demo help database.
  255.  
  256. .par
  257. After the compilation process is ended, enter HELPENG HELPDEMO to browse the
  258. demo help database.
  259. .endpar
  260.  
  261. If you want to compile for windows :
  262.  
  263. from the command line enter HELPC HELPDEMO /W31
  264. and after that HC31 HELPDEMO
  265. (HC31 is the Microsoft Help Compiler)
  266. .par
  267. from windows, open the HELPDEMO.HLP file from the windows help engine.
  268. (Notice - if you do not have the HC help compiler from windows, we have
  269. included a compiled version of HELPDEMO (HELPDEMO.HLP) so you will be
  270. able to feel the quality of the output that can be generated, and decide
  271. if you want to purchase the HC31 program (Included with the SDK, BC++, 
  272. TPW, BP and probably some other packages), or download it from one of the
  273. sites Microsoft had uploaded it to).
  274. .endpar
  275.  
  276. .par
  277. If you use windows 3.0, or want your help file to be compatible with
  278. winHelp 3.0 use :
  279. .endpar
  280.         HELPC /W30 HELPDEMO
  281.         HC HELPDEMO
  282.  
  283. To compile for THELP use : 
  284.         HELPC /TH+ HELPDEMO
  285.         HL -x -e100 -p -i -oHELPDEMO.TPH HELPDEMO.HL
  286.  
  287. To compile for QuickHelp : 
  288.         HELPC /QH+ HELPDEMO
  289.         HELPMAKE -e15 -oHELPDEMO.QH HELPDEMO.SRC
  290.  
  291. To compile for TVHC :
  292.         HELPC /TV+ HELPDEMO
  293.         TVHC HELPDEMO.TXT
  294.  
  295. To compile for POPHELP :
  296.         HELPC /PH+ HELPDEMO
  297.         MAKEHELP /Q HELPDEMO
  298.  
  299. To compile for DESQview/X :
  300.         HELPC /XD+ HELPDEMO
  301.         MDVXHELP HELPDEMO.HLP @HELPDEMO.LST
  302.         COPY HELPDEMO.HLP d:\DVX\HELP
  303.  
  304. To compile for Native Mem Format :
  305.        HELPC /MT+ HELPDEMO
  306. (Use HE HELPDEMO to view that database).
  307.  
  308. To compile for IPF (OS/2) format :
  309.        HELPC /OS2 HELPDEMO 
  310.        Switch to an OS/2 session.
  311.        IPFC /INF HELPDEMO
  312. (Use the VIEW Command to browse the database).
  313.  
  314. Related Topics :
  315. ~Overview~overview~
  316. ~File List~filelist~
  317. .end-entry
  318.  
  319. ;******************************************************************************
  320. ;                                   helpeng                                   *
  321. ;******************************************************************************
  322. .entry helpeng
  323. .title The Help Engine
  324. .keywords operation
  325.  
  326. .par
  327. To start the help engine program enter HELPENG on the command line, and 
  328. choose the help database you want to view from the list box. Use the Tab key
  329. to cycle between hot-link words, and press Enter to go to that link.
  330. .endpar
  331.  
  332. .par
  333. If you know the name of the SET file of the database you want to activate, you
  334. can enter it on the command line, and the help engine will display it.
  335. .endpar
  336.  
  337. .par
  338. If you have a mouse, you can use it to point at the hi-lighted links, and 
  339. activate them by pressing the left mouse button.
  340. .endpar
  341.  
  342. .par
  343. Press the ALT-T key combination to choose from a list of TOPICS in the 
  344. database, Press ALT-B to go back to the previous displayed TOPIC, Press
  345. ALT-X to exit the help engine.
  346. .endpar
  347.  
  348. The exit command can be given by pressing the right mouse button.
  349.  
  350. .par
  351. Use F10 to open the menubar, and use the arrow keys to navigate the 
  352. options. When you find the option you are interested in, Use the Enter
  353. key to execute it, or the Esc key to cancel. The menubar can be navigated
  354. using the mouse as well.
  355. .endpar
  356.  
  357. .par
  358. To create a new help database please refer to the ~HELPC~helpc~ documentation
  359. file.
  360. .endpar
  361.  
  362. .par
  363. If you want to use the Native Mem Format Databases, Please use the supplied
  364. HE.EXE program. 
  365. .endpar
  366.  
  367. Related Topics :
  368.  
  369. ~Trouble Shooting~Trouble~
  370. ~Overview~overview~
  371. .end-entry
  372.  
  373. ;******************************************************************************
  374. ;                                   Trouble                                   *
  375. ;******************************************************************************
  376. .entry Trouble
  377. .title Trouble Shooting
  378. .keywords operation
  379.  
  380. .par
  381. If you receive some kind of an error message while using the help development
  382. kit please refer to this section.
  383. .endpar
  384.  
  385. tableOps: xxxx error message :
  386. .par
  387. This message is generated by the Paradox Engine if an internal error occurs,
  388. if you receive a message that is not understood (e.g. Table is busy), 
  389. please try one of the following :
  390. .endpar
  391.  1. Try running the Help Compiler or the Help Engine with another input and 
  392.     notice if the problem exists, if it does, turn to the next entry,
  393.     otherwise try to see what the difference between the inputs is.
  394.  2. Check your free memory, try to move some TSR's from memory, or use the
  395.     protected mode compiler/engine available with the registered version.
  396.  3. Check if you have loaded dos SHARE program, it is advised to use SHARE
  397.     with programs that use the Paradox Engine. If you receive a table busy
  398.     error, try to see if you have another program that uses the same table 
  399.     in another session (Windows/DESQview etc..).
  400.  4. PANIC - Please contact the distibuter/author for additional help.
  401.  
  402. Microsoft's HC31 help compiler will generate a error in RTF file error :
  403.  
  404.  1. Re-compile using HELPC 4.0+. This should solve the problem, if the problem
  405.     still exists - please try steps 2 and 3, and notify the author. 
  406.  2. Use a binary disk editor to look at the character at the position x - 1
  407.     in the RTF file (where x is the error position reported by HC31).
  408.  3. Try to replace that charqacter from a special PC oem character to a 
  409.     "standard" ascii character (such as *). If the problem still occurs,
  410.     please contact ISoft D&M/The author, otherwise - you probably came 
  411.     accross a character that HC31 can not handle. In that case - try using
  412.     HC300b (the one that generates winHelp 3.0 format), or delete these 
  413.     characters from your source HDF file.
  414.  
  415. Borland's HL help linker will generate a FE02: Out Of Memory error :
  416.  1. Re-compile using HELPC V3.0+, to include ;INDEX directives after the
  417.     screen's definitions.
  418.  
  419. Borland's HL help linker will complain about undefined context numbers :
  420.  1. You probably have a contents.h file in the current directory, that hl
  421.     tries to use to bind the help topics to Borland's IDE on-line help,
  422.     try renaming this file, and re-compile with HL.
  423.  
  424. HelpC will not create the database when compiling to Native Mem (/MT+) :
  425.  1. Try compiling with report generation on (/R+) to Native Paradox
  426.     (/PX+) format. If there are errors, consult the HELPC.LST file, fix 
  427.     them, and re-try.
  428.  2. If the database is BIG, you might not have enough memory - Remember that
  429.     Native Mem tables are generated in memory. You will have to use the
  430.     HelpCX protected mode compiler (Available with the registered version).
  431.  
  432. HelpEng/HE will complain on an old-database when tring to open a help
  433. database with it :
  434.  1. Re-Compile the database using helpC.
  435.  
  436. HelpEng/HE will complain on un-supported database format, when trying to
  437. open a database :
  438.  1. HelpEng can not display Native Mem databases, and HE can not display
  439.     Native PX databases. Use the other help engine supplied.
  440.  
  441. HE will not be able to open a Native Mem database :
  442.  1. Use the protected mode HEX help engine. (Available for registered users).
  443.  
  444. Where is HL - Borland's Help Linker :
  445.  1. HL is not included with Borland C++ or Borland Pascal, Borland sells an
  446.     aditional package called Borland Open Architecture (and Borlad OA for 
  447.     Pascal) that include among other things - the THELP help linker.
  448.  
  449. .par
  450. HelpEng/HE will complain on an old-database when tring to open a help
  451. database with it :
  452. .endpar
  453.  1. Re-Compile the database using helpC.
  454.  
  455. .par
  456. HelpEng/HE will complain on un-supported database format, when trying to
  457. open a database :
  458. .endpar
  459.  1. HelpEng can not display Native Mem databases, and HE can not display
  460.     Native PX databases. Use the other help engine supplied.
  461.  
  462. HE will not be able to open a Native Mem database :
  463.  1. Use the protected mode HEX help engine. (Available for registered users).
  464.  
  465. .par
  466. We have encountered some users that ran into problems, because they did 
  467. not use the dos SHARE program. We advise that you will always load the 
  468. SHARE program in your AUTOEXEC.BAT file.
  469. .endpar
  470.  
  471. Related Topics :
  472. ~Overview~overview~
  473. ~Help Engine~helpeng~
  474. ~Help Compiler~helpC~
  475. .end-entry
  476.  
  477. ;******************************************************************************
  478. ;                                    helpC                                    *
  479. ;******************************************************************************
  480. .entry helpC
  481. .title Help Compiler
  482. .keywords operation
  483.  
  484. .par
  485. The HELPC help compiler is a dos command line program that receives a 
  486. help definition file (.HDF) and produce a help database. 
  487. .endpar
  488.  
  489.   The helpC command line is :
  490.  
  491.  HELPC source.fil [/Htopic-table-name] [/Llink-table-name] [/Ddata-file-name] 
  492.                   [/Kkeywords-table-name] [/R-]  [/ST-] [/CS+] [/EP+]
  493.                   [/W+]  [/W30] [/W31] [TH+] [/QH+] [/TV+] [/PH+] [/XD+]
  494.                   [/PX+] [/MT+] [/OS2]
  495. .par
  496. The output of the compiler is a set data file called source.SET, that
  497. includes the names of the other help database components. 
  498. .endpar
  499.  
  500. .par
  501. Please Notice - if the /W+ /W30 or /W31 switch is defined, the compiler 
  502. will generate a .HPJ and .RTF files that can be used with the Microsoft 
  503. HC (v3.00b) or HC31 help compiler, and output a .HLP windows help file!. 
  504. .endpar
  505.  
  506. .par
  507. By default the help compiler produces a help cross reference report on the 
  508. topics/links used in the database, if the /R- switch is set, no cross-ref
  509. report will be generated, and no database integrity indicators will be
  510. given.
  511. .endpar
  512.  
  513.  
  514. .par
  515. IMPORTANT - Scan the output cross reference report for links defined, that
  516. are not defined as topics!
  517. .endpar
  518.  
  519. .par
  520. Notice - An additional switch is available that instructs the help compiler
  521. to indicate it's parse and code generation progress. Use the /EP+ switch to
  522. see that the helpC compiler is active. Please understand that the compile
  523. process can take a long time, on complex help databases. This switch does
  524. nothing more that ensure to you that the help compiler is alive. 
  525. .endpar
  526.  
  527. .par
  528. The /ST switch defines if the topic name defined in the .TOPIC command
  529. can include embeded spaces. By default this switch is set to /ST- (No
  530. embedded spaces).
  531. .endpar
  532.  
  533. .par
  534. The /CS switch turns Topics and Links case sensativity to ON. Use this
  535. switch with care - Only if you must have a lower/mixed case index in THELP
  536. or POPHELP use this switch. Notice that help databases that compile fine
  537. with case sensativity set to off, might fail to do so in case sensativity
  538. on. By deafult this switch is set to off (-).
  539. .endpar
  540.  
  541. .par
  542. The /XD switch generates code to the MDVXHELP help compiler, available
  543. free in the file DVXHLP10.ZIP on the internet. When this switch is given,
  544. a set of cover and section files is generated, as well as a response
  545. file that should be used to compile the help database.
  546. .endpar
  547.  
  548. .par
  549. The /OS2 switch generates IPF source code. You must compile the generated code 
  550. with IPFC, from within an OS/2 session (window or full screen).
  551. .endpar
  552.  
  553. Related Topics :
  554. ~Overview~overview~
  555. ~Command Line~commandline~
  556. ~Help Engine~helpeng~
  557. ~Technical Documentation~techdoc~
  558. .end-entry
  559.  
  560. ;******************************************************************************
  561. ;                                 commandline                                 *
  562. ;******************************************************************************
  563. .topic commandline
  564. .title Command Line
  565. .keywords operation
  566.  
  567. .par
  568. The compiler switches are defined on the command line. These switches can
  569. be placed before and after the source file name. The compiler will look for
  570. a file named HELPC.CFG in the current directory, and process it before any
  571. command line switches are processed. 
  572. .endpar
  573.  
  574. .par
  575. Switches on the command line will over-ride switches set before them, on the
  576. command line or in one of the response options file.
  577. .endpar
  578.  
  579. Response option files can be specified by prefixing their name with a @ sign.
  580.  
  581.  
  582.  Examples :
  583.  
  584.  If our HELPC.CFG file, in the current directory is :
  585.  
  586. /W31
  587. /R-
  588.  
  589.  And we compile using HELPC HELPDEMO
  590.  
  591.  The helpdemo.hdf file will be compiled, with the target set to winhelp 3.1
  592.  and no cross-reference report.
  593.  
  594.  Compile using HELPC HELPDEMO /r+
  595.  
  596.  Will create winhelp 3.1 sources, but a report will be generated.
  597.  
  598.  Compile using HELPC /w- HELPDEMO
  599.  
  600.  Will generate native format help database, no report is generated.
  601.  
  602.  If we have a file called MYSWITCH.CFG with the following lines :
  603.  
  604. /TH+
  605. /ST-
  606. /CS+
  607.  
  608.  And we compile using HELPC @MYSWITCH.CFG HELPDEMO
  609.  
  610.  A THELP source, using Long Topic Names, with case sensativity will be 
  611.  generated, no cross reference report is generated. (HELPC.CFG contains /r-)
  612.  
  613. Related Topics :
  614. ~Overview~Overview~
  615. ~Help Compiler~helpc~
  616.  
  617.  
  618. .end-topic
  619.  
  620. ;******************************************************************************
  621. ;                                   techDoc                                   *
  622. ;******************************************************************************
  623. .entry techDoc
  624. .title Technical Documentation
  625. .keywords programming
  626.  
  627. .par
  628. The Help Engine database is a combination of text that is read by the user,
  629. and a Topic and Links database that allows the user to view the topics
  630. he is interested in, using hyper-text methods.
  631. .endpar
  632.  
  633.  
  634.   Each help database is built of 5 components : 
  635.  
  636.  1. Help Data File    - this file contains the raw text data.
  637.  2. Topic Index       - a database table that contains the topic names, and
  638.                         the references to the topics in the Data File.
  639.  3. Links Index       - a database table that contains the list of links 
  640.                         defined for each topic, and positional data.
  641.  4. Keywords Index    - a database table that contains the list of keywords,
  642.                         and the topics that have these keywords.
  643.  5. Set Data File     - a database configuration file that contains the
  644.                         names of the 3 components defined above, and some 
  645.                         additional information.
  646.  
  647. .par
  648. Version 1.x is the bare-bones version that includes only the basic
  649. operations needed from a hyper-text database, this version is implemented
  650. using the Paradox Engine V3.0 to manage the Topic and Link index tables.
  651. .endpar
  652.  
  653. .par
  654. Version 2.x has a new field in the topic table - the title field, help
  655. databases that were compiled with V1.x will not be executed by version
  656. 2.x, they will have to be re-compiled!.
  657. .endpar
  658.  
  659. .par
  660. Version 3.x fields have different length - the databases have to be 
  661. re-compiled.
  662. .endpar
  663.  
  664. .par
  665. Version 5.0+ has a new entry in the help set file, database have to be
  666. re-compiled, ot the value 128 should be added in the last line of the help
  667. set file, and the version number should be changed to 5.0.
  668. .endpar
  669.  
  670. .par
  671. Version 6.0+ has added the keyword support - a new database table is added,
  672. and a new set format is defined. Help databases will have to be re-compiled
  673. for Natice targets.
  674. .endpar
  675.  
  676. .par
  677. The format of the help database is released to the public domain, if
  678. you implement a database viewer on this database structure, I would be
  679. happy to receive a copy ..
  680. .endpar
  681.  
  682. Related Topics :
  683. ~Help Compiler~helpC~
  684. ~Help Engine~HelpEng~
  685. ~Help Definition Format~hdf~
  686. ~Topic Index Format~tif~
  687. ~Links Index Format~lif~
  688. ~Keywords Index Format~kif~
  689. ~Set File Format~sff~
  690.  
  691. .end-entry
  692.  
  693. ;******************************************************************************
  694. ;                                     hdf                                     *
  695. ;******************************************************************************
  696. .entry hdf
  697. .title Help Definition Format
  698. .keywords programming
  699.  
  700.   The help definition file format is as follows :
  701.  
  702. | remarks ...
  703. | remarks ...
  704. | .ENTRY topic-name
  705. | [.TITLE optional title for topic]
  706. | [.KEYWORDS optional keywords for topic]
  707. | topic text and link reference .. 
  708. | topic text and link reference .. 
  709. | topic text and link reference .. 
  710. | topic text and link reference .. 
  711. | .END-ENTRY 
  712. | remarks ...
  713. | .ENTRY topic2-name
  714. | [.KEYWORDS keyword1 keyword2 ..]
  715. | [.PARAGRAPH]
  716. | topic 2 text and link reference .. 
  717. | topic 2 text and link reference .. 
  718. | topic 2 text and link reference .. 
  719. | [.END-PARAGRAPH]
  720. | additional topic2 text ...
  721. | .END-ENTRY 
  722.  
  723.  
  724.   As can be seen - lines between the .ENTRY and .END-ENTRY keywords are
  725.  the lines processed by the help compiler, to create the help database, 
  726.  every other line is considered a remark, and is not parsed or evaluated by
  727.  the help compiler.
  728.  
  729.   The topic text and link reference lines are simple text lines, with
  730.  special link marks.
  731.  
  732.   A sample will provide the details :
  733.  
  734. This is a text help line that includes one ~~link~~link-topic-name~~ in it.
  735.  
  736.   This line will be displayed in the help engine program as :
  737.  
  738. This is a text help line that includes one link in it.
  739.  
  740.   The word "link" will be in a different color then the rest of the line, 
  741.  to indicate that this is a link. If the user hi-lights the link, and
  742.  presses Enter (or points the mouse cursor and clicks), the help engine will
  743.  look for a topic called "link-topic-name", and display it.
  744.  
  745.   Browse the HELPDEMO.HDF file for a demo of a help database definition file.
  746.  
  747.  Notes :
  748.  
  749.  1. The keywords .TOPIC and .END-TOPIC can be used instead of .ENTRY and
  750.   .  .END-ENTRY respectivly.
  751.  
  752.  2. Keywords are NOT case sensitive. (.topic = .TOPIC = .eNTry)
  753.  
  754.  3. The .TITLE keyword is optional. If no title is defined, the topic name
  755.     is used as a title. (just like in v1.x). 
  756.  
  757.  4. If you want the ~~ sign to appear in your help database, use ~~~~ in your
  758.     help source file. (e.g. "This is a ~~~~" will be "This is a ~~" in the final
  759.     help database.).
  760.  
  761.  5. The Optional .PARAGRAPH and .END-PARAGRAPH commands in the help topic text,
  762.     specify the start and the end of a paragraph. This feature is currently 
  763.     supported only for winhelp and IPF sources. This feature is important if you 
  764.     want to create long paragraphs that will wrap correctly when a user resizes
  765.     the help window. It is advized ALWAYS to use this feature for paragraphs,
  766.     future versions of the Help Development Kit will allow greater formatting
  767.     control over paragraphs using this mechanism.
  768.  
  769.  6. When a .PARAGRAPH is issued, a .END-PARAGRAPH MUST be specified at the
  770.     end of the paragraph. These commands must appear as the first words in
  771.     a line. The text after the .PARAGRAPH command is NOT part of the text 
  772.     of the help topic.
  773.  
  774.  
  775.  7. The optional .KEYWORDS command can appear after the .TITLE command
  776.     (If there is one), or the .TOPIC header (otherwise), Use this command
  777.     to help the user search for sets of topics that are connected to a 
  778.     specific keyword. The syntax of this comand is :
  779.     .KEYWORDS keyword-1 keyword-2 ... 
  780.  
  781. Additional commands include :
  782.  
  783. | .TEXTCOLOR, .LINKCOLOR and .LINKHIGH - VGA colors of text and links in normal 
  784. and high (selected) states in the native help format.
  785.  
  786. The syntax of these commands is :
  787.  
  788. | .TEXTCOLOR w 
  789.  
  790. or
  791.  
  792. | .LINKCOLOR x
  793.  
  794. or
  795.  
  796. | .LINKHIGH y
  797.  
  798. Where w, x and y are the color of the text/link, which is a combination of the 
  799. color of the foreground with the color of the background multiplied by 16.
  800.  
  801. The colors that can be used for both fore and background are :
  802.  
  803.   Black     = 0
  804.   Blue      = 1
  805.   Green     = 2
  806.   Cyan      = 3
  807.   Red       = 4
  808.   Magenta   = 5
  809.   Brown     = 6
  810.   LightGray = 7
  811.  
  812. The colors that can be used only for the foreground are :
  813.  
  814.   DarkGray     = 8
  815.   LightBlue    = 9
  816.   LightGreen   = 10
  817.   LightCyan    = 11
  818.   LightRed     = 12
  819.   LightMagenta = 13
  820.   Yellow       = 14
  821.   White        = 15
  822.  
  823. For example : to set the normal color of a link to light green on blue, use
  824.  
  825. | .LINKCOLOR 26
  826.  
  827. where 26 = 10 + 16 * 1. (10 = light green, 1 = blue).
  828.  
  829. Creating Multiple Source Projects :
  830.  
  831. Use the .INCLUDE commands in the source of your .HDF file, to include an
  832. additional source file.
  833.  
  834. For Example :
  835.  
  836.  .. some stuff 
  837.  
  838. | .include 2ndfile.hdf
  839.  
  840.  .. additional stuff
  841.  
  842. will process 2NDFILE.HDF in the middle of our source file.
  843.  
  844. Please notice - .INCLUDE commands can be nested in your source file,
  845. it is however not recommended to nest them too deep, helpC does not
  846. close the input file when a .INCLUDEd file is processed, in order to
  847. minimize help generation time - there is however, a limit on the number
  848. of open files that can be used by a program - this is a limit set by dos.
  849.  
  850. GUI Font based targets :
  851.  
  852. The .FIXEDFONT command is used to define a non proportional font as the 
  853. default font of the help database. Currently the only targets affected
  854. by this command are windows winHelp v3.x. If you find that your help 
  855. databases are not aligned after they are converted to winHelp format, use 
  856. this command and re-compile. This command has no effect on targets that are 
  857. different from the targets mentioned before.
  858.  
  859. The .PCFONT command is used to define a font that has the standard pc 
  860. character set (Terminal - in windows). If you convert a text based 
  861. database that uses the PC's special characters, use this command to
  862. set the default font. This command has no effect on targets that are 
  863. different from the targets mentioned before.
  864.  
  865. Related Topics :
  866. ~Technical Documentation~TechDoc~
  867.  
  868. .end-entry
  869.  
  870. ;******************************************************************************
  871. ;                                     tif                                     *
  872. ;******************************************************************************
  873. .entry tif
  874. .title Topic Index Format
  875. .keywords programming
  876.  
  877.   The topic index table format is as follows :
  878.  
  879.   TOPIC     - 40 charcters string key - this is the topic "name".
  880.   FILENAME  - 38 characters string field - includes the name of the
  881.               help raw data file. (Notice - V1.0 ignores the value of this 
  882.               field, it is here for future expansion).
  883.   START     - longint (long) field that contains the offset from the data file
  884.               start, to the start of the topics text data, in bytes.
  885.   LEN       - integer (int) field that contains the length (in bytes) of the 
  886.               text data of the topic.
  887.   TITLE     - 50 characters string key - the title of the topic.
  888.  
  889. Related Topics :
  890. ~Technical Documentation~TechDoc~
  891. ~Links Index Format~lif~
  892. ~Keywords Index Format~kif~
  893. ~Set File Format~sff~
  894. .end-entry
  895.  
  896. ;******************************************************************************
  897. ;                                     lif                                     *
  898. ;******************************************************************************
  899. .entry lif
  900. .title Links Index Format
  901. .keywords programming
  902.  
  903.   The links index table format is as follows :
  904.  
  905.   TOPIC     - 40 characters string key - the name of the topic that 
  906.               has the link.
  907.   SEQ       - integer (int) key - contains the sequential number of 
  908.               the link in the topic. (This way you can assign the links
  909.               order in the topic).
  910.   LINK      - 40 characters string key - the name of the link topic to
  911.               display if the link is chosen.
  912.   LINE      - integer (int) field - the line (from the start of the topic) 
  913.               this link is displayed on.
  914.   COL       - integer (int) field - the column this link is displayed on.
  915.   TXT       - 60 characters string field - the text to display on the line.
  916.  
  917. Related Topics :
  918. ~Technical Documentation~TechDoc~
  919. ~Topic Index Format~tif~
  920. ~Keywords Index Format~kif~
  921. ~Set File Format~sff~
  922. .end-entry
  923.  
  924. ;******************************************************************************
  925. ;                                     sff                                     *
  926. ;******************************************************************************
  927. .entry sff
  928. .title Set File Format
  929. .keywords programming
  930.  
  931.   The set file is a text file that contains one entry in each line, using
  932.  the following format :
  933.  
  934. help-database-engine
  935. version-of-generating-compiler
  936. topic-index-table name
  937. links-index-table name
  938. keywords-index-table name
  939. help-raw-data-file name
  940. number-of-topics
  941. length-of-file
  942. link-normal-color
  943. link-high-color
  944. text-normal-color
  945.  
  946. .par
  947. The help-database-engine values available today are DEF=Paradox and 
  948. MEM=memory Tables.
  949. .endpar
  950.  
  951. Related Topics:
  952. ~Technical Documentation~TechDoc~
  953. ~Topic Index Format~tif~
  954. ~Links Index Format~lif~
  955. ~Keywords Index Format~kif~
  956. .end-entry
  957.  
  958. ;******************************************************************************
  959. ;                                     kif                                     *
  960. ;******************************************************************************
  961. .topic kif
  962. .title Keywords Index Format
  963. .keywords programming
  964.  
  965.   The keywords index table format is as follows :
  966.  
  967.   KEYWORD   - 40 characters string key - the keyword.
  968.   TOPIC     - 40 characters string key - the topic name that this keyword is 
  969.               assigned to.
  970.  
  971.   Notice - the database will include a row for each keyword, that has the 
  972.   TOPIC field blank. This is used to display the first list of keywords, that
  973.   if chosen, will display the 2nd list of topics that have the chosen keyword
  974.   in their .KEYWORDS definition.
  975.  
  976. Related Topics:
  977. ~Technical Documentation~TechDoc~
  978. ~Topic Index Format~tif~
  979. ~Links Index Format~lif~
  980. ~Set File Format~sff~
  981. .end-topic
  982.