2009-11-04 10:35:16 +00:00
|
|
|
""" Standard encoding tables used in PDF.
|
|
|
|
|
|
|
|
This table is extracted from PDF Reference Manual 1.6, pp.925
|
|
|
|
"D.1 Latin Character Set and Encodings"
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
Add type annotations (#661)
Squashed commit of the following:
commit fa229f7b7591c07aea4e5a4545f9e0c34246e1cd
Merge: eaab3c6 c3e3499
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 20:33:06 2021 -0700
Merge branch 'develop' into mypy (and fixed types)
commit eaab3c65e2e3ab5f1f400cfc5186a3834c4ffe34
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 20:00:45 2021 -0700
reformat all multi-line function defs to one-arg-per-line
commit 3fe2b69eed9197009d9da6776462f580ebf0dfa3
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 15:58:48 2021 -0700
ccitt nit -- avoid casting needlessly
commit 15983d8c1e7162632fde43752c9d1c15938cd980
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 15:58:36 2021 -0700
tweak CHANGELOG
commit 13dc0babf782938e7d5b5e482d4c5adf92d82702
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 15:43:46 2021 -0700
add failing tests for dumppdf crash
commit 6b509c517876b8c15ac5a98a963884e23bd2e4d8
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 15:24:23 2021 -0700
ccitt: apply misc PR feedback
commit feb031ba86d3f22e41cfbbda13f17c039359f1e6
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 15:18:26 2021 -0700
add missing None return type to all __init__ methods
commit c0d62d6c54c7ec37b40bea54a3f6a7a618ec0ec6
Author: Andrew Baumann <ab@ab.id.au>
Date: Mon Sep 6 15:13:08 2021 -0700
minor cleanup, remove a few more Any types
commit b52a0594e1998a492c172538a9b35491c5fc5f52
Author: Andrew Baumann <ab@ab.id.au>
Date: Sun Sep 5 22:37:28 2021 -0700
tighten up types, avoid Any in favour of explicit casts
commit e58fd48bd14f31bebd2de8259f12630ac02756d6
Author: Andrew Baumann <ab@ab.id.au>
Date: Sun Sep 5 14:10:49 2021 -0700
annotate ccitt.py, and fix one definite bug (array.tostring was renamed tobytes)
commit 605290633e55595e5e0045840df5c5b1d9de843a
Author: Andrew Baumann <ab@ab.id.au>
Date: Sat Sep 4 22:37:38 2021 -0700
python 3.7 back-compat
commit 4dbcf8760f8a1d3e3d99f085476f86e6a043c80c
Author: Andrew Baumann <ab@ab.id.au>
Date: Sat Sep 4 22:32:43 2021 -0700
annotate pdfminer.jbig2
commit 0d40b7c03a8028dc44acd3f457eac71abd681827
Author: Andrew Baumann <ab@ab.id.au>
Date: Sat Sep 4 22:31:33 2021 -0700
annotate pdf2txt.py
commit 5f82eb4f5646b5d1285252689191e0a14557ec7b
Author: Andrew Baumann <ab@ab.id.au>
Date: Sat Sep 4 09:16:31 2021 -0700
cleanup: make Plane generic
commit 624fc92b88473ff36a174760883f34c22109da2b
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 23:16:51 2021 -0700
bluntly ignore calls to cryptography.hazmat
commit 96b20439c169f40dbb114cabba6a582ad1ebe91e
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 23:01:06 2021 -0700
finish annotating, and disallow_untyped_defs for pdfminer.* _except_ ccitt and jbig2
commit 0ab586347861b72b1d16880dc9293f9ad597e20a
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 21:51:56 2021 -0700
annotate pdffont
commit 4b689f1bcbdaf654feb9de81023e318ca310a12e
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 18:30:02 2021 -0700
annotate a couple more scripts; document sketchy code
commit 291981ff3d273952ec9c92ef8ab948473558b787
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 15:02:01 2021 -0700
pacify flake8
commit 45d2ce91ff333f3b7e34322b16e9c52b99b7a972
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 14:31:48 2021 -0700
annotate dumppdf, and comment likely bugs
commit 7278d83851cb336a1be3803a0993b5ec0ad39b4c
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 13:49:58 2021 -0700
enable mypy on tests and tools, fix one implicit reexport bug
commit 4a83166ef4e4733cd2113f43188b585a4fda392b
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 13:25:59 2021 -0700
pdfdocument: per dumppdf.py, get_dest accepts either bytes or str
commit 43701e1bee068df98f378a253c9c2150ee4ad9f7
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 13:25:00 2021 -0700
layout: LAParams.boxes_flow may be None
commit 164f81652f1788e74837466f0ab593e94079bc0f
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 09:45:09 2021 -0700
add whitespace, pacify flake8
commit 893b9fb9ec918032b36a30456fc0b7a217da86d8
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 09:40:33 2021 -0700
support old Python without typing.Protocol
commit dc245084102b7b04c3f5599d75b5d62ba4290787
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Sep 3 09:12:03 2021 -0700
Move "# type: ignore" comments to fix mypy on Python < 3.8
The placement of these comments got more flexible in 3.8 due to
https://github.com/python/mypy/issues/1032
Satisfying older Python and fitting in flake8's 79-character line
limit was quite a challenge!
commit da03afe7bd2cf3336e611f467f1c901455940ae8
Author: Andrew Baumann <ab@ab.id.au>
Date: Thu Sep 2 22:59:58 2021 -0700
fix text output from HTMLConverter
commit 5401276a2ed3b74a385ebcab5152485224146161
Author: Andrew Baumann <ab@ab.id.au>
Date: Thu Sep 2 22:40:22 2021 -0700
annotate high_level.py and the immediately-reachable internal APIs (mostly converters)
commit cc490513f8f17a7adc0bcbab2e0e86f37e832300
Author: Andrew Baumann <ab@ab.id.au>
Date: Thu Sep 2 17:04:35 2021 -0700
* expand and improve annotations in cmap, encryption/decompression and fonts
* disallow untyped calls; this way, we have a core set of
typed code that can grow over time
(just not for ccitt, because there's a ton of work lurking there)
* expand "typing: none" comments to suppress a specific error code
commit 92df54ba1d53d5dbbd5442757dd85be5b1851f99
Author: Andrew Baumann <ab@ab.id.au>
Date: Wed Sep 1 20:50:59 2021 -0700
update CHANGELOG
commit f72aaead45d0615e472a9b3190c9551a6b67b36e
Merge: ff787a9 8ea9f10
Author: Andrew Baumann <ab@ab.id.au>
Date: Wed Sep 1 20:47:03 2021 -0700
Merge branch 'develop' into mypy
commit ff787a93986c60361536a97182a41774f4a53ac3
Author: Andrew Baumann <ab@ab.id.au>
Date: Sat Aug 21 21:46:14 2021 -0700
be more precise about types on ps/pdf stacks, remove most of the Any annotations
commit be1550189e10717f6827dbb7009d6e8c8b3f4c62
Author: Andrew Baumann <ab@ab.id.au>
Date: Sat Aug 21 10:13:58 2021 -0700
silence missing imports, (maybe?) hook to tox
commit ff4b6a9bd46b352583d823d39065652c9a6f05f4
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Aug 20 22:49:06 2021 -0700
turn on more strict checks, and untangle the layout mess with generics
Status:
$ mypy pdfminer
pdfminer/ccitt.py:565: error: Cannot find implementation or library stub for module named "pygame"
pdfminer/ccitt.py:565: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-imports
pdfminer/pdfdocument.py:7: error: Skipping analyzing "cryptography.hazmat.backends": found module but no type hints or library stubs
pdfminer/pdfdocument.py:8: error: Skipping analyzing "cryptography.hazmat.primitives.ciphers": found module but no type hints or library stubs
pdfminer/pdfdevice.py:191: error: Argument 1 to "write" of "IO" has incompatible type "str"; expected "bytes"
pdfminer/image.py:84: error: Cannot find implementation or library stub for module named "PIL"
Found 5 errors in 4 files (checked 27 source files)
pdfdevice.py:191 appears to be a real bug
commit 5c9c0b19d26ae391aea0e69c2c819261cc04460c
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Aug 20 17:22:41 2021 -0700
finish annotating layout
commit 0e6871c16abb29df2868ab145b4ce451b4b6c777
Author: Andrew Baumann <ab@ab.id.au>
Date: Fri Aug 20 16:54:46 2021 -0700
general progress on annotations
* finish utils
* annotate more of pdfinterp, pdfdevice
* document reason for # type: ignore comments
* fix cyclic imports
* satisfy flake8
commit 17d59f42917fbf9b2b2eb844d3e83a8f2a3f123a
Author: Andrew Baumann <ab@ab.id.au>
Date: Thu Aug 19 21:38:50 2021 -0700
WIP on type annotations
With the possible exception of psparser.py, this is far from complete.
$ mypy pdfminer
pdfminer/ccitt.py:565: error: Cannot find implementation or library stub for module named "pygame"
pdfminer/ccitt.py:565: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-imports
pdfminer/pdfdocument.py:7: error: Skipping analyzing "cryptography.hazmat.backends": found module but no type hints or library stubs
pdfminer/pdfdocument.py:8: error: Skipping analyzing "cryptography.hazmat.primitives.ciphers": found module but no type hints or library stubs
pdfminer/image.py:84: error: Cannot find implementation or library stub for module named "PIL"
2021-10-09 14:23:28 +00:00
|
|
|
from typing import List, Optional, Tuple
|
|
|
|
|
|
|
|
EncodingRow = \
|
|
|
|
Tuple[str, Optional[int], Optional[int], Optional[int], Optional[int]]
|
|
|
|
|
|
|
|
ENCODING: List[EncodingRow] = [
|
2007-12-30 09:13:51 +00:00
|
|
|
# (name, std, mac, win, pdf)
|
|
|
|
('A', 65, 65, 65, 65),
|
|
|
|
('AE', 225, 174, 198, 198),
|
|
|
|
('Aacute', None, 231, 193, 193),
|
|
|
|
('Acircumflex', None, 229, 194, 194),
|
|
|
|
('Adieresis', None, 128, 196, 196),
|
|
|
|
('Agrave', None, 203, 192, 192),
|
|
|
|
('Aring', None, 129, 197, 197),
|
|
|
|
('Atilde', None, 204, 195, 195),
|
|
|
|
('B', 66, 66, 66, 66),
|
|
|
|
('C', 67, 67, 67, 67),
|
|
|
|
('Ccedilla', None, 130, 199, 199),
|
|
|
|
('D', 68, 68, 68, 68),
|
|
|
|
('E', 69, 69, 69, 69),
|
|
|
|
('Eacute', None, 131, 201, 201),
|
|
|
|
('Ecircumflex', None, 230, 202, 202),
|
|
|
|
('Edieresis', None, 232, 203, 203),
|
|
|
|
('Egrave', None, 233, 200, 200),
|
|
|
|
('Eth', None, None, 208, 208),
|
|
|
|
('Euro', None, None, 128, 160),
|
|
|
|
('F', 70, 70, 70, 70),
|
|
|
|
('G', 71, 71, 71, 71),
|
|
|
|
('H', 72, 72, 72, 72),
|
|
|
|
('I', 73, 73, 73, 73),
|
|
|
|
('Iacute', None, 234, 205, 205),
|
|
|
|
('Icircumflex', None, 235, 206, 206),
|
|
|
|
('Idieresis', None, 236, 207, 207),
|
|
|
|
('Igrave', None, 237, 204, 204),
|
|
|
|
('J', 74, 74, 74, 74),
|
|
|
|
('K', 75, 75, 75, 75),
|
|
|
|
('L', 76, 76, 76, 76),
|
|
|
|
('Lslash', 232, None, None, 149),
|
|
|
|
('M', 77, 77, 77, 77),
|
|
|
|
('N', 78, 78, 78, 78),
|
|
|
|
('Ntilde', None, 132, 209, 209),
|
|
|
|
('O', 79, 79, 79, 79),
|
|
|
|
('OE', 234, 206, 140, 150),
|
|
|
|
('Oacute', None, 238, 211, 211),
|
|
|
|
('Ocircumflex', None, 239, 212, 212),
|
|
|
|
('Odieresis', None, 133, 214, 214),
|
|
|
|
('Ograve', None, 241, 210, 210),
|
|
|
|
('Oslash', 233, 175, 216, 216),
|
|
|
|
('Otilde', None, 205, 213, 213),
|
|
|
|
('P', 80, 80, 80, 80),
|
|
|
|
('Q', 81, 81, 81, 81),
|
|
|
|
('R', 82, 82, 82, 82),
|
|
|
|
('S', 83, 83, 83, 83),
|
|
|
|
('Scaron', None, None, 138, 151),
|
|
|
|
('T', 84, 84, 84, 84),
|
|
|
|
('Thorn', None, None, 222, 222),
|
|
|
|
('U', 85, 85, 85, 85),
|
|
|
|
('Uacute', None, 242, 218, 218),
|
|
|
|
('Ucircumflex', None, 243, 219, 219),
|
|
|
|
('Udieresis', None, 134, 220, 220),
|
|
|
|
('Ugrave', None, 244, 217, 217),
|
|
|
|
('V', 86, 86, 86, 86),
|
|
|
|
('W', 87, 87, 87, 87),
|
|
|
|
('X', 88, 88, 88, 88),
|
|
|
|
('Y', 89, 89, 89, 89),
|
|
|
|
('Yacute', None, None, 221, 221),
|
|
|
|
('Ydieresis', None, 217, 159, 152),
|
|
|
|
('Z', 90, 90, 90, 90),
|
|
|
|
('Zcaron', None, None, 142, 153),
|
|
|
|
('a', 97, 97, 97, 97),
|
|
|
|
('aacute', None, 135, 225, 225),
|
|
|
|
('acircumflex', None, 137, 226, 226),
|
|
|
|
('acute', 194, 171, 180, 180),
|
|
|
|
('adieresis', None, 138, 228, 228),
|
|
|
|
('ae', 241, 190, 230, 230),
|
|
|
|
('agrave', None, 136, 224, 224),
|
|
|
|
('ampersand', 38, 38, 38, 38),
|
|
|
|
('aring', None, 140, 229, 229),
|
|
|
|
('asciicircum', 94, 94, 94, 94),
|
|
|
|
('asciitilde', 126, 126, 126, 126),
|
|
|
|
('asterisk', 42, 42, 42, 42),
|
|
|
|
('at', 64, 64, 64, 64),
|
|
|
|
('atilde', None, 139, 227, 227),
|
|
|
|
('b', 98, 98, 98, 98),
|
|
|
|
('backslash', 92, 92, 92, 92),
|
|
|
|
('bar', 124, 124, 124, 124),
|
|
|
|
('braceleft', 123, 123, 123, 123),
|
|
|
|
('braceright', 125, 125, 125, 125),
|
|
|
|
('bracketleft', 91, 91, 91, 91),
|
|
|
|
('bracketright', 93, 93, 93, 93),
|
|
|
|
('breve', 198, 249, None, 24),
|
|
|
|
('brokenbar', None, None, 166, 166),
|
|
|
|
('bullet', 183, 165, 149, 128),
|
|
|
|
('c', 99, 99, 99, 99),
|
|
|
|
('caron', 207, 255, None, 25),
|
|
|
|
('ccedilla', None, 141, 231, 231),
|
|
|
|
('cedilla', 203, 252, 184, 184),
|
|
|
|
('cent', 162, 162, 162, 162),
|
|
|
|
('circumflex', 195, 246, 136, 26),
|
|
|
|
('colon', 58, 58, 58, 58),
|
|
|
|
('comma', 44, 44, 44, 44),
|
|
|
|
('copyright', None, 169, 169, 169),
|
|
|
|
('currency', 168, 219, 164, 164),
|
|
|
|
('d', 100, 100, 100, 100),
|
|
|
|
('dagger', 178, 160, 134, 129),
|
|
|
|
('daggerdbl', 179, 224, 135, 130),
|
|
|
|
('degree', None, 161, 176, 176),
|
|
|
|
('dieresis', 200, 172, 168, 168),
|
|
|
|
('divide', None, 214, 247, 247),
|
|
|
|
('dollar', 36, 36, 36, 36),
|
|
|
|
('dotaccent', 199, 250, None, 27),
|
|
|
|
('dotlessi', 245, 245, None, 154),
|
|
|
|
('e', 101, 101, 101, 101),
|
|
|
|
('eacute', None, 142, 233, 233),
|
|
|
|
('ecircumflex', None, 144, 234, 234),
|
|
|
|
('edieresis', None, 145, 235, 235),
|
|
|
|
('egrave', None, 143, 232, 232),
|
|
|
|
('eight', 56, 56, 56, 56),
|
|
|
|
('ellipsis', 188, 201, 133, 131),
|
|
|
|
('emdash', 208, 209, 151, 132),
|
|
|
|
('endash', 177, 208, 150, 133),
|
|
|
|
('equal', 61, 61, 61, 61),
|
|
|
|
('eth', None, None, 240, 240),
|
|
|
|
('exclam', 33, 33, 33, 33),
|
|
|
|
('exclamdown', 161, 193, 161, 161),
|
|
|
|
('f', 102, 102, 102, 102),
|
|
|
|
('fi', 174, 222, None, 147),
|
|
|
|
('five', 53, 53, 53, 53),
|
|
|
|
('fl', 175, 223, None, 148),
|
|
|
|
('florin', 166, 196, 131, 134),
|
|
|
|
('four', 52, 52, 52, 52),
|
|
|
|
('fraction', 164, 218, None, 135),
|
|
|
|
('g', 103, 103, 103, 103),
|
|
|
|
('germandbls', 251, 167, 223, 223),
|
|
|
|
('grave', 193, 96, 96, 96),
|
|
|
|
('greater', 62, 62, 62, 62),
|
|
|
|
('guillemotleft', 171, 199, 171, 171),
|
|
|
|
('guillemotright', 187, 200, 187, 187),
|
|
|
|
('guilsinglleft', 172, 220, 139, 136),
|
|
|
|
('guilsinglright', 173, 221, 155, 137),
|
|
|
|
('h', 104, 104, 104, 104),
|
|
|
|
('hungarumlaut', 205, 253, None, 28),
|
|
|
|
('hyphen', 45, 45, 45, 45),
|
|
|
|
('i', 105, 105, 105, 105),
|
|
|
|
('iacute', None, 146, 237, 237),
|
|
|
|
('icircumflex', None, 148, 238, 238),
|
|
|
|
('idieresis', None, 149, 239, 239),
|
|
|
|
('igrave', None, 147, 236, 236),
|
|
|
|
('j', 106, 106, 106, 106),
|
|
|
|
('k', 107, 107, 107, 107),
|
|
|
|
('l', 108, 108, 108, 108),
|
|
|
|
('less', 60, 60, 60, 60),
|
|
|
|
('logicalnot', None, 194, 172, 172),
|
|
|
|
('lslash', 248, None, None, 155),
|
|
|
|
('m', 109, 109, 109, 109),
|
|
|
|
('macron', 197, 248, 175, 175),
|
|
|
|
('minus', None, None, None, 138),
|
|
|
|
('mu', None, 181, 181, 181),
|
|
|
|
('multiply', None, None, 215, 215),
|
|
|
|
('n', 110, 110, 110, 110),
|
2016-09-23 12:31:31 +00:00
|
|
|
('nbspace', None, 202, 160, None),
|
2007-12-30 09:13:51 +00:00
|
|
|
('nine', 57, 57, 57, 57),
|
|
|
|
('ntilde', None, 150, 241, 241),
|
|
|
|
('numbersign', 35, 35, 35, 35),
|
|
|
|
('o', 111, 111, 111, 111),
|
|
|
|
('oacute', None, 151, 243, 243),
|
|
|
|
('ocircumflex', None, 153, 244, 244),
|
|
|
|
('odieresis', None, 154, 246, 246),
|
|
|
|
('oe', 250, 207, 156, 156),
|
|
|
|
('ogonek', 206, 254, None, 29),
|
|
|
|
('ograve', None, 152, 242, 242),
|
|
|
|
('one', 49, 49, 49, 49),
|
|
|
|
('onehalf', None, None, 189, 189),
|
|
|
|
('onequarter', None, None, 188, 188),
|
|
|
|
('onesuperior', None, None, 185, 185),
|
|
|
|
('ordfeminine', 227, 187, 170, 170),
|
|
|
|
('ordmasculine', 235, 188, 186, 186),
|
|
|
|
('oslash', 249, 191, 248, 248),
|
|
|
|
('otilde', None, 155, 245, 245),
|
|
|
|
('p', 112, 112, 112, 112),
|
|
|
|
('paragraph', 182, 166, 182, 182),
|
|
|
|
('parenleft', 40, 40, 40, 40),
|
|
|
|
('parenright', 41, 41, 41, 41),
|
|
|
|
('percent', 37, 37, 37, 37),
|
|
|
|
('period', 46, 46, 46, 46),
|
|
|
|
('periodcentered', 180, 225, 183, 183),
|
|
|
|
('perthousand', 189, 228, 137, 139),
|
|
|
|
('plus', 43, 43, 43, 43),
|
|
|
|
('plusminus', None, 177, 177, 177),
|
|
|
|
('q', 113, 113, 113, 113),
|
|
|
|
('question', 63, 63, 63, 63),
|
|
|
|
('questiondown', 191, 192, 191, 191),
|
|
|
|
('quotedbl', 34, 34, 34, 34),
|
|
|
|
('quotedblbase', 185, 227, 132, 140),
|
|
|
|
('quotedblleft', 170, 210, 147, 141),
|
|
|
|
('quotedblright', 186, 211, 148, 142),
|
|
|
|
('quoteleft', 96, 212, 145, 143),
|
|
|
|
('quoteright', 39, 213, 146, 144),
|
|
|
|
('quotesinglbase', 184, 226, 130, 145),
|
|
|
|
('quotesingle', 169, 39, 39, 39),
|
|
|
|
('r', 114, 114, 114, 114),
|
|
|
|
('registered', None, 168, 174, 174),
|
|
|
|
('ring', 202, 251, None, 30),
|
|
|
|
('s', 115, 115, 115, 115),
|
|
|
|
('scaron', None, None, 154, 157),
|
|
|
|
('section', 167, 164, 167, 167),
|
|
|
|
('semicolon', 59, 59, 59, 59),
|
|
|
|
('seven', 55, 55, 55, 55),
|
|
|
|
('six', 54, 54, 54, 54),
|
|
|
|
('slash', 47, 47, 47, 47),
|
|
|
|
('space', 32, 32, 32, 32),
|
2018-06-20 11:47:03 +00:00
|
|
|
('space', None, 202, 160, None),
|
|
|
|
('space', None, 202, 173, None),
|
2007-12-30 09:13:51 +00:00
|
|
|
('sterling', 163, 163, 163, 163),
|
|
|
|
('t', 116, 116, 116, 116),
|
|
|
|
('thorn', None, None, 254, 254),
|
|
|
|
('three', 51, 51, 51, 51),
|
|
|
|
('threequarters', None, None, 190, 190),
|
|
|
|
('threesuperior', None, None, 179, 179),
|
|
|
|
('tilde', 196, 247, 152, 31),
|
|
|
|
('trademark', None, 170, 153, 146),
|
|
|
|
('two', 50, 50, 50, 50),
|
|
|
|
('twosuperior', None, None, 178, 178),
|
|
|
|
('u', 117, 117, 117, 117),
|
|
|
|
('uacute', None, 156, 250, 250),
|
|
|
|
('ucircumflex', None, 158, 251, 251),
|
|
|
|
('udieresis', None, 159, 252, 252),
|
|
|
|
('ugrave', None, 157, 249, 249),
|
|
|
|
('underscore', 95, 95, 95, 95),
|
|
|
|
('v', 118, 118, 118, 118),
|
|
|
|
('w', 119, 119, 119, 119),
|
|
|
|
('x', 120, 120, 120, 120),
|
|
|
|
('y', 121, 121, 121, 121),
|
|
|
|
('yacute', None, None, 253, 253),
|
|
|
|
('ydieresis', None, 216, 255, 255),
|
|
|
|
('yen', 165, 180, 165, 165),
|
|
|
|
('z', 122, 122, 122, 122),
|
|
|
|
('zcaron', None, None, 158, 158),
|
|
|
|
('zero', 48, 48, 48, 48),
|
|
|
|
]
|