Locale:..._8859_10(3)
π¦ Locale::RecodeData::ISO_8859_10 β section 3 of the manual, bestie edition π
okay so you opened Locale:..._8859_10(3) and you're like "what is this even." sit down, i got you. this is the perl doc for Locale::RecodeData::ISO_8859_10, and it's lowkey just a little conversion-table gremlin. let's go β¨
πΈ NAME πΈ
Locale::RecodeData::ISO_8859_10 β the conversion routines for ISO-8859-10, no cap π
β¨ SYNOPSIS β¨
This module is internal to libintl. Do not use directly!
that's it. that's the whole synopsis. and yes, it's yelling at you in all caps with an exclamation point β do not use it directly, fr fr π it's an internal module, it's not for you, it's for libintl. like it's giving "staff only" door energy. respect the door. πͺ
π DESCRIPTION π
so this module is generated β like, a robot wrote it, not a human typing away at 2am β and what it contains is the conversion tables and routines for ISO-8859-10. that's the whole vibe. tables + routines. iconic, honestly. π
π«Ά COMMENTS π«Ά
these comments got extracted straight out of the original charmap, and i'm presenting them to you verbatim because i would never gatekeep the lore:
version: 1.0
source: ECMA registry
alias ISO-IR-157
alias ISO_8859-10:1992
alias ISO_8859-10
alias L6
alias LATIN6
look at all those aliases, she has like seven names, main character energy truly π
β οΈ but bestie, real talk: please note that aliases listed above are not necessarily valid! like, don't just assume they all work. the manpage said so, not me. π
π CHARACTER TABLE π
here's the thing about the table that follows β and i need you to clock this:
- it's sorted in the same order as the original charmap ποΈ
- all character codes are in hexadecimal π’
- and when you see
'ISO-10646', please read it as'ISO-10646-UCS4'β
that's the whole heads-up. iykyk. π§
(okay cool that's part 1 β the table itself and everything after is coming up next, don't go anywhere π)
...okay bestie, this is where it gets real. Below is the whole byte map β every local byte, the ISO-10646 code point it maps to, and the official name, all three in one place. I'm chunking it up so your eyes don't glaze over π nothing is skipped, promise, this is the full flex.
Here's the header so you know what you're looking at:
Local | ISO-10646 | Description
-------+-----------+-------------------------------------------------
The low bytes (00β1F): the computer screaming section
Okay so literally the entire first block is control characters β they don't print, they do things. This is the part of the table that's giving "the machine talks to itself" energy. iconic, chaotic, untouchable:
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)
The printable era (20β7F)
Aaand now we're in actual visible characters territory. Space, punctuation, digits, the whole alphabet in both cases, then a couple of bracket-y gems at the end. This is the part everyone already knows and loves π«Ά:
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)
Okay so more control codes (80β9F) π¦
Did we need another 32 control characters? The committee said yes and honestly, who are we to argue. These live up in the high half and they're all "introducer" this and "separator" that. Notes app level of organised:
80 | 00000080 | PADDING CHARACTER (PAD)
81 | 00000081 | HIGH OCTET PRESET (HOP)
82 | 00000082 | BREAK PERMITTED HERE (BPH)
83 | 00000083 | NO BREAK HERE (NBH)
84 | 00000084 | INDEX (IND)
85 | 00000085 | NEXT LINE (NEL)
86 | 00000086 | START OF SELECTED AREA (SSA)
87 | 00000087 | END OF SELECTED AREA (ESA)
88 | 00000088 | CHARACTER TABULATION SET (HTS)
89 | 00000089 | CHARACTER TABULATION WITH JUSTIFICATION (HTJ)
8A | 0000008A | LINE TABULATION SET (VTS)
8B | 0000008B | PARTIAL LINE FORWARD (PLD)
8C | 0000008C | PARTIAL LINE BACKWARD (PLU)
8D | 0000008D | REVERSE LINE FEED (RI)
8E | 0000008E | SINGLE-SHIFT TWO (SS2)
8F | 0000008F | SINGLE-SHIFT THREE (SS3)
90 | 00000090 | DEVICE CONTROL STRING (DCS)
91 | 00000091 | PRIVATE USE ONE (PU1)
92 | 00000092 | PRIVATE USE TWO (PU2)
93 | 00000093 | SET TRANSMIT STATE (STS)
94 | 00000094 | CANCEL CHARACTER (CCH)
95 | 00000095 | MESSAGE WAITING (MW)
96 | 00000096 | START OF GUARDED AREA (SPA)
97 | 00000097 | END OF GUARDED AREA (EPA)
98 | 00000098 | START OF STRING (SOS)
99 | 00000099 | SINGLE GRAPHIC CHARACTER INTRODUCER (SGCI)
9A | 0000009A | SINGLE CHARACTER INTRODUCER (SCI)
9B | 0000009B | CONTROL SEQUENCE INTRODUCER (CSI)
9C | 0000009C | STRING TERMINATOR (ST)
9D | 0000009D | OPERATING SYSTEM COMMAND (OSC)
9E | 0000009E | PRIVACY MESSAGE (PM)
9F | 0000009F | APPLICATION PROGRAM COMMAND (APC)
The Nordic glow-up (A0βBF) β¨π
Okay this is the moment. A0 through BF is where ISO-8859-10 starts doing its actual job β the letters with ogoneks, macrons, cedillas, carons, strokes, and tildes start showing up, plus those two Sami letters (ENG, both cases, hello π). Also a no-break space, a section sign, a soft hyphen, a degree sign and a middle dot for when you need a little punctuation moment. Lowkey obsessed with how much personality fits in 32 bytes:
A0 | 000000A0 | NO-BREAK SPACE
A1 | 00000104 | LATIN CAPITAL LETTER A WITH OGONEK
A2 | 00000112 | LATIN CAPITAL LETTER E WITH MACRON
A3 | 00000122 | LATIN CAPITAL LETTER G WITH CEDILLA
A4 | 0000012A | LATIN CAPITAL LETTER I WITH MACRON
A5 | 00000128 | LATIN CAPITAL LETTER I WITH TILDE
A6 | 00000136 | LATIN CAPITAL LETTER K WITH CEDILLA
A7 | 000000A7 | SECTION SIGN
A8 | 0000013B | LATIN CAPITAL LETTER L WITH CEDILLA
A9 | 00000110 | LATIN CAPITAL LETTER D WITH STROKE
AA | 00000160 | LATIN CAPITAL LETTER S WITH CARON
AB | 00000166 | LATIN CAPITAL LETTER T WITH STROKE
AC | 0000017D | LATIN CAPITAL LETTER Z WITH CARON
AD | 000000AD | SOFT HYPHEN
AE | 0000016A | LATIN CAPITAL LETTER U WITH MACRON
AF | 0000014A | LATIN CAPITAL LETTER ENG (Sami)
B0 | 000000B0 | DEGREE SIGN
B1 | 00000105 | LATIN SMALL LETTER A WITH OGONEK
B2 | 00000113 | LATIN SMALL LETTER E WITH MACRON
B3 | 00000123 | LATIN SMALL LETTER G WITH CEDILLA
B4 | 0000012B | LATIN SMALL LETTER I WITH MACRON
B5 | 00000129 | LATIN SMALL LETTER I WITH TILDE
B6 | 00000137 | LATIN SMALL LETTER K WITH CEDILLA
B7 | 000000B7 | MIDDLE DOT
B8 | 0000013C | LATIN SMALL LETTER L WITH CEDILLA
B9 | 00000111 | LATIN SMALL LETTER D WITH STROKE
BA | 00000161 | LATIN SMALL LETTER S WITH CARON
BB | 00000167 | LATIN SMALL LETTER T WITH STROKE
BC | 0000017E | LATIN SMALL LETTER Z WITH CARON
BD | 00002015 | HORIZONTAL BAR
BE | 0000016B | LATIN SMALL LETTER U WITH MACRON
BF | 0000014B | LATIN SMALL LETTER ENG (Sami)
Not me noticingBDjumps all the way to00002015while everything around it is chilling in the000001xxrange π β that's exactly what the table says tho, bestie, so that's what we're printing.
Capital letters with main character energy (C0βDF) π
C0 onwards is a whole parade of capitals β the accented A's, the AE, the C with caron, the E's, eth and thorn (Icelandic said "we're here too"), the N with cedilla, the O family, the U family, and closing out with sharp S for German. Fr fr this block ate π
:
C0 | 00000100 | LATIN CAPITAL LETTER A WITH MACRON
C1 | 000000C1 | LATIN CAPITAL LETTER A WITH ACUTE
C2 | 000000C2 | LATIN CAPITAL LETTER A WITH CIRCUMFLEX
C3 | 000000C3 | LATIN CAPITAL LETTER A WITH TILDE
C4 | 000000C4 | LATIN CAPITAL LETTER A WITH DIAERESIS
C5 | 000000C5 | LATIN CAPITAL LETTER A WITH RING ABOVE
C6 | 000000C6 | LATIN CAPITAL LETTER AE
C7 | 0000012E | LATIN CAPITAL LETTER I WITH OGONEK
C8 | 0000010C | LATIN CAPITAL LETTER C WITH CARON
C9 | 000000C9 | LATIN CAPITAL LETTER E WITH ACUTE
CA | 00000118 | LATIN CAPITAL LETTER E WITH OGONEK
CB | 000000CB | LATIN CAPITAL LETTER E WITH DIAERESIS
CC | 00000116 | LATIN CAPITAL LETTER E WITH DOT ABOVE
CD | 000000CD | LATIN CAPITAL LETTER I WITH ACUTE
CE | 000000CE | LATIN CAPITAL LETTER I WITH CIRCUMFLEX
CF | 000000CF | LATIN CAPITAL LETTER I WITH DIAERESIS
D0 | 000000D0 | LATIN CAPITAL LETTER ETH (Icelandic)
D1 | 00000145 | LATIN CAPITAL LETTER N WITH CEDILLA
D2 | 0000014C | LATIN CAPITAL LETTER O WITH MACRON
D3 | 000000D3 | LATIN CAPITAL LETTER O WITH ACUTE
D4 | 000000D4 | LATIN CAPITAL LETTER O WITH CIRCUMFLEX
D5 | 000000D5 | LATIN CAPITAL LETTER O WITH TILDE
D6 | 000000D6 | LATIN CAPITAL LETTER O WITH DIAERESIS
D7 | 00000168 | LATIN CAPITAL LETTER U WITH TILDE
D8 | 000000D8 | LATIN CAPITAL LETTER O WITH STROKE
D9 | 00000172 | LATIN CAPITAL LETTER U WITH OGONEK
DA | 000000DA | LATIN CAPITAL LETTER U WITH ACUTE
DB | 000000DB | LATIN CAPITAL LETTER U WITH CIRCUMFLEX
DC | 000000DC | LATIN CAPITAL LETTER U WITH DIAERESIS
DD | 000000DD | LATIN CAPITAL LETTER Y WITH ACUTE
DE | 000000DE | LATIN CAPITAL LETTER THORN (Icelandic)
DF | 000000DF | LATIN SMALL LETTER SHARP S (German)
And the lowercase era begins (E0βE4) πΈ
Okay the lowercase squad is just getting started here β E0 through E4 in this part, and we're cutting off right in the middle of the a's because there's more page coming, bestie. Don't panic, nothing's missing, you're just at the cliffhanger π«Ά:
E0 | 00000101 | LATIN SMALL LETTER A WITH MACRON
E1 | 000000E1 | LATIN SMALL LETTER A WITH ACUTE
E2 | 000000E2 | LATIN SMALL LETTER A WITH CIRCUMFLEX
E3 | 000000E3 | LATIN SMALL LETTER A WITH TILDE
E4 | 000000E4 | LATIN SMALL LETTER A WITH DIAERESIS
to be continuedβ¦ the vibes are immaculate and the bytes are only half-mapped πβ¨
E5Β·000000E5Β·LATIN SMALL LETTER A WITH RING ABOVEE6Β·000000E6Β·LATIN SMALL LETTER AEE7Β·0000012FΒ·LATIN SMALL LETTER I WITH OGONEKE8Β·0000010DΒ·LATIN SMALL LETTER C WITH CARONE9Β·000000E9Β·LATIN SMALL LETTER E WITH ACUTEEAΒ·00000119Β·LATIN SMALL LETTER E WITH OGONEKEBΒ·000000EBΒ·LATIN SMALL LETTER E WITH DIAERESISECΒ·00000117Β·LATIN SMALL LETTER E WITH DOT ABOVEEDΒ·000000EDΒ·LATIN SMALL LETTER I WITH ACUTEEEΒ·000000EEΒ·LATIN SMALL LETTER I WITH CIRCUMFLEXEFΒ·000000EFΒ·LATIN SMALL LETTER I WITH DIAERESISF0Β·000000F0Β·LATIN SMALL LETTER ETH (Icelandic)F1Β·00000146Β·LATIN SMALL LETTER N WITH CEDILLAF2Β·0000014DΒ·LATIN SMALL LETTER O WITH MACRONF3Β·000000F3Β·LATIN SMALL LETTER O WITH ACUTEF4Β·000000F4Β·LATIN SMALL LETTER O WITH CIRCUMFLEXF5Β·000000F5Β·LATIN SMALL LETTER O WITH TILDEF6Β·000000F6Β·LATIN SMALL LETTER O WITH DIAERESISF7Β·00000169Β·LATIN SMALL LETTER U WITH TILDEF8Β·000000F8Β·LATIN SMALL LETTER O WITH STROKEF9Β·00000173Β·LATIN SMALL LETTER U WITH OGONEKFAΒ·000000FAΒ·LATIN SMALL LETTER U WITH ACUTEFBΒ·000000FBΒ·LATIN SMALL LETTER U WITH CIRCUMFLEXFCΒ·000000FCΒ·LATIN SMALL LETTER U WITH DIAERESISFDΒ·000000FDΒ·LATIN SMALL LETTER Y WITH ACUTEFEΒ·000000FEΒ·LATIN SMALL LETTER THORN (Icelandic)FFΒ·00000138Β·LATIN SMALL LETTER KRA (Greenlandic)
okay bestie we made it to the end of the table ππ the home stretch!! <pink>quick lil vibe check on the icons of this final stretch</pink> β F0 is LATIN SMALL LETTER ETH (Icelandic) and FE is LATIN SMALL LETTER THORN (Icelandic), the two Icelandic legends, and then <purple>the absolute final boss</purple> FF is 00000138, LATIN SMALL LETTER KRA (Greenlandic) β Greenland representation, we love to see it πβ¨
π 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!
ngl the page literally says !code for details! twice at the end there β no cap, that's what's written, so that's what you're getting π keeping it 100% verbatim because we do not edit the record.
π¦ SEE ALSO
and that's the whole page, bestie!! ππ«Ά three parts, all forty million hex codes, zero details dropped, periodt β¨ slay. π
perl v5.42.0 π¦ 2025-01-22 β that's the version and the date right there at the bottom, go off calendar icon π
π
π¦ where this page comes from
- opensuse-leap 16.0: perl-libintl-perl 1.350.0-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: perl-libintl-perl 1.350.0-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: perl-libintl-perl 1.350.0-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: perl-libintl-perl 1.350.0-160000.2.2 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms