Compacts HTML so that web pages are 20% smaller and hence
20% faster. It does this by removing all unnecessary white
space.  To fluff files up again, I suggest using SlickEdit
beautify. The file will render on browsers exactly as they
did before. Any <pre> sections are left intact. No comments
are removed. See http://mindprod.com/projects/compactor.html
for how it works.

NOTE THE COMPACTOR JUST COMPACTS YOUR HTML. IT DOES NOT
FLUFF UP AGAIN.

To install, Extract the zip download with WinZip, available from
http://www.winzip.com (or similar unzip utility) into any
directory you please, often C:\ -- ticking off the "user
folder names" option. To run as an application, type:

java -jar C:\com\mindprod\compactor\compactor.jar x.html y.html

adjusting as necessary to account for where the jar file is.
Put files and directories on command line you want to
compact. -s means recursively include all subdirectories for
everything to the right of -s.

You can also embed it in your own programs, by calling the
Compactor.compactString or Compactor.compactFile methods
like this:

import  com.mindprod.compactor;
...
Compactor compactor = new Compactor();
compactor.compactFile( true, new File("x.html") );
String result = compactor.compactString( big, "from file x.html" );

----

Version History:

2.2 2006-03-15 is the first public release. It was refactored
and streamlined with IntelliJ.

2.3 2008-02-15 complete rewrite.  Now removes space and
newlines to right of <dt><h?><li> and <td> and to the left
of </dt></h?></li> and </td>

2.4 2008-02-15 add more tags that get trimmed to increase
compression. Charge $10
<div><dt><li><h?><ol><table><tbody><td><th><thead><tr><ul>

2.5 2008-02-28 tighter removal of whitespace surrounding comments.

2.6 2008-02-28 optionally allow comments to be stripped out
    entirely. Preserve some space around configurable magic
    macro comments that expand into text such as <!# SSI or
    <!-- macro.

2.7 2008-07-27 remove all space just before > in a tag.  <
    space will convert to &lt; space.

2.8 2009-04-04 compactor no longer corrects missing entities. It
    just issues warning messages. The problem was, unbalanced
    quotes or < > could lead to tags being treated as text and
    being improperly entified.

2.9 2010-01-18 - refactor so you first allocate a Compactor object,
    permitting simultaneous compactings.  Previously Compactor used
    static methods.
-30-

