changeset 454:d8b7af1f33ee

Completed the support for HTB parameters. git-svn-id: svn://svn.code.sf.net/p/universalindent/code/trunk@689 59b1889a-e5ac-428c-b0c7-476e01d41282
author thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
date Sat, 24 May 2008 12:16:10 +0000
parents b8b0f446b2e9
children 5563b7322221
files indenters/uigui_htb.ini
diffstat 1 files changed, 116 insertions(+), 23 deletions(-) [+]
line wrap: on
line diff
--- a/indenters/uigui_htb.ini	Sat May 24 11:33:56 2008 +0000
+++ b/indenters/uigui_htb.ini	Sat May 24 12:16:10 2008 +0000
@@ -11,7 +11,7 @@
 outputFileName=
 outputFileParameter=stdout
 parameterOrder=pio
-showHelpParameter=-v
+showHelpParameter=-h
 stringparaminquotes=false
 useCfgFileParameter=
 version=2.0
@@ -25,48 +25,141 @@
 ValueDefault=0
 
 
-[Flow]
+[All Attribute Tag Break]
+Category=0
+Description="<html><p>The -b command-line option causes all tag attributes to be broken on succeeding lines. The attributes are aligned vertically with the last character in the tag name.<br><br> <b>Before:</b><pre>&lt;BODY BGCOLOR="#FFFFFF" MARGINWIDTH="0" MARGINHEIGHT="0" LINK="#666666" VLINK="#666666" ALINK="#000000"&gt;\n&lt;TABLE WIDTH="800" BORDER="0" CELLPADDING="0" CELLSPACING="0"&gt;\n&lt;TR&gt;\n&lt;TD COLSPAN="2" WIDTH="196" BGCOLOR="cccccc" VALIGN="top"&gt;&lt;IMG SRC="/images/homepage/rev/logo_06.gif" WIDTH="196" HEIGHT="63"&gt;&lt;/TD&gt;\n&lt;TD BGCOLOR="cccccc" WIDTH="600" VALIGN="top"&gt;\n&lt;TABLE WIDTH="600" BORDER="0" CELLPADDING="0" CELLSPACING="0" VALIGN="top"&gt;\n&lt;TR&gt;\n&lt;TD VALIGN="top" HEIGHT="17" BGCOLOR="#CCCCCC"&gt;&lt;IMG SRC="/images/homepage/rev/comp8_07.gif" WIDTH="600" HEIGHT="17"&gt;&lt;/TD&gt;\n&lt;/TR&gt;</pre><b>After:</b><pre>&lt;BODY\n    ALINK="#000000"\n    BGCOLOR="#FFFFFF"\n    BOTMARGIN="0"\n    MARGINHEIGHT="0"\n    MARGINWIDTH="0"\n    LEFTMARGIN="0"\n    LINK="#666666"\n    TOPMARGIN="0"\n    VLINK="#666666"&gt;\n&lt;TABLE\n     BORDER="0"\n     CELLPADDING="0"\n     CELLSPACING="0"\n     WIDTH="800"&gt;\n   &lt;TR&gt;\n      &lt;TD\n        BGCOLOR="cccccc"\n        COLSPAN="2"\n        VALIGN="top"\n        WIDTH="196"&gt;&lt;IMG\n                       HEIGHT="63"\n                       SRC="/images/homepage/rev/logo_06.gif"\n                       WIDTH="196"&gt;&lt;/TD&gt;\n      &lt;TD\n        BGCOLOR="cccccc"\n        VALIGN="top"\n        WIDTH="600"&gt; \n         &lt;TABLE\n              BORDER="0"\n              VALIGN="top"\n              CELLPADDING="0"\n              CELLSPACING="0"\n              WIDTH="600"&gt;\n            &lt;TR&gt;\n               &lt;TD\n                 BGCOLOR="#CCCCCC"\n                 HEIGHT="17"\n                 VALIGN="top"&gt;&lt;IMG\n                                HEIGHT="17"\n                                SRC="/images/homepage/rev/comp8_07.gif"\n                                WIDTH="600"&gt;&lt;/TD&gt;\n            &lt;/TR&gt;\n</pre></html>"
+EditorType=boolean
+TrueFalse=-b|
+Value=0
+ValueDefault=0
+
+[Add Carriage Returns]
 Category=0
-Description="<html>Prints just tags without any data between the tags. Damages the HTML in a big way, so save a copy of your original HTML. This option helps you follow the HTML code flow visually.</html>"
+Description="<html>The -c command-line option adds an extra carriage return character to each output line of reformatted data. This allows Unix versions of HTB to create a DOS/Windows compatible text files directly.</html>"
 EditorType=boolean
-TrueFalse=-f|
+TrueFalse=-c|
+Value=0
+ValueDefault=0
+
+[Omit Carriage Returns]
+Category=0
+Description="<html>The -d command-line option inhibits extra carriage return character output even if present in the source data. This allows the Windows version of HTB to create a Unix compatible text file directly. This is the default behavior and correctly creates a natively compatible format whether Unix or Windows.</html>"
+EditorType=boolean
+TrueFalse=-d|
 Value=0
 ValueDefault=0
 
-[Indent level]
-CallName="-i "
+[Escaped Tag Conversion]
+Category=0
+Description="<html>The -e command-line option replaces the special markup characters '<', '>', and '&' with escape strings '&lt;', '&gt;', and '&amp;' respectively. Also, the tag sequence '<HTML><BODY><PRE>' is added to the beginning of the output data and the sequence '</PRE></BODY></HTML>' is appended to the end of the data. This creates an entirely new HTML document, which when viewed with a Web Browser, will appear as source instead of normal rendering. This is useful in creating markup tag documentation and is the mechanism used to create the examples in this document. Use in combination with the -k option to do the conversion without applying other reformatting options.</html>"
+EditorType=boolean
+TrueFalse=-e|
+Value=0
+ValueDefault=0
+
+[Join Lines - Compress Output]
 Category=0
-Description="<html>Set indentation to this many character spaces per code nesting level. If set to 0, no indentation is done (all output is left-justified).</html>"
-EditorType=numeric
-Enabled=false
-MaxVal=9999
-MinVal=0
-Value=4
-ValueDefault=4
+Description="<html>The -j command-line option removes all unnecessary whitespace & comments and joins the output lines together whenever possible. The result is totally 'unbeautified' output, but the size will be reduced from 10-40% for quicker transfer over the network. Use this option whenever performance is more important than readability.</html>"
+EditorType=boolean
+TrueFalse=-j|
+Value=0
+ValueDefault=0
 
-[List tags]
+[Keep Layout - Case Changes Only]
 Category=0
-Description="<html>Causes hindent to print a complete list of tags that it recognizes to stdout, and exits.</html>"
+Description="<html><p>When the current indenting and appearance of your tagged document is acceptable, the -k command-line option may be used to change only the case of the tag names and attributes with no other changes applied.<br><br> <b>Example:</b><br><br>- Keep the current layout of an HTML document, but change the tag attribute names to lower case (<a href="#option_m">-m option</a>, opposite of tag name case which by default is upper)...<br><br><center><code>htb -km myfile.html</code></center><br> <b>Before:</b><pre>&lt;FORM ENCTYPE="multipart/form-data" NAME="coreform" METHOD="POST"&gt;\n&lt;INPUT TYPE="submit" VALUE="Submit Request"&gt; \n&lt;INPUT NAME="cgi" TYPE="button" VALUE="cgi2xml"&gt;cgi2xml \n&lt;TABLE BORDER="5" CELLPADDING="5"&gt;\n   &lt;TR&gt;\n      &lt;TD&gt; &lt;FONT COLOR="purple"&gt; \n         &lt;H4&gt;Output formatting:&lt;/H4&gt; &lt;/FONT&gt;Debug: \n         &lt;INPUT NAME="debug"&gt;&lt;BR&gt; \n         &lt;BR&gt; Filter: \n         &lt;INPUT NAME="filter"&gt;&lt;BR&gt; Output: \n         &lt;INPUT NAME="output"&gt;&lt;BR&gt; \n         &lt;BR&gt; Pagestart: \n         &lt;INPUT SIZE="4" NAME="pagestart"&gt;&lt;BR&gt; Pagesize: \n         &lt;INPUT SIZE="4" NAME="pagesize"&gt;&lt;BR&gt; \n      &lt;/TD&gt;\n   &lt;/TR&gt;\n&lt;/TABLE&gt;\n&lt;/FORM&gt;</pre><b>After:</b><pre>&lt;FORM enctype="multipart/form-data" name="coreform" method="POST"&gt;\n&lt;INPUT type="submit" value="Submit Request"&gt; \n&lt;INPUT name="cgi" type="button" value="cgi2xml"&gt;cgi2xml \n&lt;TABLE border="5" cellpadding="5"&gt;\n   &lt;TR&gt;\n      &lt;TD&gt; &lt;FONT color="purple"&gt; \n         &lt;H4&gt;Output formatting:&lt;/H4&gt; &lt;/FONT&gt;Debug: \n         &lt;INPUT name="debug"&gt;&lt;BR&gt; \n         &lt;BR&gt; Filter: \n         &lt;INPUT name="filter"&gt;&lt;BR&gt; Output: \n         &lt;INPUT name="output"&gt;&lt;BR&gt; \n         &lt;BR&gt; Pagestart: \n         &lt;INPUT size="4" name="pagestart"&gt;&lt;BR&gt; Pagesize: \n         &lt;INPUT size="4" name="pagesize"&gt;&lt;BR&gt; \n      &lt;/TD&gt;\n   &lt;/TR&gt;\n&lt;/TABLE&gt;\n&lt;/FORM&gt;</pre></html>"
+EditorType=boolean
+TrueFalse=-k|
+Value=0
+ValueDefault=0
+
+[Tag Names Lower Case]
+Category=0
+Description="<html><p>The -l command-line option changes all HTML tag names and their attributes to lower case. Combine with the <a href="#option_m">-m (mixed case) option</a> to keep the tag names lower case, but make the attribute names upper case.<br><br> <b>Before:</b><pre>&lt;FORM ENCTYPE="multipart/form-data" NAME="coreform" METHOD="POST"&gt;\n&lt;INPUT TYPE="submit" VALUE="Submit Request"&gt; \n&lt;INPUT NAME="cgi" TYPE="button" VALUE="cgi2xml"&gt;cgi2xml \n&lt;TABLE BORDER="5" CELLPADDING="5"&gt;\n   &lt;TR&gt;\n      &lt;TD&gt; &lt;FONT COLOR="purple"&gt; \n         &lt;H4&gt;Output formatting:&lt;/H4&gt; &lt;/FONT&gt;Debug: \n         &lt;INPUT NAME="debug"&gt;&lt;BR&gt; \n         &lt;BR&gt; Filter: \n         &lt;INPUT NAME="filter"&gt;&lt;BR&gt; Output: \n         &lt;INPUT NAME="output"&gt;&lt;BR&gt; \n         &lt;BR&gt; Pagestart: \n         &lt;INPUT SIZE="4" NAME="pagestart"&gt;&lt;BR&gt; Pagesize: \n         &lt;INPUT SIZE="4" NAME="pagesize"&gt;&lt;BR&gt; \n      &lt;/TD&gt;\n   &lt;/TR&gt;\n&lt;/TABLE&gt;\n&lt;/FORM&gt;</pre><b>After:</b><pre>&lt;form enctype="multipart/form-data" method="post" name="coreform"&gt;\n&lt;input type="submit" value="Submit Request"&gt; \n&lt;input name="cgi" type="button" value="cgi2xml"&gt;cgi2xml \n&lt;table border="5" cellpadding="5"&gt;\n   &lt;tr&gt;\n      &lt;td&gt; &lt;font color="purple"&gt; \n         &lt;h4&gt;Output formatting:&lt;/h4&gt; &lt;/font&gt;Debug: \n         &lt;input name="debug"&gt;&lt;br&gt; \n         &lt;br&gt; Filter: \n         &lt;input name="filter"&gt;&lt;br&gt; Output: \n         &lt;input name="output"&gt;&lt;br&gt; \n         &lt;br&gt; Pagestart: \n         &lt;input name="pagestart" size="4"&gt;&lt;br&gt; Pagesize: \n         &lt;input name="pagesize size="4"&gt;&lt;br&gt; \n      &lt;/td&gt;\n   &lt;/tr&gt;\n&lt;/table&gt;\n&lt;/form&gt;\n</pre></html>"
 EditorType=boolean
 TrueFalse=-l|
 Value=0
 ValueDefault=0
 
-[Strict]
+[Tag Attributes Opposite Case]
+Category=0
+Description="<html>The -m command-line option makes the tag attribute case the opposite of the tag name. Since the HTB default is to make tag names upper case, the addition of this option will make the tag attributes lower case. If combined with the -l option (lower case) the tag names will be lower case, and the tag attributes will be upper case. See the -k option for an example.</html>"
+EditorType=boolean
+TrueFalse=-m|
+Value=0
+ValueDefault=0
+
+[Never Break Tags Between Lines]
+Category=0
+Description="<html>The -n command-line option cancels the default behavior of breaking tags which exceed the 80 column limit and keeps tags intact within a single line of output regardless of their length. This is often desirable, especially on XSL files.</html>"
+EditorType=boolean
+TrueFalse=-n|
+Value=0
+ValueDefault=0
+
+[Remove Non-HTML Tags]
 Category=0
-Description="<html>Multiple tags per line are broken out onto separate lines. Can damage the HTML in minor ways by drawing an extra space character in certain parts of the web page, so save a copy of your original HTML. This option helps you follow the HTML code flow visually, especially with computer-generated HTML that comes out all on one line.</html>"
+Description="<html><p>The -r command-line option strips any tag which is not part of the HTML 4.01 specification (and a group of widely recognized, commonly used legacy tags) from the output. Its a convenient way to separate HTML from hybrid files like ASP, JSP, XSL or files containing custom tags. The stripped tags are reported along with any errors to "standard error".<br><br> <b>Example:</b><br><br>- Remove all non-HTML tags from an XSL/XHTML file... <br> <br><center><code>htb -r myfile.xsl</code></center><br> <b>Before:</b><pre>\n   &lt;xsl:for-each select="ELEMENT/NODE1"&gt; \n      &lt;xsl:variable select="position()-1" name="vpos" /&gt; \n      &lt;TR VALIGN="top"&gt;\n         &lt;TD ALIGN="center"&gt;&lt;FONT SIZE="1" FACE="Helvetica"&gt;&lt;xsl:value-of select="$vpos" /&gt;&lt;/FONT&gt; \n         &lt;/TD&gt;\n         &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica"&gt; \n            &lt;INPUT NAME="ELEM{$vpos}" TYPE="text" VALUE="Element {$vpos}" /&gt;&lt;/FONT&gt; \n         &lt;/TD&gt;\n         &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica"&gt; \n            &lt;INPUT NAME="NUMB{$vpos}" TYPE="text" VALUE="2" /&gt;&lt;/FONT&gt; \n         &lt;/TD&gt;\n         &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica"&gt; \n            &lt;xsl:variable select="count(//NODE1[@id &amp;gt; -1)" name="pcnt" /&gt; \n            &lt;xsl:variable name="selsize"&gt; \n               &lt;xsl:choose&gt;&lt;xsl:when test="$pcnt &amp;lt; 5"&gt; \n                  &lt;xsl:value-of select="$pcnt" /&gt; \n               &lt;/xsl:when&gt;&lt;xsl:otherwise&gt; \n                  &lt;xsl:value-of select="'5'" /&gt; \n               &lt;/xsl:otherwise&gt;&lt;/xsl:choose&gt; \n            &lt;/xsl:variable&gt; \n            &lt;SELECT SIZE="{$selsize}" NAME="VALU{$vpos}"&gt;\n               &lt;xsl:for-each select="//VALUE[@id &amp;gt; -1]"&gt; \n                  &lt;OPTION VALUE="{@id}"&gt;\n                  &lt;xsl:value-of select="NAME" /&gt;&lt;/OPTION&gt; \n               &lt;/xsl:for-each&gt; \n            &lt;/SELECT&gt;&lt;/FONT&gt; \n         &lt;/TD&gt;\n      &lt;/TR&gt;\n   &lt;/xsl:for-each&gt;</pre><b>After:</b> <pre>\n   &lt;TR VALIGN="top"&gt;\n      &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica" SIZE="1"&gt;&lt;/FONT&gt; \n      &lt;/TD&gt;\n      &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica"&gt; \n         &lt;INPUT NAME="ELEM{$vpos}" TYPE="text" VALUE="Element {$vpos}" /&gt;&lt;/FONT&gt; \n      &lt;/TD&gt;\n      &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica"&gt; \n         &lt;INPUT NAME="NUMB{$vpos}" TYPE="text" VALUE="2" /&gt;&lt;/FONT&gt; \n      &lt;/TD&gt;\n      &lt;TD ALIGN="center"&gt;&lt;FONT FACE="Helvetica"&gt; \n         &lt;SELECT NAME="VALU{$vpos}" SIZE="{$selsize}"&gt;\n            &lt;OPTION VALUE="{@id}"&gt;&lt;/OPTION&gt;\n         &lt;/SELECT&gt;&lt;/FONT&gt; \n      &lt;/TD&gt;\n   &lt;/TR&gt;</pre></html>"
+EditorType=boolean
+TrueFalse=-r|
+Value=0
+ValueDefault=0
+
+[Remove Tabs from SCRIPTs]
+Category=0
+Description="<html>HTB automatically removes any tab characters found in the source document during the indenting process, but by default SCRIPTs are kept intact. To completely remove all tabs, specify the -s option and tab characters found within SCRIPT elements will be replaced with sets if of indented spaces. This could make the indented script statements look slightly worse and may require minor editing, but the beautified output is clear of any tab characters.</html>"
 EditorType=boolean
-TrueFalse=-s|
+TrueFalse=-r|
+Value=0
+ValueDefault=0
+
+[Convert to Plain Text]
+Category=0
+Description="<html>The -t command-line option strips all markup tags, comments and converts the input to plain text. All ASCII and ISO8859-1 HTML escape strings are converted back to the characters they represent. An attempt is made to compress extra whitespace, but in general the text will require additional re-formatting to be made presentable. Use this option to isolate the textual content within tagged documents (not necessarily HTML) for use in other documentation.</html>"
+EditorType=boolean
+TrueFalse=-t|
 Value=0
 ValueDefault=0
 
-[Tab stop]
-CallName="-t "
+[Tag Names Upper Case]
+Category=0
+Description="<html><p>The -u command-line option changes all HTML tag names and their attributes to upper case. Since this is the default behavior of HTB, it is not required.  Use the <a href="#option_m">-m (mixed case) option</a> to keep the tag names upper case, but make the attribute names lower case.<br><br> <b>Before:</b><pre>&lt;form enctype="multipart/form-data" name="coreform" method="POST"&gt;\n&lt;input type="submit" value="Submit Request"&gt; \n&lt;input name="cgi" type="button" value="cgi2xml"&gt;cgi2xml \n&lt;table border="5" cellpadding="5"&gt;\n   &lt;tr&gt;\n      &lt;td&gt; &lt;font color="purple"&gt; \n         &lt;h4&gt;Output formatting:&lt;/h4&gt; &lt;/font&gt;Debug: \n         &lt;input name="debug"&gt;&lt;br&gt; \n         &lt;br&gt; Filter: \n         &lt;input name="filter"&gt;&lt;br&gt; Output: \n         &lt;input name="output"&gt;&lt;br&gt; \n         &lt;br&gt; Pagestart: \n         &lt;input size="4" name="pagestart"&gt;&lt;br&gt; Pagesize: \n         &lt;input size="4" name="pagesize"&gt;&lt;br&gt; \n      &lt;/td&gt;\n   &lt;/tr&gt;\n&lt;/table&gt;\n&lt;/form&gt;</pre><b>After:</b><pre>&lt;FORM ENCTYPE="multipart/form-data" METHOD="POST" NAME="coreform"&gt;\n&lt;INPUT TYPE="submit" VALUE="Submit Request"&gt; \n&lt;INPUT NAME="cgi" TYPE="button" VALUE="cgi2xml"&gt;cgi2xml \n&lt;TABLE BORDER="5" CELLPADDING="5"&gt;\n   &lt;TR&gt;\n      &lt;TD&gt; &lt;FONT COLOR="purple"&gt; \n         &lt;H4&gt;Output formatting:&lt;/H4&gt; &lt;/FONT&gt;Debug: \n         &lt;INPUT NAME="debug"&gt;&lt;BR&gt; \n         &lt;BR&gt; Filter: \n         &lt;INPUT NAME="filter"&gt;&lt;BR&gt; Output: \n         &lt;INPUT NAME="output"&gt;&lt;BR&gt; \n         &lt;BR&gt; Pagestart: \n         &lt;INPUT NAME="pagestart" SIZE="4"&gt;&lt;BR&gt; Pagesize: \n         &lt;INPUT NAME="pagesize" SIZE="4"&gt;&lt;BR&gt; \n      &lt;/TD&gt;\n   &lt;/TR&gt;\n&lt;/TABLE&gt;\n&lt;/FORM&gt;</pre></html>"
+EditorType=boolean
+TrueFalse=-u|
+Value=0
+ValueDefault=0
+
+[Unknown Tags are XML]
+Category=0
+Description="<html><p>HTB automatically detects XML compliant files and is able to apply reformatting to unknown tags since they meet the predictable behavior of the XML specification.  If the input document is not strictly XML compliant, but does contain custom tagging which may be considered "well-formed" XML, the -x option may be used to apply XML handling on these otherwise ignored tags. If XML is detected, either automatically, or with the -x option, the tag case is NOT changed for these non-HTML tags, since they are often case-sensitive.  Also, the attributes of unknown tags will remain in original order instead of being sorted as with HTML attributes.  To turn off XML auto-detection and apply case changes and attribute sorting to all tags known and unknown, use the <a href="#option_y">-y option</a>.<br><br> <b>Example:</b><br><br>- Make <a href="#option_l">tag names and attributes lower case</a>, <a href="#option_n">never break tags</a>, and treat unknown tags in an HTML file as well formed XML... <br><br><center><code>htb -lnx myfile.html</code></center><br> <b>Before:</b><pre>&lt;TR&gt;&lt;TD WIDTH=182 ALIGN=left BGCOLOR="#ffffff"&gt;\n&lt;NYT_HEADLINE&gt;\n&lt;A\n\nHREF="/onthisday/20020619.html"&gt;&lt;FONT SIZE="3" FACE="times"&gt;&lt;B&gt;On June 19 ...&lt;BR&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/A&gt;\n&lt;/NYT_HEADLINE&gt;\n&lt;NYT_BYLINE&gt;\n&lt;FONT SIZE="-1"&gt;&lt;/FONT&gt;\n&lt;/NYT_BYLINE&gt;\n&lt;NYT_SUMMARY&gt;\n&lt;FONT SIZE="-1"&gt;\n&lt;B&gt;1964:&lt;/B&gt; The Civil Rights Act of 1964 was approved.   (&lt;A \nHREF="/onthisday/big/0619.html"&gt;See this front page.&lt;/A&gt;) &lt;BR&gt;\n&lt;B&gt;1903:&lt;/B&gt; Lou Gehrig was born.  &lt;A \nHREF="/onthisday/bday/0619.html"&gt;(Read about his life.)&lt;/A&gt; &lt;BR&gt;\n&lt;B&gt;1886:&lt;/B&gt; Harper's Weekly featured a cartoon about the proposed annexation of Nova Scotia. &lt;A \nHREF="/onthisday/harp/0619.html"&gt;(See the cartoon.)&lt;/A&gt;&lt;/FONT&gt;\n&lt;/TD&gt;&lt;/TR&gt;</pre><b>After:</b><pre>&lt;tr&gt;\n   &lt;td align="left" bgcolor="#ffffff" width="182"&gt; \n      &lt;NYT_HEADLINE&gt; \n         &lt;a href="/onthisday/20020619.html"&gt;&lt;font face="times" size="3"&gt;&lt;b&gt;On June 19 ...&lt;br&gt;&lt;/b&gt;&lt;/font&gt;&lt;/a&gt; \n      &lt;/NYT_HEADLINE&gt; \n      &lt;NYT_BYLINE&gt; &lt;font size="-1"&gt;&lt;/font&gt; \n      &lt;/NYT_BYLINE&gt; \n      &lt;NYT_SUMMARY&gt; &lt;font size="-1"&gt; &lt;b&gt;1964:&lt;/b&gt; The Civil Rights Act of 1964 was approved. (&lt;a href="/onthisday/big/0619.html"&gt;See this front page.&lt;/a&gt;) \n         &lt;br&gt; &lt;b&gt;1903:&lt;/b&gt; Lou Gehrig was born. \n         &lt;a href="/onthisday/bday/0619.html"&gt;(Read about his life.)&lt;/a&gt; \n         &lt;br&gt; &lt;b&gt;1886:&lt;/b&gt; Harper's Weekly featured a cartoon about the proposed annexation of Nova Scotia. \n         &lt;a href="/onthisday/harp/0619.html"&gt;(See the cartoon.)&lt;/a&gt;&lt;/font&gt; \n   &lt;/td&gt;\n&lt;/tr&gt;</pre></html>"
+EditorType=boolean
+TrueFalse=-x|
+Value=0
+ValueDefault=0
+
+[Turn off XML detection]
 Category=0
-Description="<html>Set the number of spaces that a tab character occupies on your system.  Defaults to 8, but some people prefer expanding tabs to 4 spaces instead.  If set to 0, no tabs are output (spaces used to indent lines).</html>"
+Description="<html><p>HTB automatically detects XML compliant files and treats the unknown tags differently than HTML tags.  XML tags are indented as whitespace permits and case changes &amp; attribute sorting are not applied. To turn off this default behavior and apply case changes &amp; sorting to all tags known and unknown, specify the -y option.<br><br> <b>Example:</b><br><br>- <a href="#option_n">Never break tags</a>, <a href="#option_l">make all tags lower case</a> whether HTML or not, and do not change indenting for unknown tags... <br><center><code>htb -lny myfile.html</code></center><br> <b>Before:</b> <pre>&lt;TR&gt;&lt;TD WIDTH=182 ALIGN=left BGCOLOR="#ffffff"&gt;\n&lt;NYT_HEADLINE&gt;\n&lt;A\n\nHREF="/onthisday/20020619.html"&gt;&lt;FONT SIZE="3" FACE="times"&gt;&lt;B&gt;On June 19 ...&lt;BR&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/A&gt;\n&lt;/NYT_HEADLINE&gt;\n&lt;NYT_BYLINE&gt;\n&lt;FONT SIZE="-1"&gt;&lt;/FONT&gt;\n&lt;/NYT_BYLINE&gt;\n&lt;NYT_SUMMARY&gt;\n&lt;FONT SIZE="-1"&gt;\n&lt;B&gt;1964:&lt;/B&gt; The Civil Rights Act of 1964 was approved.   (&lt;A \nHREF="/onthisday/big/0619.html"&gt;See this front page.&lt;/A&gt;) &lt;BR&gt;\n&lt;B&gt;1903:&lt;/B&gt; Lou Gehrig was born.  &lt;A \nHREF="/onthisday/bday/0619.html"&gt;(Read about his life.)&lt;/A&gt; &lt;BR&gt;\n&lt;B&gt;1886:&lt;/B&gt; Harper's Weekly featured a cartoon about the proposed annexation of Nova Scotia. &lt;A \nHREF="/onthisday/harp/0619.html"&gt;(See the cartoon.)&lt;/A&gt;&lt;/FONT&gt;\n&lt;/TD&gt;&lt;/TR&gt;</pre><b>After:</b><pre>&lt;tr&gt;\n   &lt;td align="left" bgcolor="#ffffff" width="182"&gt; \n      &lt;nyt_headline&gt; \n      &lt;a href="/onthisday/20020619.html"&gt;&lt;font face="times" size="3"&gt;&lt;b&gt;On June 19 ...&lt;br&gt;&lt;/b&gt;&lt;/font&gt;&lt;/a&gt; \n      &lt;/nyt_headline&gt; \n      &lt;nyt_byline&gt; &lt;font size="-1"&gt;&lt;/font&gt; \n      &lt;/nyt_byline&gt; \n      &lt;nyt_summary&gt; &lt;font size="-1"&gt; &lt;b&gt;1964:&lt;/b&gt; The Civil Rights Act of 1964 was approved. (&lt;a href="/onthisday/big/0619.html"&gt;See this front page.&lt;/a&gt;) \n      &lt;br&gt; &lt;b&gt;1903:&lt;/b&gt; Lou Gehrig was born. \n      &lt;a href="/onthisday/bday/0619.html"&gt;(Read about his life.)&lt;/a&gt; \n      &lt;br&gt; &lt;b&gt;1886:&lt;/b&gt; Harper's Weekly featured a cartoon about the proposed annexation of Nova Scotia. \n      &lt;a href="/onthisday/harp/0619.html"&gt;(See the cartoon.)&lt;/a&gt;&lt;/font&gt; \n   &lt;/td&gt;\n&lt;/tr&gt;</pre></html>"
+EditorType=boolean
+TrueFalse=-y|
+Value=0
+ValueDefault=0
+
+[Remove Comments]
+Category=0
+Description="<html>The -z command-line option removes all stand-alone comments from the input data. This does not include JavaScript comments or comment blocks within APPLET, OBJECT, SCRIPT, and STYLE tags used to hide text from browsers. The revised output should render and function as the original. The -z option is useful in reducing tagged file sizes when the comment blocks are no longer needed, or in removing dead, commented-out sections within documents which tend to collect over time. The stripped comments are not lost, however. These are sent to the 'standard error' stream and may be collected in another file for reference or for use in documentation by 'standard error' redirection ('2>' or '2>>'). If 'standard error' is not redirected, the stripped comments will be seen scrolling by on the screen. Use in combination with the -k option to strip comments without otherwise changing the document layout.</html>"
+EditorType=boolean
+TrueFalse=-z|
+Value=0
+ValueDefault=0
+
+[Spaces for Indenting]
+CallName="-"
+Category=0
+Description="<html>A command-line option from 0 to 9 represents the number of spaces used for increments of indenting. Specifying 0 will cause all indenting to be removed and the tags will shifted to the left. If not specified, the default is to indent by 3.</html>"
 EditorType=numeric
 Enabled=false
-MaxVal=9999
+MaxVal=9
 MinVal=0
 Value=4
-ValueDefault=8
+ValueDefault=3