Template:HexRow
Jump to navigation
Jump to search
Here's an all-ASCII alternative to GIF/PNG snapshots of hex data.
Editable by anyone, "right there", in parallel with related documentation.
Either embedded in the article using it, or in a subpage of the article.
- (in that case, transcluded and made directly editable via a header)
- (but if one wants to keep the doc in sync, it's not such a good idea)
- Usage
The following input :
{|border=1 cellspacing=0 {{HexRow|0x00 |01|51|02|00|01|00|00|06|AD|DE|AD|DE|AD|DE|AD|DE|= |FF|FF|FF|FF|FF|FF|FF|FF|00|00|00|00|00|00|00|00|= |00|00|00|00|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|= |00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|= |Who needs this?°}} {{HexRow|0x10 |AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|= |00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|= |FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|= |00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|= }} |}
produces the following output :
0x00 | 01 | 51 | 02 | 00 | 01 | 00 | 00 | 06 | AD | DE | AD | DE | AD | DE | AD | DE | Who needs this?° |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x10 | AD | DE | AD | DE | AD | DE | AD | DE | AD | DE | AD | DE | AD | DE | AD | DE | °°°°°°°°°°°°°°°° |
There are 66 arguments; they are not named, but they line up intuitively.
- The first argument is the data's offset (default is 0x00, maybe it should be blank).
- The next 16 arguments are the 16 hex bytes.
- Then you have the RGB components of every byte's background :
- 16 "red" bytes
- 16 "green" bytes
- 16 "blue" bytes
- Finally, you can add an ASCII translation if you so wish.
- Most of the time it's actually irrelevant; I'd systematically show all non-printable chars as °.
- If all 16 chars are non-printable, leave the last argument blank (the default value is °°°°°°°°°°°°°°°°)
The "|=" is a hack so that the newline is not read inas part of the argument (see HERE for details)
Only the fixed-size font is specified in this template, as well as bold for offset for offset and ASCII.
The rest (cell spacing/padding, border, alignment on page, background color, etc) is set at table level.