Template:HexRow: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (a few updates...)
m (the "Chess position" template was deleted from WP; "Chess diagram" has replaced it, but I assume the syntax is different)
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<includeonly>|-style="font-family:courier; font-size:2"
<includeonly>|-style="font-family:courier"
|{{{1|0x00}}}:&nbsp;
|{{{1|0x00}}}:&nbsp;
|BGCOLOR="#{{{19|FF}}}{{{36|FF}}}{{{53|FF}}}"|{{{2|00}}}
|BGCOLOR="#{{{20|FF}}}{{{37|FF}}}{{{54|FF}}}"|{{{3|00}}}
|BGCOLOR="#{{{20|FF}}}{{{37|FF}}}{{{54|FF}}}"|{{{3|00}}}
|BGCOLOR="#{{{21|FF}}}{{{38|FF}}}{{{55|FF}}}"|{{{4|00}}}
|BGCOLOR="#{{{21|FF}}}{{{38|FF}}}{{{55|FF}}}"|{{{4|00}}}
Line 17: Line 16:
|BGCOLOR="#{{{33|FF}}}{{{50|FF}}}{{{67|FF}}}"|{{{16|00}}}
|BGCOLOR="#{{{33|FF}}}{{{50|FF}}}{{{67|FF}}}"|{{{16|00}}}
|BGCOLOR="#{{{34|FF}}}{{{51|FF}}}{{{68|FF}}}"|{{{17|00}}}
|BGCOLOR="#{{{34|FF}}}{{{51|FF}}}{{{68|FF}}}"|{{{17|00}}}
|&nbsp;{{{70|°°°°°°°°°°°°°°°°}}}</includeonly><noinclude>
|BGCOLOR="#{{{35|FF}}}{{{52|FF}}}{{{69|FF}}}"|{{{18|00}}}
|&nbsp;{{{71|°°°°°°°°°°°°°°°°}}}</includeonly><noinclude>
Here's an all-ASCII alternative to GIF/PNG snapshots of hex data.
Here's an all-ASCII alternative to GIF/PNG snapshots of hex data.


Line 29: Line 29:
The following input :
The following input :
  <nowiki>{|border=1 cellspacing=0</nowiki>
  <nowiki>{|border=1 cellspacing=0</nowiki>
  <nowiki>{{HexRow|0x00</nowiki>
  <nowiki>{{HexRow|0x00|</nowiki>
  <nowiki>|01|51|02|00|01|00|00|06|AD|DE|AD|DE|AD|DE|AD|DE|</nowiki>
  <nowiki>|01|51|02|00|01|00|00|06|AD|DE|AD|DE|AD|DE|AD|DE|</nowiki>
  <nowiki>|FF|FF|FF|FF|FF|FF|FF|FF|00|00|00|00|00|00|00|00|</nowiki>
  <nowiki>|FF|FF|FF|FF|FF|FF|FF|FF|00|00|00|00|00|00|00|00|</nowiki>
Line 35: Line 35:
  <nowiki>|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|</nowiki>
  <nowiki>|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|</nowiki>
  <nowiki>|Who needs this?°}}</nowiki>
  <nowiki>|Who needs this?°}}</nowiki>
  <nowiki>{{HexRow|0x10</nowiki>
  <nowiki>{{HexRow|0x10|</nowiki>
  <nowiki>|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|</nowiki>
  <nowiki>|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|</nowiki>
  <nowiki>|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|</nowiki>
  <nowiki>|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|</nowiki>
Line 84: Line 84:
|}
|}
There are 66 "actual" arguments; they are ''not'' named, but they line up intuitively.
There are 66 "actual" arguments; they are ''not'' named, but they line up intuitively.
:(the extra | at the end of a line is part of a hack, see [http://en.wikipedia.org/wiki/Template_talk:Chess_position HERE] for details)
:(the extra | at the end of a line is part of a hack)
*The first argument is the data's offset (default is 0x00, maybe it should be blank).
*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.
*The next 16 arguments are the 16 hex bytes.
Line 93: Line 93:
*Finally, you can add an ASCII translation if you so wish.
*Finally, you can add an ASCII translation if you so wish.
**Most of the time it's actually irrelevant
**Most of the time it's actually irrelevant
::I'd systematically show nonsensical ASCII as '''°''' : it's less distractive.
**I'd systematically show nonsensical ASCII as '''°''' : it's less distractive.
:::Same for confirmed garbage in the hex fields : you can fill it with '''°'''.
**If all 16 chars are nonsense, simply omit the last argument (the default value is '''°°°°°°°°°°°°°°°°''')
**If all 16 chars are nonsense, simply omit the last argument (the default value is '''°°°°°°°°°°°°°°°°''')
**Same for confirmed garbage in the hex fields : you can fill it with '''°'''.
Only the fixed-size font is specified in this template, as well as bold for offset and ASCII.
Only the fixed-size font is specified in this template, as well as bold for offset and ASCII.


The rest (cell spacing/padding, border, alignment on page, background color, etc) is set at table level.
The rest (cell spacing/padding, border, alignment on page, background color, etc) is set at table level.
</noinclude>
</noinclude><noinclude>
 
[[Category:Table templates]]</noinclude>

Latest revision as of 21:21, 27 March 2020

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 "actual" arguments; they are not named, but they line up intuitively.

(the extra | at the end of a line is part of a hack)
  • 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 nonsensical ASCII as ° : it's less distractive.
    • If all 16 chars are nonsense, simply omit the last argument (the default value is °°°°°°°°°°°°°°°°)
    • Same for confirmed garbage in the hex fields : you can fill it with °.

Only the fixed-size font is specified in this template, as well as bold for offset and ASCII.

The rest (cell spacing/padding, border, alignment on page, background color, etc) is set at table level.