Locale:...:IBM437(3)

πŸ’… Locale::RecodeData::IBM437(3) β€” like, the whole manual page, bestie

okay so real talk β€” this page is from User Contributed Perl Documentation, and the module it's spilling tea about is Locale::RecodeData::IBM437. Yeah. That name. It's a whole mouthful, iykyk. πŸŽ€


✨ NAME ✨

Locale::RecodeData::IBM437 β€” conversion routines for IBM437, periodt. πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

like, just don't, okay?

This module is internal to libintl.  Do not use directly!
fr fr bestie, this is not for you. It's internal to libintl, and it says do not use directly β€” not a vibe suggestion, it's literally the rule. πŸ™ˆ

🌸 DESCRIPTION 🌸

So this module is generated (not hand-written, no cap β€” a machine made it) and it contains the conversion tables and the routines for IBM437. That's the whole job. It converts stuff. It's giving "humble little worker bee" energy. 🐝✨


πŸ’¬ COMMENTS πŸ’¬

These comments were extracted from the original charmap, straight up copied vibes:

 version: 1.0
  source: IBM NLS RM Vol2 SE09-8002-01, March 1990
 alias CP437
 alias 437

And like β€” please note β€” the aliases listed above are not necessarily valid! 😭 So don't come for me if CP437 or 437 doesn't work where you thought it would. Aliases are messy. It's a whole thing. πŸ’€


πŸ‘‘ CHARACTER TABLE πŸ‘‘

okay so bestie, here's the tea about the table that's coming up: it's sorted in the same order as the original charmap. All character codes are in hexadecimal β€” no decimals, we're fancy here. πŸ’…

And super important, don't get confused: when you see ISO-10646, you should read it as ISO-10646-UCS4. Like, that's the actual name, ISO-10646 is just the nickname. 🌈


<span>more coming in part 2, don't go anywhere ✨🫢</span>

okay so picking up right where we left off, bestie β€” here's the actual byte-by-byte map, every single row, no skipping, no cap πŸ’…

        Local | ISO-10646 | Description
       -------+-----------+-------------------------------------------------
           00 |  00000000 | NULL (NUL)
           01 |  00000001 | START OF HEADING (SOH)
           02 |  00000002 | START OF TEXT (STX)
           03 |  00000003 | END OF TEXT (ETX)
           04 |  00000004 | END OF TRANSMISSION (EOT)
           05 |  00000005 | ENQUIRY (ENQ)
           06 |  00000006 | ACKNOWLEDGE (ACK)
           07 |  00000007 | BELL (BEL)
           08 |  00000008 | BACKSPACE (BS)
           09 |  00000009 | CHARACTER TABULATION (HT)
           0A |  0000000A | LINE FEED (LF)
           0B |  0000000B | LINE TABULATION (VT)
           0C |  0000000C | FORM FEED (FF)
           0D |  0000000D | CARRIAGE RETURN (CR)
           0E |  0000000E | SHIFT OUT (SO)
           0F |  0000000F | SHIFT IN (SI)
           10 |  00000010 | DATALINK ESCAPE (DLE)
           11 |  00000011 | DEVICE CONTROL ONE (DC1)
           12 |  00000012 | DEVICE CONTROL TWO (DC2)
           13 |  00000013 | DEVICE CONTROL THREE (DC3)
           14 |  00000014 | DEVICE CONTROL FOUR (DC4)
           15 |  00000015 | NEGATIVE ACKNOWLEDGE (NAK)
           16 |  00000016 | SYNCHRONOUS IDLE (SYN)
           17 |  00000017 | END OF TRANSMISSION BLOCK (ETB)
           18 |  00000018 | CANCEL (CAN)
           19 |  00000019 | END OF MEDIUM (EM)
           1A |  0000001A | SUBSTITUTE (SUB)
           1B |  0000001B | ESCAPE (ESC)
           1C |  0000001C | FILE SEPARATOR (IS4)
           1D |  0000001D | GROUP SEPARATOR (IS3)
           1E |  0000001E | RECORD SEPARATOR (IS2)
           1F |  0000001F | UNIT SEPARATOR (IS1)
           20 |  00000020 | SPACE
           21 |  00000021 | EXCLAMATION MARK
           22 |  00000022 | QUOTATION MARK
           23 |  00000023 | NUMBER SIGN
           24 |  00000024 | DOLLAR SIGN
           25 |  00000025 | PERCENT SIGN
           26 |  00000026 | AMPERSAND
           27 |  00000027 | APOSTROPHE
           28 |  00000028 | LEFT PARENTHESIS
           29 |  00000029 | RIGHT PARENTHESIS
           2A |  0000002A | ASTERISK
           2B |  0000002B | PLUS SIGN
           2C |  0000002C | COMMA
           2D |  0000002D | HYPHEN-MINUS
           2E |  0000002E | FULL STOP
           2F |  0000002F | SOLIDUS
           30 |  00000030 | DIGIT ZERO
           31 |  00000031 | DIGIT ONE
           32 |  00000032 | DIGIT TWO
           33 |  00000033 | DIGIT THREE
           34 |  00000034 | DIGIT FOUR
           35 |  00000035 | DIGIT FIVE
           36 |  00000036 | DIGIT SIX
           37 |  00000037 | DIGIT SEVEN
           38 |  00000038 | DIGIT EIGHT
           39 |  00000039 | DIGIT NINE
           3A |  0000003A | COLON
           3B |  0000003B | SEMICOLON
           3C |  0000003C | LESS-THAN SIGN
           3D |  0000003D | EQUALS SIGN
           3E |  0000003E | GREATER-THAN SIGN
           3F |  0000003F | QUESTION MARK
           40 |  00000040 | COMMERCIAL AT
           41 |  00000041 | LATIN CAPITAL LETTER A
           42 |  00000042 | LATIN CAPITAL LETTER B
           43 |  00000043 | LATIN CAPITAL LETTER C
           44 |  00000044 | LATIN CAPITAL LETTER D
           45 |  00000045 | LATIN CAPITAL LETTER E
           46 |  00000046 | LATIN CAPITAL LETTER F
           47 |  00000047 | LATIN CAPITAL LETTER G
           48 |  00000048 | LATIN CAPITAL LETTER H
           49 |  00000049 | LATIN CAPITAL LETTER I
           4A |  0000004A | LATIN CAPITAL LETTER J
           4B |  0000004B | LATIN CAPITAL LETTER K
           4C |  0000004C | LATIN CAPITAL LETTER L
           4D |  0000004D | LATIN CAPITAL LETTER M
           4E |  0000004E | LATIN CAPITAL LETTER N
           4F |  0000004F | LATIN CAPITAL LETTER O
           50 |  00000050 | LATIN CAPITAL LETTER P
           51 |  00000051 | LATIN CAPITAL LETTER Q
           52 |  00000052 | LATIN CAPITAL LETTER R
           53 |  00000053 | LATIN CAPITAL LETTER S
           54 |  00000054 | LATIN CAPITAL LETTER T
           55 |  00000055 | LATIN CAPITAL LETTER U
           56 |  00000056 | LATIN CAPITAL LETTER V
           57 |  00000057 | LATIN CAPITAL LETTER W
           58 |  00000058 | LATIN CAPITAL LETTER X
           59 |  00000059 | LATIN CAPITAL LETTER Y
           5A |  0000005A | LATIN CAPITAL LETTER Z
           5B |  0000005B | LEFT SQUARE BRACKET
           5C |  0000005C | REVERSE SOLIDUS
           5D |  0000005D | RIGHT SQUARE BRACKET
           5E |  0000005E | CIRCUMFLEX ACCENT
           5F |  0000005F | LOW LINE
           60 |  00000060 | GRAVE ACCENT
           61 |  00000061 | LATIN SMALL LETTER A
           62 |  00000062 | LATIN SMALL LETTER B
           63 |  00000063 | LATIN SMALL LETTER C
           64 |  00000064 | LATIN SMALL LETTER D
           65 |  00000065 | LATIN SMALL LETTER E
           66 |  00000066 | LATIN SMALL LETTER F
           67 |  00000067 | LATIN SMALL LETTER G
           68 |  00000068 | LATIN SMALL LETTER H
           69 |  00000069 | LATIN SMALL LETTER I
           6A |  0000006A | LATIN SMALL LETTER J
           6B |  0000006B | LATIN SMALL LETTER K
           6C |  0000006C | LATIN SMALL LETTER L
           6D |  0000006D | LATIN SMALL LETTER M
           6E |  0000006E | LATIN SMALL LETTER N
           6F |  0000006F | LATIN SMALL LETTER O
           70 |  00000070 | LATIN SMALL LETTER P
           71 |  00000071 | LATIN SMALL LETTER Q
           72 |  00000072 | LATIN SMALL LETTER R
           73 |  00000073 | LATIN SMALL LETTER S
           74 |  00000074 | LATIN SMALL LETTER T
           75 |  00000075 | LATIN SMALL LETTER U
           76 |  00000076 | LATIN SMALL LETTER V
           77 |  00000077 | LATIN SMALL LETTER W
           78 |  00000078 | LATIN SMALL LETTER X
           79 |  00000079 | LATIN SMALL LETTER Y
           7A |  0000007A | LATIN SMALL LETTER Z
           7B |  0000007B | LEFT CURLY BRACKET
           7C |  0000007C | VERTICAL LINE
           7D |  0000007D | RIGHT CURLY BRACKET
           7E |  0000007E | TILDE
           7F |  0000007F | DELETE (DEL)
           80 |  000000C7 | LATIN CAPITAL LETTER C WITH CEDILLA
           81 |  000000FC | LATIN SMALL LETTER U WITH DIAERESIS
           82 |  000000E9 | LATIN SMALL LETTER E WITH ACUTE
           83 |  000000E2 | LATIN SMALL LETTER A WITH CIRCUMFLEX
           84 |  000000E4 | LATIN SMALL LETTER A WITH DIAERESIS
           85 |  000000E0 | LATIN SMALL LETTER A WITH GRAVE
           86 |  000000E5 | LATIN SMALL LETTER A WITH RING ABOVE
           87 |  000000E7 | LATIN SMALL LETTER C WITH CEDILLA
           88 |  000000EA | LATIN SMALL LETTER E WITH CIRCUMFLEX
           89 |  000000EB | LATIN SMALL LETTER E WITH DIAERESIS
           8A |  000000E8 | LATIN SMALL LETTER E WITH GRAVE
           8B |  000000EF | LATIN SMALL LETTER I WITH DIAERESIS
           8C |  000000EE | LATIN SMALL LETTER I WITH CIRCUMFLEX
           8D |  000000EC | LATIN SMALL LETTER I WITH GRAVE
           8E |  000000C4 | LATIN CAPITAL LETTER A WITH DIAERESIS
           8F |  000000C5 | LATIN CAPITAL LETTER A WITH RING ABOVE
           90 |  000000C9 | LATIN CAPITAL LETTER E WITH ACUTE
           91 |  000000E6 | LATIN SMALL LETTER AE
           92 |  000000C6 | LATIN CAPITAL LETTER AE
           93 |  000000F4 | LATIN SMALL LETTER O WITH CIRCUMFLEX
           94 |  000000F6 | LATIN SMALL LETTER O WITH DIAERESIS
           95 |  000000F2 | LATIN SMALL LETTER O WITH GRAVE
           96 |  000000FB | LATIN SMALL LETTER U WITH CIRCUMFLEX
           97 |  000000F9 | LATIN SMALL LETTER U WITH GRAVE
           98 |  000000FF | LATIN SMALL LETTER Y WITH DIAERESIS
           99 |  000000D6 | LATIN CAPITAL LETTER O WITH DIAERESIS
           9A |  000000DC | LATIN CAPITAL LETTER U WITH DIAERESIS
           9B |  000000A2 | CENT SIGN
           9C |  000000A3 | POUND SIGN
           9D |  000000A5 | YEN SIGN
           9E |  000020A7 | PESETA SIGN
           9F |  00000192 | LATIN SMALL LETTER F WITH HOOK
           A0 |  000000E1 | LATIN SMALL LETTER A WITH ACUTE
           A1 |  000000ED | LATIN SMALL LETTER I WITH ACUTE
           A2 |  000000F3 | LATIN SMALL LETTER O WITH ACUTE
           A3 |  000000FA | LATIN SMALL LETTER U WITH ACUTE
           A4 |  000000F1 | LATIN SMALL LETTER N WITH TILDE
           A5 |  000000D1 | LATIN CAPITAL LETTER N WITH TILDE
           A6 |  000000AA | FEMININE ORDINAL INDICATOR
           A7 |  000000BA | MASCULINE ORDINAL INDICATOR
           A8 |  000000BF | INVERTED QUESTION MARK
           A9 |  00002310 | REVERSED NOT SIGN
           AA |  000000AC | NOT SIGN
           AB |  000000BD | VULGAR FRACTION ONE HALF
           AC |  000000BC | VULGAR FRACTION ONE QUARTER
           AD |  000000A1 | INVERTED EXCLAMATION MARK
           AE |  000000AB | LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
           AF |  000000BB | RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
           B0 |  00002591 | LIGHT SHADE
           B1 |  00002592 | MEDIUM SHADE
           B2 |  00002593 | DARK SHADE
           B3 |  00002502 | BOX DRAWINGS LIGHT VERTICAL
           B4 |  00002524 | BOX DRAWINGS LIGHT VERTICAL AND LEFT
           B5 |  00002561 | BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
           B6 |  00002562 | BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
           B7 |  00002556 | BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
           B8 |  00002555 | BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
           B9 |  00002563 | BOX DRAWINGS DOUBLE VERTICAL AND LEFT
           BA |  00002551 | BOX DRAWINGS DOUBLE VERTICAL
           BB |  00002557 | BOX DRAWINGS DOUBLE DOWN AND LEFT
           BC |  0000255D | BOX DRAWINGS DOUBLE UP AND LEFT
           BD |  0000255C | BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
           BE |  0000255B | BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
           BF |  00002510 | BOX DRAWINGS LIGHT DOWN AND LEFT
           C0 |  00002514 | BOX DRAWINGS LIGHT UP AND RIGHT
           C1 |  00002534 | BOX DRAWINGS LIGHT UP AND HORIZONTAL
           C2 |  0000252C | BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
           C3 |  0000251C | BOX DRAWINGS LIGHT VERTICAL AND RIGHT
           C4 |  00002500 | BOX DRAWINGS LIGHT HORIZONTAL
           C5 |  0000253C | BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
           C6 |  0000255E | BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
           C7 |  0000255F | BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
           C8 |  0000255A | BOX DRAWINGS DOUBLE UP AND RIGHT
           C9 |  00002554 | BOX DRAWINGS DOUBLE DOWN AND RIGHT
           CA |  00002569 | BOX DRAWINGS DOUBLE UP AND HORIZONTAL
           CB |  00002566 | BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
           CC |  00002560 | BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
           CD |  00002550 | BOX DRAWINGS DOUBLE HORIZONTAL
           CE |  0000256C | BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
           CF |  00002567 | BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
           D0 |  00002568 | BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
           D1 |  00002564 | BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
           D2 |  00002565 | BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
           D3 |  00002559 | BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
           D4 |  00002558 | BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
           D5 |  00002552 | BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
           D6 |  00002553 | BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
           D7 |  0000256B | BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
           D8 |  0000256A | BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
           D9 |  00002518 | BOX DRAWINGS LIGHT UP AND LEFT
           DA |  0000250C | BOX DRAWINGS LIGHT DOWN AND RIGHT
           DB |  00002588 | FULL BLOCK
           DC |  00002584 | LOWER HALF BLOCK
           DD |  0000258C | LEFT HALF BLOCK
           DE |  00002590 | RIGHT HALF BLOCK
           DF |  00002580 | UPPER HALF BLOCK
           E0 |  000003B1 | GREEK SMALL LETTER ALPHA
           E1 |  000000DF | LATIN SMALL LETTER SHARP S (German)

okay so vibe check on what we just scrolled through, because some of these rows are genuinely iconic and I need you to appreciate them 🫢

  • 00 through 1F β€” the whole control-character era. NULL (NUL), BELL (BEL), ESCAPE (ESC), DELETE (DEL) at 7F… your terminal's whole attitude lives up here, fr.
  • 20 through 7E β€” printable ASCII, the main characters of the entire internet 😭 every letter, digit and punctuation mark just vibing in order. SPACE at 20, COMMERCIAL AT at 40, LATIN SMALL LETTER Z at 7A and then TILDE at 7E closing the set out.
  • 80 through 9F β€” the accented-letter section. LATIN CAPITAL LETTER C WITH CEDILLA, the diaeresis girls, LATIN SMALL LETTER AE / LATIN CAPITAL LETTER AE, and then the currency cameo: CENT SIGN, POUND SIGN, YEN SIGN, PESETA SIGN, plus LATIN SMALL LETTER F WITH HOOK at 9F.
  • A0 through AF β€” the Spanish/ordinal corner. LATIN SMALL LETTER N WITH TILDE, FEMININE ORDINAL INDICATOR, MASCULINE ORDINAL INDICATOR, INVERTED QUESTION MARK, REVERSED NOT SIGN, VULGAR FRACTION ONE HALF, VULGAR FRACTION ONE QUARTER, INVERTED EXCLAMATION MARK, and the two angle quotation marks LEFT-POINTING DOUBLE ANGLE QUOTATION MARK / RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK.
  • B0 through DF β€” THE BOX DRAWING BLOCK πŸŽ€ this is the main character energy of the whole table, no cap. Shades (LIGHT SHADE, MEDIUM SHADE, DARK SHADE), then every BOX DRAWINGS combo in light, single and double, then the blocks: FULL BLOCK, LOWER HALF BLOCK, LEFT HALF BLOCK, RIGHT HALF BLOCK, UPPER HALF BLOCK.
  • E0 β€” GREEK SMALL LETTER ALPHA swooping in at the end like a guest star πŸ’«
  • E1 β€” LATIN SMALL LETTER SHARP S (German), and yes bestie, the ß made the cut πŸ™ˆ
ngl the way this table just keeps going is so real of it β€” and there's still more map left to unroll, so don't you dare close the terminal ✨
  • E2 β†’ 00000393 β€” GREEK CAPITAL LETTER GAMMA
  • E3 β†’ 000003C0 β€” GREEK SMALL LETTER PI
  • E4 β†’ 000003A3 β€” GREEK CAPITAL LETTER SIGMA
  • E5 β†’ 000003C3 β€” GREEK SMALL LETTER SIGMA
  • E6 β†’ 000000B5 β€” MICRO SIGN
  • E7 β†’ 000003C4 β€” GREEK SMALL LETTER TAU
  • E8 β†’ 000003A6 β€” GREEK CAPITAL LETTER PHI
  • E9 β†’ 00000398 β€” GREEK CAPITAL LETTER THETA
  • EA β†’ 000003A9 β€” GREEK CAPITAL LETTER OMEGA
  • EB β†’ 000003B4 β€” GREEK SMALL LETTER DELTA
  • EC β†’ 0000221E β€” INFINITY
  • ED β†’ 000003C6 β€” GREEK SMALL LETTER PHI
  • EE β†’ 000003B5 β€” GREEK SMALL LETTER EPSILON
  • EF β†’ 00002229 β€” INTERSECTION
  • F0 β†’ 00002261 β€” IDENTICAL TO
  • F1 β†’ 000000B1 β€” PLUS-MINUS SIGN
  • F2 β†’ 00002265 β€” GREATER-THAN OR EQUAL TO
  • F3 β†’ 00002264 β€” LESS-THAN OR EQUAL TO
  • F4 β†’ 00002320 β€” TOP HALF INTEGRAL
  • F5 β†’ 00002321 β€” BOTTOM HALF INTEGRAL
  • F6 β†’ 000000F7 β€” DIVISION SIGN
  • F7 β†’ 00002248 β€” ALMOST EQUAL TO
  • F8 β†’ 000000B0 β€” DEGREE SIGN
  • F9 β†’ 00002219 β€” BULLET OPERATOR
  • FA β†’ 000000B7 β€” MIDDLE DOT
  • FB β†’ 0000221A β€” SQUARE ROOT
  • FC β†’ 0000207F β€” SUPERSCRIPT LATIN SMALL LETTER N
  • FD β†’ 000000B2 β€” SUPERSCRIPT TWO
  • FE β†’ 000025A0 β€” BLACK SQUARE
  • FF β†’ 000000A0 β€” NO-BREAK SPACE

okay and that's the whole high half done, bestie β€” the math girlies ate with EC through FD, like the entire Greek alphabet plus integrals plus a square root?? it's giving "I took AP Calc and I'm not sorry" πŸ’… and then FF is just a NO-BREAK SPACE quietly closing the whole table out, lowkey iconic for a character that literally does nothing visible 🫢


πŸ‘‘ AUTHOR

Copyright (C) 2002-2017 Guido Flohr <http://www.guido-flohr.net/> (<mailto:guido.flohr@cantanea.com>), all rights reserved. See the source code for details!code for details!

yes the duplicated details!code for details! is really in there, typo and all β€” I'm not about to edit a copyright line, that's not my business πŸ™ˆ

🌈 SEE ALSO


and that's a wrap on the whole page, bestie!! πŸŽ€ this one came to you courtesy of perl v5.42.0, dated 2025-01-22 β€” go forth and convert your encodings responsibly, mwah πŸ’‹πŸ¦‹