This commit is contained in:
Elliot Nunn 2021-06-07 16:46:42 +08:00
parent 62a655aeff
commit 28d719987e
3 changed files with 305 additions and 0 deletions

24
MacRomanExploration.py Normal file
View File

@ -0,0 +1,24 @@
#!/usr/bin/env python3
import unicodedata
col_widths = [7, 54, 20]
rows = [['MacRom', 'UTF-8 NFC', 'UTF-8 NFD']]
for i in range(256):
rows.append(['[%02X]' % i])
for form in ('NFC', 'NFD'):
unistr = bytes([i]).decode('mac_roman')
unistr = unicodedata.normalize(form, unistr)
codepoints = []
for cp in unistr:
utf8hex = cp.encode('utf-8').hex().upper()
name = unicodedata.name(cp, 'U+%04X' % ord(cp))
codepoints.append(f'[{utf8hex}] {name}')
rows[-1].append(' + '.join(codepoints))
for row in rows:
accum = ''
for wid, col in zip(col_widths, row):
accum += (col + ' ').ljust(wid)
accum = accum.rstrip()
print(accum)

257
MacRomanExploration.txt Normal file
View File

@ -0,0 +1,257 @@
MacRom UTF-8 NFC UTF-8 NFD
[00] [00] U+0000 [00] U+0000
[01] [01] U+0001 [01] U+0001
[02] [02] U+0002 [02] U+0002
[03] [03] U+0003 [03] U+0003
[04] [04] U+0004 [04] U+0004
[05] [05] U+0005 [05] U+0005
[06] [06] U+0006 [06] U+0006
[07] [07] U+0007 [07] U+0007
[08] [08] U+0008 [08] U+0008
[09] [09] U+0009 [09] U+0009
[0A] [0A] U+000A [0A] U+000A
[0B] [0B] U+000B [0B] U+000B
[0C] [0C] U+000C [0C] U+000C
[0D] [0D] U+000D [0D] U+000D
[0E] [0E] U+000E [0E] U+000E
[0F] [0F] U+000F [0F] U+000F
[10] [10] U+0010 [10] U+0010
[11] [11] U+0011 [11] U+0011
[12] [12] U+0012 [12] U+0012
[13] [13] U+0013 [13] U+0013
[14] [14] U+0014 [14] U+0014
[15] [15] U+0015 [15] U+0015
[16] [16] U+0016 [16] U+0016
[17] [17] U+0017 [17] U+0017
[18] [18] U+0018 [18] U+0018
[19] [19] U+0019 [19] U+0019
[1A] [1A] U+001A [1A] U+001A
[1B] [1B] U+001B [1B] U+001B
[1C] [1C] U+001C [1C] U+001C
[1D] [1D] U+001D [1D] U+001D
[1E] [1E] U+001E [1E] U+001E
[1F] [1F] U+001F [1F] U+001F
[20] [20] SPACE [20] SPACE
[21] [21] EXCLAMATION MARK [21] EXCLAMATION MARK
[22] [22] QUOTATION MARK [22] QUOTATION MARK
[23] [23] NUMBER SIGN [23] NUMBER SIGN
[24] [24] DOLLAR SIGN [24] DOLLAR SIGN
[25] [25] PERCENT SIGN [25] PERCENT SIGN
[26] [26] AMPERSAND [26] AMPERSAND
[27] [27] APOSTROPHE [27] APOSTROPHE
[28] [28] LEFT PARENTHESIS [28] LEFT PARENTHESIS
[29] [29] RIGHT PARENTHESIS [29] RIGHT PARENTHESIS
[2A] [2A] ASTERISK [2A] ASTERISK
[2B] [2B] PLUS SIGN [2B] PLUS SIGN
[2C] [2C] COMMA [2C] COMMA
[2D] [2D] HYPHEN-MINUS [2D] HYPHEN-MINUS
[2E] [2E] FULL STOP [2E] FULL STOP
[2F] [2F] SOLIDUS [2F] SOLIDUS
[30] [30] DIGIT ZERO [30] DIGIT ZERO
[31] [31] DIGIT ONE [31] DIGIT ONE
[32] [32] DIGIT TWO [32] DIGIT TWO
[33] [33] DIGIT THREE [33] DIGIT THREE
[34] [34] DIGIT FOUR [34] DIGIT FOUR
[35] [35] DIGIT FIVE [35] DIGIT FIVE
[36] [36] DIGIT SIX [36] DIGIT SIX
[37] [37] DIGIT SEVEN [37] DIGIT SEVEN
[38] [38] DIGIT EIGHT [38] DIGIT EIGHT
[39] [39] DIGIT NINE [39] DIGIT NINE
[3A] [3A] COLON [3A] COLON
[3B] [3B] SEMICOLON [3B] SEMICOLON
[3C] [3C] LESS-THAN SIGN [3C] LESS-THAN SIGN
[3D] [3D] EQUALS SIGN [3D] EQUALS SIGN
[3E] [3E] GREATER-THAN SIGN [3E] GREATER-THAN SIGN
[3F] [3F] QUESTION MARK [3F] QUESTION MARK
[40] [40] COMMERCIAL AT [40] COMMERCIAL AT
[41] [41] LATIN CAPITAL LETTER A [41] LATIN CAPITAL LETTER A
[42] [42] LATIN CAPITAL LETTER B [42] LATIN CAPITAL LETTER B
[43] [43] LATIN CAPITAL LETTER C [43] LATIN CAPITAL LETTER C
[44] [44] LATIN CAPITAL LETTER D [44] LATIN CAPITAL LETTER D
[45] [45] LATIN CAPITAL LETTER E [45] LATIN CAPITAL LETTER E
[46] [46] LATIN CAPITAL LETTER F [46] LATIN CAPITAL LETTER F
[47] [47] LATIN CAPITAL LETTER G [47] LATIN CAPITAL LETTER G
[48] [48] LATIN CAPITAL LETTER H [48] LATIN CAPITAL LETTER H
[49] [49] LATIN CAPITAL LETTER I [49] LATIN CAPITAL LETTER I
[4A] [4A] LATIN CAPITAL LETTER J [4A] LATIN CAPITAL LETTER J
[4B] [4B] LATIN CAPITAL LETTER K [4B] LATIN CAPITAL LETTER K
[4C] [4C] LATIN CAPITAL LETTER L [4C] LATIN CAPITAL LETTER L
[4D] [4D] LATIN CAPITAL LETTER M [4D] LATIN CAPITAL LETTER M
[4E] [4E] LATIN CAPITAL LETTER N [4E] LATIN CAPITAL LETTER N
[4F] [4F] LATIN CAPITAL LETTER O [4F] LATIN CAPITAL LETTER O
[50] [50] LATIN CAPITAL LETTER P [50] LATIN CAPITAL LETTER P
[51] [51] LATIN CAPITAL LETTER Q [51] LATIN CAPITAL LETTER Q
[52] [52] LATIN CAPITAL LETTER R [52] LATIN CAPITAL LETTER R
[53] [53] LATIN CAPITAL LETTER S [53] LATIN CAPITAL LETTER S
[54] [54] LATIN CAPITAL LETTER T [54] LATIN CAPITAL LETTER T
[55] [55] LATIN CAPITAL LETTER U [55] LATIN CAPITAL LETTER U
[56] [56] LATIN CAPITAL LETTER V [56] LATIN CAPITAL LETTER V
[57] [57] LATIN CAPITAL LETTER W [57] LATIN CAPITAL LETTER W
[58] [58] LATIN CAPITAL LETTER X [58] LATIN CAPITAL LETTER X
[59] [59] LATIN CAPITAL LETTER Y [59] LATIN CAPITAL LETTER Y
[5A] [5A] LATIN CAPITAL LETTER Z [5A] LATIN CAPITAL LETTER Z
[5B] [5B] LEFT SQUARE BRACKET [5B] LEFT SQUARE BRACKET
[5C] [5C] REVERSE SOLIDUS [5C] REVERSE SOLIDUS
[5D] [5D] RIGHT SQUARE BRACKET [5D] RIGHT SQUARE BRACKET
[5E] [5E] CIRCUMFLEX ACCENT [5E] CIRCUMFLEX ACCENT
[5F] [5F] LOW LINE [5F] LOW LINE
[60] [60] GRAVE ACCENT [60] GRAVE ACCENT
[61] [61] LATIN SMALL LETTER A [61] LATIN SMALL LETTER A
[62] [62] LATIN SMALL LETTER B [62] LATIN SMALL LETTER B
[63] [63] LATIN SMALL LETTER C [63] LATIN SMALL LETTER C
[64] [64] LATIN SMALL LETTER D [64] LATIN SMALL LETTER D
[65] [65] LATIN SMALL LETTER E [65] LATIN SMALL LETTER E
[66] [66] LATIN SMALL LETTER F [66] LATIN SMALL LETTER F
[67] [67] LATIN SMALL LETTER G [67] LATIN SMALL LETTER G
[68] [68] LATIN SMALL LETTER H [68] LATIN SMALL LETTER H
[69] [69] LATIN SMALL LETTER I [69] LATIN SMALL LETTER I
[6A] [6A] LATIN SMALL LETTER J [6A] LATIN SMALL LETTER J
[6B] [6B] LATIN SMALL LETTER K [6B] LATIN SMALL LETTER K
[6C] [6C] LATIN SMALL LETTER L [6C] LATIN SMALL LETTER L
[6D] [6D] LATIN SMALL LETTER M [6D] LATIN SMALL LETTER M
[6E] [6E] LATIN SMALL LETTER N [6E] LATIN SMALL LETTER N
[6F] [6F] LATIN SMALL LETTER O [6F] LATIN SMALL LETTER O
[70] [70] LATIN SMALL LETTER P [70] LATIN SMALL LETTER P
[71] [71] LATIN SMALL LETTER Q [71] LATIN SMALL LETTER Q
[72] [72] LATIN SMALL LETTER R [72] LATIN SMALL LETTER R
[73] [73] LATIN SMALL LETTER S [73] LATIN SMALL LETTER S
[74] [74] LATIN SMALL LETTER T [74] LATIN SMALL LETTER T
[75] [75] LATIN SMALL LETTER U [75] LATIN SMALL LETTER U
[76] [76] LATIN SMALL LETTER V [76] LATIN SMALL LETTER V
[77] [77] LATIN SMALL LETTER W [77] LATIN SMALL LETTER W
[78] [78] LATIN SMALL LETTER X [78] LATIN SMALL LETTER X
[79] [79] LATIN SMALL LETTER Y [79] LATIN SMALL LETTER Y
[7A] [7A] LATIN SMALL LETTER Z [7A] LATIN SMALL LETTER Z
[7B] [7B] LEFT CURLY BRACKET [7B] LEFT CURLY BRACKET
[7C] [7C] VERTICAL LINE [7C] VERTICAL LINE
[7D] [7D] RIGHT CURLY BRACKET [7D] RIGHT CURLY BRACKET
[7E] [7E] TILDE [7E] TILDE
[7F] [7F] U+007F [7F] U+007F
[80] [C384] LATIN CAPITAL LETTER A WITH DIAERESIS [41] LATIN CAPITAL LETTER A + [CC88] COMBINING DIAERESIS
[81] [C385] LATIN CAPITAL LETTER A WITH RING ABOVE [41] LATIN CAPITAL LETTER A + [CC8A] COMBINING RING ABOVE
[82] [C387] LATIN CAPITAL LETTER C WITH CEDILLA [43] LATIN CAPITAL LETTER C + [CCA7] COMBINING CEDILLA
[83] [C389] LATIN CAPITAL LETTER E WITH ACUTE [45] LATIN CAPITAL LETTER E + [CC81] COMBINING ACUTE ACCENT
[84] [C391] LATIN CAPITAL LETTER N WITH TILDE [4E] LATIN CAPITAL LETTER N + [CC83] COMBINING TILDE
[85] [C396] LATIN CAPITAL LETTER O WITH DIAERESIS [4F] LATIN CAPITAL LETTER O + [CC88] COMBINING DIAERESIS
[86] [C39C] LATIN CAPITAL LETTER U WITH DIAERESIS [55] LATIN CAPITAL LETTER U + [CC88] COMBINING DIAERESIS
[87] [C3A1] LATIN SMALL LETTER A WITH ACUTE [61] LATIN SMALL LETTER A + [CC81] COMBINING ACUTE ACCENT
[88] [C3A0] LATIN SMALL LETTER A WITH GRAVE [61] LATIN SMALL LETTER A + [CC80] COMBINING GRAVE ACCENT
[89] [C3A2] LATIN SMALL LETTER A WITH CIRCUMFLEX [61] LATIN SMALL LETTER A + [CC82] COMBINING CIRCUMFLEX ACCENT
[8A] [C3A4] LATIN SMALL LETTER A WITH DIAERESIS [61] LATIN SMALL LETTER A + [CC88] COMBINING DIAERESIS
[8B] [C3A3] LATIN SMALL LETTER A WITH TILDE [61] LATIN SMALL LETTER A + [CC83] COMBINING TILDE
[8C] [C3A5] LATIN SMALL LETTER A WITH RING ABOVE [61] LATIN SMALL LETTER A + [CC8A] COMBINING RING ABOVE
[8D] [C3A7] LATIN SMALL LETTER C WITH CEDILLA [63] LATIN SMALL LETTER C + [CCA7] COMBINING CEDILLA
[8E] [C3A9] LATIN SMALL LETTER E WITH ACUTE [65] LATIN SMALL LETTER E + [CC81] COMBINING ACUTE ACCENT
[8F] [C3A8] LATIN SMALL LETTER E WITH GRAVE [65] LATIN SMALL LETTER E + [CC80] COMBINING GRAVE ACCENT
[90] [C3AA] LATIN SMALL LETTER E WITH CIRCUMFLEX [65] LATIN SMALL LETTER E + [CC82] COMBINING CIRCUMFLEX ACCENT
[91] [C3AB] LATIN SMALL LETTER E WITH DIAERESIS [65] LATIN SMALL LETTER E + [CC88] COMBINING DIAERESIS
[92] [C3AD] LATIN SMALL LETTER I WITH ACUTE [69] LATIN SMALL LETTER I + [CC81] COMBINING ACUTE ACCENT
[93] [C3AC] LATIN SMALL LETTER I WITH GRAVE [69] LATIN SMALL LETTER I + [CC80] COMBINING GRAVE ACCENT
[94] [C3AE] LATIN SMALL LETTER I WITH CIRCUMFLEX [69] LATIN SMALL LETTER I + [CC82] COMBINING CIRCUMFLEX ACCENT
[95] [C3AF] LATIN SMALL LETTER I WITH DIAERESIS [69] LATIN SMALL LETTER I + [CC88] COMBINING DIAERESIS
[96] [C3B1] LATIN SMALL LETTER N WITH TILDE [6E] LATIN SMALL LETTER N + [CC83] COMBINING TILDE
[97] [C3B3] LATIN SMALL LETTER O WITH ACUTE [6F] LATIN SMALL LETTER O + [CC81] COMBINING ACUTE ACCENT
[98] [C3B2] LATIN SMALL LETTER O WITH GRAVE [6F] LATIN SMALL LETTER O + [CC80] COMBINING GRAVE ACCENT
[99] [C3B4] LATIN SMALL LETTER O WITH CIRCUMFLEX [6F] LATIN SMALL LETTER O + [CC82] COMBINING CIRCUMFLEX ACCENT
[9A] [C3B6] LATIN SMALL LETTER O WITH DIAERESIS [6F] LATIN SMALL LETTER O + [CC88] COMBINING DIAERESIS
[9B] [C3B5] LATIN SMALL LETTER O WITH TILDE [6F] LATIN SMALL LETTER O + [CC83] COMBINING TILDE
[9C] [C3BA] LATIN SMALL LETTER U WITH ACUTE [75] LATIN SMALL LETTER U + [CC81] COMBINING ACUTE ACCENT
[9D] [C3B9] LATIN SMALL LETTER U WITH GRAVE [75] LATIN SMALL LETTER U + [CC80] COMBINING GRAVE ACCENT
[9E] [C3BB] LATIN SMALL LETTER U WITH CIRCUMFLEX [75] LATIN SMALL LETTER U + [CC82] COMBINING CIRCUMFLEX ACCENT
[9F] [C3BC] LATIN SMALL LETTER U WITH DIAERESIS [75] LATIN SMALL LETTER U + [CC88] COMBINING DIAERESIS
[A0] [E280A0] DAGGER [E280A0] DAGGER
[A1] [C2B0] DEGREE SIGN [C2B0] DEGREE SIGN
[A2] [C2A2] CENT SIGN [C2A2] CENT SIGN
[A3] [C2A3] POUND SIGN [C2A3] POUND SIGN
[A4] [C2A7] SECTION SIGN [C2A7] SECTION SIGN
[A5] [E280A2] BULLET [E280A2] BULLET
[A6] [C2B6] PILCROW SIGN [C2B6] PILCROW SIGN
[A7] [C39F] LATIN SMALL LETTER SHARP S [C39F] LATIN SMALL LETTER SHARP S
[A8] [C2AE] REGISTERED SIGN [C2AE] REGISTERED SIGN
[A9] [C2A9] COPYRIGHT SIGN [C2A9] COPYRIGHT SIGN
[AA] [E284A2] TRADE MARK SIGN [E284A2] TRADE MARK SIGN
[AB] [C2B4] ACUTE ACCENT [C2B4] ACUTE ACCENT
[AC] [C2A8] DIAERESIS [C2A8] DIAERESIS
[AD] [E289A0] NOT EQUAL TO [3D] EQUALS SIGN + [CCB8] COMBINING LONG SOLIDUS OVERLAY
[AE] [C386] LATIN CAPITAL LETTER AE [C386] LATIN CAPITAL LETTER AE
[AF] [C398] LATIN CAPITAL LETTER O WITH STROKE [C398] LATIN CAPITAL LETTER O WITH STROKE
[B0] [E2889E] INFINITY [E2889E] INFINITY
[B1] [C2B1] PLUS-MINUS SIGN [C2B1] PLUS-MINUS SIGN
[B2] [E289A4] LESS-THAN OR EQUAL TO [E289A4] LESS-THAN OR EQUAL TO
[B3] [E289A5] GREATER-THAN OR EQUAL TO [E289A5] GREATER-THAN OR EQUAL TO
[B4] [C2A5] YEN SIGN [C2A5] YEN SIGN
[B5] [C2B5] MICRO SIGN [C2B5] MICRO SIGN
[B6] [E28882] PARTIAL DIFFERENTIAL [E28882] PARTIAL DIFFERENTIAL
[B7] [E28891] N-ARY SUMMATION [E28891] N-ARY SUMMATION
[B8] [E2888F] N-ARY PRODUCT [E2888F] N-ARY PRODUCT
[B9] [CF80] GREEK SMALL LETTER PI [CF80] GREEK SMALL LETTER PI
[BA] [E288AB] INTEGRAL [E288AB] INTEGRAL
[BB] [C2AA] FEMININE ORDINAL INDICATOR [C2AA] FEMININE ORDINAL INDICATOR
[BC] [C2BA] MASCULINE ORDINAL INDICATOR [C2BA] MASCULINE ORDINAL INDICATOR
[BD] [CEA9] GREEK CAPITAL LETTER OMEGA [CEA9] GREEK CAPITAL LETTER OMEGA
[BE] [C3A6] LATIN SMALL LETTER AE [C3A6] LATIN SMALL LETTER AE
[BF] [C3B8] LATIN SMALL LETTER O WITH STROKE [C3B8] LATIN SMALL LETTER O WITH STROKE
[C0] [C2BF] INVERTED QUESTION MARK [C2BF] INVERTED QUESTION MARK
[C1] [C2A1] INVERTED EXCLAMATION MARK [C2A1] INVERTED EXCLAMATION MARK
[C2] [C2AC] NOT SIGN [C2AC] NOT SIGN
[C3] [E2889A] SQUARE ROOT [E2889A] SQUARE ROOT
[C4] [C692] LATIN SMALL LETTER F WITH HOOK [C692] LATIN SMALL LETTER F WITH HOOK
[C5] [E28988] ALMOST EQUAL TO [E28988] ALMOST EQUAL TO
[C6] [E28886] INCREMENT [E28886] INCREMENT
[C7] [C2AB] LEFT-POINTING DOUBLE ANGLE QUOTATION MARK [C2AB] LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
[C8] [C2BB] RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK [C2BB] RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
[C9] [E280A6] HORIZONTAL ELLIPSIS [E280A6] HORIZONTAL ELLIPSIS
[CA] [C2A0] NO-BREAK SPACE [C2A0] NO-BREAK SPACE
[CB] [C380] LATIN CAPITAL LETTER A WITH GRAVE [41] LATIN CAPITAL LETTER A + [CC80] COMBINING GRAVE ACCENT
[CC] [C383] LATIN CAPITAL LETTER A WITH TILDE [41] LATIN CAPITAL LETTER A + [CC83] COMBINING TILDE
[CD] [C395] LATIN CAPITAL LETTER O WITH TILDE [4F] LATIN CAPITAL LETTER O + [CC83] COMBINING TILDE
[CE] [C592] LATIN CAPITAL LIGATURE OE [C592] LATIN CAPITAL LIGATURE OE
[CF] [C593] LATIN SMALL LIGATURE OE [C593] LATIN SMALL LIGATURE OE
[D0] [E28093] EN DASH [E28093] EN DASH
[D1] [E28094] EM DASH [E28094] EM DASH
[D2] [E2809C] LEFT DOUBLE QUOTATION MARK [E2809C] LEFT DOUBLE QUOTATION MARK
[D3] [E2809D] RIGHT DOUBLE QUOTATION MARK [E2809D] RIGHT DOUBLE QUOTATION MARK
[D4] [E28098] LEFT SINGLE QUOTATION MARK [E28098] LEFT SINGLE QUOTATION MARK
[D5] [E28099] RIGHT SINGLE QUOTATION MARK [E28099] RIGHT SINGLE QUOTATION MARK
[D6] [C3B7] DIVISION SIGN [C3B7] DIVISION SIGN
[D7] [E2978A] LOZENGE [E2978A] LOZENGE
[D8] [C3BF] LATIN SMALL LETTER Y WITH DIAERESIS [79] LATIN SMALL LETTER Y + [CC88] COMBINING DIAERESIS
[D9] [C5B8] LATIN CAPITAL LETTER Y WITH DIAERESIS [59] LATIN CAPITAL LETTER Y + [CC88] COMBINING DIAERESIS
[DA] [E28184] FRACTION SLASH [E28184] FRACTION SLASH
[DB] [E282AC] EURO SIGN [E282AC] EURO SIGN
[DC] [E280B9] SINGLE LEFT-POINTING ANGLE QUOTATION MARK [E280B9] SINGLE LEFT-POINTING ANGLE QUOTATION MARK
[DD] [E280BA] SINGLE RIGHT-POINTING ANGLE QUOTATION MARK [E280BA] SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
[DE] [EFAC81] LATIN SMALL LIGATURE FI [EFAC81] LATIN SMALL LIGATURE FI
[DF] [EFAC82] LATIN SMALL LIGATURE FL [EFAC82] LATIN SMALL LIGATURE FL
[E0] [E280A1] DOUBLE DAGGER [E280A1] DOUBLE DAGGER
[E1] [C2B7] MIDDLE DOT [C2B7] MIDDLE DOT
[E2] [E2809A] SINGLE LOW-9 QUOTATION MARK [E2809A] SINGLE LOW-9 QUOTATION MARK
[E3] [E2809E] DOUBLE LOW-9 QUOTATION MARK [E2809E] DOUBLE LOW-9 QUOTATION MARK
[E4] [E280B0] PER MILLE SIGN [E280B0] PER MILLE SIGN
[E5] [C382] LATIN CAPITAL LETTER A WITH CIRCUMFLEX [41] LATIN CAPITAL LETTER A + [CC82] COMBINING CIRCUMFLEX ACCENT
[E6] [C38A] LATIN CAPITAL LETTER E WITH CIRCUMFLEX [45] LATIN CAPITAL LETTER E + [CC82] COMBINING CIRCUMFLEX ACCENT
[E7] [C381] LATIN CAPITAL LETTER A WITH ACUTE [41] LATIN CAPITAL LETTER A + [CC81] COMBINING ACUTE ACCENT
[E8] [C38B] LATIN CAPITAL LETTER E WITH DIAERESIS [45] LATIN CAPITAL LETTER E + [CC88] COMBINING DIAERESIS
[E9] [C388] LATIN CAPITAL LETTER E WITH GRAVE [45] LATIN CAPITAL LETTER E + [CC80] COMBINING GRAVE ACCENT
[EA] [C38D] LATIN CAPITAL LETTER I WITH ACUTE [49] LATIN CAPITAL LETTER I + [CC81] COMBINING ACUTE ACCENT
[EB] [C38E] LATIN CAPITAL LETTER I WITH CIRCUMFLEX [49] LATIN CAPITAL LETTER I + [CC82] COMBINING CIRCUMFLEX ACCENT
[EC] [C38F] LATIN CAPITAL LETTER I WITH DIAERESIS [49] LATIN CAPITAL LETTER I + [CC88] COMBINING DIAERESIS
[ED] [C38C] LATIN CAPITAL LETTER I WITH GRAVE [49] LATIN CAPITAL LETTER I + [CC80] COMBINING GRAVE ACCENT
[EE] [C393] LATIN CAPITAL LETTER O WITH ACUTE [4F] LATIN CAPITAL LETTER O + [CC81] COMBINING ACUTE ACCENT
[EF] [C394] LATIN CAPITAL LETTER O WITH CIRCUMFLEX [4F] LATIN CAPITAL LETTER O + [CC82] COMBINING CIRCUMFLEX ACCENT
[F0] [EFA3BF] U+F8FF [EFA3BF] U+F8FF
[F1] [C392] LATIN CAPITAL LETTER O WITH GRAVE [4F] LATIN CAPITAL LETTER O + [CC80] COMBINING GRAVE ACCENT
[F2] [C39A] LATIN CAPITAL LETTER U WITH ACUTE [55] LATIN CAPITAL LETTER U + [CC81] COMBINING ACUTE ACCENT
[F3] [C39B] LATIN CAPITAL LETTER U WITH CIRCUMFLEX [55] LATIN CAPITAL LETTER U + [CC82] COMBINING CIRCUMFLEX ACCENT
[F4] [C399] LATIN CAPITAL LETTER U WITH GRAVE [55] LATIN CAPITAL LETTER U + [CC80] COMBINING GRAVE ACCENT
[F5] [C4B1] LATIN SMALL LETTER DOTLESS I [C4B1] LATIN SMALL LETTER DOTLESS I
[F6] [CB86] MODIFIER LETTER CIRCUMFLEX ACCENT [CB86] MODIFIER LETTER CIRCUMFLEX ACCENT
[F7] [CB9C] SMALL TILDE [CB9C] SMALL TILDE
[F8] [C2AF] MACRON [C2AF] MACRON
[F9] [CB98] BREVE [CB98] BREVE
[FA] [CB99] DOT ABOVE [CB99] DOT ABOVE
[FB] [CB9A] RING ABOVE [CB9A] RING ABOVE
[FC] [C2B8] CEDILLA [C2B8] CEDILLA
[FD] [CB9D] DOUBLE ACUTE ACCENT [CB9D] DOUBLE ACUTE ACCENT
[FE] [CB9B] OGONEK [CB9B] OGONEK
[FF] [CB87] CARON [CB87] CARON

24
UnusedCharsInSource.py Executable file
View File

@ -0,0 +1,24 @@
#!/usr/bin/env python3
import os
from os import path
textfiles = []
for base, dirlist, filelist in os.walk('/Users/elliotnunn/Documents/mac/supermario/base/SuperMarioProj.1994-02-09'):
dirlist = [d for d in dirlist if not d.startswith('.')]
filelist = [f for f in filelist if not f.startswith('.')]
for f in filelist:
try:
if open(path.join(base, f) + '.idump', 'rb').read(4) == b'TEXT':
textfiles.append(path.join(base, f))
except:
pass
bigstring = b''
for tf in textfiles:
bigstring += open(tf).read().encode('mac_roman')
for i in range(256):
if i not in bigstring:
print(f'{i:02x} {repr(bytes([i]).decode("mac_roman"))}')