packages icon
  

(For details see http://www.mcs.anl.gov/home/kwong/htxp1.html)

                                            Man Kam Kwong
                                        kwong@mcs.anl.gov
                        http://www.mcs.anl.gov/home/kwong
                         Mathematics and Computer Science
                              Argonne National Laboratory

   ---------------------------------------------------------------
   |  I have written a program to help myself in writing HTML    |
   |  documents. I find it very useful; it saves me a lot of     |
   |  time.  I am sharing it, hoping that others will find it    |
   |  useful also.  Certainly, bugs and imperfections exist.     |
   |  Comments and suggestions are more than welcome.            |
   ---------------------------------------------------------------

     ******* "htxp" IS A SPECIAL APPLICATION OF A MORE GENERAL
             PROGRAM "magicxp", WHICH CAN BE CUSTOMIZED TO 
             PREPROCESS OTHER MODERATELY COMPLEX DOCUMENT FORMATS.

The program is a filter that generates a regular HTML file from a raw
source file which is essentially an HTML file with abbreviations and
macros replacing long strings.  There is built-in shorthand for the
most common HTML tags, and a user can add abbreviations and macros 
(either in external files or in-line).

Regular HTML tags can still be used, so that none of the macros are
mandatory.  You just use as many macros or abbreviations as you
can remember.  This also allows you to use "htxp" to modify an
existing HTML file.

A help utility "hhelp" is also available.

Here is a sample raw file (file name "pitch"):

  *****************************************************************
  *
  * ]h
  *    .t   My first ;h ;dc
  *    .ab  h  //www.mcs.anl.gov/home/kwong
  * ]H
  * 
  * .i   $h/;h.gif
  * .p
  * .h2
  * .ah $h/pitch Click here to see the raw ";h" file
  * .H2
  * .1   Why ;h?
  * 
  * .u
  *    . ;;abs can save you time (terms you use very
  *         frequently, and what about those //www.... path names)
  *    . ;h lets you use ;abs for any ;dc preparation,
  *         whether HTML or not
  *    . You can make your own environments with macros
  * .U
  * 
  * ]rm
  * For details
  * .ah  $h/htxp1.html  click here;
  * for a homemade help utility 
  * .ah  $h/hhelp.html  see hhelp;
  * for comments send email to $em.
  * ]Rm
  *
  ****************************************************************

The command

    htxp pitch > pitch.html

expands the file as follows (see the actual result in 
http://www.mcs.anl.gov/home/kwong/pitch.html):

  *****************************************************************
  *
  * <html><head><link  rev="made" href="mailto:kwong@mcs.anl.gov">
  *    <title>My first htxp document</title>
  *    <!-- htxp .ab  h  //www.mcs.anl.gov/home/kwong -->
  * </head><body>
  * 
  * <img src="//www.mcs.anl.gov/home/kwong/htxp.gif">
  * <p>
  * <h2>
  * <a href="http://www.mcs.anl.gov/home/kwong/pitch">Click here to see the raw "htxp" file</a>
  * </h2>
  * <h1>Why htxp?</h1>
  * 
  * <ul>
  *    <li> Abbreviations can save you time (terms you use very
  *         frequently, and what about those //www.... path names)
  *    <li> htxp lets you use abbreviations for any document preparation,
  *         whether HTML or not
  *    <li> You can make your own environments with macros
  * </ul>
  * 
  * <blockquote><i><img src="./yellowball.gif"><img src="./sp10.xbm">
  * <strong>REMARKS:</strong><img src="./sp10.xbm">
  * For details
  * <a href="http://www.mcs.anl.gov/home/kwong/htxp1.html"> click here;</a>
  * for a homemade help utility 
  * <a href="http://www.mcs.anl.gov/home/kwong/hhelp.html"> see hhelp;</a>
  * for comments email to <a href="mailto:kwong@mcs.anl.gov">kwong@mcs.anl.gov</a>.
  * </i></blockquote>
  *
  ****************************************************************


Here are some brief explanations of the "htxp" commands:

  o  Dot commands (".ht", ".t", etc.) are built-in shorthand for common 
     HTML tags.  They are like NROFF commands (if you know them), and
     must be the first nonwhite character in a line.
  
  o  Two abbreviation lists are used to allow for more abbreviations.

     ";h", ";dc", etc. are user-defined abbreviations you make up
     yourself and store in a file called "html.ab1"
  
     "$em" is from a second similar list stored in "html.ab2"
  
  o  Additional abbreviations can be also be defined  "dynamically" 
     and added to the second list using the command ".ab ...".
  
  o  "]h", "]H", etc.  are user-defined macros, stored in a file
     "html.ucm".  Here we use them to define a header "environment".
     Similarly, "]rm" and "]Rm" give a remark "environment"
     for writing "REMARKS".  
  
     Such macros can also be added dynamically in the document.
  
  o  The symbols ";", "$", and "]" for requesting abbreviations
     and macros are changeable.

(For details see http://www.mcs.anl.gov/home/kwong/htxp1.html)