mirror of
https://github.com/wader/fq.git
synced 2024-12-27 15:42:07 +03:00
051a70bd4b
All other ranges and slicing uses exclusive end so i think it make sense to make it consistent. Update docs and add additional example for non-byte-aligned field. Also fixes issue showing zero bit ranges as start-NA.
92 lines
9.6 KiB
Plaintext
92 lines
9.6 KiB
Plaintext
$ fq -d tzif dv Fakaofo
|
|
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: Fakaofo (tzif) 0x0-0xc8 (200)
|
|
| | | v1header{}: 0x0-0x2c (44)
|
|
0x00|54 5a 69 66 |TZif | magic: 0x545a6966 (valid) 0x0-0x4 (4)
|
|
0x00| 32 | 2 | ver: "2" (0x32) (valid) 0x4-0x5 (1)
|
|
0x00| 00 00 00 00 00 00 00 00 00 00 00| ...........| reserved: raw bits 0x5-0x14 (15)
|
|
0x10|00 00 00 00 |.... |
|
|
0x10| 00 00 00 00 | .... | isutcnt: 0 0x14-0x18 (4)
|
|
0x10| 00 00 00 00 | .... | isstdcnt: 0 0x18-0x1c (4)
|
|
0x10| 00 00 00 00| ....| leapcnt: 0 0x1c-0x20 (4)
|
|
0x20|00 00 00 03 |.... | timecnt: 3 0x20-0x24 (4)
|
|
0x20| 00 00 00 03 | .... | typecnt: 3 0x24-0x28 (4)
|
|
0x20| 00 00 00 0c | .... | charcnt: 12 0x28-0x2c (4)
|
|
| | | v1datablock{}: 0x2c-0x59 (45)
|
|
| | | transition_times[0:3]: 0x2c-0x38 (12)
|
|
0x20| 80 00 00 00| ....| [0]: "1901-12-13T20:45:52Z" (-2147483648) transition_time 0x2c-0x30 (4)
|
|
0x30|4e fd 99 b0 |N... | [1]: "2011-12-30T11:00:00Z" (1325242800) transition_time 0x30-0x34 (4)
|
|
0x30| 7f ff ff ff | .... | [2]: "2038-01-19T03:14:07Z" (2147483647) transition_time 0x34-0x38 (4)
|
|
| | | transition_types[0:3]: 0x38-0x3b (3)
|
|
0x30| 01 | . | [0]: 1 transition_type 0x38-0x39 (1)
|
|
0x30| 02 | . | [1]: 2 transition_type 0x39-0x3a (1)
|
|
0x30| 02 | . | [2]: 2 transition_type 0x3a-0x3b (1)
|
|
| | | local_time_type_records[0:3]: 0x3b-0x4d (18)
|
|
| | | [0]{}: local_time_type 0x3b-0x41 (6)
|
|
0x30| ff ff 5f 78 | .._x | utoff: -41096 (valid) 0x3b-0x3f (4)
|
|
0x30| 00| .| dst: 0 (valid) 0x3f-0x40 (1)
|
|
0x40|00 |. | idx: 0 (valid) 0x40-0x41 (1)
|
|
| | | [1]{}: local_time_type 0x41-0x47 (6)
|
|
0x40| ff ff 65 50 | ..eP | utoff: -39600 (valid) 0x41-0x45 (4)
|
|
0x40| 00 | . | dst: 0 (valid) 0x45-0x46 (1)
|
|
0x40| 04 | . | idx: 4 (valid) 0x46-0x47 (1)
|
|
| | | [2]{}: local_time_type 0x47-0x4d (6)
|
|
0x40| 00 00 b6 d0 | .... | utoff: 46800 (valid) 0x47-0x4b (4)
|
|
0x40| 00 | . | dst: 0 (valid) 0x4b-0x4c (1)
|
|
0x40| 08 | . | idx: 8 (valid) 0x4c-0x4d (1)
|
|
| | | time_zone_designations[0:3]: 0x4d-0x59 (12)
|
|
0x40| 4c 4d 54| LMT| [0]: "LMT" time_zone_designation 0x4d-0x51 (4)
|
|
0x50|00 |. |
|
|
0x50| 2d 31 31 00 | -11. | [1]: "-11" time_zone_designation 0x51-0x55 (4)
|
|
0x50| 2b 31 33 00 | +13. | [2]: "+13" time_zone_designation 0x55-0x59 (4)
|
|
| | | leap_second_records[0:0]: 0x59-0x59 (0)
|
|
| | | standard_wall_indicators[0:0]: 0x59-0x59 (0)
|
|
| | | ut_local_indicators[0:0]: 0x59-0x59 (0)
|
|
| | | v2plusheader{}: 0x59-0x85 (44)
|
|
0x50| 54 5a 69 66 | TZif | magic: 0x545a6966 (valid) 0x59-0x5d (4)
|
|
0x50| 32 | 2 | ver: "2" (0x32) (valid) 0x5d-0x5e (1)
|
|
0x50| 00 00| ..| reserved: raw bits 0x5e-0x6d (15)
|
|
0x60|00 00 00 00 00 00 00 00 00 00 00 00 00 |............. |
|
|
0x60| 00 00 00| ...| isutcnt: 0 0x6d-0x71 (4)
|
|
0x70|00 |. |
|
|
0x70| 00 00 00 00 | .... | isstdcnt: 0 0x71-0x75 (4)
|
|
0x70| 00 00 00 00 | .... | leapcnt: 0 0x75-0x79 (4)
|
|
0x70| 00 00 00 03 | .... | timecnt: 3 0x79-0x7d (4)
|
|
0x70| 00 00 00| ...| typecnt: 3 0x7d-0x81 (4)
|
|
0x80|03 |. |
|
|
0x80| 00 00 00 0c | .... | charcnt: 12 0x81-0x85 (4)
|
|
| | | v2plusdatablock{}: 0x85-0xbe (57)
|
|
| | | transition_times[0:3]: 0x85-0x9d (24)
|
|
0x80| ff ff ff ff 7e 37 55 88 | ....~7U. | [0]: "1901-01-01T11:24:56Z" (-2177411704) transition_time 0x85-0x8d (8)
|
|
0x80| 00 00 00| ...| [1]: "2011-12-30T11:00:00Z" (1325242800) transition_time 0x8d-0x95 (8)
|
|
0x90|00 4e fd 99 b0 |.N... |
|
|
0x90| 00 00 00 00 7f ff ff ff | ........ | [2]: "2038-01-19T03:14:07Z" (2147483647) transition_time 0x95-0x9d (8)
|
|
| | | transition_types[0:3]: 0x9d-0xa0 (3)
|
|
0x90| 01 | . | [0]: 1 transition_type 0x9d-0x9e (1)
|
|
0x90| 02 | . | [1]: 2 transition_type 0x9e-0x9f (1)
|
|
0x90| 02| .| [2]: 2 transition_type 0x9f-0xa0 (1)
|
|
| | | local_time_type_records[0:3]: 0xa0-0xb2 (18)
|
|
| | | [0]{}: local_time_type 0xa0-0xa6 (6)
|
|
0xa0|ff ff 5f 78 |.._x | utoff: -41096 (valid) 0xa0-0xa4 (4)
|
|
0xa0| 00 | . | dst: 0 (valid) 0xa4-0xa5 (1)
|
|
0xa0| 00 | . | idx: 0 (valid) 0xa5-0xa6 (1)
|
|
| | | [1]{}: local_time_type 0xa6-0xac (6)
|
|
0xa0| ff ff 65 50 | ..eP | utoff: -39600 (valid) 0xa6-0xaa (4)
|
|
0xa0| 00 | . | dst: 0 (valid) 0xaa-0xab (1)
|
|
0xa0| 04 | . | idx: 4 (valid) 0xab-0xac (1)
|
|
| | | [2]{}: local_time_type 0xac-0xb2 (6)
|
|
0xa0| 00 00 b6 d0| ....| utoff: 46800 (valid) 0xac-0xb0 (4)
|
|
0xb0|00 |. | dst: 0 (valid) 0xb0-0xb1 (1)
|
|
0xb0| 08 | . | idx: 8 (valid) 0xb1-0xb2 (1)
|
|
| | | time_zone_designations[0:3]: 0xb2-0xbe (12)
|
|
0xb0| 4c 4d 54 00 | LMT. | [0]: "LMT" time_zone_designation 0xb2-0xb6 (4)
|
|
0xb0| 2d 31 31 00 | -11. | [1]: "-11" time_zone_designation 0xb6-0xba (4)
|
|
0xb0| 2b 31 33 00 | +13. | [2]: "+13" time_zone_designation 0xba-0xbe (4)
|
|
| | | leap_second_records[0:0]: 0xbe-0xbe (0)
|
|
| | | standard_wall_indicators[0:0]: 0xbe-0xbe (0)
|
|
| | | ut_local_indicators[0:0]: 0xbe-0xbe (0)
|
|
| | | footer{}: 0xbe-0xc8 (10)
|
|
0xb0| 0a | . | nl1: 10 (valid) 0xbe-0xbf (1)
|
|
0xb0| 3c| <| tz_string: "<+13>-13" 0xbf-0xc7 (8)
|
|
0xc0|2b 31 33 3e 2d 31 33 |+13>-13 |
|
|
0xc0| 0a| | .| | nl2: 10 (valid) 0xc7-0xc8 (1)
|