Prev Next whatsNew02

Changes and Additions to OMhelp During 2002

This section contains a list of changes to OMhelp during 2002 in reverse order by date. Its purpose is to assist you in learning the about changes between versions of OMhelp.

The Getting Started Using OMhelp section was improved by including the resulting output files for each example. In addition, an example for the spell command was included.

If the verbatim command had automatic new lines added, and the last character in the corresponding file was a newline, an unnecessary newline was added to the output. A similar condition held if the previous output corresponded to a heading. This has been fixed.

White space character following a line break in the output were affecting the output column counter. This made it very difficult to line up indented text using tab characters inside the pre command. This has been fixed.

The displayed formula mode was added to the latex commands.

Most all of the hex unicode in the XML and HTML output was changed to character names in order to make the output more readable.

Special characters, such as the copy right character, were not being converted to proper codes before being put in the heading sections of the file (heading are used for keywords and summary displays). This has been fixed.

Some changes were made to avoid extra new lines where they were not necessary. This was done to conserve on screen space and make the output of the _printable version smaller (conserve paper). These changes included backing out the 02-09-23 work around of unwanted line breaks in pre-formatted text (when displayed by MS Internet Explorer). This was finally understood and fixed properly on 03-05-08 .

The template section was replaced by the Getting Started Using OMhelp.

Because of the directory name change from gif to image, the omh\build.bat command file did not work. This has been fixed.

The Latex stackrel command was added.

Leading and trailing white space in the arguments to the xref and mref commands is ignored. This enables one to use new lines and other white space to separate the arguments when they are long.

The Latex widehat , and widetilde commands were included.

The Latex underline , underbrace, overline, and overbrace commands were included.

The Latex left and right commands were included.

There was a bug in specifying an icon file on the command line (later changed to image_file ) that had an extension different from .gif. This has been fixed.

The build command in the omh directory did not work because some *.png files were missing. (These files were required for the change on 02-11-22 .) The name of the omh\gif directory was changed to omh\image and the *.png files were placed there so that the build command now works.

The diacritical commands were included. In addition, the section Mozilla was started (this has been replaced by Firefox ).

The array command has been added. In addition, the error messages in latex mode has been improved so that line numbers are always reported. This improvement also included separating the OMhelp and Latex error messages and identifying which type of error at the beginning of the message.

The comma was added to the list of latex normal characters.

Some of the characters listed in latexnormal were not displaying correctly in Latex mode. This has been fixed.

The complete list of latex normal character were included and documented.

The decimal point was added to the format specifications for a latex number .

The latex standard functions were added.

The latex command was extended to include Latex Ellipsis Commands, and Latex Special Characters.

The latex command was extended to include Latex Fraction Command, and Latex Square Root Command.

The latex command was extended to include Latex Subscripts and Superscripts, and Latex Symbols That Change Between Inline and Displayed Formulas.

The latex command was extended to include the binary operators , relation symbols , arrow symbols , and miscellaneous symbols .

Some speed improvements were made to OMhelp, to be specific, binary search of the omhelp command set. In addition, a mistake in the initial state of the omhelp lexical analyzer was slowing the program.

OMhelp did not detect when a font , table or list command did not terminate before the end of a frame. This was is now reported as an error because the command does not carry over to the next frame. In addition, OMhelp did not detect when a font command and a table or list command were interlaced. For example
     $list number$$
     list item
     $$    $comment end of big command$$
     $lend $command end of list command$$
This is also detected and reported as an error now.

Latex support has begun with the greek letters.

All of the error messages have been improved. This was done by passing the line number information from the lexical analyzer to the parser and tracking it with the parser constructions. This improved tracking of errors is in preparation for having an OMhelp LaTex command. The argument to this command will be long and have a language of its own (LaTex). If the -xml command line option is specified the output corresponding to the LaTex command will be MathML.

Output text that came between a begin command and the corresponding section command was not being displayed. For example, if the input file contained
     $begin example$$

     XYZ Corporation
     $section Example Title$$

the text XYZ Corporation would not appear in the output. This has been fixed.

While improving the OMhelp error messages, it was discovered that if there was no section command in a section, OMhelp would crash. For example, the following input file would crash OMhelp:
     $begin example$$

This has been fixed.

Added the command line option xml which generates XHTML (as apposed to HTML which is the default output format).

All of the files in the OMhelp omh directory were changed to use cnext in place of cend and rnext in place of rend. (Because the new command names are more descriptive of the meaning of the commands.)

During the preparation for XHTML it was discovered that the gif files in the distributions help were empty. This was due to a bug that was introduced when file addressing was converted to the starting file on 01-08-08 . This turned up when OMhelp was run twice in the same directory and the second time the -printable option was used (see 02-05-19 ).

All the HTML commands in the output files were converted to lower case. This should have no effect from the OMhelp users point of view. This is in preparation for conversion to XHTML and then the inclusion of MathML for displaying mathematics.

For some forgotten reason the error message for the fend command was referring to the $frame command. (There is no $frame command.) This has been fixed.

There was a mistake in how the in the pre command modification made on 02-09-23 . To be specific, the pre-formatted mode was not terminated correctly in some cases. This has been fixed.

The cend (rend) command not only ends the current column (row) of a table, it also begins the next one. The command cnext (rnext) has been added because it is a more meaningful representation of the command's meaning.

Microsoft Internet Explore was not displaying OMhelp pre-formatted text correctly. The pre command has been modified to avoid this bug where possible. (The codep , verbatim , math commands were modified on 02-09-09 .) This was finally understood and fixed properly on 03-05-08 .

The image and icon commands were not copying files properly when the specified name had a forward slash, /, directory specifier in it. This has been fixed and should improve the functioning of the unix port of OMhelp.

It used to be possible for the image and icon commands to create two image files that had the same name in the web site directory. This error is now checked for and an error message is printed.

Microsoft Internet Explorer was not displaying OMhelp pre-formatted text correctly. The codep , verbatim , math commands have been modified to avoid this bug where possible. This was finally understood and fixed properly on 03-05-08 .

If one of the words in an index commands was misspelled, all of the words were marked with red in the index . This has been fixed so that only the misspelled word is marked in red.

The spell checker now detects double word errors. For example, this this is a double word error.

A mistake in the aindex command example was fixed.

The specifications for searching the directory where the root section is located, and searching the paths were improved. You no longer need to specify the starting directory as part of the path because is it searched automatically. In addition, the starting path was removed from the displayed input file names (because they are relative to the starting directory and not directory where execution is taking place).

A bug was fixed in the Unix version whereby icon and image files were not being copied properly; i.e., the files names were not being converted to lower case.

The name used on the command line for the root_file was changed to the starting_file (it has since been referred to as root section ). This was done because the term "root" is used to refer to the root of a file name; i.e., a file name with out its extension.

One of the users found a problem in the new indexing code that caused OMhelp to crash. This was fixed. In addition, the version message that prints when OMhelp starts now states if this is the debug or release version of the executable. (The debug version from does a lot of assert checking and can be useful for tracking down user problems.)

Leading and trailing white space in the arguments to the href command are ignored.

The error message for the -g command line option has been improved. It now provides the information about the backward compatibility (see 02-08-06 )

The indexing for the entire OMhelp manual was revised to better take advantage of new indexing commands. In addition, this provides a better example of how the indexing commands can be used.

Fixed some bugs in the index changes made on 02-08-06. In addition, changed the cindex command so that the corresponding major keys were just one word and had more of a chance to match other major keys.

The aindex command was added. This command, together with the automatic jump table to headings, makes the glossary a regular section like any other. The -g command line option was therefore removed from the program. To get the same effect as before, place the following command directly after the begin command in the glossary section:
     $aindex head$$
Then add the file that was specified after the -g option as the last file in the contents, childtable, or children command contained in the root section .

The description and specifications for the cindex were simplified. In addition the mindex command has been added (which is an even simpler way to make multiple keyword index entries at once.)

The spell command has been changed so that it is cumulative for each section. This enables one to use spell commands with in an include file with out erasing the other spell commands for the current section.

Cross reference tags are usually excluded from spell checking. In the case where the xref command has only one argument, the cross reference tag is also used as the linking text. Spell checking used to be done on this linking text (which is also a cross reference tag). This has been fixed and spell checking is no longer done in this case.

Links to the headings and subheadings were added to the navigation frame on the left of every section. (This used to be true only for the glossary , index , and reference sections.)

The list of external references is now in alphabetic order by url and heading with in the url. In addition, the cross reference to the corresponding link is to the previous heading and subheading (not just the section).

Added the ability to link to subheadings .

Found a missing semi-colon in the Java script for the OMhelp interactive search utility.

The example for the wspace command was improved. This should make it easier to use OMhelp with languages that do not have a block comment mode (such as Matlab and Python).

More meaningful names were used in the documentation for all the command arguments. For example, see the Syntax for the verbatim command.

The restriction of not having new lines in the verbatim command start and stop sequences was removed from the documentation.

The glossary entry for delimiters was changed. In addition, the syntax for each of the commands was changed to use variables names that are more meaningful.

All the links in an mref command are now separated by a comma. It used to be that an and, separated the last two cross references.

The default icon file name was changed to _icon.gif. (later changed to image_file name _image.gif) The documentation for this option and the icon link/ option was improved (later changed to image_link ). (it used to begin with button_). In addition, image and icon file names can not begin with the _ character (instead of button_).

The automatically generated sections (For example the keyword index ) were listed twice in the links when viewing the root section . This has been fixed.

There was a bug in the counting of sections for the printable option. This caused the table of contents to have the same section number as the section that followed it. This has been fixed.

All of the sections, including the automatically generated ones (for example the keyword index ) are now children of the root section . In addition, now there can be only one section at the root of the table of contents. This enables the root section to function like a cover page in the printable version.

The printable version section numbers and links were not working for the index , function reference , and external reference sections. This has been fixed.

Some minor bugs in the printable option were fixed. It is now part of the standard release and its use will no longer expire.

A printable version of OMhelp output is available.

The cross reference corresponding to a Contents heading was not working correctly because the anchor for the corresponding heading was missing.

The cross reference tag was added to each entry in the table of contents . This makes the connection that the cross reference tag is an abbreviated title for each section.

Italic links only replace frames, not entire windows. In some cases, it was possible for a link that replaces the entire window to be in italic font. This has been fixed.

A message was added to the OMhelp search utility stating that JavaScript must be enabled for it to work.

The verbatim command was not printing the last character before the stopping sequence . In addition, an option to skip pattern matches was added.

New lines inside the section command would cause the title to have new lines when printed in the table of contents . In the context of the table of contents, each sequence of white space characters in the title is changed to a single space.

The path and other file access commands were modified so that both the forward slash / and the back slash \ can be used to separate directories in a path specification.

After using the different window for href commands for a while, it became clear that sometimes that same window was better. The href and xref commands were extended so that they have the option to specify the frame that a link should be displayed in. It is possible to specify a frame such that an href command will display in a different window. (This is not possible for xref commands.)

If you loaded the file index.htm, the back button in the browser would no longer work because index.htm automatically linked forward. This problem was fixed by changing index.htm from a Javascript to a copy of the section at the beginning of the contents tree.

More upper case linking problems were discovered and fixed. For example, the links to entries in the table of contents did not work when displayed by a Unix system.

If there were capital letters in the cross reference tag for the section at the beginning of the table of contents, the file index.htm referred to these capital letters. This did not work on Unix systems because they are case sensitive.

The cross reference tag for the keyword index was changed back to _index from _keyindex. Because of the underbar in front of the name, there is no conflict with the automatically generated file index.htm (given a directory, index.htm is the default file a browser will load).

Group headings were added for the links on the left hand frame and the list of children were added as links in the left hand frame.

A separate window is now used for href links; i.e., links that are not part of the OMhelp web site being built.

The links in the left hand frame have been changed so that the position of the current section with in the help tree is documented and linked. In addition, the next and previous links are now in reading order as if the help tree was a book.

The date command was added to OMhelp. This is useful for automatically identifying the version of a web site built by OMhelp.

OMhelp failed to detect when the verbatim stopping sequence was not present in the specified file. This has been fixed.

In the case described below, cross references to headings did now work (this has been fixed):
  1. There are multiple frames in an section.
  2. There was a contents, childtable, or children command not in the first frame of the section.
  3. There was a heading following the contents, childtable, or children command mentioned above.
  4. There was a cross reference to the heading mentioned above

It used to be impossible for a verbatim command's starting sequence in the displayed output. This has been fixed by not automatically outputting a new line at the beginning and end of a verbatim command that has a starting sequence.

Another desirable feature of the verbatim command is to move the location of text from its best place as source code to its best place in the documentation. It was necessary to add escape sequencing to the starting and stopping sequences to accomplish this. (This was actually done on 02-02-15 but is more closely related to the discussion on 02-02-14).

The bug in the verbatim command stopping sequence was only partially fixed. This has been completely fixed. In addition, the specifications for the starting and stopping sequences has been changed. They no longer need to be at the beginning of a line.

The addition of *.jpg files on 01-06-23 broke the example that rebuilds the help for OMhelp. This was fixed by adding a path command for extensions of the form .jpg to the file overview.omh.

There was a bug in the stopping sequence where by partial matches only printed the first character of the partial match.

A starting and stopping option was added to the verbatim command. This enables one to only include part of a file as verbatim text with in a help page. Thus, if you have a long example, parts of the example can be explained in different sections of you help.
Input File: whatsnew02.omh