<commit_before>This is a really trivial javascript hack that lets you type XML into
a field on the left, and see the packet you have described drawn as
ASCII art and as an HTML table on the right.   The HTML table format is
plagiarized from the wikipedia article on the IPv4 packet header.

The XML takes <bitgram>...</bitgram> at the top, with <field>...</field>
for each field in the packet.

The bitgram tag takes the following attributes:
  id: the ID of the tag.   This will also be the ID of the generated
      HTML table.
  width: the width in bits of the packet diagram.   Generally you want
         this to be 32.
The field tag takes the following attributes:
  name: the name that will appear for this field in the diagram.
  width: the width in bits of the field.   Can also be "variable"
	 for variable-width fields.
  stride: For variable-width fields, how many bits per element.

Obviously, this could do a lot more.<commit_msg>README apparently needs to be html...<commit_after>This is a really trivial javascript hack that lets you type XML into
a field on the left, and see the packet you have described drawn as
ASCII art and as an HTML table on the right.   The HTML table format is
plagiarized from the wikipedia article on the IPv4 packet header.

The XML takes &lt;bitgram&rt;...&lt;/bitgram&rt; at the top, with 
&lt;field&rt;...&lt;/field&rt; for each field in the packet.

The bitgram tag takes the following attributes:
<dl>
  <dt>id</dt><dd>the ID of the tag.   This will also be the ID of the generated
      HTML table.</dd>
  <dt>width</dt><dd>the width in bits of the packet diagram.
    Generally you want this to be 32.</dd></dl>
The field tag takes the following attributes:
<dl>
  <dt>name</dt><dd>the name that will appear for this field in the diagram.</dd>
  <dt>width</dt><dd>the width in bits of the field.   Can also be "variable"
	 for variable-width fields.</dd>
  <dt>stride</dt><dd>For variable-width fields, how many bits per element.</dd>

Obviously, this could do a lot more.
{'fraction_non_alphanumeric': 0.07654320987654321, 'fraction_numerical': 0.002962962962962963, 'mean_word_length': 3.5733634311512414, 'pattern_counts': {'":': 0, '<': 30, '<?xml version=': 0, '>': 30, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6996403', 'n_tokens_mistral': 584, 'n_tokens_neox': 567, 'n_words': 315}