mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-10 05:06:36 +02:00
Implement #15
This commit is contained in:
157
PythonHome/Lib/encodings/__init__.py
Normal file
157
PythonHome/Lib/encodings/__init__.py
Normal file
@@ -0,0 +1,157 @@
|
||||
""" Standard "encodings" Package
|
||||
|
||||
Standard Python encoding modules are stored in this package
|
||||
directory.
|
||||
|
||||
Codec modules must have names corresponding to normalized encoding
|
||||
names as defined in the normalize_encoding() function below, e.g.
|
||||
'utf-8' must be implemented by the module 'utf_8.py'.
|
||||
|
||||
Each codec module must export the following interface:
|
||||
|
||||
* getregentry() -> codecs.CodecInfo object
|
||||
The getregentry() API must a CodecInfo object with encoder, decoder,
|
||||
incrementalencoder, incrementaldecoder, streamwriter and streamreader
|
||||
atttributes which adhere to the Python Codec Interface Standard.
|
||||
|
||||
In addition, a module may optionally also define the following
|
||||
APIs which are then used by the package's codec search function:
|
||||
|
||||
* getaliases() -> sequence of encoding name strings to use as aliases
|
||||
|
||||
Alias names returned by getaliases() must be normalized encoding
|
||||
names as defined by normalize_encoding().
|
||||
|
||||
Written by Marc-Andre Lemburg (mal@lemburg.com).
|
||||
|
||||
(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
from encodings import aliases
|
||||
import __builtin__
|
||||
|
||||
_cache = {}
|
||||
_unknown = '--unknown--'
|
||||
_import_tail = ['*']
|
||||
_norm_encoding_map = (' . '
|
||||
'0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ '
|
||||
' abcdefghijklmnopqrstuvwxyz '
|
||||
' '
|
||||
' '
|
||||
' ')
|
||||
_aliases = aliases.aliases
|
||||
|
||||
class CodecRegistryError(LookupError, SystemError):
|
||||
pass
|
||||
|
||||
def normalize_encoding(encoding):
|
||||
|
||||
""" Normalize an encoding name.
|
||||
|
||||
Normalization works as follows: all non-alphanumeric
|
||||
characters except the dot used for Python package names are
|
||||
collapsed and replaced with a single underscore, e.g. ' -;#'
|
||||
becomes '_'. Leading and trailing underscores are removed.
|
||||
|
||||
Note that encoding names should be ASCII only; if they do use
|
||||
non-ASCII characters, these must be Latin-1 compatible.
|
||||
|
||||
"""
|
||||
# Make sure we have an 8-bit string, because .translate() works
|
||||
# differently for Unicode strings.
|
||||
if hasattr(__builtin__, "unicode") and isinstance(encoding, unicode):
|
||||
# Note that .encode('latin-1') does *not* use the codec
|
||||
# registry, so this call doesn't recurse. (See unicodeobject.c
|
||||
# PyUnicode_AsEncodedString() for details)
|
||||
encoding = encoding.encode('latin-1')
|
||||
return '_'.join(encoding.translate(_norm_encoding_map).split())
|
||||
|
||||
def search_function(encoding):
|
||||
|
||||
# Cache lookup
|
||||
entry = _cache.get(encoding, _unknown)
|
||||
if entry is not _unknown:
|
||||
return entry
|
||||
|
||||
# Import the module:
|
||||
#
|
||||
# First try to find an alias for the normalized encoding
|
||||
# name and lookup the module using the aliased name, then try to
|
||||
# lookup the module using the standard import scheme, i.e. first
|
||||
# try in the encodings package, then at top-level.
|
||||
#
|
||||
norm_encoding = normalize_encoding(encoding)
|
||||
aliased_encoding = _aliases.get(norm_encoding) or \
|
||||
_aliases.get(norm_encoding.replace('.', '_'))
|
||||
if aliased_encoding is not None:
|
||||
modnames = [aliased_encoding,
|
||||
norm_encoding]
|
||||
else:
|
||||
modnames = [norm_encoding]
|
||||
for modname in modnames:
|
||||
if not modname or '.' in modname:
|
||||
continue
|
||||
try:
|
||||
# Import is absolute to prevent the possibly malicious import of a
|
||||
# module with side-effects that is not in the 'encodings' package.
|
||||
mod = __import__('encodings.' + modname, fromlist=_import_tail,
|
||||
level=0)
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
break
|
||||
else:
|
||||
mod = None
|
||||
|
||||
try:
|
||||
getregentry = mod.getregentry
|
||||
except AttributeError:
|
||||
# Not a codec module
|
||||
mod = None
|
||||
|
||||
if mod is None:
|
||||
# Cache misses
|
||||
_cache[encoding] = None
|
||||
return None
|
||||
|
||||
# Now ask the module for the registry entry
|
||||
entry = getregentry()
|
||||
if not isinstance(entry, codecs.CodecInfo):
|
||||
if not 4 <= len(entry) <= 7:
|
||||
raise CodecRegistryError,\
|
||||
'module "%s" (%s) failed to register' % \
|
||||
(mod.__name__, mod.__file__)
|
||||
if not hasattr(entry[0], '__call__') or \
|
||||
not hasattr(entry[1], '__call__') or \
|
||||
(entry[2] is not None and not hasattr(entry[2], '__call__')) or \
|
||||
(entry[3] is not None and not hasattr(entry[3], '__call__')) or \
|
||||
(len(entry) > 4 and entry[4] is not None and not hasattr(entry[4], '__call__')) or \
|
||||
(len(entry) > 5 and entry[5] is not None and not hasattr(entry[5], '__call__')):
|
||||
raise CodecRegistryError,\
|
||||
'incompatible codecs in module "%s" (%s)' % \
|
||||
(mod.__name__, mod.__file__)
|
||||
if len(entry)<7 or entry[6] is None:
|
||||
entry += (None,)*(6-len(entry)) + (mod.__name__.split(".", 1)[1],)
|
||||
entry = codecs.CodecInfo(*entry)
|
||||
|
||||
# Cache the codec registry entry
|
||||
_cache[encoding] = entry
|
||||
|
||||
# Register its aliases (without overwriting previously registered
|
||||
# aliases)
|
||||
try:
|
||||
codecaliases = mod.getaliases()
|
||||
except AttributeError:
|
||||
pass
|
||||
else:
|
||||
for alias in codecaliases:
|
||||
if alias not in _aliases:
|
||||
_aliases[alias] = modname
|
||||
|
||||
# Return the registry entry
|
||||
return entry
|
||||
|
||||
# Register the search_function in the Python codec registry
|
||||
codecs.register(search_function)
|
||||
Binary file not shown.
527
PythonHome/Lib/encodings/aliases.py
Normal file
527
PythonHome/Lib/encodings/aliases.py
Normal file
@@ -0,0 +1,527 @@
|
||||
""" Encoding Aliases Support
|
||||
|
||||
This module is used by the encodings package search function to
|
||||
map encodings names to module names.
|
||||
|
||||
Note that the search function normalizes the encoding names before
|
||||
doing the lookup, so the mapping will have to map normalized
|
||||
encoding names to module names.
|
||||
|
||||
Contents:
|
||||
|
||||
The following aliases dictionary contains mappings of all IANA
|
||||
character set names for which the Python core library provides
|
||||
codecs. In addition to these, a few Python specific codec
|
||||
aliases have also been added.
|
||||
|
||||
"""
|
||||
aliases = {
|
||||
|
||||
# Please keep this list sorted alphabetically by value !
|
||||
|
||||
# ascii codec
|
||||
'646' : 'ascii',
|
||||
'ansi_x3.4_1968' : 'ascii',
|
||||
'ansi_x3_4_1968' : 'ascii', # some email headers use this non-standard name
|
||||
'ansi_x3.4_1986' : 'ascii',
|
||||
'cp367' : 'ascii',
|
||||
'csascii' : 'ascii',
|
||||
'ibm367' : 'ascii',
|
||||
'iso646_us' : 'ascii',
|
||||
'iso_646.irv_1991' : 'ascii',
|
||||
'iso_ir_6' : 'ascii',
|
||||
'us' : 'ascii',
|
||||
'us_ascii' : 'ascii',
|
||||
|
||||
# base64_codec codec
|
||||
'base64' : 'base64_codec',
|
||||
'base_64' : 'base64_codec',
|
||||
|
||||
# big5 codec
|
||||
'big5_tw' : 'big5',
|
||||
'csbig5' : 'big5',
|
||||
|
||||
# big5hkscs codec
|
||||
'big5_hkscs' : 'big5hkscs',
|
||||
'hkscs' : 'big5hkscs',
|
||||
|
||||
# bz2_codec codec
|
||||
'bz2' : 'bz2_codec',
|
||||
|
||||
# cp037 codec
|
||||
'037' : 'cp037',
|
||||
'csibm037' : 'cp037',
|
||||
'ebcdic_cp_ca' : 'cp037',
|
||||
'ebcdic_cp_nl' : 'cp037',
|
||||
'ebcdic_cp_us' : 'cp037',
|
||||
'ebcdic_cp_wt' : 'cp037',
|
||||
'ibm037' : 'cp037',
|
||||
'ibm039' : 'cp037',
|
||||
|
||||
# cp1026 codec
|
||||
'1026' : 'cp1026',
|
||||
'csibm1026' : 'cp1026',
|
||||
'ibm1026' : 'cp1026',
|
||||
|
||||
# cp1140 codec
|
||||
'1140' : 'cp1140',
|
||||
'ibm1140' : 'cp1140',
|
||||
|
||||
# cp1250 codec
|
||||
'1250' : 'cp1250',
|
||||
'windows_1250' : 'cp1250',
|
||||
|
||||
# cp1251 codec
|
||||
'1251' : 'cp1251',
|
||||
'windows_1251' : 'cp1251',
|
||||
|
||||
# cp1252 codec
|
||||
'1252' : 'cp1252',
|
||||
'windows_1252' : 'cp1252',
|
||||
|
||||
# cp1253 codec
|
||||
'1253' : 'cp1253',
|
||||
'windows_1253' : 'cp1253',
|
||||
|
||||
# cp1254 codec
|
||||
'1254' : 'cp1254',
|
||||
'windows_1254' : 'cp1254',
|
||||
|
||||
# cp1255 codec
|
||||
'1255' : 'cp1255',
|
||||
'windows_1255' : 'cp1255',
|
||||
|
||||
# cp1256 codec
|
||||
'1256' : 'cp1256',
|
||||
'windows_1256' : 'cp1256',
|
||||
|
||||
# cp1257 codec
|
||||
'1257' : 'cp1257',
|
||||
'windows_1257' : 'cp1257',
|
||||
|
||||
# cp1258 codec
|
||||
'1258' : 'cp1258',
|
||||
'windows_1258' : 'cp1258',
|
||||
|
||||
# cp424 codec
|
||||
'424' : 'cp424',
|
||||
'csibm424' : 'cp424',
|
||||
'ebcdic_cp_he' : 'cp424',
|
||||
'ibm424' : 'cp424',
|
||||
|
||||
# cp437 codec
|
||||
'437' : 'cp437',
|
||||
'cspc8codepage437' : 'cp437',
|
||||
'ibm437' : 'cp437',
|
||||
|
||||
# cp500 codec
|
||||
'500' : 'cp500',
|
||||
'csibm500' : 'cp500',
|
||||
'ebcdic_cp_be' : 'cp500',
|
||||
'ebcdic_cp_ch' : 'cp500',
|
||||
'ibm500' : 'cp500',
|
||||
|
||||
# cp775 codec
|
||||
'775' : 'cp775',
|
||||
'cspc775baltic' : 'cp775',
|
||||
'ibm775' : 'cp775',
|
||||
|
||||
# cp850 codec
|
||||
'850' : 'cp850',
|
||||
'cspc850multilingual' : 'cp850',
|
||||
'ibm850' : 'cp850',
|
||||
|
||||
# cp852 codec
|
||||
'852' : 'cp852',
|
||||
'cspcp852' : 'cp852',
|
||||
'ibm852' : 'cp852',
|
||||
|
||||
# cp855 codec
|
||||
'855' : 'cp855',
|
||||
'csibm855' : 'cp855',
|
||||
'ibm855' : 'cp855',
|
||||
|
||||
# cp857 codec
|
||||
'857' : 'cp857',
|
||||
'csibm857' : 'cp857',
|
||||
'ibm857' : 'cp857',
|
||||
|
||||
# cp858 codec
|
||||
'858' : 'cp858',
|
||||
'csibm858' : 'cp858',
|
||||
'ibm858' : 'cp858',
|
||||
|
||||
# cp860 codec
|
||||
'860' : 'cp860',
|
||||
'csibm860' : 'cp860',
|
||||
'ibm860' : 'cp860',
|
||||
|
||||
# cp861 codec
|
||||
'861' : 'cp861',
|
||||
'cp_is' : 'cp861',
|
||||
'csibm861' : 'cp861',
|
||||
'ibm861' : 'cp861',
|
||||
|
||||
# cp862 codec
|
||||
'862' : 'cp862',
|
||||
'cspc862latinhebrew' : 'cp862',
|
||||
'ibm862' : 'cp862',
|
||||
|
||||
# cp863 codec
|
||||
'863' : 'cp863',
|
||||
'csibm863' : 'cp863',
|
||||
'ibm863' : 'cp863',
|
||||
|
||||
# cp864 codec
|
||||
'864' : 'cp864',
|
||||
'csibm864' : 'cp864',
|
||||
'ibm864' : 'cp864',
|
||||
|
||||
# cp865 codec
|
||||
'865' : 'cp865',
|
||||
'csibm865' : 'cp865',
|
||||
'ibm865' : 'cp865',
|
||||
|
||||
# cp866 codec
|
||||
'866' : 'cp866',
|
||||
'csibm866' : 'cp866',
|
||||
'ibm866' : 'cp866',
|
||||
|
||||
# cp869 codec
|
||||
'869' : 'cp869',
|
||||
'cp_gr' : 'cp869',
|
||||
'csibm869' : 'cp869',
|
||||
'ibm869' : 'cp869',
|
||||
|
||||
# cp932 codec
|
||||
'932' : 'cp932',
|
||||
'ms932' : 'cp932',
|
||||
'mskanji' : 'cp932',
|
||||
'ms_kanji' : 'cp932',
|
||||
|
||||
# cp949 codec
|
||||
'949' : 'cp949',
|
||||
'ms949' : 'cp949',
|
||||
'uhc' : 'cp949',
|
||||
|
||||
# cp950 codec
|
||||
'950' : 'cp950',
|
||||
'ms950' : 'cp950',
|
||||
|
||||
# euc_jis_2004 codec
|
||||
'jisx0213' : 'euc_jis_2004',
|
||||
'eucjis2004' : 'euc_jis_2004',
|
||||
'euc_jis2004' : 'euc_jis_2004',
|
||||
|
||||
# euc_jisx0213 codec
|
||||
'eucjisx0213' : 'euc_jisx0213',
|
||||
|
||||
# euc_jp codec
|
||||
'eucjp' : 'euc_jp',
|
||||
'ujis' : 'euc_jp',
|
||||
'u_jis' : 'euc_jp',
|
||||
|
||||
# euc_kr codec
|
||||
'euckr' : 'euc_kr',
|
||||
'korean' : 'euc_kr',
|
||||
'ksc5601' : 'euc_kr',
|
||||
'ks_c_5601' : 'euc_kr',
|
||||
'ks_c_5601_1987' : 'euc_kr',
|
||||
'ksx1001' : 'euc_kr',
|
||||
'ks_x_1001' : 'euc_kr',
|
||||
|
||||
# gb18030 codec
|
||||
'gb18030_2000' : 'gb18030',
|
||||
|
||||
# gb2312 codec
|
||||
'chinese' : 'gb2312',
|
||||
'csiso58gb231280' : 'gb2312',
|
||||
'euc_cn' : 'gb2312',
|
||||
'euccn' : 'gb2312',
|
||||
'eucgb2312_cn' : 'gb2312',
|
||||
'gb2312_1980' : 'gb2312',
|
||||
'gb2312_80' : 'gb2312',
|
||||
'iso_ir_58' : 'gb2312',
|
||||
|
||||
# gbk codec
|
||||
'936' : 'gbk',
|
||||
'cp936' : 'gbk',
|
||||
'ms936' : 'gbk',
|
||||
|
||||
# hex_codec codec
|
||||
'hex' : 'hex_codec',
|
||||
|
||||
# hp_roman8 codec
|
||||
'roman8' : 'hp_roman8',
|
||||
'r8' : 'hp_roman8',
|
||||
'csHPRoman8' : 'hp_roman8',
|
||||
|
||||
# hz codec
|
||||
'hzgb' : 'hz',
|
||||
'hz_gb' : 'hz',
|
||||
'hz_gb_2312' : 'hz',
|
||||
|
||||
# iso2022_jp codec
|
||||
'csiso2022jp' : 'iso2022_jp',
|
||||
'iso2022jp' : 'iso2022_jp',
|
||||
'iso_2022_jp' : 'iso2022_jp',
|
||||
|
||||
# iso2022_jp_1 codec
|
||||
'iso2022jp_1' : 'iso2022_jp_1',
|
||||
'iso_2022_jp_1' : 'iso2022_jp_1',
|
||||
|
||||
# iso2022_jp_2 codec
|
||||
'iso2022jp_2' : 'iso2022_jp_2',
|
||||
'iso_2022_jp_2' : 'iso2022_jp_2',
|
||||
|
||||
# iso2022_jp_2004 codec
|
||||
'iso_2022_jp_2004' : 'iso2022_jp_2004',
|
||||
'iso2022jp_2004' : 'iso2022_jp_2004',
|
||||
|
||||
# iso2022_jp_3 codec
|
||||
'iso2022jp_3' : 'iso2022_jp_3',
|
||||
'iso_2022_jp_3' : 'iso2022_jp_3',
|
||||
|
||||
# iso2022_jp_ext codec
|
||||
'iso2022jp_ext' : 'iso2022_jp_ext',
|
||||
'iso_2022_jp_ext' : 'iso2022_jp_ext',
|
||||
|
||||
# iso2022_kr codec
|
||||
'csiso2022kr' : 'iso2022_kr',
|
||||
'iso2022kr' : 'iso2022_kr',
|
||||
'iso_2022_kr' : 'iso2022_kr',
|
||||
|
||||
# iso8859_10 codec
|
||||
'csisolatin6' : 'iso8859_10',
|
||||
'iso_8859_10' : 'iso8859_10',
|
||||
'iso_8859_10_1992' : 'iso8859_10',
|
||||
'iso_ir_157' : 'iso8859_10',
|
||||
'l6' : 'iso8859_10',
|
||||
'latin6' : 'iso8859_10',
|
||||
|
||||
# iso8859_11 codec
|
||||
'thai' : 'iso8859_11',
|
||||
'iso_8859_11' : 'iso8859_11',
|
||||
'iso_8859_11_2001' : 'iso8859_11',
|
||||
|
||||
# iso8859_13 codec
|
||||
'iso_8859_13' : 'iso8859_13',
|
||||
'l7' : 'iso8859_13',
|
||||
'latin7' : 'iso8859_13',
|
||||
|
||||
# iso8859_14 codec
|
||||
'iso_8859_14' : 'iso8859_14',
|
||||
'iso_8859_14_1998' : 'iso8859_14',
|
||||
'iso_celtic' : 'iso8859_14',
|
||||
'iso_ir_199' : 'iso8859_14',
|
||||
'l8' : 'iso8859_14',
|
||||
'latin8' : 'iso8859_14',
|
||||
|
||||
# iso8859_15 codec
|
||||
'iso_8859_15' : 'iso8859_15',
|
||||
'l9' : 'iso8859_15',
|
||||
'latin9' : 'iso8859_15',
|
||||
|
||||
# iso8859_16 codec
|
||||
'iso_8859_16' : 'iso8859_16',
|
||||
'iso_8859_16_2001' : 'iso8859_16',
|
||||
'iso_ir_226' : 'iso8859_16',
|
||||
'l10' : 'iso8859_16',
|
||||
'latin10' : 'iso8859_16',
|
||||
|
||||
# iso8859_2 codec
|
||||
'csisolatin2' : 'iso8859_2',
|
||||
'iso_8859_2' : 'iso8859_2',
|
||||
'iso_8859_2_1987' : 'iso8859_2',
|
||||
'iso_ir_101' : 'iso8859_2',
|
||||
'l2' : 'iso8859_2',
|
||||
'latin2' : 'iso8859_2',
|
||||
|
||||
# iso8859_3 codec
|
||||
'csisolatin3' : 'iso8859_3',
|
||||
'iso_8859_3' : 'iso8859_3',
|
||||
'iso_8859_3_1988' : 'iso8859_3',
|
||||
'iso_ir_109' : 'iso8859_3',
|
||||
'l3' : 'iso8859_3',
|
||||
'latin3' : 'iso8859_3',
|
||||
|
||||
# iso8859_4 codec
|
||||
'csisolatin4' : 'iso8859_4',
|
||||
'iso_8859_4' : 'iso8859_4',
|
||||
'iso_8859_4_1988' : 'iso8859_4',
|
||||
'iso_ir_110' : 'iso8859_4',
|
||||
'l4' : 'iso8859_4',
|
||||
'latin4' : 'iso8859_4',
|
||||
|
||||
# iso8859_5 codec
|
||||
'csisolatincyrillic' : 'iso8859_5',
|
||||
'cyrillic' : 'iso8859_5',
|
||||
'iso_8859_5' : 'iso8859_5',
|
||||
'iso_8859_5_1988' : 'iso8859_5',
|
||||
'iso_ir_144' : 'iso8859_5',
|
||||
|
||||
# iso8859_6 codec
|
||||
'arabic' : 'iso8859_6',
|
||||
'asmo_708' : 'iso8859_6',
|
||||
'csisolatinarabic' : 'iso8859_6',
|
||||
'ecma_114' : 'iso8859_6',
|
||||
'iso_8859_6' : 'iso8859_6',
|
||||
'iso_8859_6_1987' : 'iso8859_6',
|
||||
'iso_ir_127' : 'iso8859_6',
|
||||
|
||||
# iso8859_7 codec
|
||||
'csisolatingreek' : 'iso8859_7',
|
||||
'ecma_118' : 'iso8859_7',
|
||||
'elot_928' : 'iso8859_7',
|
||||
'greek' : 'iso8859_7',
|
||||
'greek8' : 'iso8859_7',
|
||||
'iso_8859_7' : 'iso8859_7',
|
||||
'iso_8859_7_1987' : 'iso8859_7',
|
||||
'iso_ir_126' : 'iso8859_7',
|
||||
|
||||
# iso8859_8 codec
|
||||
'csisolatinhebrew' : 'iso8859_8',
|
||||
'hebrew' : 'iso8859_8',
|
||||
'iso_8859_8' : 'iso8859_8',
|
||||
'iso_8859_8_1988' : 'iso8859_8',
|
||||
'iso_ir_138' : 'iso8859_8',
|
||||
|
||||
# iso8859_9 codec
|
||||
'csisolatin5' : 'iso8859_9',
|
||||
'iso_8859_9' : 'iso8859_9',
|
||||
'iso_8859_9_1989' : 'iso8859_9',
|
||||
'iso_ir_148' : 'iso8859_9',
|
||||
'l5' : 'iso8859_9',
|
||||
'latin5' : 'iso8859_9',
|
||||
|
||||
# johab codec
|
||||
'cp1361' : 'johab',
|
||||
'ms1361' : 'johab',
|
||||
|
||||
# koi8_r codec
|
||||
'cskoi8r' : 'koi8_r',
|
||||
|
||||
# latin_1 codec
|
||||
#
|
||||
# Note that the latin_1 codec is implemented internally in C and a
|
||||
# lot faster than the charmap codec iso8859_1 which uses the same
|
||||
# encoding. This is why we discourage the use of the iso8859_1
|
||||
# codec and alias it to latin_1 instead.
|
||||
#
|
||||
'8859' : 'latin_1',
|
||||
'cp819' : 'latin_1',
|
||||
'csisolatin1' : 'latin_1',
|
||||
'ibm819' : 'latin_1',
|
||||
'iso8859' : 'latin_1',
|
||||
'iso8859_1' : 'latin_1',
|
||||
'iso_8859_1' : 'latin_1',
|
||||
'iso_8859_1_1987' : 'latin_1',
|
||||
'iso_ir_100' : 'latin_1',
|
||||
'l1' : 'latin_1',
|
||||
'latin' : 'latin_1',
|
||||
'latin1' : 'latin_1',
|
||||
|
||||
# mac_cyrillic codec
|
||||
'maccyrillic' : 'mac_cyrillic',
|
||||
|
||||
# mac_greek codec
|
||||
'macgreek' : 'mac_greek',
|
||||
|
||||
# mac_iceland codec
|
||||
'maciceland' : 'mac_iceland',
|
||||
|
||||
# mac_latin2 codec
|
||||
'maccentraleurope' : 'mac_latin2',
|
||||
'maclatin2' : 'mac_latin2',
|
||||
|
||||
# mac_roman codec
|
||||
'macroman' : 'mac_roman',
|
||||
|
||||
# mac_turkish codec
|
||||
'macturkish' : 'mac_turkish',
|
||||
|
||||
# mbcs codec
|
||||
'dbcs' : 'mbcs',
|
||||
|
||||
# ptcp154 codec
|
||||
'csptcp154' : 'ptcp154',
|
||||
'pt154' : 'ptcp154',
|
||||
'cp154' : 'ptcp154',
|
||||
'cyrillic_asian' : 'ptcp154',
|
||||
|
||||
# quopri_codec codec
|
||||
'quopri' : 'quopri_codec',
|
||||
'quoted_printable' : 'quopri_codec',
|
||||
'quotedprintable' : 'quopri_codec',
|
||||
|
||||
# rot_13 codec
|
||||
'rot13' : 'rot_13',
|
||||
|
||||
# shift_jis codec
|
||||
'csshiftjis' : 'shift_jis',
|
||||
'shiftjis' : 'shift_jis',
|
||||
'sjis' : 'shift_jis',
|
||||
's_jis' : 'shift_jis',
|
||||
|
||||
# shift_jis_2004 codec
|
||||
'shiftjis2004' : 'shift_jis_2004',
|
||||
'sjis_2004' : 'shift_jis_2004',
|
||||
's_jis_2004' : 'shift_jis_2004',
|
||||
|
||||
# shift_jisx0213 codec
|
||||
'shiftjisx0213' : 'shift_jisx0213',
|
||||
'sjisx0213' : 'shift_jisx0213',
|
||||
's_jisx0213' : 'shift_jisx0213',
|
||||
|
||||
# tactis codec
|
||||
'tis260' : 'tactis',
|
||||
|
||||
# tis_620 codec
|
||||
'tis620' : 'tis_620',
|
||||
'tis_620_0' : 'tis_620',
|
||||
'tis_620_2529_0' : 'tis_620',
|
||||
'tis_620_2529_1' : 'tis_620',
|
||||
'iso_ir_166' : 'tis_620',
|
||||
|
||||
# utf_16 codec
|
||||
'u16' : 'utf_16',
|
||||
'utf16' : 'utf_16',
|
||||
|
||||
# utf_16_be codec
|
||||
'unicodebigunmarked' : 'utf_16_be',
|
||||
'utf_16be' : 'utf_16_be',
|
||||
|
||||
# utf_16_le codec
|
||||
'unicodelittleunmarked' : 'utf_16_le',
|
||||
'utf_16le' : 'utf_16_le',
|
||||
|
||||
# utf_32 codec
|
||||
'u32' : 'utf_32',
|
||||
'utf32' : 'utf_32',
|
||||
|
||||
# utf_32_be codec
|
||||
'utf_32be' : 'utf_32_be',
|
||||
|
||||
# utf_32_le codec
|
||||
'utf_32le' : 'utf_32_le',
|
||||
|
||||
# utf_7 codec
|
||||
'u7' : 'utf_7',
|
||||
'utf7' : 'utf_7',
|
||||
'unicode_1_1_utf_7' : 'utf_7',
|
||||
|
||||
# utf_8 codec
|
||||
'u8' : 'utf_8',
|
||||
'utf' : 'utf_8',
|
||||
'utf8' : 'utf_8',
|
||||
'utf8_ucs2' : 'utf_8',
|
||||
'utf8_ucs4' : 'utf_8',
|
||||
|
||||
# uu_codec codec
|
||||
'uu' : 'uu_codec',
|
||||
|
||||
# zlib_codec codec
|
||||
'zip' : 'zlib_codec',
|
||||
'zlib' : 'zlib_codec',
|
||||
|
||||
}
|
||||
Binary file not shown.
50
PythonHome/Lib/encodings/ascii.py
Normal file
50
PythonHome/Lib/encodings/ascii.py
Normal file
@@ -0,0 +1,50 @@
|
||||
""" Python 'ascii' Codec
|
||||
|
||||
|
||||
Written by Marc-Andre Lemburg (mal@lemburg.com).
|
||||
|
||||
(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
|
||||
|
||||
"""
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
# Note: Binding these as C functions will result in the class not
|
||||
# converting them to methods. This is intended.
|
||||
encode = codecs.ascii_encode
|
||||
decode = codecs.ascii_decode
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.ascii_encode(input, self.errors)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.ascii_decode(input, self.errors)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
class StreamConverter(StreamWriter,StreamReader):
|
||||
|
||||
encode = codecs.ascii_decode
|
||||
decode = codecs.ascii_encode
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='ascii',
|
||||
encode=Codec.encode,
|
||||
decode=Codec.decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamwriter=StreamWriter,
|
||||
streamreader=StreamReader,
|
||||
)
|
||||
Binary file not shown.
79
PythonHome/Lib/encodings/base64_codec.py
Normal file
79
PythonHome/Lib/encodings/base64_codec.py
Normal file
@@ -0,0 +1,79 @@
|
||||
""" Python 'base64_codec' Codec - base64 content transfer encoding
|
||||
|
||||
Unlike most of the other codecs which target Unicode, this codec
|
||||
will return Python string objects for both encode and decode.
|
||||
|
||||
Written by Marc-Andre Lemburg (mal@lemburg.com).
|
||||
|
||||
"""
|
||||
import codecs, base64
|
||||
|
||||
### Codec APIs
|
||||
|
||||
def base64_encode(input,errors='strict'):
|
||||
|
||||
""" Encodes the object input and returns a tuple (output
|
||||
object, length consumed).
|
||||
|
||||
errors defines the error handling to apply. It defaults to
|
||||
'strict' handling which is the only currently supported
|
||||
error handling for this codec.
|
||||
|
||||
"""
|
||||
assert errors == 'strict'
|
||||
output = base64.encodestring(input)
|
||||
return (output, len(input))
|
||||
|
||||
def base64_decode(input,errors='strict'):
|
||||
|
||||
""" Decodes the object input and returns a tuple (output
|
||||
object, length consumed).
|
||||
|
||||
input must be an object which provides the bf_getreadbuf
|
||||
buffer slot. Python strings, buffer objects and memory
|
||||
mapped files are examples of objects providing this slot.
|
||||
|
||||
errors defines the error handling to apply. It defaults to
|
||||
'strict' handling which is the only currently supported
|
||||
error handling for this codec.
|
||||
|
||||
"""
|
||||
assert errors == 'strict'
|
||||
output = base64.decodestring(input)
|
||||
return (output, len(input))
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self, input,errors='strict'):
|
||||
return base64_encode(input,errors)
|
||||
def decode(self, input,errors='strict'):
|
||||
return base64_decode(input,errors)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
assert self.errors == 'strict'
|
||||
return base64.encodestring(input)
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
assert self.errors == 'strict'
|
||||
return base64.decodestring(input)
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='base64',
|
||||
encode=base64_encode,
|
||||
decode=base64_decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamwriter=StreamWriter,
|
||||
streamreader=StreamReader,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/big5.py
Normal file
39
PythonHome/Lib/encodings/big5.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# big5.py: Python Unicode Codec for BIG5
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_tw, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_tw.getcodec('big5')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='big5',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/big5hkscs.py
Normal file
39
PythonHome/Lib/encodings/big5hkscs.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# big5hkscs.py: Python Unicode Codec for BIG5HKSCS
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_hk, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_hk.getcodec('big5hkscs')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='big5hkscs',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
102
PythonHome/Lib/encodings/bz2_codec.py
Normal file
102
PythonHome/Lib/encodings/bz2_codec.py
Normal file
@@ -0,0 +1,102 @@
|
||||
""" Python 'bz2_codec' Codec - bz2 compression encoding
|
||||
|
||||
Unlike most of the other codecs which target Unicode, this codec
|
||||
will return Python string objects for both encode and decode.
|
||||
|
||||
Adapted by Raymond Hettinger from zlib_codec.py which was written
|
||||
by Marc-Andre Lemburg (mal@lemburg.com).
|
||||
|
||||
"""
|
||||
import codecs
|
||||
import bz2 # this codec needs the optional bz2 module !
|
||||
|
||||
### Codec APIs
|
||||
|
||||
def bz2_encode(input,errors='strict'):
|
||||
|
||||
""" Encodes the object input and returns a tuple (output
|
||||
object, length consumed).
|
||||
|
||||
errors defines the error handling to apply. It defaults to
|
||||
'strict' handling which is the only currently supported
|
||||
error handling for this codec.
|
||||
|
||||
"""
|
||||
assert errors == 'strict'
|
||||
output = bz2.compress(input)
|
||||
return (output, len(input))
|
||||
|
||||
def bz2_decode(input,errors='strict'):
|
||||
|
||||
""" Decodes the object input and returns a tuple (output
|
||||
object, length consumed).
|
||||
|
||||
input must be an object which provides the bf_getreadbuf
|
||||
buffer slot. Python strings, buffer objects and memory
|
||||
mapped files are examples of objects providing this slot.
|
||||
|
||||
errors defines the error handling to apply. It defaults to
|
||||
'strict' handling which is the only currently supported
|
||||
error handling for this codec.
|
||||
|
||||
"""
|
||||
assert errors == 'strict'
|
||||
output = bz2.decompress(input)
|
||||
return (output, len(input))
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self, input, errors='strict'):
|
||||
return bz2_encode(input, errors)
|
||||
def decode(self, input, errors='strict'):
|
||||
return bz2_decode(input, errors)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def __init__(self, errors='strict'):
|
||||
assert errors == 'strict'
|
||||
self.errors = errors
|
||||
self.compressobj = bz2.BZ2Compressor()
|
||||
|
||||
def encode(self, input, final=False):
|
||||
if final:
|
||||
c = self.compressobj.compress(input)
|
||||
return c + self.compressobj.flush()
|
||||
else:
|
||||
return self.compressobj.compress(input)
|
||||
|
||||
def reset(self):
|
||||
self.compressobj = bz2.BZ2Compressor()
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def __init__(self, errors='strict'):
|
||||
assert errors == 'strict'
|
||||
self.errors = errors
|
||||
self.decompressobj = bz2.BZ2Decompressor()
|
||||
|
||||
def decode(self, input, final=False):
|
||||
try:
|
||||
return self.decompressobj.decompress(input)
|
||||
except EOFError:
|
||||
return ''
|
||||
|
||||
def reset(self):
|
||||
self.decompressobj = bz2.BZ2Decompressor()
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name="bz2",
|
||||
encode=bz2_encode,
|
||||
decode=bz2_decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamwriter=StreamWriter,
|
||||
streamreader=StreamReader,
|
||||
)
|
||||
Binary file not shown.
69
PythonHome/Lib/encodings/charmap.py
Normal file
69
PythonHome/Lib/encodings/charmap.py
Normal file
@@ -0,0 +1,69 @@
|
||||
""" Generic Python Character Mapping Codec.
|
||||
|
||||
Use this codec directly rather than through the automatic
|
||||
conversion mechanisms supplied by unicode() and .encode().
|
||||
|
||||
|
||||
Written by Marc-Andre Lemburg (mal@lemburg.com).
|
||||
|
||||
(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
# Note: Binding these as C functions will result in the class not
|
||||
# converting them to methods. This is intended.
|
||||
encode = codecs.charmap_encode
|
||||
decode = codecs.charmap_decode
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def __init__(self, errors='strict', mapping=None):
|
||||
codecs.IncrementalEncoder.__init__(self, errors)
|
||||
self.mapping = mapping
|
||||
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input, self.errors, self.mapping)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def __init__(self, errors='strict', mapping=None):
|
||||
codecs.IncrementalDecoder.__init__(self, errors)
|
||||
self.mapping = mapping
|
||||
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input, self.errors, self.mapping)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
|
||||
def __init__(self,stream,errors='strict',mapping=None):
|
||||
codecs.StreamWriter.__init__(self,stream,errors)
|
||||
self.mapping = mapping
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return Codec.encode(input,errors,self.mapping)
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
|
||||
def __init__(self,stream,errors='strict',mapping=None):
|
||||
codecs.StreamReader.__init__(self,stream,errors)
|
||||
self.mapping = mapping
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return Codec.decode(input,errors,self.mapping)
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='charmap',
|
||||
encode=Codec.encode,
|
||||
decode=Codec.decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamwriter=StreamWriter,
|
||||
streamreader=StreamReader,
|
||||
)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp037.py
Normal file
307
PythonHome/Lib/encodings/cp037.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp037 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP037.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp037',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x9c' # 0x04 -> CONTROL
|
||||
u'\t' # 0x05 -> HORIZONTAL TABULATION
|
||||
u'\x86' # 0x06 -> CONTROL
|
||||
u'\x7f' # 0x07 -> DELETE
|
||||
u'\x97' # 0x08 -> CONTROL
|
||||
u'\x8d' # 0x09 -> CONTROL
|
||||
u'\x8e' # 0x0A -> CONTROL
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x9d' # 0x14 -> CONTROL
|
||||
u'\x85' # 0x15 -> CONTROL
|
||||
u'\x08' # 0x16 -> BACKSPACE
|
||||
u'\x87' # 0x17 -> CONTROL
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x92' # 0x1A -> CONTROL
|
||||
u'\x8f' # 0x1B -> CONTROL
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u'\x80' # 0x20 -> CONTROL
|
||||
u'\x81' # 0x21 -> CONTROL
|
||||
u'\x82' # 0x22 -> CONTROL
|
||||
u'\x83' # 0x23 -> CONTROL
|
||||
u'\x84' # 0x24 -> CONTROL
|
||||
u'\n' # 0x25 -> LINE FEED
|
||||
u'\x17' # 0x26 -> END OF TRANSMISSION BLOCK
|
||||
u'\x1b' # 0x27 -> ESCAPE
|
||||
u'\x88' # 0x28 -> CONTROL
|
||||
u'\x89' # 0x29 -> CONTROL
|
||||
u'\x8a' # 0x2A -> CONTROL
|
||||
u'\x8b' # 0x2B -> CONTROL
|
||||
u'\x8c' # 0x2C -> CONTROL
|
||||
u'\x05' # 0x2D -> ENQUIRY
|
||||
u'\x06' # 0x2E -> ACKNOWLEDGE
|
||||
u'\x07' # 0x2F -> BELL
|
||||
u'\x90' # 0x30 -> CONTROL
|
||||
u'\x91' # 0x31 -> CONTROL
|
||||
u'\x16' # 0x32 -> SYNCHRONOUS IDLE
|
||||
u'\x93' # 0x33 -> CONTROL
|
||||
u'\x94' # 0x34 -> CONTROL
|
||||
u'\x95' # 0x35 -> CONTROL
|
||||
u'\x96' # 0x36 -> CONTROL
|
||||
u'\x04' # 0x37 -> END OF TRANSMISSION
|
||||
u'\x98' # 0x38 -> CONTROL
|
||||
u'\x99' # 0x39 -> CONTROL
|
||||
u'\x9a' # 0x3A -> CONTROL
|
||||
u'\x9b' # 0x3B -> CONTROL
|
||||
u'\x14' # 0x3C -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x3D -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x9e' # 0x3E -> CONTROL
|
||||
u'\x1a' # 0x3F -> SUBSTITUTE
|
||||
u' ' # 0x40 -> SPACE
|
||||
u'\xa0' # 0x41 -> NO-BREAK SPACE
|
||||
u'\xe2' # 0x42 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x43 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x44 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0x45 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe3' # 0x46 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe5' # 0x47 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x48 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xf1' # 0x49 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xa2' # 0x4A -> CENT SIGN
|
||||
u'.' # 0x4B -> FULL STOP
|
||||
u'<' # 0x4C -> LESS-THAN SIGN
|
||||
u'(' # 0x4D -> LEFT PARENTHESIS
|
||||
u'+' # 0x4E -> PLUS SIGN
|
||||
u'|' # 0x4F -> VERTICAL LINE
|
||||
u'&' # 0x50 -> AMPERSAND
|
||||
u'\xe9' # 0x51 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0x52 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x53 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x54 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xed' # 0x55 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0x56 -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0x57 -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xec' # 0x58 -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xdf' # 0x59 -> LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
u'!' # 0x5A -> EXCLAMATION MARK
|
||||
u'$' # 0x5B -> DOLLAR SIGN
|
||||
u'*' # 0x5C -> ASTERISK
|
||||
u')' # 0x5D -> RIGHT PARENTHESIS
|
||||
u';' # 0x5E -> SEMICOLON
|
||||
u'\xac' # 0x5F -> NOT SIGN
|
||||
u'-' # 0x60 -> HYPHEN-MINUS
|
||||
u'/' # 0x61 -> SOLIDUS
|
||||
u'\xc2' # 0x62 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc4' # 0x63 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc0' # 0x64 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0x65 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc3' # 0x66 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc5' # 0x67 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc7' # 0x68 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xd1' # 0x69 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xa6' # 0x6A -> BROKEN BAR
|
||||
u',' # 0x6B -> COMMA
|
||||
u'%' # 0x6C -> PERCENT SIGN
|
||||
u'_' # 0x6D -> LOW LINE
|
||||
u'>' # 0x6E -> GREATER-THAN SIGN
|
||||
u'?' # 0x6F -> QUESTION MARK
|
||||
u'\xf8' # 0x70 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xc9' # 0x71 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0x72 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x73 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x74 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xcd' # 0x75 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x76 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x77 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\xcc' # 0x78 -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'`' # 0x79 -> GRAVE ACCENT
|
||||
u':' # 0x7A -> COLON
|
||||
u'#' # 0x7B -> NUMBER SIGN
|
||||
u'@' # 0x7C -> COMMERCIAL AT
|
||||
u"'" # 0x7D -> APOSTROPHE
|
||||
u'=' # 0x7E -> EQUALS SIGN
|
||||
u'"' # 0x7F -> QUOTATION MARK
|
||||
u'\xd8' # 0x80 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'a' # 0x81 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x82 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x83 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x84 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x85 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x86 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x87 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x88 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x89 -> LATIN SMALL LETTER I
|
||||
u'\xab' # 0x8A -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x8B -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xf0' # 0x8C -> LATIN SMALL LETTER ETH (ICELANDIC)
|
||||
u'\xfd' # 0x8D -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xfe' # 0x8E -> LATIN SMALL LETTER THORN (ICELANDIC)
|
||||
u'\xb1' # 0x8F -> PLUS-MINUS SIGN
|
||||
u'\xb0' # 0x90 -> DEGREE SIGN
|
||||
u'j' # 0x91 -> LATIN SMALL LETTER J
|
||||
u'k' # 0x92 -> LATIN SMALL LETTER K
|
||||
u'l' # 0x93 -> LATIN SMALL LETTER L
|
||||
u'm' # 0x94 -> LATIN SMALL LETTER M
|
||||
u'n' # 0x95 -> LATIN SMALL LETTER N
|
||||
u'o' # 0x96 -> LATIN SMALL LETTER O
|
||||
u'p' # 0x97 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x98 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x99 -> LATIN SMALL LETTER R
|
||||
u'\xaa' # 0x9A -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x9B -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xe6' # 0x9C -> LATIN SMALL LIGATURE AE
|
||||
u'\xb8' # 0x9D -> CEDILLA
|
||||
u'\xc6' # 0x9E -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xa4' # 0x9F -> CURRENCY SIGN
|
||||
u'\xb5' # 0xA0 -> MICRO SIGN
|
||||
u'~' # 0xA1 -> TILDE
|
||||
u's' # 0xA2 -> LATIN SMALL LETTER S
|
||||
u't' # 0xA3 -> LATIN SMALL LETTER T
|
||||
u'u' # 0xA4 -> LATIN SMALL LETTER U
|
||||
u'v' # 0xA5 -> LATIN SMALL LETTER V
|
||||
u'w' # 0xA6 -> LATIN SMALL LETTER W
|
||||
u'x' # 0xA7 -> LATIN SMALL LETTER X
|
||||
u'y' # 0xA8 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0xA9 -> LATIN SMALL LETTER Z
|
||||
u'\xa1' # 0xAA -> INVERTED EXCLAMATION MARK
|
||||
u'\xbf' # 0xAB -> INVERTED QUESTION MARK
|
||||
u'\xd0' # 0xAC -> LATIN CAPITAL LETTER ETH (ICELANDIC)
|
||||
u'\xdd' # 0xAD -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xde' # 0xAE -> LATIN CAPITAL LETTER THORN (ICELANDIC)
|
||||
u'\xae' # 0xAF -> REGISTERED SIGN
|
||||
u'^' # 0xB0 -> CIRCUMFLEX ACCENT
|
||||
u'\xa3' # 0xB1 -> POUND SIGN
|
||||
u'\xa5' # 0xB2 -> YEN SIGN
|
||||
u'\xb7' # 0xB3 -> MIDDLE DOT
|
||||
u'\xa9' # 0xB4 -> COPYRIGHT SIGN
|
||||
u'\xa7' # 0xB5 -> SECTION SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xbc' # 0xB7 -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xB8 -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xB9 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'[' # 0xBA -> LEFT SQUARE BRACKET
|
||||
u']' # 0xBB -> RIGHT SQUARE BRACKET
|
||||
u'\xaf' # 0xBC -> MACRON
|
||||
u'\xa8' # 0xBD -> DIAERESIS
|
||||
u'\xb4' # 0xBE -> ACUTE ACCENT
|
||||
u'\xd7' # 0xBF -> MULTIPLICATION SIGN
|
||||
u'{' # 0xC0 -> LEFT CURLY BRACKET
|
||||
u'A' # 0xC1 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0xC2 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0xC3 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0xC4 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0xC5 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0xC6 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0xC7 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0xC8 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0xC9 -> LATIN CAPITAL LETTER I
|
||||
u'\xad' # 0xCA -> SOFT HYPHEN
|
||||
u'\xf4' # 0xCB -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0xCC -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0xCD -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xf3' # 0xCE -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf5' # 0xCF -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'}' # 0xD0 -> RIGHT CURLY BRACKET
|
||||
u'J' # 0xD1 -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0xD2 -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0xD3 -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0xD4 -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0xD5 -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0xD6 -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0xD7 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0xD8 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0xD9 -> LATIN CAPITAL LETTER R
|
||||
u'\xb9' # 0xDA -> SUPERSCRIPT ONE
|
||||
u'\xfb' # 0xDB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xDC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xf9' # 0xDD -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xDE -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xff' # 0xDF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\\' # 0xE0 -> REVERSE SOLIDUS
|
||||
u'\xf7' # 0xE1 -> DIVISION SIGN
|
||||
u'S' # 0xE2 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0xE3 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0xE4 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0xE5 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0xE6 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0xE7 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0xE8 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0xE9 -> LATIN CAPITAL LETTER Z
|
||||
u'\xb2' # 0xEA -> SUPERSCRIPT TWO
|
||||
u'\xd4' # 0xEB -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd6' # 0xEC -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd2' # 0xED -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xd3' # 0xEE -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd5' # 0xEF -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'0' # 0xF0 -> DIGIT ZERO
|
||||
u'1' # 0xF1 -> DIGIT ONE
|
||||
u'2' # 0xF2 -> DIGIT TWO
|
||||
u'3' # 0xF3 -> DIGIT THREE
|
||||
u'4' # 0xF4 -> DIGIT FOUR
|
||||
u'5' # 0xF5 -> DIGIT FIVE
|
||||
u'6' # 0xF6 -> DIGIT SIX
|
||||
u'7' # 0xF7 -> DIGIT SEVEN
|
||||
u'8' # 0xF8 -> DIGIT EIGHT
|
||||
u'9' # 0xF9 -> DIGIT NINE
|
||||
u'\xb3' # 0xFA -> SUPERSCRIPT THREE
|
||||
u'\xdb' # 0xFB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdc' # 0xFC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xd9' # 0xFD -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xFE -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\x9f' # 0xFF -> CONTROL
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1006.py
Normal file
307
PythonHome/Lib/encodings/cp1006.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1006 generated from 'MAPPINGS/VENDORS/MISC/CP1006.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1006',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\x80' # 0x80 -> <control>
|
||||
u'\x81' # 0x81 -> <control>
|
||||
u'\x82' # 0x82 -> <control>
|
||||
u'\x83' # 0x83 -> <control>
|
||||
u'\x84' # 0x84 -> <control>
|
||||
u'\x85' # 0x85 -> <control>
|
||||
u'\x86' # 0x86 -> <control>
|
||||
u'\x87' # 0x87 -> <control>
|
||||
u'\x88' # 0x88 -> <control>
|
||||
u'\x89' # 0x89 -> <control>
|
||||
u'\x8a' # 0x8A -> <control>
|
||||
u'\x8b' # 0x8B -> <control>
|
||||
u'\x8c' # 0x8C -> <control>
|
||||
u'\x8d' # 0x8D -> <control>
|
||||
u'\x8e' # 0x8E -> <control>
|
||||
u'\x8f' # 0x8F -> <control>
|
||||
u'\x90' # 0x90 -> <control>
|
||||
u'\x91' # 0x91 -> <control>
|
||||
u'\x92' # 0x92 -> <control>
|
||||
u'\x93' # 0x93 -> <control>
|
||||
u'\x94' # 0x94 -> <control>
|
||||
u'\x95' # 0x95 -> <control>
|
||||
u'\x96' # 0x96 -> <control>
|
||||
u'\x97' # 0x97 -> <control>
|
||||
u'\x98' # 0x98 -> <control>
|
||||
u'\x99' # 0x99 -> <control>
|
||||
u'\x9a' # 0x9A -> <control>
|
||||
u'\x9b' # 0x9B -> <control>
|
||||
u'\x9c' # 0x9C -> <control>
|
||||
u'\x9d' # 0x9D -> <control>
|
||||
u'\x9e' # 0x9E -> <control>
|
||||
u'\x9f' # 0x9F -> <control>
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\u06f0' # 0xA1 -> EXTENDED ARABIC-INDIC DIGIT ZERO
|
||||
u'\u06f1' # 0xA2 -> EXTENDED ARABIC-INDIC DIGIT ONE
|
||||
u'\u06f2' # 0xA3 -> EXTENDED ARABIC-INDIC DIGIT TWO
|
||||
u'\u06f3' # 0xA4 -> EXTENDED ARABIC-INDIC DIGIT THREE
|
||||
u'\u06f4' # 0xA5 -> EXTENDED ARABIC-INDIC DIGIT FOUR
|
||||
u'\u06f5' # 0xA6 -> EXTENDED ARABIC-INDIC DIGIT FIVE
|
||||
u'\u06f6' # 0xA7 -> EXTENDED ARABIC-INDIC DIGIT SIX
|
||||
u'\u06f7' # 0xA8 -> EXTENDED ARABIC-INDIC DIGIT SEVEN
|
||||
u'\u06f8' # 0xA9 -> EXTENDED ARABIC-INDIC DIGIT EIGHT
|
||||
u'\u06f9' # 0xAA -> EXTENDED ARABIC-INDIC DIGIT NINE
|
||||
u'\u060c' # 0xAB -> ARABIC COMMA
|
||||
u'\u061b' # 0xAC -> ARABIC SEMICOLON
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\u061f' # 0xAE -> ARABIC QUESTION MARK
|
||||
u'\ufe81' # 0xAF -> ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
u'\ufe8d' # 0xB0 -> ARABIC LETTER ALEF ISOLATED FORM
|
||||
u'\ufe8e' # 0xB1 -> ARABIC LETTER ALEF FINAL FORM
|
||||
u'\ufe8e' # 0xB2 -> ARABIC LETTER ALEF FINAL FORM
|
||||
u'\ufe8f' # 0xB3 -> ARABIC LETTER BEH ISOLATED FORM
|
||||
u'\ufe91' # 0xB4 -> ARABIC LETTER BEH INITIAL FORM
|
||||
u'\ufb56' # 0xB5 -> ARABIC LETTER PEH ISOLATED FORM
|
||||
u'\ufb58' # 0xB6 -> ARABIC LETTER PEH INITIAL FORM
|
||||
u'\ufe93' # 0xB7 -> ARABIC LETTER TEH MARBUTA ISOLATED FORM
|
||||
u'\ufe95' # 0xB8 -> ARABIC LETTER TEH ISOLATED FORM
|
||||
u'\ufe97' # 0xB9 -> ARABIC LETTER TEH INITIAL FORM
|
||||
u'\ufb66' # 0xBA -> ARABIC LETTER TTEH ISOLATED FORM
|
||||
u'\ufb68' # 0xBB -> ARABIC LETTER TTEH INITIAL FORM
|
||||
u'\ufe99' # 0xBC -> ARABIC LETTER THEH ISOLATED FORM
|
||||
u'\ufe9b' # 0xBD -> ARABIC LETTER THEH INITIAL FORM
|
||||
u'\ufe9d' # 0xBE -> ARABIC LETTER JEEM ISOLATED FORM
|
||||
u'\ufe9f' # 0xBF -> ARABIC LETTER JEEM INITIAL FORM
|
||||
u'\ufb7a' # 0xC0 -> ARABIC LETTER TCHEH ISOLATED FORM
|
||||
u'\ufb7c' # 0xC1 -> ARABIC LETTER TCHEH INITIAL FORM
|
||||
u'\ufea1' # 0xC2 -> ARABIC LETTER HAH ISOLATED FORM
|
||||
u'\ufea3' # 0xC3 -> ARABIC LETTER HAH INITIAL FORM
|
||||
u'\ufea5' # 0xC4 -> ARABIC LETTER KHAH ISOLATED FORM
|
||||
u'\ufea7' # 0xC5 -> ARABIC LETTER KHAH INITIAL FORM
|
||||
u'\ufea9' # 0xC6 -> ARABIC LETTER DAL ISOLATED FORM
|
||||
u'\ufb84' # 0xC7 -> ARABIC LETTER DAHAL ISOLATED FORMN
|
||||
u'\ufeab' # 0xC8 -> ARABIC LETTER THAL ISOLATED FORM
|
||||
u'\ufead' # 0xC9 -> ARABIC LETTER REH ISOLATED FORM
|
||||
u'\ufb8c' # 0xCA -> ARABIC LETTER RREH ISOLATED FORM
|
||||
u'\ufeaf' # 0xCB -> ARABIC LETTER ZAIN ISOLATED FORM
|
||||
u'\ufb8a' # 0xCC -> ARABIC LETTER JEH ISOLATED FORM
|
||||
u'\ufeb1' # 0xCD -> ARABIC LETTER SEEN ISOLATED FORM
|
||||
u'\ufeb3' # 0xCE -> ARABIC LETTER SEEN INITIAL FORM
|
||||
u'\ufeb5' # 0xCF -> ARABIC LETTER SHEEN ISOLATED FORM
|
||||
u'\ufeb7' # 0xD0 -> ARABIC LETTER SHEEN INITIAL FORM
|
||||
u'\ufeb9' # 0xD1 -> ARABIC LETTER SAD ISOLATED FORM
|
||||
u'\ufebb' # 0xD2 -> ARABIC LETTER SAD INITIAL FORM
|
||||
u'\ufebd' # 0xD3 -> ARABIC LETTER DAD ISOLATED FORM
|
||||
u'\ufebf' # 0xD4 -> ARABIC LETTER DAD INITIAL FORM
|
||||
u'\ufec1' # 0xD5 -> ARABIC LETTER TAH ISOLATED FORM
|
||||
u'\ufec5' # 0xD6 -> ARABIC LETTER ZAH ISOLATED FORM
|
||||
u'\ufec9' # 0xD7 -> ARABIC LETTER AIN ISOLATED FORM
|
||||
u'\ufeca' # 0xD8 -> ARABIC LETTER AIN FINAL FORM
|
||||
u'\ufecb' # 0xD9 -> ARABIC LETTER AIN INITIAL FORM
|
||||
u'\ufecc' # 0xDA -> ARABIC LETTER AIN MEDIAL FORM
|
||||
u'\ufecd' # 0xDB -> ARABIC LETTER GHAIN ISOLATED FORM
|
||||
u'\ufece' # 0xDC -> ARABIC LETTER GHAIN FINAL FORM
|
||||
u'\ufecf' # 0xDD -> ARABIC LETTER GHAIN INITIAL FORM
|
||||
u'\ufed0' # 0xDE -> ARABIC LETTER GHAIN MEDIAL FORM
|
||||
u'\ufed1' # 0xDF -> ARABIC LETTER FEH ISOLATED FORM
|
||||
u'\ufed3' # 0xE0 -> ARABIC LETTER FEH INITIAL FORM
|
||||
u'\ufed5' # 0xE1 -> ARABIC LETTER QAF ISOLATED FORM
|
||||
u'\ufed7' # 0xE2 -> ARABIC LETTER QAF INITIAL FORM
|
||||
u'\ufed9' # 0xE3 -> ARABIC LETTER KAF ISOLATED FORM
|
||||
u'\ufedb' # 0xE4 -> ARABIC LETTER KAF INITIAL FORM
|
||||
u'\ufb92' # 0xE5 -> ARABIC LETTER GAF ISOLATED FORM
|
||||
u'\ufb94' # 0xE6 -> ARABIC LETTER GAF INITIAL FORM
|
||||
u'\ufedd' # 0xE7 -> ARABIC LETTER LAM ISOLATED FORM
|
||||
u'\ufedf' # 0xE8 -> ARABIC LETTER LAM INITIAL FORM
|
||||
u'\ufee0' # 0xE9 -> ARABIC LETTER LAM MEDIAL FORM
|
||||
u'\ufee1' # 0xEA -> ARABIC LETTER MEEM ISOLATED FORM
|
||||
u'\ufee3' # 0xEB -> ARABIC LETTER MEEM INITIAL FORM
|
||||
u'\ufb9e' # 0xEC -> ARABIC LETTER NOON GHUNNA ISOLATED FORM
|
||||
u'\ufee5' # 0xED -> ARABIC LETTER NOON ISOLATED FORM
|
||||
u'\ufee7' # 0xEE -> ARABIC LETTER NOON INITIAL FORM
|
||||
u'\ufe85' # 0xEF -> ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
|
||||
u'\ufeed' # 0xF0 -> ARABIC LETTER WAW ISOLATED FORM
|
||||
u'\ufba6' # 0xF1 -> ARABIC LETTER HEH GOAL ISOLATED FORM
|
||||
u'\ufba8' # 0xF2 -> ARABIC LETTER HEH GOAL INITIAL FORM
|
||||
u'\ufba9' # 0xF3 -> ARABIC LETTER HEH GOAL MEDIAL FORM
|
||||
u'\ufbaa' # 0xF4 -> ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM
|
||||
u'\ufe80' # 0xF5 -> ARABIC LETTER HAMZA ISOLATED FORM
|
||||
u'\ufe89' # 0xF6 -> ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM
|
||||
u'\ufe8a' # 0xF7 -> ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM
|
||||
u'\ufe8b' # 0xF8 -> ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
|
||||
u'\ufef1' # 0xF9 -> ARABIC LETTER YEH ISOLATED FORM
|
||||
u'\ufef2' # 0xFA -> ARABIC LETTER YEH FINAL FORM
|
||||
u'\ufef3' # 0xFB -> ARABIC LETTER YEH INITIAL FORM
|
||||
u'\ufbb0' # 0xFC -> ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM
|
||||
u'\ufbae' # 0xFD -> ARABIC LETTER YEH BARREE ISOLATED FORM
|
||||
u'\ufe7c' # 0xFE -> ARABIC SHADDA ISOLATED FORM
|
||||
u'\ufe7d' # 0xFF -> ARABIC SHADDA MEDIAL FORM
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1026.py
Normal file
307
PythonHome/Lib/encodings/cp1026.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1026 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP1026.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1026',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x9c' # 0x04 -> CONTROL
|
||||
u'\t' # 0x05 -> HORIZONTAL TABULATION
|
||||
u'\x86' # 0x06 -> CONTROL
|
||||
u'\x7f' # 0x07 -> DELETE
|
||||
u'\x97' # 0x08 -> CONTROL
|
||||
u'\x8d' # 0x09 -> CONTROL
|
||||
u'\x8e' # 0x0A -> CONTROL
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x9d' # 0x14 -> CONTROL
|
||||
u'\x85' # 0x15 -> CONTROL
|
||||
u'\x08' # 0x16 -> BACKSPACE
|
||||
u'\x87' # 0x17 -> CONTROL
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x92' # 0x1A -> CONTROL
|
||||
u'\x8f' # 0x1B -> CONTROL
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u'\x80' # 0x20 -> CONTROL
|
||||
u'\x81' # 0x21 -> CONTROL
|
||||
u'\x82' # 0x22 -> CONTROL
|
||||
u'\x83' # 0x23 -> CONTROL
|
||||
u'\x84' # 0x24 -> CONTROL
|
||||
u'\n' # 0x25 -> LINE FEED
|
||||
u'\x17' # 0x26 -> END OF TRANSMISSION BLOCK
|
||||
u'\x1b' # 0x27 -> ESCAPE
|
||||
u'\x88' # 0x28 -> CONTROL
|
||||
u'\x89' # 0x29 -> CONTROL
|
||||
u'\x8a' # 0x2A -> CONTROL
|
||||
u'\x8b' # 0x2B -> CONTROL
|
||||
u'\x8c' # 0x2C -> CONTROL
|
||||
u'\x05' # 0x2D -> ENQUIRY
|
||||
u'\x06' # 0x2E -> ACKNOWLEDGE
|
||||
u'\x07' # 0x2F -> BELL
|
||||
u'\x90' # 0x30 -> CONTROL
|
||||
u'\x91' # 0x31 -> CONTROL
|
||||
u'\x16' # 0x32 -> SYNCHRONOUS IDLE
|
||||
u'\x93' # 0x33 -> CONTROL
|
||||
u'\x94' # 0x34 -> CONTROL
|
||||
u'\x95' # 0x35 -> CONTROL
|
||||
u'\x96' # 0x36 -> CONTROL
|
||||
u'\x04' # 0x37 -> END OF TRANSMISSION
|
||||
u'\x98' # 0x38 -> CONTROL
|
||||
u'\x99' # 0x39 -> CONTROL
|
||||
u'\x9a' # 0x3A -> CONTROL
|
||||
u'\x9b' # 0x3B -> CONTROL
|
||||
u'\x14' # 0x3C -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x3D -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x9e' # 0x3E -> CONTROL
|
||||
u'\x1a' # 0x3F -> SUBSTITUTE
|
||||
u' ' # 0x40 -> SPACE
|
||||
u'\xa0' # 0x41 -> NO-BREAK SPACE
|
||||
u'\xe2' # 0x42 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x43 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x44 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0x45 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe3' # 0x46 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe5' # 0x47 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'{' # 0x48 -> LEFT CURLY BRACKET
|
||||
u'\xf1' # 0x49 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xc7' # 0x4A -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'.' # 0x4B -> FULL STOP
|
||||
u'<' # 0x4C -> LESS-THAN SIGN
|
||||
u'(' # 0x4D -> LEFT PARENTHESIS
|
||||
u'+' # 0x4E -> PLUS SIGN
|
||||
u'!' # 0x4F -> EXCLAMATION MARK
|
||||
u'&' # 0x50 -> AMPERSAND
|
||||
u'\xe9' # 0x51 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0x52 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x53 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x54 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xed' # 0x55 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0x56 -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0x57 -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xec' # 0x58 -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xdf' # 0x59 -> LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
u'\u011e' # 0x5A -> LATIN CAPITAL LETTER G WITH BREVE
|
||||
u'\u0130' # 0x5B -> LATIN CAPITAL LETTER I WITH DOT ABOVE
|
||||
u'*' # 0x5C -> ASTERISK
|
||||
u')' # 0x5D -> RIGHT PARENTHESIS
|
||||
u';' # 0x5E -> SEMICOLON
|
||||
u'^' # 0x5F -> CIRCUMFLEX ACCENT
|
||||
u'-' # 0x60 -> HYPHEN-MINUS
|
||||
u'/' # 0x61 -> SOLIDUS
|
||||
u'\xc2' # 0x62 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc4' # 0x63 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc0' # 0x64 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0x65 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc3' # 0x66 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc5' # 0x67 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'[' # 0x68 -> LEFT SQUARE BRACKET
|
||||
u'\xd1' # 0x69 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\u015f' # 0x6A -> LATIN SMALL LETTER S WITH CEDILLA
|
||||
u',' # 0x6B -> COMMA
|
||||
u'%' # 0x6C -> PERCENT SIGN
|
||||
u'_' # 0x6D -> LOW LINE
|
||||
u'>' # 0x6E -> GREATER-THAN SIGN
|
||||
u'?' # 0x6F -> QUESTION MARK
|
||||
u'\xf8' # 0x70 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xc9' # 0x71 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0x72 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x73 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x74 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xcd' # 0x75 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x76 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x77 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\xcc' # 0x78 -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\u0131' # 0x79 -> LATIN SMALL LETTER DOTLESS I
|
||||
u':' # 0x7A -> COLON
|
||||
u'\xd6' # 0x7B -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\u015e' # 0x7C -> LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
u"'" # 0x7D -> APOSTROPHE
|
||||
u'=' # 0x7E -> EQUALS SIGN
|
||||
u'\xdc' # 0x7F -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xd8' # 0x80 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'a' # 0x81 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x82 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x83 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x84 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x85 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x86 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x87 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x88 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x89 -> LATIN SMALL LETTER I
|
||||
u'\xab' # 0x8A -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x8B -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'}' # 0x8C -> RIGHT CURLY BRACKET
|
||||
u'`' # 0x8D -> GRAVE ACCENT
|
||||
u'\xa6' # 0x8E -> BROKEN BAR
|
||||
u'\xb1' # 0x8F -> PLUS-MINUS SIGN
|
||||
u'\xb0' # 0x90 -> DEGREE SIGN
|
||||
u'j' # 0x91 -> LATIN SMALL LETTER J
|
||||
u'k' # 0x92 -> LATIN SMALL LETTER K
|
||||
u'l' # 0x93 -> LATIN SMALL LETTER L
|
||||
u'm' # 0x94 -> LATIN SMALL LETTER M
|
||||
u'n' # 0x95 -> LATIN SMALL LETTER N
|
||||
u'o' # 0x96 -> LATIN SMALL LETTER O
|
||||
u'p' # 0x97 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x98 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x99 -> LATIN SMALL LETTER R
|
||||
u'\xaa' # 0x9A -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x9B -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xe6' # 0x9C -> LATIN SMALL LIGATURE AE
|
||||
u'\xb8' # 0x9D -> CEDILLA
|
||||
u'\xc6' # 0x9E -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xa4' # 0x9F -> CURRENCY SIGN
|
||||
u'\xb5' # 0xA0 -> MICRO SIGN
|
||||
u'\xf6' # 0xA1 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u's' # 0xA2 -> LATIN SMALL LETTER S
|
||||
u't' # 0xA3 -> LATIN SMALL LETTER T
|
||||
u'u' # 0xA4 -> LATIN SMALL LETTER U
|
||||
u'v' # 0xA5 -> LATIN SMALL LETTER V
|
||||
u'w' # 0xA6 -> LATIN SMALL LETTER W
|
||||
u'x' # 0xA7 -> LATIN SMALL LETTER X
|
||||
u'y' # 0xA8 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0xA9 -> LATIN SMALL LETTER Z
|
||||
u'\xa1' # 0xAA -> INVERTED EXCLAMATION MARK
|
||||
u'\xbf' # 0xAB -> INVERTED QUESTION MARK
|
||||
u']' # 0xAC -> RIGHT SQUARE BRACKET
|
||||
u'$' # 0xAD -> DOLLAR SIGN
|
||||
u'@' # 0xAE -> COMMERCIAL AT
|
||||
u'\xae' # 0xAF -> REGISTERED SIGN
|
||||
u'\xa2' # 0xB0 -> CENT SIGN
|
||||
u'\xa3' # 0xB1 -> POUND SIGN
|
||||
u'\xa5' # 0xB2 -> YEN SIGN
|
||||
u'\xb7' # 0xB3 -> MIDDLE DOT
|
||||
u'\xa9' # 0xB4 -> COPYRIGHT SIGN
|
||||
u'\xa7' # 0xB5 -> SECTION SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xbc' # 0xB7 -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xB8 -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xB9 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xac' # 0xBA -> NOT SIGN
|
||||
u'|' # 0xBB -> VERTICAL LINE
|
||||
u'\xaf' # 0xBC -> MACRON
|
||||
u'\xa8' # 0xBD -> DIAERESIS
|
||||
u'\xb4' # 0xBE -> ACUTE ACCENT
|
||||
u'\xd7' # 0xBF -> MULTIPLICATION SIGN
|
||||
u'\xe7' # 0xC0 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'A' # 0xC1 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0xC2 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0xC3 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0xC4 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0xC5 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0xC6 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0xC7 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0xC8 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0xC9 -> LATIN CAPITAL LETTER I
|
||||
u'\xad' # 0xCA -> SOFT HYPHEN
|
||||
u'\xf4' # 0xCB -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'~' # 0xCC -> TILDE
|
||||
u'\xf2' # 0xCD -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xf3' # 0xCE -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf5' # 0xCF -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\u011f' # 0xD0 -> LATIN SMALL LETTER G WITH BREVE
|
||||
u'J' # 0xD1 -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0xD2 -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0xD3 -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0xD4 -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0xD5 -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0xD6 -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0xD7 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0xD8 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0xD9 -> LATIN CAPITAL LETTER R
|
||||
u'\xb9' # 0xDA -> SUPERSCRIPT ONE
|
||||
u'\xfb' # 0xDB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\\' # 0xDC -> REVERSE SOLIDUS
|
||||
u'\xf9' # 0xDD -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xDE -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xff' # 0xDF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\xfc' # 0xE0 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xf7' # 0xE1 -> DIVISION SIGN
|
||||
u'S' # 0xE2 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0xE3 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0xE4 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0xE5 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0xE6 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0xE7 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0xE8 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0xE9 -> LATIN CAPITAL LETTER Z
|
||||
u'\xb2' # 0xEA -> SUPERSCRIPT TWO
|
||||
u'\xd4' # 0xEB -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'#' # 0xEC -> NUMBER SIGN
|
||||
u'\xd2' # 0xED -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xd3' # 0xEE -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd5' # 0xEF -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'0' # 0xF0 -> DIGIT ZERO
|
||||
u'1' # 0xF1 -> DIGIT ONE
|
||||
u'2' # 0xF2 -> DIGIT TWO
|
||||
u'3' # 0xF3 -> DIGIT THREE
|
||||
u'4' # 0xF4 -> DIGIT FOUR
|
||||
u'5' # 0xF5 -> DIGIT FIVE
|
||||
u'6' # 0xF6 -> DIGIT SIX
|
||||
u'7' # 0xF7 -> DIGIT SEVEN
|
||||
u'8' # 0xF8 -> DIGIT EIGHT
|
||||
u'9' # 0xF9 -> DIGIT NINE
|
||||
u'\xb3' # 0xFA -> SUPERSCRIPT THREE
|
||||
u'\xdb' # 0xFB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'"' # 0xFC -> QUOTATION MARK
|
||||
u'\xd9' # 0xFD -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xFE -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\x9f' # 0xFF -> CONTROL
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1140.py
Normal file
307
PythonHome/Lib/encodings/cp1140.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1140 generated from 'python-mappings/CP1140.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1140',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x9c' # 0x04 -> CONTROL
|
||||
u'\t' # 0x05 -> HORIZONTAL TABULATION
|
||||
u'\x86' # 0x06 -> CONTROL
|
||||
u'\x7f' # 0x07 -> DELETE
|
||||
u'\x97' # 0x08 -> CONTROL
|
||||
u'\x8d' # 0x09 -> CONTROL
|
||||
u'\x8e' # 0x0A -> CONTROL
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x9d' # 0x14 -> CONTROL
|
||||
u'\x85' # 0x15 -> CONTROL
|
||||
u'\x08' # 0x16 -> BACKSPACE
|
||||
u'\x87' # 0x17 -> CONTROL
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x92' # 0x1A -> CONTROL
|
||||
u'\x8f' # 0x1B -> CONTROL
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u'\x80' # 0x20 -> CONTROL
|
||||
u'\x81' # 0x21 -> CONTROL
|
||||
u'\x82' # 0x22 -> CONTROL
|
||||
u'\x83' # 0x23 -> CONTROL
|
||||
u'\x84' # 0x24 -> CONTROL
|
||||
u'\n' # 0x25 -> LINE FEED
|
||||
u'\x17' # 0x26 -> END OF TRANSMISSION BLOCK
|
||||
u'\x1b' # 0x27 -> ESCAPE
|
||||
u'\x88' # 0x28 -> CONTROL
|
||||
u'\x89' # 0x29 -> CONTROL
|
||||
u'\x8a' # 0x2A -> CONTROL
|
||||
u'\x8b' # 0x2B -> CONTROL
|
||||
u'\x8c' # 0x2C -> CONTROL
|
||||
u'\x05' # 0x2D -> ENQUIRY
|
||||
u'\x06' # 0x2E -> ACKNOWLEDGE
|
||||
u'\x07' # 0x2F -> BELL
|
||||
u'\x90' # 0x30 -> CONTROL
|
||||
u'\x91' # 0x31 -> CONTROL
|
||||
u'\x16' # 0x32 -> SYNCHRONOUS IDLE
|
||||
u'\x93' # 0x33 -> CONTROL
|
||||
u'\x94' # 0x34 -> CONTROL
|
||||
u'\x95' # 0x35 -> CONTROL
|
||||
u'\x96' # 0x36 -> CONTROL
|
||||
u'\x04' # 0x37 -> END OF TRANSMISSION
|
||||
u'\x98' # 0x38 -> CONTROL
|
||||
u'\x99' # 0x39 -> CONTROL
|
||||
u'\x9a' # 0x3A -> CONTROL
|
||||
u'\x9b' # 0x3B -> CONTROL
|
||||
u'\x14' # 0x3C -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x3D -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x9e' # 0x3E -> CONTROL
|
||||
u'\x1a' # 0x3F -> SUBSTITUTE
|
||||
u' ' # 0x40 -> SPACE
|
||||
u'\xa0' # 0x41 -> NO-BREAK SPACE
|
||||
u'\xe2' # 0x42 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x43 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x44 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0x45 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe3' # 0x46 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe5' # 0x47 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x48 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xf1' # 0x49 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xa2' # 0x4A -> CENT SIGN
|
||||
u'.' # 0x4B -> FULL STOP
|
||||
u'<' # 0x4C -> LESS-THAN SIGN
|
||||
u'(' # 0x4D -> LEFT PARENTHESIS
|
||||
u'+' # 0x4E -> PLUS SIGN
|
||||
u'|' # 0x4F -> VERTICAL LINE
|
||||
u'&' # 0x50 -> AMPERSAND
|
||||
u'\xe9' # 0x51 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0x52 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x53 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x54 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xed' # 0x55 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0x56 -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0x57 -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xec' # 0x58 -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xdf' # 0x59 -> LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
u'!' # 0x5A -> EXCLAMATION MARK
|
||||
u'$' # 0x5B -> DOLLAR SIGN
|
||||
u'*' # 0x5C -> ASTERISK
|
||||
u')' # 0x5D -> RIGHT PARENTHESIS
|
||||
u';' # 0x5E -> SEMICOLON
|
||||
u'\xac' # 0x5F -> NOT SIGN
|
||||
u'-' # 0x60 -> HYPHEN-MINUS
|
||||
u'/' # 0x61 -> SOLIDUS
|
||||
u'\xc2' # 0x62 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc4' # 0x63 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc0' # 0x64 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0x65 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc3' # 0x66 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc5' # 0x67 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc7' # 0x68 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xd1' # 0x69 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xa6' # 0x6A -> BROKEN BAR
|
||||
u',' # 0x6B -> COMMA
|
||||
u'%' # 0x6C -> PERCENT SIGN
|
||||
u'_' # 0x6D -> LOW LINE
|
||||
u'>' # 0x6E -> GREATER-THAN SIGN
|
||||
u'?' # 0x6F -> QUESTION MARK
|
||||
u'\xf8' # 0x70 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xc9' # 0x71 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0x72 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x73 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x74 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xcd' # 0x75 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x76 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x77 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\xcc' # 0x78 -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'`' # 0x79 -> GRAVE ACCENT
|
||||
u':' # 0x7A -> COLON
|
||||
u'#' # 0x7B -> NUMBER SIGN
|
||||
u'@' # 0x7C -> COMMERCIAL AT
|
||||
u"'" # 0x7D -> APOSTROPHE
|
||||
u'=' # 0x7E -> EQUALS SIGN
|
||||
u'"' # 0x7F -> QUOTATION MARK
|
||||
u'\xd8' # 0x80 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'a' # 0x81 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x82 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x83 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x84 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x85 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x86 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x87 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x88 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x89 -> LATIN SMALL LETTER I
|
||||
u'\xab' # 0x8A -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x8B -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xf0' # 0x8C -> LATIN SMALL LETTER ETH (ICELANDIC)
|
||||
u'\xfd' # 0x8D -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xfe' # 0x8E -> LATIN SMALL LETTER THORN (ICELANDIC)
|
||||
u'\xb1' # 0x8F -> PLUS-MINUS SIGN
|
||||
u'\xb0' # 0x90 -> DEGREE SIGN
|
||||
u'j' # 0x91 -> LATIN SMALL LETTER J
|
||||
u'k' # 0x92 -> LATIN SMALL LETTER K
|
||||
u'l' # 0x93 -> LATIN SMALL LETTER L
|
||||
u'm' # 0x94 -> LATIN SMALL LETTER M
|
||||
u'n' # 0x95 -> LATIN SMALL LETTER N
|
||||
u'o' # 0x96 -> LATIN SMALL LETTER O
|
||||
u'p' # 0x97 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x98 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x99 -> LATIN SMALL LETTER R
|
||||
u'\xaa' # 0x9A -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x9B -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xe6' # 0x9C -> LATIN SMALL LIGATURE AE
|
||||
u'\xb8' # 0x9D -> CEDILLA
|
||||
u'\xc6' # 0x9E -> LATIN CAPITAL LIGATURE AE
|
||||
u'\u20ac' # 0x9F -> EURO SIGN
|
||||
u'\xb5' # 0xA0 -> MICRO SIGN
|
||||
u'~' # 0xA1 -> TILDE
|
||||
u's' # 0xA2 -> LATIN SMALL LETTER S
|
||||
u't' # 0xA3 -> LATIN SMALL LETTER T
|
||||
u'u' # 0xA4 -> LATIN SMALL LETTER U
|
||||
u'v' # 0xA5 -> LATIN SMALL LETTER V
|
||||
u'w' # 0xA6 -> LATIN SMALL LETTER W
|
||||
u'x' # 0xA7 -> LATIN SMALL LETTER X
|
||||
u'y' # 0xA8 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0xA9 -> LATIN SMALL LETTER Z
|
||||
u'\xa1' # 0xAA -> INVERTED EXCLAMATION MARK
|
||||
u'\xbf' # 0xAB -> INVERTED QUESTION MARK
|
||||
u'\xd0' # 0xAC -> LATIN CAPITAL LETTER ETH (ICELANDIC)
|
||||
u'\xdd' # 0xAD -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xde' # 0xAE -> LATIN CAPITAL LETTER THORN (ICELANDIC)
|
||||
u'\xae' # 0xAF -> REGISTERED SIGN
|
||||
u'^' # 0xB0 -> CIRCUMFLEX ACCENT
|
||||
u'\xa3' # 0xB1 -> POUND SIGN
|
||||
u'\xa5' # 0xB2 -> YEN SIGN
|
||||
u'\xb7' # 0xB3 -> MIDDLE DOT
|
||||
u'\xa9' # 0xB4 -> COPYRIGHT SIGN
|
||||
u'\xa7' # 0xB5 -> SECTION SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xbc' # 0xB7 -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xB8 -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xB9 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'[' # 0xBA -> LEFT SQUARE BRACKET
|
||||
u']' # 0xBB -> RIGHT SQUARE BRACKET
|
||||
u'\xaf' # 0xBC -> MACRON
|
||||
u'\xa8' # 0xBD -> DIAERESIS
|
||||
u'\xb4' # 0xBE -> ACUTE ACCENT
|
||||
u'\xd7' # 0xBF -> MULTIPLICATION SIGN
|
||||
u'{' # 0xC0 -> LEFT CURLY BRACKET
|
||||
u'A' # 0xC1 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0xC2 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0xC3 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0xC4 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0xC5 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0xC6 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0xC7 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0xC8 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0xC9 -> LATIN CAPITAL LETTER I
|
||||
u'\xad' # 0xCA -> SOFT HYPHEN
|
||||
u'\xf4' # 0xCB -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0xCC -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0xCD -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xf3' # 0xCE -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf5' # 0xCF -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'}' # 0xD0 -> RIGHT CURLY BRACKET
|
||||
u'J' # 0xD1 -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0xD2 -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0xD3 -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0xD4 -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0xD5 -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0xD6 -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0xD7 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0xD8 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0xD9 -> LATIN CAPITAL LETTER R
|
||||
u'\xb9' # 0xDA -> SUPERSCRIPT ONE
|
||||
u'\xfb' # 0xDB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xDC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xf9' # 0xDD -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xDE -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xff' # 0xDF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\\' # 0xE0 -> REVERSE SOLIDUS
|
||||
u'\xf7' # 0xE1 -> DIVISION SIGN
|
||||
u'S' # 0xE2 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0xE3 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0xE4 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0xE5 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0xE6 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0xE7 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0xE8 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0xE9 -> LATIN CAPITAL LETTER Z
|
||||
u'\xb2' # 0xEA -> SUPERSCRIPT TWO
|
||||
u'\xd4' # 0xEB -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd6' # 0xEC -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd2' # 0xED -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xd3' # 0xEE -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd5' # 0xEF -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'0' # 0xF0 -> DIGIT ZERO
|
||||
u'1' # 0xF1 -> DIGIT ONE
|
||||
u'2' # 0xF2 -> DIGIT TWO
|
||||
u'3' # 0xF3 -> DIGIT THREE
|
||||
u'4' # 0xF4 -> DIGIT FOUR
|
||||
u'5' # 0xF5 -> DIGIT FIVE
|
||||
u'6' # 0xF6 -> DIGIT SIX
|
||||
u'7' # 0xF7 -> DIGIT SEVEN
|
||||
u'8' # 0xF8 -> DIGIT EIGHT
|
||||
u'9' # 0xF9 -> DIGIT NINE
|
||||
u'\xb3' # 0xFA -> SUPERSCRIPT THREE
|
||||
u'\xdb' # 0xFB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdc' # 0xFC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xd9' # 0xFD -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xFE -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\x9f' # 0xFF -> CONTROL
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1250.py
Normal file
307
PythonHome/Lib/encodings/cp1250.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1250 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1250.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1250',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\ufffe' # 0x83 -> UNDEFINED
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\ufffe' # 0x88 -> UNDEFINED
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\u0160' # 0x8A -> LATIN CAPITAL LETTER S WITH CARON
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u015a' # 0x8C -> LATIN CAPITAL LETTER S WITH ACUTE
|
||||
u'\u0164' # 0x8D -> LATIN CAPITAL LETTER T WITH CARON
|
||||
u'\u017d' # 0x8E -> LATIN CAPITAL LETTER Z WITH CARON
|
||||
u'\u0179' # 0x8F -> LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\ufffe' # 0x98 -> UNDEFINED
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\u0161' # 0x9A -> LATIN SMALL LETTER S WITH CARON
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u015b' # 0x9C -> LATIN SMALL LETTER S WITH ACUTE
|
||||
u'\u0165' # 0x9D -> LATIN SMALL LETTER T WITH CARON
|
||||
u'\u017e' # 0x9E -> LATIN SMALL LETTER Z WITH CARON
|
||||
u'\u017a' # 0x9F -> LATIN SMALL LETTER Z WITH ACUTE
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\u02c7' # 0xA1 -> CARON
|
||||
u'\u02d8' # 0xA2 -> BREVE
|
||||
u'\u0141' # 0xA3 -> LATIN CAPITAL LETTER L WITH STROKE
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\u0104' # 0xA5 -> LATIN CAPITAL LETTER A WITH OGONEK
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\u015e' # 0xAA -> LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\u017b' # 0xAF -> LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\u02db' # 0xB2 -> OGONEK
|
||||
u'\u0142' # 0xB3 -> LATIN SMALL LETTER L WITH STROKE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xb8' # 0xB8 -> CEDILLA
|
||||
u'\u0105' # 0xB9 -> LATIN SMALL LETTER A WITH OGONEK
|
||||
u'\u015f' # 0xBA -> LATIN SMALL LETTER S WITH CEDILLA
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u013d' # 0xBC -> LATIN CAPITAL LETTER L WITH CARON
|
||||
u'\u02dd' # 0xBD -> DOUBLE ACUTE ACCENT
|
||||
u'\u013e' # 0xBE -> LATIN SMALL LETTER L WITH CARON
|
||||
u'\u017c' # 0xBF -> LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
u'\u0154' # 0xC0 -> LATIN CAPITAL LETTER R WITH ACUTE
|
||||
u'\xc1' # 0xC1 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0xC2 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\u0102' # 0xC3 -> LATIN CAPITAL LETTER A WITH BREVE
|
||||
u'\xc4' # 0xC4 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\u0139' # 0xC5 -> LATIN CAPITAL LETTER L WITH ACUTE
|
||||
u'\u0106' # 0xC6 -> LATIN CAPITAL LETTER C WITH ACUTE
|
||||
u'\xc7' # 0xC7 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\u010c' # 0xC8 -> LATIN CAPITAL LETTER C WITH CARON
|
||||
u'\xc9' # 0xC9 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\u0118' # 0xCA -> LATIN CAPITAL LETTER E WITH OGONEK
|
||||
u'\xcb' # 0xCB -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\u011a' # 0xCC -> LATIN CAPITAL LETTER E WITH CARON
|
||||
u'\xcd' # 0xCD -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0xCE -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\u010e' # 0xCF -> LATIN CAPITAL LETTER D WITH CARON
|
||||
u'\u0110' # 0xD0 -> LATIN CAPITAL LETTER D WITH STROKE
|
||||
u'\u0143' # 0xD1 -> LATIN CAPITAL LETTER N WITH ACUTE
|
||||
u'\u0147' # 0xD2 -> LATIN CAPITAL LETTER N WITH CARON
|
||||
u'\xd3' # 0xD3 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd4' # 0xD4 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\u0150' # 0xD5 -> LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
|
||||
u'\xd6' # 0xD6 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd7' # 0xD7 -> MULTIPLICATION SIGN
|
||||
u'\u0158' # 0xD8 -> LATIN CAPITAL LETTER R WITH CARON
|
||||
u'\u016e' # 0xD9 -> LATIN CAPITAL LETTER U WITH RING ABOVE
|
||||
u'\xda' # 0xDA -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\u0170' # 0xDB -> LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
|
||||
u'\xdc' # 0xDC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xdd' # 0xDD -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\u0162' # 0xDE -> LATIN CAPITAL LETTER T WITH CEDILLA
|
||||
u'\xdf' # 0xDF -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0155' # 0xE0 -> LATIN SMALL LETTER R WITH ACUTE
|
||||
u'\xe1' # 0xE1 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe2' # 0xE2 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\u0103' # 0xE3 -> LATIN SMALL LETTER A WITH BREVE
|
||||
u'\xe4' # 0xE4 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\u013a' # 0xE5 -> LATIN SMALL LETTER L WITH ACUTE
|
||||
u'\u0107' # 0xE6 -> LATIN SMALL LETTER C WITH ACUTE
|
||||
u'\xe7' # 0xE7 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\u010d' # 0xE8 -> LATIN SMALL LETTER C WITH CARON
|
||||
u'\xe9' # 0xE9 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\u0119' # 0xEA -> LATIN SMALL LETTER E WITH OGONEK
|
||||
u'\xeb' # 0xEB -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\u011b' # 0xEC -> LATIN SMALL LETTER E WITH CARON
|
||||
u'\xed' # 0xED -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0xEE -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\u010f' # 0xEF -> LATIN SMALL LETTER D WITH CARON
|
||||
u'\u0111' # 0xF0 -> LATIN SMALL LETTER D WITH STROKE
|
||||
u'\u0144' # 0xF1 -> LATIN SMALL LETTER N WITH ACUTE
|
||||
u'\u0148' # 0xF2 -> LATIN SMALL LETTER N WITH CARON
|
||||
u'\xf3' # 0xF3 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf4' # 0xF4 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\u0151' # 0xF5 -> LATIN SMALL LETTER O WITH DOUBLE ACUTE
|
||||
u'\xf6' # 0xF6 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf7' # 0xF7 -> DIVISION SIGN
|
||||
u'\u0159' # 0xF8 -> LATIN SMALL LETTER R WITH CARON
|
||||
u'\u016f' # 0xF9 -> LATIN SMALL LETTER U WITH RING ABOVE
|
||||
u'\xfa' # 0xFA -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\u0171' # 0xFB -> LATIN SMALL LETTER U WITH DOUBLE ACUTE
|
||||
u'\xfc' # 0xFC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xfd' # 0xFD -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\u0163' # 0xFE -> LATIN SMALL LETTER T WITH CEDILLA
|
||||
u'\u02d9' # 0xFF -> DOT ABOVE
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1251.py
Normal file
307
PythonHome/Lib/encodings/cp1251.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1251 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1251.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1251',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u0402' # 0x80 -> CYRILLIC CAPITAL LETTER DJE
|
||||
u'\u0403' # 0x81 -> CYRILLIC CAPITAL LETTER GJE
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0453' # 0x83 -> CYRILLIC SMALL LETTER GJE
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\u20ac' # 0x88 -> EURO SIGN
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\u0409' # 0x8A -> CYRILLIC CAPITAL LETTER LJE
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u040a' # 0x8C -> CYRILLIC CAPITAL LETTER NJE
|
||||
u'\u040c' # 0x8D -> CYRILLIC CAPITAL LETTER KJE
|
||||
u'\u040b' # 0x8E -> CYRILLIC CAPITAL LETTER TSHE
|
||||
u'\u040f' # 0x8F -> CYRILLIC CAPITAL LETTER DZHE
|
||||
u'\u0452' # 0x90 -> CYRILLIC SMALL LETTER DJE
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\ufffe' # 0x98 -> UNDEFINED
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\u0459' # 0x9A -> CYRILLIC SMALL LETTER LJE
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u045a' # 0x9C -> CYRILLIC SMALL LETTER NJE
|
||||
u'\u045c' # 0x9D -> CYRILLIC SMALL LETTER KJE
|
||||
u'\u045b' # 0x9E -> CYRILLIC SMALL LETTER TSHE
|
||||
u'\u045f' # 0x9F -> CYRILLIC SMALL LETTER DZHE
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\u040e' # 0xA1 -> CYRILLIC CAPITAL LETTER SHORT U
|
||||
u'\u045e' # 0xA2 -> CYRILLIC SMALL LETTER SHORT U
|
||||
u'\u0408' # 0xA3 -> CYRILLIC CAPITAL LETTER JE
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\u0490' # 0xA5 -> CYRILLIC CAPITAL LETTER GHE WITH UPTURN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\u0401' # 0xA8 -> CYRILLIC CAPITAL LETTER IO
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\u0404' # 0xAA -> CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\u0407' # 0xAF -> CYRILLIC CAPITAL LETTER YI
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\u0406' # 0xB2 -> CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
u'\u0456' # 0xB3 -> CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
u'\u0491' # 0xB4 -> CYRILLIC SMALL LETTER GHE WITH UPTURN
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\u0451' # 0xB8 -> CYRILLIC SMALL LETTER IO
|
||||
u'\u2116' # 0xB9 -> NUMERO SIGN
|
||||
u'\u0454' # 0xBA -> CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u0458' # 0xBC -> CYRILLIC SMALL LETTER JE
|
||||
u'\u0405' # 0xBD -> CYRILLIC CAPITAL LETTER DZE
|
||||
u'\u0455' # 0xBE -> CYRILLIC SMALL LETTER DZE
|
||||
u'\u0457' # 0xBF -> CYRILLIC SMALL LETTER YI
|
||||
u'\u0410' # 0xC0 -> CYRILLIC CAPITAL LETTER A
|
||||
u'\u0411' # 0xC1 -> CYRILLIC CAPITAL LETTER BE
|
||||
u'\u0412' # 0xC2 -> CYRILLIC CAPITAL LETTER VE
|
||||
u'\u0413' # 0xC3 -> CYRILLIC CAPITAL LETTER GHE
|
||||
u'\u0414' # 0xC4 -> CYRILLIC CAPITAL LETTER DE
|
||||
u'\u0415' # 0xC5 -> CYRILLIC CAPITAL LETTER IE
|
||||
u'\u0416' # 0xC6 -> CYRILLIC CAPITAL LETTER ZHE
|
||||
u'\u0417' # 0xC7 -> CYRILLIC CAPITAL LETTER ZE
|
||||
u'\u0418' # 0xC8 -> CYRILLIC CAPITAL LETTER I
|
||||
u'\u0419' # 0xC9 -> CYRILLIC CAPITAL LETTER SHORT I
|
||||
u'\u041a' # 0xCA -> CYRILLIC CAPITAL LETTER KA
|
||||
u'\u041b' # 0xCB -> CYRILLIC CAPITAL LETTER EL
|
||||
u'\u041c' # 0xCC -> CYRILLIC CAPITAL LETTER EM
|
||||
u'\u041d' # 0xCD -> CYRILLIC CAPITAL LETTER EN
|
||||
u'\u041e' # 0xCE -> CYRILLIC CAPITAL LETTER O
|
||||
u'\u041f' # 0xCF -> CYRILLIC CAPITAL LETTER PE
|
||||
u'\u0420' # 0xD0 -> CYRILLIC CAPITAL LETTER ER
|
||||
u'\u0421' # 0xD1 -> CYRILLIC CAPITAL LETTER ES
|
||||
u'\u0422' # 0xD2 -> CYRILLIC CAPITAL LETTER TE
|
||||
u'\u0423' # 0xD3 -> CYRILLIC CAPITAL LETTER U
|
||||
u'\u0424' # 0xD4 -> CYRILLIC CAPITAL LETTER EF
|
||||
u'\u0425' # 0xD5 -> CYRILLIC CAPITAL LETTER HA
|
||||
u'\u0426' # 0xD6 -> CYRILLIC CAPITAL LETTER TSE
|
||||
u'\u0427' # 0xD7 -> CYRILLIC CAPITAL LETTER CHE
|
||||
u'\u0428' # 0xD8 -> CYRILLIC CAPITAL LETTER SHA
|
||||
u'\u0429' # 0xD9 -> CYRILLIC CAPITAL LETTER SHCHA
|
||||
u'\u042a' # 0xDA -> CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
u'\u042b' # 0xDB -> CYRILLIC CAPITAL LETTER YERU
|
||||
u'\u042c' # 0xDC -> CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
u'\u042d' # 0xDD -> CYRILLIC CAPITAL LETTER E
|
||||
u'\u042e' # 0xDE -> CYRILLIC CAPITAL LETTER YU
|
||||
u'\u042f' # 0xDF -> CYRILLIC CAPITAL LETTER YA
|
||||
u'\u0430' # 0xE0 -> CYRILLIC SMALL LETTER A
|
||||
u'\u0431' # 0xE1 -> CYRILLIC SMALL LETTER BE
|
||||
u'\u0432' # 0xE2 -> CYRILLIC SMALL LETTER VE
|
||||
u'\u0433' # 0xE3 -> CYRILLIC SMALL LETTER GHE
|
||||
u'\u0434' # 0xE4 -> CYRILLIC SMALL LETTER DE
|
||||
u'\u0435' # 0xE5 -> CYRILLIC SMALL LETTER IE
|
||||
u'\u0436' # 0xE6 -> CYRILLIC SMALL LETTER ZHE
|
||||
u'\u0437' # 0xE7 -> CYRILLIC SMALL LETTER ZE
|
||||
u'\u0438' # 0xE8 -> CYRILLIC SMALL LETTER I
|
||||
u'\u0439' # 0xE9 -> CYRILLIC SMALL LETTER SHORT I
|
||||
u'\u043a' # 0xEA -> CYRILLIC SMALL LETTER KA
|
||||
u'\u043b' # 0xEB -> CYRILLIC SMALL LETTER EL
|
||||
u'\u043c' # 0xEC -> CYRILLIC SMALL LETTER EM
|
||||
u'\u043d' # 0xED -> CYRILLIC SMALL LETTER EN
|
||||
u'\u043e' # 0xEE -> CYRILLIC SMALL LETTER O
|
||||
u'\u043f' # 0xEF -> CYRILLIC SMALL LETTER PE
|
||||
u'\u0440' # 0xF0 -> CYRILLIC SMALL LETTER ER
|
||||
u'\u0441' # 0xF1 -> CYRILLIC SMALL LETTER ES
|
||||
u'\u0442' # 0xF2 -> CYRILLIC SMALL LETTER TE
|
||||
u'\u0443' # 0xF3 -> CYRILLIC SMALL LETTER U
|
||||
u'\u0444' # 0xF4 -> CYRILLIC SMALL LETTER EF
|
||||
u'\u0445' # 0xF5 -> CYRILLIC SMALL LETTER HA
|
||||
u'\u0446' # 0xF6 -> CYRILLIC SMALL LETTER TSE
|
||||
u'\u0447' # 0xF7 -> CYRILLIC SMALL LETTER CHE
|
||||
u'\u0448' # 0xF8 -> CYRILLIC SMALL LETTER SHA
|
||||
u'\u0449' # 0xF9 -> CYRILLIC SMALL LETTER SHCHA
|
||||
u'\u044a' # 0xFA -> CYRILLIC SMALL LETTER HARD SIGN
|
||||
u'\u044b' # 0xFB -> CYRILLIC SMALL LETTER YERU
|
||||
u'\u044c' # 0xFC -> CYRILLIC SMALL LETTER SOFT SIGN
|
||||
u'\u044d' # 0xFD -> CYRILLIC SMALL LETTER E
|
||||
u'\u044e' # 0xFE -> CYRILLIC SMALL LETTER YU
|
||||
u'\u044f' # 0xFF -> CYRILLIC SMALL LETTER YA
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1252.py
Normal file
307
PythonHome/Lib/encodings/cp1252.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1252 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1252.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1252',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0192' # 0x83 -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\u02c6' # 0x88 -> MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\u0160' # 0x8A -> LATIN CAPITAL LETTER S WITH CARON
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0152' # 0x8C -> LATIN CAPITAL LIGATURE OE
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\u017d' # 0x8E -> LATIN CAPITAL LETTER Z WITH CARON
|
||||
u'\ufffe' # 0x8F -> UNDEFINED
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\u02dc' # 0x98 -> SMALL TILDE
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\u0161' # 0x9A -> LATIN SMALL LETTER S WITH CARON
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0153' # 0x9C -> LATIN SMALL LIGATURE OE
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\u017e' # 0x9E -> LATIN SMALL LETTER Z WITH CARON
|
||||
u'\u0178' # 0x9F -> LATIN CAPITAL LETTER Y WITH DIAERESIS
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\xa1' # 0xA1 -> INVERTED EXCLAMATION MARK
|
||||
u'\xa2' # 0xA2 -> CENT SIGN
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\xa5' # 0xA5 -> YEN SIGN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\xaa' # 0xAA -> FEMININE ORDINAL INDICATOR
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\xaf' # 0xAF -> MACRON
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xb8' # 0xB8 -> CEDILLA
|
||||
u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
|
||||
u'\xba' # 0xBA -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xbf' # 0xBF -> INVERTED QUESTION MARK
|
||||
u'\xc0' # 0xC0 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0xC1 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0xC2 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc3' # 0xC3 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc4' # 0xC4 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0xC5 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc6' # 0xC6 -> LATIN CAPITAL LETTER AE
|
||||
u'\xc7' # 0xC7 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xc8' # 0xC8 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xc9' # 0xC9 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0xCA -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0xCB -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xcc' # 0xCC -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\xcd' # 0xCD -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0xCE -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0xCF -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\xd0' # 0xD0 -> LATIN CAPITAL LETTER ETH
|
||||
u'\xd1' # 0xD1 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xd2' # 0xD2 -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xd3' # 0xD3 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd4' # 0xD4 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd5' # 0xD5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xd6' # 0xD6 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd7' # 0xD7 -> MULTIPLICATION SIGN
|
||||
u'\xd8' # 0xD8 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xd9' # 0xD9 -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xDA -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xdb' # 0xDB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdc' # 0xDC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xdd' # 0xDD -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xde' # 0xDE -> LATIN CAPITAL LETTER THORN
|
||||
u'\xdf' # 0xDF -> LATIN SMALL LETTER SHARP S
|
||||
u'\xe0' # 0xE0 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0xE1 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe2' # 0xE2 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe3' # 0xE3 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe4' # 0xE4 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe5' # 0xE5 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe6' # 0xE6 -> LATIN SMALL LETTER AE
|
||||
u'\xe7' # 0xE7 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xe8' # 0xE8 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xe9' # 0xE9 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0xEA -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0xEB -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xec' # 0xEC -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xed' # 0xED -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0xEE -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0xEF -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xf0' # 0xF0 -> LATIN SMALL LETTER ETH
|
||||
u'\xf1' # 0xF1 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xf2' # 0xF2 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xf3' # 0xF3 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf4' # 0xF4 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf5' # 0xF5 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xf6' # 0xF6 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf7' # 0xF7 -> DIVISION SIGN
|
||||
u'\xf8' # 0xF8 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xf9' # 0xF9 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xFA -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xfb' # 0xFB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xFC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xfd' # 0xFD -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xfe' # 0xFE -> LATIN SMALL LETTER THORN
|
||||
u'\xff' # 0xFF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1253.py
Normal file
307
PythonHome/Lib/encodings/cp1253.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1253 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1253.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1253',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0192' # 0x83 -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\ufffe' # 0x88 -> UNDEFINED
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\ufffe' # 0x8A -> UNDEFINED
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x8C -> UNDEFINED
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\ufffe' # 0x8E -> UNDEFINED
|
||||
u'\ufffe' # 0x8F -> UNDEFINED
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\ufffe' # 0x98 -> UNDEFINED
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\ufffe' # 0x9A -> UNDEFINED
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x9C -> UNDEFINED
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\ufffe' # 0x9E -> UNDEFINED
|
||||
u'\ufffe' # 0x9F -> UNDEFINED
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\u0385' # 0xA1 -> GREEK DIALYTIKA TONOS
|
||||
u'\u0386' # 0xA2 -> GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\xa5' # 0xA5 -> YEN SIGN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\ufffe' # 0xAA -> UNDEFINED
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\u2015' # 0xAF -> HORIZONTAL BAR
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\u0384' # 0xB4 -> GREEK TONOS
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\u0388' # 0xB8 -> GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
u'\u0389' # 0xB9 -> GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
u'\u038a' # 0xBA -> GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u038c' # 0xBC -> GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\u038e' # 0xBE -> GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
u'\u038f' # 0xBF -> GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
u'\u0390' # 0xC0 -> GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
|
||||
u'\u0391' # 0xC1 -> GREEK CAPITAL LETTER ALPHA
|
||||
u'\u0392' # 0xC2 -> GREEK CAPITAL LETTER BETA
|
||||
u'\u0393' # 0xC3 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u0394' # 0xC4 -> GREEK CAPITAL LETTER DELTA
|
||||
u'\u0395' # 0xC5 -> GREEK CAPITAL LETTER EPSILON
|
||||
u'\u0396' # 0xC6 -> GREEK CAPITAL LETTER ZETA
|
||||
u'\u0397' # 0xC7 -> GREEK CAPITAL LETTER ETA
|
||||
u'\u0398' # 0xC8 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u0399' # 0xC9 -> GREEK CAPITAL LETTER IOTA
|
||||
u'\u039a' # 0xCA -> GREEK CAPITAL LETTER KAPPA
|
||||
u'\u039b' # 0xCB -> GREEK CAPITAL LETTER LAMDA
|
||||
u'\u039c' # 0xCC -> GREEK CAPITAL LETTER MU
|
||||
u'\u039d' # 0xCD -> GREEK CAPITAL LETTER NU
|
||||
u'\u039e' # 0xCE -> GREEK CAPITAL LETTER XI
|
||||
u'\u039f' # 0xCF -> GREEK CAPITAL LETTER OMICRON
|
||||
u'\u03a0' # 0xD0 -> GREEK CAPITAL LETTER PI
|
||||
u'\u03a1' # 0xD1 -> GREEK CAPITAL LETTER RHO
|
||||
u'\ufffe' # 0xD2 -> UNDEFINED
|
||||
u'\u03a3' # 0xD3 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03a4' # 0xD4 -> GREEK CAPITAL LETTER TAU
|
||||
u'\u03a5' # 0xD5 -> GREEK CAPITAL LETTER UPSILON
|
||||
u'\u03a6' # 0xD6 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u03a7' # 0xD7 -> GREEK CAPITAL LETTER CHI
|
||||
u'\u03a8' # 0xD8 -> GREEK CAPITAL LETTER PSI
|
||||
u'\u03a9' # 0xD9 -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03aa' # 0xDA -> GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u03ab' # 0xDB -> GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\u03ac' # 0xDC -> GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
u'\u03ad' # 0xDD -> GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
u'\u03ae' # 0xDE -> GREEK SMALL LETTER ETA WITH TONOS
|
||||
u'\u03af' # 0xDF -> GREEK SMALL LETTER IOTA WITH TONOS
|
||||
u'\u03b0' # 0xE0 -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
|
||||
u'\u03b1' # 0xE1 -> GREEK SMALL LETTER ALPHA
|
||||
u'\u03b2' # 0xE2 -> GREEK SMALL LETTER BETA
|
||||
u'\u03b3' # 0xE3 -> GREEK SMALL LETTER GAMMA
|
||||
u'\u03b4' # 0xE4 -> GREEK SMALL LETTER DELTA
|
||||
u'\u03b5' # 0xE5 -> GREEK SMALL LETTER EPSILON
|
||||
u'\u03b6' # 0xE6 -> GREEK SMALL LETTER ZETA
|
||||
u'\u03b7' # 0xE7 -> GREEK SMALL LETTER ETA
|
||||
u'\u03b8' # 0xE8 -> GREEK SMALL LETTER THETA
|
||||
u'\u03b9' # 0xE9 -> GREEK SMALL LETTER IOTA
|
||||
u'\u03ba' # 0xEA -> GREEK SMALL LETTER KAPPA
|
||||
u'\u03bb' # 0xEB -> GREEK SMALL LETTER LAMDA
|
||||
u'\u03bc' # 0xEC -> GREEK SMALL LETTER MU
|
||||
u'\u03bd' # 0xED -> GREEK SMALL LETTER NU
|
||||
u'\u03be' # 0xEE -> GREEK SMALL LETTER XI
|
||||
u'\u03bf' # 0xEF -> GREEK SMALL LETTER OMICRON
|
||||
u'\u03c0' # 0xF0 -> GREEK SMALL LETTER PI
|
||||
u'\u03c1' # 0xF1 -> GREEK SMALL LETTER RHO
|
||||
u'\u03c2' # 0xF2 -> GREEK SMALL LETTER FINAL SIGMA
|
||||
u'\u03c3' # 0xF3 -> GREEK SMALL LETTER SIGMA
|
||||
u'\u03c4' # 0xF4 -> GREEK SMALL LETTER TAU
|
||||
u'\u03c5' # 0xF5 -> GREEK SMALL LETTER UPSILON
|
||||
u'\u03c6' # 0xF6 -> GREEK SMALL LETTER PHI
|
||||
u'\u03c7' # 0xF7 -> GREEK SMALL LETTER CHI
|
||||
u'\u03c8' # 0xF8 -> GREEK SMALL LETTER PSI
|
||||
u'\u03c9' # 0xF9 -> GREEK SMALL LETTER OMEGA
|
||||
u'\u03ca' # 0xFA -> GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u03cb' # 0xFB -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\u03cc' # 0xFC -> GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
u'\u03cd' # 0xFD -> GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
u'\u03ce' # 0xFE -> GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
u'\ufffe' # 0xFF -> UNDEFINED
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1254.py
Normal file
307
PythonHome/Lib/encodings/cp1254.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1254 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1254.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1254',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0192' # 0x83 -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\u02c6' # 0x88 -> MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\u0160' # 0x8A -> LATIN CAPITAL LETTER S WITH CARON
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0152' # 0x8C -> LATIN CAPITAL LIGATURE OE
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\ufffe' # 0x8E -> UNDEFINED
|
||||
u'\ufffe' # 0x8F -> UNDEFINED
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\u02dc' # 0x98 -> SMALL TILDE
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\u0161' # 0x9A -> LATIN SMALL LETTER S WITH CARON
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0153' # 0x9C -> LATIN SMALL LIGATURE OE
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\ufffe' # 0x9E -> UNDEFINED
|
||||
u'\u0178' # 0x9F -> LATIN CAPITAL LETTER Y WITH DIAERESIS
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\xa1' # 0xA1 -> INVERTED EXCLAMATION MARK
|
||||
u'\xa2' # 0xA2 -> CENT SIGN
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\xa5' # 0xA5 -> YEN SIGN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\xaa' # 0xAA -> FEMININE ORDINAL INDICATOR
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\xaf' # 0xAF -> MACRON
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xb8' # 0xB8 -> CEDILLA
|
||||
u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
|
||||
u'\xba' # 0xBA -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xbf' # 0xBF -> INVERTED QUESTION MARK
|
||||
u'\xc0' # 0xC0 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0xC1 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0xC2 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc3' # 0xC3 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc4' # 0xC4 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0xC5 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc6' # 0xC6 -> LATIN CAPITAL LETTER AE
|
||||
u'\xc7' # 0xC7 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xc8' # 0xC8 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xc9' # 0xC9 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0xCA -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0xCB -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xcc' # 0xCC -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\xcd' # 0xCD -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0xCE -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0xCF -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\u011e' # 0xD0 -> LATIN CAPITAL LETTER G WITH BREVE
|
||||
u'\xd1' # 0xD1 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xd2' # 0xD2 -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xd3' # 0xD3 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd4' # 0xD4 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd5' # 0xD5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xd6' # 0xD6 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd7' # 0xD7 -> MULTIPLICATION SIGN
|
||||
u'\xd8' # 0xD8 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xd9' # 0xD9 -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xDA -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xdb' # 0xDB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdc' # 0xDC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\u0130' # 0xDD -> LATIN CAPITAL LETTER I WITH DOT ABOVE
|
||||
u'\u015e' # 0xDE -> LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
u'\xdf' # 0xDF -> LATIN SMALL LETTER SHARP S
|
||||
u'\xe0' # 0xE0 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0xE1 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe2' # 0xE2 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe3' # 0xE3 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe4' # 0xE4 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe5' # 0xE5 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe6' # 0xE6 -> LATIN SMALL LETTER AE
|
||||
u'\xe7' # 0xE7 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xe8' # 0xE8 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xe9' # 0xE9 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0xEA -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0xEB -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xec' # 0xEC -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xed' # 0xED -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0xEE -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0xEF -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\u011f' # 0xF0 -> LATIN SMALL LETTER G WITH BREVE
|
||||
u'\xf1' # 0xF1 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xf2' # 0xF2 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xf3' # 0xF3 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf4' # 0xF4 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf5' # 0xF5 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xf6' # 0xF6 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf7' # 0xF7 -> DIVISION SIGN
|
||||
u'\xf8' # 0xF8 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xf9' # 0xF9 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xFA -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xfb' # 0xFB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xFC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\u0131' # 0xFD -> LATIN SMALL LETTER DOTLESS I
|
||||
u'\u015f' # 0xFE -> LATIN SMALL LETTER S WITH CEDILLA
|
||||
u'\xff' # 0xFF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1255.py
Normal file
307
PythonHome/Lib/encodings/cp1255.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1255 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1255.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1255',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0192' # 0x83 -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\u02c6' # 0x88 -> MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\ufffe' # 0x8A -> UNDEFINED
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x8C -> UNDEFINED
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\ufffe' # 0x8E -> UNDEFINED
|
||||
u'\ufffe' # 0x8F -> UNDEFINED
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\u02dc' # 0x98 -> SMALL TILDE
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\ufffe' # 0x9A -> UNDEFINED
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x9C -> UNDEFINED
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\ufffe' # 0x9E -> UNDEFINED
|
||||
u'\ufffe' # 0x9F -> UNDEFINED
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\xa1' # 0xA1 -> INVERTED EXCLAMATION MARK
|
||||
u'\xa2' # 0xA2 -> CENT SIGN
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\u20aa' # 0xA4 -> NEW SHEQEL SIGN
|
||||
u'\xa5' # 0xA5 -> YEN SIGN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\xd7' # 0xAA -> MULTIPLICATION SIGN
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\xaf' # 0xAF -> MACRON
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xb8' # 0xB8 -> CEDILLA
|
||||
u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
|
||||
u'\xf7' # 0xBA -> DIVISION SIGN
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xbf' # 0xBF -> INVERTED QUESTION MARK
|
||||
u'\u05b0' # 0xC0 -> HEBREW POINT SHEVA
|
||||
u'\u05b1' # 0xC1 -> HEBREW POINT HATAF SEGOL
|
||||
u'\u05b2' # 0xC2 -> HEBREW POINT HATAF PATAH
|
||||
u'\u05b3' # 0xC3 -> HEBREW POINT HATAF QAMATS
|
||||
u'\u05b4' # 0xC4 -> HEBREW POINT HIRIQ
|
||||
u'\u05b5' # 0xC5 -> HEBREW POINT TSERE
|
||||
u'\u05b6' # 0xC6 -> HEBREW POINT SEGOL
|
||||
u'\u05b7' # 0xC7 -> HEBREW POINT PATAH
|
||||
u'\u05b8' # 0xC8 -> HEBREW POINT QAMATS
|
||||
u'\u05b9' # 0xC9 -> HEBREW POINT HOLAM
|
||||
u'\ufffe' # 0xCA -> UNDEFINED
|
||||
u'\u05bb' # 0xCB -> HEBREW POINT QUBUTS
|
||||
u'\u05bc' # 0xCC -> HEBREW POINT DAGESH OR MAPIQ
|
||||
u'\u05bd' # 0xCD -> HEBREW POINT METEG
|
||||
u'\u05be' # 0xCE -> HEBREW PUNCTUATION MAQAF
|
||||
u'\u05bf' # 0xCF -> HEBREW POINT RAFE
|
||||
u'\u05c0' # 0xD0 -> HEBREW PUNCTUATION PASEQ
|
||||
u'\u05c1' # 0xD1 -> HEBREW POINT SHIN DOT
|
||||
u'\u05c2' # 0xD2 -> HEBREW POINT SIN DOT
|
||||
u'\u05c3' # 0xD3 -> HEBREW PUNCTUATION SOF PASUQ
|
||||
u'\u05f0' # 0xD4 -> HEBREW LIGATURE YIDDISH DOUBLE VAV
|
||||
u'\u05f1' # 0xD5 -> HEBREW LIGATURE YIDDISH VAV YOD
|
||||
u'\u05f2' # 0xD6 -> HEBREW LIGATURE YIDDISH DOUBLE YOD
|
||||
u'\u05f3' # 0xD7 -> HEBREW PUNCTUATION GERESH
|
||||
u'\u05f4' # 0xD8 -> HEBREW PUNCTUATION GERSHAYIM
|
||||
u'\ufffe' # 0xD9 -> UNDEFINED
|
||||
u'\ufffe' # 0xDA -> UNDEFINED
|
||||
u'\ufffe' # 0xDB -> UNDEFINED
|
||||
u'\ufffe' # 0xDC -> UNDEFINED
|
||||
u'\ufffe' # 0xDD -> UNDEFINED
|
||||
u'\ufffe' # 0xDE -> UNDEFINED
|
||||
u'\ufffe' # 0xDF -> UNDEFINED
|
||||
u'\u05d0' # 0xE0 -> HEBREW LETTER ALEF
|
||||
u'\u05d1' # 0xE1 -> HEBREW LETTER BET
|
||||
u'\u05d2' # 0xE2 -> HEBREW LETTER GIMEL
|
||||
u'\u05d3' # 0xE3 -> HEBREW LETTER DALET
|
||||
u'\u05d4' # 0xE4 -> HEBREW LETTER HE
|
||||
u'\u05d5' # 0xE5 -> HEBREW LETTER VAV
|
||||
u'\u05d6' # 0xE6 -> HEBREW LETTER ZAYIN
|
||||
u'\u05d7' # 0xE7 -> HEBREW LETTER HET
|
||||
u'\u05d8' # 0xE8 -> HEBREW LETTER TET
|
||||
u'\u05d9' # 0xE9 -> HEBREW LETTER YOD
|
||||
u'\u05da' # 0xEA -> HEBREW LETTER FINAL KAF
|
||||
u'\u05db' # 0xEB -> HEBREW LETTER KAF
|
||||
u'\u05dc' # 0xEC -> HEBREW LETTER LAMED
|
||||
u'\u05dd' # 0xED -> HEBREW LETTER FINAL MEM
|
||||
u'\u05de' # 0xEE -> HEBREW LETTER MEM
|
||||
u'\u05df' # 0xEF -> HEBREW LETTER FINAL NUN
|
||||
u'\u05e0' # 0xF0 -> HEBREW LETTER NUN
|
||||
u'\u05e1' # 0xF1 -> HEBREW LETTER SAMEKH
|
||||
u'\u05e2' # 0xF2 -> HEBREW LETTER AYIN
|
||||
u'\u05e3' # 0xF3 -> HEBREW LETTER FINAL PE
|
||||
u'\u05e4' # 0xF4 -> HEBREW LETTER PE
|
||||
u'\u05e5' # 0xF5 -> HEBREW LETTER FINAL TSADI
|
||||
u'\u05e6' # 0xF6 -> HEBREW LETTER TSADI
|
||||
u'\u05e7' # 0xF7 -> HEBREW LETTER QOF
|
||||
u'\u05e8' # 0xF8 -> HEBREW LETTER RESH
|
||||
u'\u05e9' # 0xF9 -> HEBREW LETTER SHIN
|
||||
u'\u05ea' # 0xFA -> HEBREW LETTER TAV
|
||||
u'\ufffe' # 0xFB -> UNDEFINED
|
||||
u'\ufffe' # 0xFC -> UNDEFINED
|
||||
u'\u200e' # 0xFD -> LEFT-TO-RIGHT MARK
|
||||
u'\u200f' # 0xFE -> RIGHT-TO-LEFT MARK
|
||||
u'\ufffe' # 0xFF -> UNDEFINED
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1256.py
Normal file
307
PythonHome/Lib/encodings/cp1256.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1256 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1256.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1256',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\u067e' # 0x81 -> ARABIC LETTER PEH
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0192' # 0x83 -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\u02c6' # 0x88 -> MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\u0679' # 0x8A -> ARABIC LETTER TTEH
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0152' # 0x8C -> LATIN CAPITAL LIGATURE OE
|
||||
u'\u0686' # 0x8D -> ARABIC LETTER TCHEH
|
||||
u'\u0698' # 0x8E -> ARABIC LETTER JEH
|
||||
u'\u0688' # 0x8F -> ARABIC LETTER DDAL
|
||||
u'\u06af' # 0x90 -> ARABIC LETTER GAF
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\u06a9' # 0x98 -> ARABIC LETTER KEHEH
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\u0691' # 0x9A -> ARABIC LETTER RREH
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0153' # 0x9C -> LATIN SMALL LIGATURE OE
|
||||
u'\u200c' # 0x9D -> ZERO WIDTH NON-JOINER
|
||||
u'\u200d' # 0x9E -> ZERO WIDTH JOINER
|
||||
u'\u06ba' # 0x9F -> ARABIC LETTER NOON GHUNNA
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\u060c' # 0xA1 -> ARABIC COMMA
|
||||
u'\xa2' # 0xA2 -> CENT SIGN
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\xa5' # 0xA5 -> YEN SIGN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\u06be' # 0xAA -> ARABIC LETTER HEH DOACHASHMEE
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\xaf' # 0xAF -> MACRON
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xb8' # 0xB8 -> CEDILLA
|
||||
u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
|
||||
u'\u061b' # 0xBA -> ARABIC SEMICOLON
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\u061f' # 0xBF -> ARABIC QUESTION MARK
|
||||
u'\u06c1' # 0xC0 -> ARABIC LETTER HEH GOAL
|
||||
u'\u0621' # 0xC1 -> ARABIC LETTER HAMZA
|
||||
u'\u0622' # 0xC2 -> ARABIC LETTER ALEF WITH MADDA ABOVE
|
||||
u'\u0623' # 0xC3 -> ARABIC LETTER ALEF WITH HAMZA ABOVE
|
||||
u'\u0624' # 0xC4 -> ARABIC LETTER WAW WITH HAMZA ABOVE
|
||||
u'\u0625' # 0xC5 -> ARABIC LETTER ALEF WITH HAMZA BELOW
|
||||
u'\u0626' # 0xC6 -> ARABIC LETTER YEH WITH HAMZA ABOVE
|
||||
u'\u0627' # 0xC7 -> ARABIC LETTER ALEF
|
||||
u'\u0628' # 0xC8 -> ARABIC LETTER BEH
|
||||
u'\u0629' # 0xC9 -> ARABIC LETTER TEH MARBUTA
|
||||
u'\u062a' # 0xCA -> ARABIC LETTER TEH
|
||||
u'\u062b' # 0xCB -> ARABIC LETTER THEH
|
||||
u'\u062c' # 0xCC -> ARABIC LETTER JEEM
|
||||
u'\u062d' # 0xCD -> ARABIC LETTER HAH
|
||||
u'\u062e' # 0xCE -> ARABIC LETTER KHAH
|
||||
u'\u062f' # 0xCF -> ARABIC LETTER DAL
|
||||
u'\u0630' # 0xD0 -> ARABIC LETTER THAL
|
||||
u'\u0631' # 0xD1 -> ARABIC LETTER REH
|
||||
u'\u0632' # 0xD2 -> ARABIC LETTER ZAIN
|
||||
u'\u0633' # 0xD3 -> ARABIC LETTER SEEN
|
||||
u'\u0634' # 0xD4 -> ARABIC LETTER SHEEN
|
||||
u'\u0635' # 0xD5 -> ARABIC LETTER SAD
|
||||
u'\u0636' # 0xD6 -> ARABIC LETTER DAD
|
||||
u'\xd7' # 0xD7 -> MULTIPLICATION SIGN
|
||||
u'\u0637' # 0xD8 -> ARABIC LETTER TAH
|
||||
u'\u0638' # 0xD9 -> ARABIC LETTER ZAH
|
||||
u'\u0639' # 0xDA -> ARABIC LETTER AIN
|
||||
u'\u063a' # 0xDB -> ARABIC LETTER GHAIN
|
||||
u'\u0640' # 0xDC -> ARABIC TATWEEL
|
||||
u'\u0641' # 0xDD -> ARABIC LETTER FEH
|
||||
u'\u0642' # 0xDE -> ARABIC LETTER QAF
|
||||
u'\u0643' # 0xDF -> ARABIC LETTER KAF
|
||||
u'\xe0' # 0xE0 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\u0644' # 0xE1 -> ARABIC LETTER LAM
|
||||
u'\xe2' # 0xE2 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\u0645' # 0xE3 -> ARABIC LETTER MEEM
|
||||
u'\u0646' # 0xE4 -> ARABIC LETTER NOON
|
||||
u'\u0647' # 0xE5 -> ARABIC LETTER HEH
|
||||
u'\u0648' # 0xE6 -> ARABIC LETTER WAW
|
||||
u'\xe7' # 0xE7 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xe8' # 0xE8 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xe9' # 0xE9 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0xEA -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0xEB -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\u0649' # 0xEC -> ARABIC LETTER ALEF MAKSURA
|
||||
u'\u064a' # 0xED -> ARABIC LETTER YEH
|
||||
u'\xee' # 0xEE -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0xEF -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\u064b' # 0xF0 -> ARABIC FATHATAN
|
||||
u'\u064c' # 0xF1 -> ARABIC DAMMATAN
|
||||
u'\u064d' # 0xF2 -> ARABIC KASRATAN
|
||||
u'\u064e' # 0xF3 -> ARABIC FATHA
|
||||
u'\xf4' # 0xF4 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\u064f' # 0xF5 -> ARABIC DAMMA
|
||||
u'\u0650' # 0xF6 -> ARABIC KASRA
|
||||
u'\xf7' # 0xF7 -> DIVISION SIGN
|
||||
u'\u0651' # 0xF8 -> ARABIC SHADDA
|
||||
u'\xf9' # 0xF9 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\u0652' # 0xFA -> ARABIC SUKUN
|
||||
u'\xfb' # 0xFB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xFC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\u200e' # 0xFD -> LEFT-TO-RIGHT MARK
|
||||
u'\u200f' # 0xFE -> RIGHT-TO-LEFT MARK
|
||||
u'\u06d2' # 0xFF -> ARABIC LETTER YEH BARREE
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1257.py
Normal file
307
PythonHome/Lib/encodings/cp1257.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1257 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1257.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1257',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\ufffe' # 0x83 -> UNDEFINED
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\ufffe' # 0x88 -> UNDEFINED
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\ufffe' # 0x8A -> UNDEFINED
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x8C -> UNDEFINED
|
||||
u'\xa8' # 0x8D -> DIAERESIS
|
||||
u'\u02c7' # 0x8E -> CARON
|
||||
u'\xb8' # 0x8F -> CEDILLA
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\ufffe' # 0x98 -> UNDEFINED
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\ufffe' # 0x9A -> UNDEFINED
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x9C -> UNDEFINED
|
||||
u'\xaf' # 0x9D -> MACRON
|
||||
u'\u02db' # 0x9E -> OGONEK
|
||||
u'\ufffe' # 0x9F -> UNDEFINED
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\ufffe' # 0xA1 -> UNDEFINED
|
||||
u'\xa2' # 0xA2 -> CENT SIGN
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\ufffe' # 0xA5 -> UNDEFINED
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xd8' # 0xA8 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\u0156' # 0xAA -> LATIN CAPITAL LETTER R WITH CEDILLA
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\xc6' # 0xAF -> LATIN CAPITAL LETTER AE
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xf8' # 0xB8 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
|
||||
u'\u0157' # 0xBA -> LATIN SMALL LETTER R WITH CEDILLA
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xe6' # 0xBF -> LATIN SMALL LETTER AE
|
||||
u'\u0104' # 0xC0 -> LATIN CAPITAL LETTER A WITH OGONEK
|
||||
u'\u012e' # 0xC1 -> LATIN CAPITAL LETTER I WITH OGONEK
|
||||
u'\u0100' # 0xC2 -> LATIN CAPITAL LETTER A WITH MACRON
|
||||
u'\u0106' # 0xC3 -> LATIN CAPITAL LETTER C WITH ACUTE
|
||||
u'\xc4' # 0xC4 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0xC5 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\u0118' # 0xC6 -> LATIN CAPITAL LETTER E WITH OGONEK
|
||||
u'\u0112' # 0xC7 -> LATIN CAPITAL LETTER E WITH MACRON
|
||||
u'\u010c' # 0xC8 -> LATIN CAPITAL LETTER C WITH CARON
|
||||
u'\xc9' # 0xC9 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\u0179' # 0xCA -> LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
u'\u0116' # 0xCB -> LATIN CAPITAL LETTER E WITH DOT ABOVE
|
||||
u'\u0122' # 0xCC -> LATIN CAPITAL LETTER G WITH CEDILLA
|
||||
u'\u0136' # 0xCD -> LATIN CAPITAL LETTER K WITH CEDILLA
|
||||
u'\u012a' # 0xCE -> LATIN CAPITAL LETTER I WITH MACRON
|
||||
u'\u013b' # 0xCF -> LATIN CAPITAL LETTER L WITH CEDILLA
|
||||
u'\u0160' # 0xD0 -> LATIN CAPITAL LETTER S WITH CARON
|
||||
u'\u0143' # 0xD1 -> LATIN CAPITAL LETTER N WITH ACUTE
|
||||
u'\u0145' # 0xD2 -> LATIN CAPITAL LETTER N WITH CEDILLA
|
||||
u'\xd3' # 0xD3 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\u014c' # 0xD4 -> LATIN CAPITAL LETTER O WITH MACRON
|
||||
u'\xd5' # 0xD5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xd6' # 0xD6 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd7' # 0xD7 -> MULTIPLICATION SIGN
|
||||
u'\u0172' # 0xD8 -> LATIN CAPITAL LETTER U WITH OGONEK
|
||||
u'\u0141' # 0xD9 -> LATIN CAPITAL LETTER L WITH STROKE
|
||||
u'\u015a' # 0xDA -> LATIN CAPITAL LETTER S WITH ACUTE
|
||||
u'\u016a' # 0xDB -> LATIN CAPITAL LETTER U WITH MACRON
|
||||
u'\xdc' # 0xDC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\u017b' # 0xDD -> LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
u'\u017d' # 0xDE -> LATIN CAPITAL LETTER Z WITH CARON
|
||||
u'\xdf' # 0xDF -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0105' # 0xE0 -> LATIN SMALL LETTER A WITH OGONEK
|
||||
u'\u012f' # 0xE1 -> LATIN SMALL LETTER I WITH OGONEK
|
||||
u'\u0101' # 0xE2 -> LATIN SMALL LETTER A WITH MACRON
|
||||
u'\u0107' # 0xE3 -> LATIN SMALL LETTER C WITH ACUTE
|
||||
u'\xe4' # 0xE4 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe5' # 0xE5 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\u0119' # 0xE6 -> LATIN SMALL LETTER E WITH OGONEK
|
||||
u'\u0113' # 0xE7 -> LATIN SMALL LETTER E WITH MACRON
|
||||
u'\u010d' # 0xE8 -> LATIN SMALL LETTER C WITH CARON
|
||||
u'\xe9' # 0xE9 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\u017a' # 0xEA -> LATIN SMALL LETTER Z WITH ACUTE
|
||||
u'\u0117' # 0xEB -> LATIN SMALL LETTER E WITH DOT ABOVE
|
||||
u'\u0123' # 0xEC -> LATIN SMALL LETTER G WITH CEDILLA
|
||||
u'\u0137' # 0xED -> LATIN SMALL LETTER K WITH CEDILLA
|
||||
u'\u012b' # 0xEE -> LATIN SMALL LETTER I WITH MACRON
|
||||
u'\u013c' # 0xEF -> LATIN SMALL LETTER L WITH CEDILLA
|
||||
u'\u0161' # 0xF0 -> LATIN SMALL LETTER S WITH CARON
|
||||
u'\u0144' # 0xF1 -> LATIN SMALL LETTER N WITH ACUTE
|
||||
u'\u0146' # 0xF2 -> LATIN SMALL LETTER N WITH CEDILLA
|
||||
u'\xf3' # 0xF3 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\u014d' # 0xF4 -> LATIN SMALL LETTER O WITH MACRON
|
||||
u'\xf5' # 0xF5 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xf6' # 0xF6 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf7' # 0xF7 -> DIVISION SIGN
|
||||
u'\u0173' # 0xF8 -> LATIN SMALL LETTER U WITH OGONEK
|
||||
u'\u0142' # 0xF9 -> LATIN SMALL LETTER L WITH STROKE
|
||||
u'\u015b' # 0xFA -> LATIN SMALL LETTER S WITH ACUTE
|
||||
u'\u016b' # 0xFB -> LATIN SMALL LETTER U WITH MACRON
|
||||
u'\xfc' # 0xFC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\u017c' # 0xFD -> LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
u'\u017e' # 0xFE -> LATIN SMALL LETTER Z WITH CARON
|
||||
u'\u02d9' # 0xFF -> DOT ABOVE
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp1258.py
Normal file
307
PythonHome/Lib/encodings/cp1258.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp1258 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1258.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp1258',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\u201a' # 0x82 -> SINGLE LOW-9 QUOTATION MARK
|
||||
u'\u0192' # 0x83 -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\u201e' # 0x84 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\u2020' # 0x86 -> DAGGER
|
||||
u'\u2021' # 0x87 -> DOUBLE DAGGER
|
||||
u'\u02c6' # 0x88 -> MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
u'\u2030' # 0x89 -> PER MILLE SIGN
|
||||
u'\ufffe' # 0x8A -> UNDEFINED
|
||||
u'\u2039' # 0x8B -> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0152' # 0x8C -> LATIN CAPITAL LIGATURE OE
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\ufffe' # 0x8E -> UNDEFINED
|
||||
u'\ufffe' # 0x8F -> UNDEFINED
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\u02dc' # 0x98 -> SMALL TILDE
|
||||
u'\u2122' # 0x99 -> TRADE MARK SIGN
|
||||
u'\ufffe' # 0x9A -> UNDEFINED
|
||||
u'\u203a' # 0x9B -> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
u'\u0153' # 0x9C -> LATIN SMALL LIGATURE OE
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\ufffe' # 0x9E -> UNDEFINED
|
||||
u'\u0178' # 0x9F -> LATIN CAPITAL LETTER Y WITH DIAERESIS
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\xa1' # 0xA1 -> INVERTED EXCLAMATION MARK
|
||||
u'\xa2' # 0xA2 -> CENT SIGN
|
||||
u'\xa3' # 0xA3 -> POUND SIGN
|
||||
u'\xa4' # 0xA4 -> CURRENCY SIGN
|
||||
u'\xa5' # 0xA5 -> YEN SIGN
|
||||
u'\xa6' # 0xA6 -> BROKEN BAR
|
||||
u'\xa7' # 0xA7 -> SECTION SIGN
|
||||
u'\xa8' # 0xA8 -> DIAERESIS
|
||||
u'\xa9' # 0xA9 -> COPYRIGHT SIGN
|
||||
u'\xaa' # 0xAA -> FEMININE ORDINAL INDICATOR
|
||||
u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xAC -> NOT SIGN
|
||||
u'\xad' # 0xAD -> SOFT HYPHEN
|
||||
u'\xae' # 0xAE -> REGISTERED SIGN
|
||||
u'\xaf' # 0xAF -> MACRON
|
||||
u'\xb0' # 0xB0 -> DEGREE SIGN
|
||||
u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
|
||||
u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
|
||||
u'\xb4' # 0xB4 -> ACUTE ACCENT
|
||||
u'\xb5' # 0xB5 -> MICRO SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xb7' # 0xB7 -> MIDDLE DOT
|
||||
u'\xb8' # 0xB8 -> CEDILLA
|
||||
u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
|
||||
u'\xba' # 0xBA -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xbf' # 0xBF -> INVERTED QUESTION MARK
|
||||
u'\xc0' # 0xC0 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0xC1 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0xC2 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\u0102' # 0xC3 -> LATIN CAPITAL LETTER A WITH BREVE
|
||||
u'\xc4' # 0xC4 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0xC5 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc6' # 0xC6 -> LATIN CAPITAL LETTER AE
|
||||
u'\xc7' # 0xC7 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xc8' # 0xC8 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xc9' # 0xC9 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0xCA -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0xCB -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\u0300' # 0xCC -> COMBINING GRAVE ACCENT
|
||||
u'\xcd' # 0xCD -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0xCE -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0xCF -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\u0110' # 0xD0 -> LATIN CAPITAL LETTER D WITH STROKE
|
||||
u'\xd1' # 0xD1 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\u0309' # 0xD2 -> COMBINING HOOK ABOVE
|
||||
u'\xd3' # 0xD3 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd4' # 0xD4 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\u01a0' # 0xD5 -> LATIN CAPITAL LETTER O WITH HORN
|
||||
u'\xd6' # 0xD6 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd7' # 0xD7 -> MULTIPLICATION SIGN
|
||||
u'\xd8' # 0xD8 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xd9' # 0xD9 -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xDA -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xdb' # 0xDB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdc' # 0xDC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\u01af' # 0xDD -> LATIN CAPITAL LETTER U WITH HORN
|
||||
u'\u0303' # 0xDE -> COMBINING TILDE
|
||||
u'\xdf' # 0xDF -> LATIN SMALL LETTER SHARP S
|
||||
u'\xe0' # 0xE0 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0xE1 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe2' # 0xE2 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\u0103' # 0xE3 -> LATIN SMALL LETTER A WITH BREVE
|
||||
u'\xe4' # 0xE4 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe5' # 0xE5 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe6' # 0xE6 -> LATIN SMALL LETTER AE
|
||||
u'\xe7' # 0xE7 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xe8' # 0xE8 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xe9' # 0xE9 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0xEA -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0xEB -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\u0301' # 0xEC -> COMBINING ACUTE ACCENT
|
||||
u'\xed' # 0xED -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0xEE -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0xEF -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\u0111' # 0xF0 -> LATIN SMALL LETTER D WITH STROKE
|
||||
u'\xf1' # 0xF1 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\u0323' # 0xF2 -> COMBINING DOT BELOW
|
||||
u'\xf3' # 0xF3 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf4' # 0xF4 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\u01a1' # 0xF5 -> LATIN SMALL LETTER O WITH HORN
|
||||
u'\xf6' # 0xF6 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf7' # 0xF7 -> DIVISION SIGN
|
||||
u'\xf8' # 0xF8 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xf9' # 0xF9 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xFA -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xfb' # 0xFB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xFC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\u01b0' # 0xFD -> LATIN SMALL LETTER U WITH HORN
|
||||
u'\u20ab' # 0xFE -> DONG SIGN
|
||||
u'\xff' # 0xFF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp424.py
Normal file
307
PythonHome/Lib/encodings/cp424.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp424 generated from 'MAPPINGS/VENDORS/MISC/CP424.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp424',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x9c' # 0x04 -> SELECT
|
||||
u'\t' # 0x05 -> HORIZONTAL TABULATION
|
||||
u'\x86' # 0x06 -> REQUIRED NEW LINE
|
||||
u'\x7f' # 0x07 -> DELETE
|
||||
u'\x97' # 0x08 -> GRAPHIC ESCAPE
|
||||
u'\x8d' # 0x09 -> SUPERSCRIPT
|
||||
u'\x8e' # 0x0A -> REPEAT
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x9d' # 0x14 -> RESTORE/ENABLE PRESENTATION
|
||||
u'\x85' # 0x15 -> NEW LINE
|
||||
u'\x08' # 0x16 -> BACKSPACE
|
||||
u'\x87' # 0x17 -> PROGRAM OPERATOR COMMUNICATION
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x92' # 0x1A -> UNIT BACK SPACE
|
||||
u'\x8f' # 0x1B -> CUSTOMER USE ONE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u'\x80' # 0x20 -> DIGIT SELECT
|
||||
u'\x81' # 0x21 -> START OF SIGNIFICANCE
|
||||
u'\x82' # 0x22 -> FIELD SEPARATOR
|
||||
u'\x83' # 0x23 -> WORD UNDERSCORE
|
||||
u'\x84' # 0x24 -> BYPASS OR INHIBIT PRESENTATION
|
||||
u'\n' # 0x25 -> LINE FEED
|
||||
u'\x17' # 0x26 -> END OF TRANSMISSION BLOCK
|
||||
u'\x1b' # 0x27 -> ESCAPE
|
||||
u'\x88' # 0x28 -> SET ATTRIBUTE
|
||||
u'\x89' # 0x29 -> START FIELD EXTENDED
|
||||
u'\x8a' # 0x2A -> SET MODE OR SWITCH
|
||||
u'\x8b' # 0x2B -> CONTROL SEQUENCE PREFIX
|
||||
u'\x8c' # 0x2C -> MODIFY FIELD ATTRIBUTE
|
||||
u'\x05' # 0x2D -> ENQUIRY
|
||||
u'\x06' # 0x2E -> ACKNOWLEDGE
|
||||
u'\x07' # 0x2F -> BELL
|
||||
u'\x90' # 0x30 -> <reserved>
|
||||
u'\x91' # 0x31 -> <reserved>
|
||||
u'\x16' # 0x32 -> SYNCHRONOUS IDLE
|
||||
u'\x93' # 0x33 -> INDEX RETURN
|
||||
u'\x94' # 0x34 -> PRESENTATION POSITION
|
||||
u'\x95' # 0x35 -> TRANSPARENT
|
||||
u'\x96' # 0x36 -> NUMERIC BACKSPACE
|
||||
u'\x04' # 0x37 -> END OF TRANSMISSION
|
||||
u'\x98' # 0x38 -> SUBSCRIPT
|
||||
u'\x99' # 0x39 -> INDENT TABULATION
|
||||
u'\x9a' # 0x3A -> REVERSE FORM FEED
|
||||
u'\x9b' # 0x3B -> CUSTOMER USE THREE
|
||||
u'\x14' # 0x3C -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x3D -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x9e' # 0x3E -> <reserved>
|
||||
u'\x1a' # 0x3F -> SUBSTITUTE
|
||||
u' ' # 0x40 -> SPACE
|
||||
u'\u05d0' # 0x41 -> HEBREW LETTER ALEF
|
||||
u'\u05d1' # 0x42 -> HEBREW LETTER BET
|
||||
u'\u05d2' # 0x43 -> HEBREW LETTER GIMEL
|
||||
u'\u05d3' # 0x44 -> HEBREW LETTER DALET
|
||||
u'\u05d4' # 0x45 -> HEBREW LETTER HE
|
||||
u'\u05d5' # 0x46 -> HEBREW LETTER VAV
|
||||
u'\u05d6' # 0x47 -> HEBREW LETTER ZAYIN
|
||||
u'\u05d7' # 0x48 -> HEBREW LETTER HET
|
||||
u'\u05d8' # 0x49 -> HEBREW LETTER TET
|
||||
u'\xa2' # 0x4A -> CENT SIGN
|
||||
u'.' # 0x4B -> FULL STOP
|
||||
u'<' # 0x4C -> LESS-THAN SIGN
|
||||
u'(' # 0x4D -> LEFT PARENTHESIS
|
||||
u'+' # 0x4E -> PLUS SIGN
|
||||
u'|' # 0x4F -> VERTICAL LINE
|
||||
u'&' # 0x50 -> AMPERSAND
|
||||
u'\u05d9' # 0x51 -> HEBREW LETTER YOD
|
||||
u'\u05da' # 0x52 -> HEBREW LETTER FINAL KAF
|
||||
u'\u05db' # 0x53 -> HEBREW LETTER KAF
|
||||
u'\u05dc' # 0x54 -> HEBREW LETTER LAMED
|
||||
u'\u05dd' # 0x55 -> HEBREW LETTER FINAL MEM
|
||||
u'\u05de' # 0x56 -> HEBREW LETTER MEM
|
||||
u'\u05df' # 0x57 -> HEBREW LETTER FINAL NUN
|
||||
u'\u05e0' # 0x58 -> HEBREW LETTER NUN
|
||||
u'\u05e1' # 0x59 -> HEBREW LETTER SAMEKH
|
||||
u'!' # 0x5A -> EXCLAMATION MARK
|
||||
u'$' # 0x5B -> DOLLAR SIGN
|
||||
u'*' # 0x5C -> ASTERISK
|
||||
u')' # 0x5D -> RIGHT PARENTHESIS
|
||||
u';' # 0x5E -> SEMICOLON
|
||||
u'\xac' # 0x5F -> NOT SIGN
|
||||
u'-' # 0x60 -> HYPHEN-MINUS
|
||||
u'/' # 0x61 -> SOLIDUS
|
||||
u'\u05e2' # 0x62 -> HEBREW LETTER AYIN
|
||||
u'\u05e3' # 0x63 -> HEBREW LETTER FINAL PE
|
||||
u'\u05e4' # 0x64 -> HEBREW LETTER PE
|
||||
u'\u05e5' # 0x65 -> HEBREW LETTER FINAL TSADI
|
||||
u'\u05e6' # 0x66 -> HEBREW LETTER TSADI
|
||||
u'\u05e7' # 0x67 -> HEBREW LETTER QOF
|
||||
u'\u05e8' # 0x68 -> HEBREW LETTER RESH
|
||||
u'\u05e9' # 0x69 -> HEBREW LETTER SHIN
|
||||
u'\xa6' # 0x6A -> BROKEN BAR
|
||||
u',' # 0x6B -> COMMA
|
||||
u'%' # 0x6C -> PERCENT SIGN
|
||||
u'_' # 0x6D -> LOW LINE
|
||||
u'>' # 0x6E -> GREATER-THAN SIGN
|
||||
u'?' # 0x6F -> QUESTION MARK
|
||||
u'\ufffe' # 0x70 -> UNDEFINED
|
||||
u'\u05ea' # 0x71 -> HEBREW LETTER TAV
|
||||
u'\ufffe' # 0x72 -> UNDEFINED
|
||||
u'\ufffe' # 0x73 -> UNDEFINED
|
||||
u'\xa0' # 0x74 -> NO-BREAK SPACE
|
||||
u'\ufffe' # 0x75 -> UNDEFINED
|
||||
u'\ufffe' # 0x76 -> UNDEFINED
|
||||
u'\ufffe' # 0x77 -> UNDEFINED
|
||||
u'\u2017' # 0x78 -> DOUBLE LOW LINE
|
||||
u'`' # 0x79 -> GRAVE ACCENT
|
||||
u':' # 0x7A -> COLON
|
||||
u'#' # 0x7B -> NUMBER SIGN
|
||||
u'@' # 0x7C -> COMMERCIAL AT
|
||||
u"'" # 0x7D -> APOSTROPHE
|
||||
u'=' # 0x7E -> EQUALS SIGN
|
||||
u'"' # 0x7F -> QUOTATION MARK
|
||||
u'\ufffe' # 0x80 -> UNDEFINED
|
||||
u'a' # 0x81 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x82 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x83 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x84 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x85 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x86 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x87 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x88 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x89 -> LATIN SMALL LETTER I
|
||||
u'\xab' # 0x8A -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x8B -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\ufffe' # 0x8C -> UNDEFINED
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\ufffe' # 0x8E -> UNDEFINED
|
||||
u'\xb1' # 0x8F -> PLUS-MINUS SIGN
|
||||
u'\xb0' # 0x90 -> DEGREE SIGN
|
||||
u'j' # 0x91 -> LATIN SMALL LETTER J
|
||||
u'k' # 0x92 -> LATIN SMALL LETTER K
|
||||
u'l' # 0x93 -> LATIN SMALL LETTER L
|
||||
u'm' # 0x94 -> LATIN SMALL LETTER M
|
||||
u'n' # 0x95 -> LATIN SMALL LETTER N
|
||||
u'o' # 0x96 -> LATIN SMALL LETTER O
|
||||
u'p' # 0x97 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x98 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x99 -> LATIN SMALL LETTER R
|
||||
u'\ufffe' # 0x9A -> UNDEFINED
|
||||
u'\ufffe' # 0x9B -> UNDEFINED
|
||||
u'\ufffe' # 0x9C -> UNDEFINED
|
||||
u'\xb8' # 0x9D -> CEDILLA
|
||||
u'\ufffe' # 0x9E -> UNDEFINED
|
||||
u'\xa4' # 0x9F -> CURRENCY SIGN
|
||||
u'\xb5' # 0xA0 -> MICRO SIGN
|
||||
u'~' # 0xA1 -> TILDE
|
||||
u's' # 0xA2 -> LATIN SMALL LETTER S
|
||||
u't' # 0xA3 -> LATIN SMALL LETTER T
|
||||
u'u' # 0xA4 -> LATIN SMALL LETTER U
|
||||
u'v' # 0xA5 -> LATIN SMALL LETTER V
|
||||
u'w' # 0xA6 -> LATIN SMALL LETTER W
|
||||
u'x' # 0xA7 -> LATIN SMALL LETTER X
|
||||
u'y' # 0xA8 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0xA9 -> LATIN SMALL LETTER Z
|
||||
u'\ufffe' # 0xAA -> UNDEFINED
|
||||
u'\ufffe' # 0xAB -> UNDEFINED
|
||||
u'\ufffe' # 0xAC -> UNDEFINED
|
||||
u'\ufffe' # 0xAD -> UNDEFINED
|
||||
u'\ufffe' # 0xAE -> UNDEFINED
|
||||
u'\xae' # 0xAF -> REGISTERED SIGN
|
||||
u'^' # 0xB0 -> CIRCUMFLEX ACCENT
|
||||
u'\xa3' # 0xB1 -> POUND SIGN
|
||||
u'\xa5' # 0xB2 -> YEN SIGN
|
||||
u'\xb7' # 0xB3 -> MIDDLE DOT
|
||||
u'\xa9' # 0xB4 -> COPYRIGHT SIGN
|
||||
u'\xa7' # 0xB5 -> SECTION SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xbc' # 0xB7 -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xB8 -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xB9 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'[' # 0xBA -> LEFT SQUARE BRACKET
|
||||
u']' # 0xBB -> RIGHT SQUARE BRACKET
|
||||
u'\xaf' # 0xBC -> MACRON
|
||||
u'\xa8' # 0xBD -> DIAERESIS
|
||||
u'\xb4' # 0xBE -> ACUTE ACCENT
|
||||
u'\xd7' # 0xBF -> MULTIPLICATION SIGN
|
||||
u'{' # 0xC0 -> LEFT CURLY BRACKET
|
||||
u'A' # 0xC1 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0xC2 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0xC3 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0xC4 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0xC5 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0xC6 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0xC7 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0xC8 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0xC9 -> LATIN CAPITAL LETTER I
|
||||
u'\xad' # 0xCA -> SOFT HYPHEN
|
||||
u'\ufffe' # 0xCB -> UNDEFINED
|
||||
u'\ufffe' # 0xCC -> UNDEFINED
|
||||
u'\ufffe' # 0xCD -> UNDEFINED
|
||||
u'\ufffe' # 0xCE -> UNDEFINED
|
||||
u'\ufffe' # 0xCF -> UNDEFINED
|
||||
u'}' # 0xD0 -> RIGHT CURLY BRACKET
|
||||
u'J' # 0xD1 -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0xD2 -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0xD3 -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0xD4 -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0xD5 -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0xD6 -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0xD7 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0xD8 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0xD9 -> LATIN CAPITAL LETTER R
|
||||
u'\xb9' # 0xDA -> SUPERSCRIPT ONE
|
||||
u'\ufffe' # 0xDB -> UNDEFINED
|
||||
u'\ufffe' # 0xDC -> UNDEFINED
|
||||
u'\ufffe' # 0xDD -> UNDEFINED
|
||||
u'\ufffe' # 0xDE -> UNDEFINED
|
||||
u'\ufffe' # 0xDF -> UNDEFINED
|
||||
u'\\' # 0xE0 -> REVERSE SOLIDUS
|
||||
u'\xf7' # 0xE1 -> DIVISION SIGN
|
||||
u'S' # 0xE2 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0xE3 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0xE4 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0xE5 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0xE6 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0xE7 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0xE8 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0xE9 -> LATIN CAPITAL LETTER Z
|
||||
u'\xb2' # 0xEA -> SUPERSCRIPT TWO
|
||||
u'\ufffe' # 0xEB -> UNDEFINED
|
||||
u'\ufffe' # 0xEC -> UNDEFINED
|
||||
u'\ufffe' # 0xED -> UNDEFINED
|
||||
u'\ufffe' # 0xEE -> UNDEFINED
|
||||
u'\ufffe' # 0xEF -> UNDEFINED
|
||||
u'0' # 0xF0 -> DIGIT ZERO
|
||||
u'1' # 0xF1 -> DIGIT ONE
|
||||
u'2' # 0xF2 -> DIGIT TWO
|
||||
u'3' # 0xF3 -> DIGIT THREE
|
||||
u'4' # 0xF4 -> DIGIT FOUR
|
||||
u'5' # 0xF5 -> DIGIT FIVE
|
||||
u'6' # 0xF6 -> DIGIT SIX
|
||||
u'7' # 0xF7 -> DIGIT SEVEN
|
||||
u'8' # 0xF8 -> DIGIT EIGHT
|
||||
u'9' # 0xF9 -> DIGIT NINE
|
||||
u'\xb3' # 0xFA -> SUPERSCRIPT THREE
|
||||
u'\ufffe' # 0xFB -> UNDEFINED
|
||||
u'\ufffe' # 0xFC -> UNDEFINED
|
||||
u'\ufffe' # 0xFD -> UNDEFINED
|
||||
u'\ufffe' # 0xFE -> UNDEFINED
|
||||
u'\x9f' # 0xFF -> EIGHT ONES
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp437.py
Normal file
698
PythonHome/Lib/encodings/cp437.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec cp437 generated from 'VENDORS/MICSFT/PC/CP437.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp437',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00ef, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x00ec, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x00f2, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x00ff, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00a2, # CENT SIGN
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00a5, # YEN SIGN
|
||||
0x009e: 0x20a7, # PESETA SIGN
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00a7: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x2310, # REVERSED NOT SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00e3: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00e4: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00e5: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00e8: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00e9: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ea: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00eb: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00ec: 0x221e, # INFINITY
|
||||
0x00ed: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ee: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00ef: 0x2229, # INTERSECTION
|
||||
0x00f0: 0x2261, # IDENTICAL TO
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x2320, # TOP HALF INTEGRAL
|
||||
0x00f5: 0x2321, # BOTTOM HALF INTEGRAL
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x008b -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xec' # 0x008d -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0x0095 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xff' # 0x0098 -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xa2' # 0x009b -> CENT SIGN
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xa5' # 0x009d -> YEN SIGN
|
||||
u'\u20a7' # 0x009e -> PESETA SIGN
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xaa' # 0x00a6 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x00a7 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\u2310' # 0x00a9 -> REVERSED NOT SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b1' # 0x00e0 -> GREEK SMALL LETTER ALPHA
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0393' # 0x00e2 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u03c0' # 0x00e3 -> GREEK SMALL LETTER PI
|
||||
u'\u03a3' # 0x00e4 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03c3' # 0x00e5 -> GREEK SMALL LETTER SIGMA
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u03c4' # 0x00e7 -> GREEK SMALL LETTER TAU
|
||||
u'\u03a6' # 0x00e8 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u0398' # 0x00e9 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u03a9' # 0x00ea -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b4' # 0x00eb -> GREEK SMALL LETTER DELTA
|
||||
u'\u221e' # 0x00ec -> INFINITY
|
||||
u'\u03c6' # 0x00ed -> GREEK SMALL LETTER PHI
|
||||
u'\u03b5' # 0x00ee -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2229' # 0x00ef -> INTERSECTION
|
||||
u'\u2261' # 0x00f0 -> IDENTICAL TO
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u2320' # 0x00f4 -> TOP HALF INTEGRAL
|
||||
u'\u2321' # 0x00f5 -> BOTTOM HALF INTEGRAL
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a2: 0x009b, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a5: 0x009d, # YEN SIGN
|
||||
0x00aa: 0x00a6, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00ba: 0x00a7, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ec: 0x008d, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00ef: 0x008b, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f2: 0x0095, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00ff: 0x0098, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x0393: 0x00e2, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0398: 0x00e9, # GREEK CAPITAL LETTER THETA
|
||||
0x03a3: 0x00e4, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a6: 0x00e8, # GREEK CAPITAL LETTER PHI
|
||||
0x03a9: 0x00ea, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03b1: 0x00e0, # GREEK SMALL LETTER ALPHA
|
||||
0x03b4: 0x00eb, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00ee, # GREEK SMALL LETTER EPSILON
|
||||
0x03c0: 0x00e3, # GREEK SMALL LETTER PI
|
||||
0x03c3: 0x00e5, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00e7, # GREEK SMALL LETTER TAU
|
||||
0x03c6: 0x00ed, # GREEK SMALL LETTER PHI
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x20a7: 0x009e, # PESETA SIGN
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x221e: 0x00ec, # INFINITY
|
||||
0x2229: 0x00ef, # INTERSECTION
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2261: 0x00f0, # IDENTICAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2310: 0x00a9, # REVERSED NOT SIGN
|
||||
0x2320: 0x00f4, # TOP HALF INTEGRAL
|
||||
0x2321: 0x00f5, # BOTTOM HALF INTEGRAL
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp500.py
Normal file
307
PythonHome/Lib/encodings/cp500.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp500 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP500.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp500',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x9c' # 0x04 -> CONTROL
|
||||
u'\t' # 0x05 -> HORIZONTAL TABULATION
|
||||
u'\x86' # 0x06 -> CONTROL
|
||||
u'\x7f' # 0x07 -> DELETE
|
||||
u'\x97' # 0x08 -> CONTROL
|
||||
u'\x8d' # 0x09 -> CONTROL
|
||||
u'\x8e' # 0x0A -> CONTROL
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x9d' # 0x14 -> CONTROL
|
||||
u'\x85' # 0x15 -> CONTROL
|
||||
u'\x08' # 0x16 -> BACKSPACE
|
||||
u'\x87' # 0x17 -> CONTROL
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x92' # 0x1A -> CONTROL
|
||||
u'\x8f' # 0x1B -> CONTROL
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u'\x80' # 0x20 -> CONTROL
|
||||
u'\x81' # 0x21 -> CONTROL
|
||||
u'\x82' # 0x22 -> CONTROL
|
||||
u'\x83' # 0x23 -> CONTROL
|
||||
u'\x84' # 0x24 -> CONTROL
|
||||
u'\n' # 0x25 -> LINE FEED
|
||||
u'\x17' # 0x26 -> END OF TRANSMISSION BLOCK
|
||||
u'\x1b' # 0x27 -> ESCAPE
|
||||
u'\x88' # 0x28 -> CONTROL
|
||||
u'\x89' # 0x29 -> CONTROL
|
||||
u'\x8a' # 0x2A -> CONTROL
|
||||
u'\x8b' # 0x2B -> CONTROL
|
||||
u'\x8c' # 0x2C -> CONTROL
|
||||
u'\x05' # 0x2D -> ENQUIRY
|
||||
u'\x06' # 0x2E -> ACKNOWLEDGE
|
||||
u'\x07' # 0x2F -> BELL
|
||||
u'\x90' # 0x30 -> CONTROL
|
||||
u'\x91' # 0x31 -> CONTROL
|
||||
u'\x16' # 0x32 -> SYNCHRONOUS IDLE
|
||||
u'\x93' # 0x33 -> CONTROL
|
||||
u'\x94' # 0x34 -> CONTROL
|
||||
u'\x95' # 0x35 -> CONTROL
|
||||
u'\x96' # 0x36 -> CONTROL
|
||||
u'\x04' # 0x37 -> END OF TRANSMISSION
|
||||
u'\x98' # 0x38 -> CONTROL
|
||||
u'\x99' # 0x39 -> CONTROL
|
||||
u'\x9a' # 0x3A -> CONTROL
|
||||
u'\x9b' # 0x3B -> CONTROL
|
||||
u'\x14' # 0x3C -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x3D -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x9e' # 0x3E -> CONTROL
|
||||
u'\x1a' # 0x3F -> SUBSTITUTE
|
||||
u' ' # 0x40 -> SPACE
|
||||
u'\xa0' # 0x41 -> NO-BREAK SPACE
|
||||
u'\xe2' # 0x42 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x43 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x44 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe1' # 0x45 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xe3' # 0x46 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe5' # 0x47 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x48 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xf1' # 0x49 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'[' # 0x4A -> LEFT SQUARE BRACKET
|
||||
u'.' # 0x4B -> FULL STOP
|
||||
u'<' # 0x4C -> LESS-THAN SIGN
|
||||
u'(' # 0x4D -> LEFT PARENTHESIS
|
||||
u'+' # 0x4E -> PLUS SIGN
|
||||
u'!' # 0x4F -> EXCLAMATION MARK
|
||||
u'&' # 0x50 -> AMPERSAND
|
||||
u'\xe9' # 0x51 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xea' # 0x52 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x53 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x54 -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xed' # 0x55 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xee' # 0x56 -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xef' # 0x57 -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xec' # 0x58 -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xdf' # 0x59 -> LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
u']' # 0x5A -> RIGHT SQUARE BRACKET
|
||||
u'$' # 0x5B -> DOLLAR SIGN
|
||||
u'*' # 0x5C -> ASTERISK
|
||||
u')' # 0x5D -> RIGHT PARENTHESIS
|
||||
u';' # 0x5E -> SEMICOLON
|
||||
u'^' # 0x5F -> CIRCUMFLEX ACCENT
|
||||
u'-' # 0x60 -> HYPHEN-MINUS
|
||||
u'/' # 0x61 -> SOLIDUS
|
||||
u'\xc2' # 0x62 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc4' # 0x63 -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc0' # 0x64 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0x65 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc3' # 0x66 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc5' # 0x67 -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc7' # 0x68 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xd1' # 0x69 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xa6' # 0x6A -> BROKEN BAR
|
||||
u',' # 0x6B -> COMMA
|
||||
u'%' # 0x6C -> PERCENT SIGN
|
||||
u'_' # 0x6D -> LOW LINE
|
||||
u'>' # 0x6E -> GREATER-THAN SIGN
|
||||
u'?' # 0x6F -> QUESTION MARK
|
||||
u'\xf8' # 0x70 -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xc9' # 0x71 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xca' # 0x72 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x73 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x74 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xcd' # 0x75 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x76 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x77 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\xcc' # 0x78 -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'`' # 0x79 -> GRAVE ACCENT
|
||||
u':' # 0x7A -> COLON
|
||||
u'#' # 0x7B -> NUMBER SIGN
|
||||
u'@' # 0x7C -> COMMERCIAL AT
|
||||
u"'" # 0x7D -> APOSTROPHE
|
||||
u'=' # 0x7E -> EQUALS SIGN
|
||||
u'"' # 0x7F -> QUOTATION MARK
|
||||
u'\xd8' # 0x80 -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'a' # 0x81 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x82 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x83 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x84 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x85 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x86 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x87 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x88 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x89 -> LATIN SMALL LETTER I
|
||||
u'\xab' # 0x8A -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x8B -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xf0' # 0x8C -> LATIN SMALL LETTER ETH (ICELANDIC)
|
||||
u'\xfd' # 0x8D -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xfe' # 0x8E -> LATIN SMALL LETTER THORN (ICELANDIC)
|
||||
u'\xb1' # 0x8F -> PLUS-MINUS SIGN
|
||||
u'\xb0' # 0x90 -> DEGREE SIGN
|
||||
u'j' # 0x91 -> LATIN SMALL LETTER J
|
||||
u'k' # 0x92 -> LATIN SMALL LETTER K
|
||||
u'l' # 0x93 -> LATIN SMALL LETTER L
|
||||
u'm' # 0x94 -> LATIN SMALL LETTER M
|
||||
u'n' # 0x95 -> LATIN SMALL LETTER N
|
||||
u'o' # 0x96 -> LATIN SMALL LETTER O
|
||||
u'p' # 0x97 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x98 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x99 -> LATIN SMALL LETTER R
|
||||
u'\xaa' # 0x9A -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x9B -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xe6' # 0x9C -> LATIN SMALL LIGATURE AE
|
||||
u'\xb8' # 0x9D -> CEDILLA
|
||||
u'\xc6' # 0x9E -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xa4' # 0x9F -> CURRENCY SIGN
|
||||
u'\xb5' # 0xA0 -> MICRO SIGN
|
||||
u'~' # 0xA1 -> TILDE
|
||||
u's' # 0xA2 -> LATIN SMALL LETTER S
|
||||
u't' # 0xA3 -> LATIN SMALL LETTER T
|
||||
u'u' # 0xA4 -> LATIN SMALL LETTER U
|
||||
u'v' # 0xA5 -> LATIN SMALL LETTER V
|
||||
u'w' # 0xA6 -> LATIN SMALL LETTER W
|
||||
u'x' # 0xA7 -> LATIN SMALL LETTER X
|
||||
u'y' # 0xA8 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0xA9 -> LATIN SMALL LETTER Z
|
||||
u'\xa1' # 0xAA -> INVERTED EXCLAMATION MARK
|
||||
u'\xbf' # 0xAB -> INVERTED QUESTION MARK
|
||||
u'\xd0' # 0xAC -> LATIN CAPITAL LETTER ETH (ICELANDIC)
|
||||
u'\xdd' # 0xAD -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xde' # 0xAE -> LATIN CAPITAL LETTER THORN (ICELANDIC)
|
||||
u'\xae' # 0xAF -> REGISTERED SIGN
|
||||
u'\xa2' # 0xB0 -> CENT SIGN
|
||||
u'\xa3' # 0xB1 -> POUND SIGN
|
||||
u'\xa5' # 0xB2 -> YEN SIGN
|
||||
u'\xb7' # 0xB3 -> MIDDLE DOT
|
||||
u'\xa9' # 0xB4 -> COPYRIGHT SIGN
|
||||
u'\xa7' # 0xB5 -> SECTION SIGN
|
||||
u'\xb6' # 0xB6 -> PILCROW SIGN
|
||||
u'\xbc' # 0xB7 -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbd' # 0xB8 -> VULGAR FRACTION ONE HALF
|
||||
u'\xbe' # 0xB9 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xac' # 0xBA -> NOT SIGN
|
||||
u'|' # 0xBB -> VERTICAL LINE
|
||||
u'\xaf' # 0xBC -> MACRON
|
||||
u'\xa8' # 0xBD -> DIAERESIS
|
||||
u'\xb4' # 0xBE -> ACUTE ACCENT
|
||||
u'\xd7' # 0xBF -> MULTIPLICATION SIGN
|
||||
u'{' # 0xC0 -> LEFT CURLY BRACKET
|
||||
u'A' # 0xC1 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0xC2 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0xC3 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0xC4 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0xC5 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0xC6 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0xC7 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0xC8 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0xC9 -> LATIN CAPITAL LETTER I
|
||||
u'\xad' # 0xCA -> SOFT HYPHEN
|
||||
u'\xf4' # 0xCB -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0xCC -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0xCD -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xf3' # 0xCE -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xf5' # 0xCF -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'}' # 0xD0 -> RIGHT CURLY BRACKET
|
||||
u'J' # 0xD1 -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0xD2 -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0xD3 -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0xD4 -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0xD5 -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0xD6 -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0xD7 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0xD8 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0xD9 -> LATIN CAPITAL LETTER R
|
||||
u'\xb9' # 0xDA -> SUPERSCRIPT ONE
|
||||
u'\xfb' # 0xDB -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xfc' # 0xDC -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xf9' # 0xDD -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xfa' # 0xDE -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xff' # 0xDF -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\\' # 0xE0 -> REVERSE SOLIDUS
|
||||
u'\xf7' # 0xE1 -> DIVISION SIGN
|
||||
u'S' # 0xE2 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0xE3 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0xE4 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0xE5 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0xE6 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0xE7 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0xE8 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0xE9 -> LATIN CAPITAL LETTER Z
|
||||
u'\xb2' # 0xEA -> SUPERSCRIPT TWO
|
||||
u'\xd4' # 0xEB -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd6' # 0xEC -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xd2' # 0xED -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xd3' # 0xEE -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xd5' # 0xEF -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'0' # 0xF0 -> DIGIT ZERO
|
||||
u'1' # 0xF1 -> DIGIT ONE
|
||||
u'2' # 0xF2 -> DIGIT TWO
|
||||
u'3' # 0xF3 -> DIGIT THREE
|
||||
u'4' # 0xF4 -> DIGIT FOUR
|
||||
u'5' # 0xF5 -> DIGIT FIVE
|
||||
u'6' # 0xF6 -> DIGIT SIX
|
||||
u'7' # 0xF7 -> DIGIT SEVEN
|
||||
u'8' # 0xF8 -> DIGIT EIGHT
|
||||
u'9' # 0xF9 -> DIGIT NINE
|
||||
u'\xb3' # 0xFA -> SUPERSCRIPT THREE
|
||||
u'\xdb' # 0xFB -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdc' # 0xFC -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xd9' # 0xFD -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xda' # 0xFE -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\x9f' # 0xFF -> CONTROL
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
309
PythonHome/Lib/encodings/cp720.py
Normal file
309
PythonHome/Lib/encodings/cp720.py
Normal file
@@ -0,0 +1,309 @@
|
||||
"""Python Character Mapping Codec cp720 generated on Windows:
|
||||
Vista 6.0.6002 SP2 Multiprocessor Free with the command:
|
||||
python Tools/unicode/genwincodec.py 720
|
||||
"""#"
|
||||
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp720',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> CONTROL CHARACTER
|
||||
u'\x01' # 0x01 -> CONTROL CHARACTER
|
||||
u'\x02' # 0x02 -> CONTROL CHARACTER
|
||||
u'\x03' # 0x03 -> CONTROL CHARACTER
|
||||
u'\x04' # 0x04 -> CONTROL CHARACTER
|
||||
u'\x05' # 0x05 -> CONTROL CHARACTER
|
||||
u'\x06' # 0x06 -> CONTROL CHARACTER
|
||||
u'\x07' # 0x07 -> CONTROL CHARACTER
|
||||
u'\x08' # 0x08 -> CONTROL CHARACTER
|
||||
u'\t' # 0x09 -> CONTROL CHARACTER
|
||||
u'\n' # 0x0A -> CONTROL CHARACTER
|
||||
u'\x0b' # 0x0B -> CONTROL CHARACTER
|
||||
u'\x0c' # 0x0C -> CONTROL CHARACTER
|
||||
u'\r' # 0x0D -> CONTROL CHARACTER
|
||||
u'\x0e' # 0x0E -> CONTROL CHARACTER
|
||||
u'\x0f' # 0x0F -> CONTROL CHARACTER
|
||||
u'\x10' # 0x10 -> CONTROL CHARACTER
|
||||
u'\x11' # 0x11 -> CONTROL CHARACTER
|
||||
u'\x12' # 0x12 -> CONTROL CHARACTER
|
||||
u'\x13' # 0x13 -> CONTROL CHARACTER
|
||||
u'\x14' # 0x14 -> CONTROL CHARACTER
|
||||
u'\x15' # 0x15 -> CONTROL CHARACTER
|
||||
u'\x16' # 0x16 -> CONTROL CHARACTER
|
||||
u'\x17' # 0x17 -> CONTROL CHARACTER
|
||||
u'\x18' # 0x18 -> CONTROL CHARACTER
|
||||
u'\x19' # 0x19 -> CONTROL CHARACTER
|
||||
u'\x1a' # 0x1A -> CONTROL CHARACTER
|
||||
u'\x1b' # 0x1B -> CONTROL CHARACTER
|
||||
u'\x1c' # 0x1C -> CONTROL CHARACTER
|
||||
u'\x1d' # 0x1D -> CONTROL CHARACTER
|
||||
u'\x1e' # 0x1E -> CONTROL CHARACTER
|
||||
u'\x1f' # 0x1F -> CONTROL CHARACTER
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> CONTROL CHARACTER
|
||||
u'\x80'
|
||||
u'\x81'
|
||||
u'\xe9' # 0x82 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x83 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\x84'
|
||||
u'\xe0' # 0x85 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\x86'
|
||||
u'\xe7' # 0x87 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x88 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x89 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x8A -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x8B -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x8C -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\x8d'
|
||||
u'\x8e'
|
||||
u'\x8f'
|
||||
u'\x90'
|
||||
u'\u0651' # 0x91 -> ARABIC SHADDA
|
||||
u'\u0652' # 0x92 -> ARABIC SUKUN
|
||||
u'\xf4' # 0x93 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xa4' # 0x94 -> CURRENCY SIGN
|
||||
u'\u0640' # 0x95 -> ARABIC TATWEEL
|
||||
u'\xfb' # 0x96 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x97 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\u0621' # 0x98 -> ARABIC LETTER HAMZA
|
||||
u'\u0622' # 0x99 -> ARABIC LETTER ALEF WITH MADDA ABOVE
|
||||
u'\u0623' # 0x9A -> ARABIC LETTER ALEF WITH HAMZA ABOVE
|
||||
u'\u0624' # 0x9B -> ARABIC LETTER WAW WITH HAMZA ABOVE
|
||||
u'\xa3' # 0x9C -> POUND SIGN
|
||||
u'\u0625' # 0x9D -> ARABIC LETTER ALEF WITH HAMZA BELOW
|
||||
u'\u0626' # 0x9E -> ARABIC LETTER YEH WITH HAMZA ABOVE
|
||||
u'\u0627' # 0x9F -> ARABIC LETTER ALEF
|
||||
u'\u0628' # 0xA0 -> ARABIC LETTER BEH
|
||||
u'\u0629' # 0xA1 -> ARABIC LETTER TEH MARBUTA
|
||||
u'\u062a' # 0xA2 -> ARABIC LETTER TEH
|
||||
u'\u062b' # 0xA3 -> ARABIC LETTER THEH
|
||||
u'\u062c' # 0xA4 -> ARABIC LETTER JEEM
|
||||
u'\u062d' # 0xA5 -> ARABIC LETTER HAH
|
||||
u'\u062e' # 0xA6 -> ARABIC LETTER KHAH
|
||||
u'\u062f' # 0xA7 -> ARABIC LETTER DAL
|
||||
u'\u0630' # 0xA8 -> ARABIC LETTER THAL
|
||||
u'\u0631' # 0xA9 -> ARABIC LETTER REH
|
||||
u'\u0632' # 0xAA -> ARABIC LETTER ZAIN
|
||||
u'\u0633' # 0xAB -> ARABIC LETTER SEEN
|
||||
u'\u0634' # 0xAC -> ARABIC LETTER SHEEN
|
||||
u'\u0635' # 0xAD -> ARABIC LETTER SAD
|
||||
u'\xab' # 0xAE -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0xAF -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0xB0 -> LIGHT SHADE
|
||||
u'\u2592' # 0xB1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0xB2 -> DARK SHADE
|
||||
u'\u2502' # 0xB3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0xB4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0xB5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0xB6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0xB7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0xB8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0xB9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0xBA -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0xBB -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0xBC -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0xBD -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0xBE -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0xBF -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0xC0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0xC1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0xC2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0xC3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0xC4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0xC5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0xC6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0xC7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0xC8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0xC9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0xCA -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0xCB -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0xCC -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0xCD -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0xCE -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0xCF -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0xD0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0xD1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0xD2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0xD3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0xD4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0xD5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0xD6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0xD7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0xD8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0xD9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0xDA -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0xDB -> FULL BLOCK
|
||||
u'\u2584' # 0xDC -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0xDD -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0xDE -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0xDF -> UPPER HALF BLOCK
|
||||
u'\u0636' # 0xE0 -> ARABIC LETTER DAD
|
||||
u'\u0637' # 0xE1 -> ARABIC LETTER TAH
|
||||
u'\u0638' # 0xE2 -> ARABIC LETTER ZAH
|
||||
u'\u0639' # 0xE3 -> ARABIC LETTER AIN
|
||||
u'\u063a' # 0xE4 -> ARABIC LETTER GHAIN
|
||||
u'\u0641' # 0xE5 -> ARABIC LETTER FEH
|
||||
u'\xb5' # 0xE6 -> MICRO SIGN
|
||||
u'\u0642' # 0xE7 -> ARABIC LETTER QAF
|
||||
u'\u0643' # 0xE8 -> ARABIC LETTER KAF
|
||||
u'\u0644' # 0xE9 -> ARABIC LETTER LAM
|
||||
u'\u0645' # 0xEA -> ARABIC LETTER MEEM
|
||||
u'\u0646' # 0xEB -> ARABIC LETTER NOON
|
||||
u'\u0647' # 0xEC -> ARABIC LETTER HEH
|
||||
u'\u0648' # 0xED -> ARABIC LETTER WAW
|
||||
u'\u0649' # 0xEE -> ARABIC LETTER ALEF MAKSURA
|
||||
u'\u064a' # 0xEF -> ARABIC LETTER YEH
|
||||
u'\u2261' # 0xF0 -> IDENTICAL TO
|
||||
u'\u064b' # 0xF1 -> ARABIC FATHATAN
|
||||
u'\u064c' # 0xF2 -> ARABIC DAMMATAN
|
||||
u'\u064d' # 0xF3 -> ARABIC KASRATAN
|
||||
u'\u064e' # 0xF4 -> ARABIC FATHA
|
||||
u'\u064f' # 0xF5 -> ARABIC DAMMA
|
||||
u'\u0650' # 0xF6 -> ARABIC KASRA
|
||||
u'\u2248' # 0xF7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0xF8 -> DEGREE SIGN
|
||||
u'\u2219' # 0xF9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0xFA -> MIDDLE DOT
|
||||
u'\u221a' # 0xFB -> SQUARE ROOT
|
||||
u'\u207f' # 0xFC -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0xFD -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0xFE -> BLACK SQUARE
|
||||
u'\xa0' # 0xFF -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp737.py
Normal file
698
PythonHome/Lib/encodings/cp737.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec cp737 generated from 'VENDORS/MICSFT/PC/CP737.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp737',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x0391, # GREEK CAPITAL LETTER ALPHA
|
||||
0x0081: 0x0392, # GREEK CAPITAL LETTER BETA
|
||||
0x0082: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0083: 0x0394, # GREEK CAPITAL LETTER DELTA
|
||||
0x0084: 0x0395, # GREEK CAPITAL LETTER EPSILON
|
||||
0x0085: 0x0396, # GREEK CAPITAL LETTER ZETA
|
||||
0x0086: 0x0397, # GREEK CAPITAL LETTER ETA
|
||||
0x0087: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x0088: 0x0399, # GREEK CAPITAL LETTER IOTA
|
||||
0x0089: 0x039a, # GREEK CAPITAL LETTER KAPPA
|
||||
0x008a: 0x039b, # GREEK CAPITAL LETTER LAMDA
|
||||
0x008b: 0x039c, # GREEK CAPITAL LETTER MU
|
||||
0x008c: 0x039d, # GREEK CAPITAL LETTER NU
|
||||
0x008d: 0x039e, # GREEK CAPITAL LETTER XI
|
||||
0x008e: 0x039f, # GREEK CAPITAL LETTER OMICRON
|
||||
0x008f: 0x03a0, # GREEK CAPITAL LETTER PI
|
||||
0x0090: 0x03a1, # GREEK CAPITAL LETTER RHO
|
||||
0x0091: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x0092: 0x03a4, # GREEK CAPITAL LETTER TAU
|
||||
0x0093: 0x03a5, # GREEK CAPITAL LETTER UPSILON
|
||||
0x0094: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x0095: 0x03a7, # GREEK CAPITAL LETTER CHI
|
||||
0x0096: 0x03a8, # GREEK CAPITAL LETTER PSI
|
||||
0x0097: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x0098: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x0099: 0x03b2, # GREEK SMALL LETTER BETA
|
||||
0x009a: 0x03b3, # GREEK SMALL LETTER GAMMA
|
||||
0x009b: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x009c: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x009d: 0x03b6, # GREEK SMALL LETTER ZETA
|
||||
0x009e: 0x03b7, # GREEK SMALL LETTER ETA
|
||||
0x009f: 0x03b8, # GREEK SMALL LETTER THETA
|
||||
0x00a0: 0x03b9, # GREEK SMALL LETTER IOTA
|
||||
0x00a1: 0x03ba, # GREEK SMALL LETTER KAPPA
|
||||
0x00a2: 0x03bb, # GREEK SMALL LETTER LAMDA
|
||||
0x00a3: 0x03bc, # GREEK SMALL LETTER MU
|
||||
0x00a4: 0x03bd, # GREEK SMALL LETTER NU
|
||||
0x00a5: 0x03be, # GREEK SMALL LETTER XI
|
||||
0x00a6: 0x03bf, # GREEK SMALL LETTER OMICRON
|
||||
0x00a7: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00a8: 0x03c1, # GREEK SMALL LETTER RHO
|
||||
0x00a9: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00aa: 0x03c2, # GREEK SMALL LETTER FINAL SIGMA
|
||||
0x00ab: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00ac: 0x03c5, # GREEK SMALL LETTER UPSILON
|
||||
0x00ad: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ae: 0x03c7, # GREEK SMALL LETTER CHI
|
||||
0x00af: 0x03c8, # GREEK SMALL LETTER PSI
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03c9, # GREEK SMALL LETTER OMEGA
|
||||
0x00e1: 0x03ac, # GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
0x00e2: 0x03ad, # GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
0x00e3: 0x03ae, # GREEK SMALL LETTER ETA WITH TONOS
|
||||
0x00e4: 0x03ca, # GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
0x00e5: 0x03af, # GREEK SMALL LETTER IOTA WITH TONOS
|
||||
0x00e6: 0x03cc, # GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
0x00e7: 0x03cd, # GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
0x00e8: 0x03cb, # GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
0x00e9: 0x03ce, # GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
0x00ea: 0x0386, # GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
0x00eb: 0x0388, # GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
0x00ec: 0x0389, # GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
0x00ed: 0x038a, # GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
0x00ee: 0x038c, # GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
0x00ef: 0x038e, # GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
0x00f0: 0x038f, # GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x03aa, # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
0x00f5: 0x03ab, # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\u0391' # 0x0080 -> GREEK CAPITAL LETTER ALPHA
|
||||
u'\u0392' # 0x0081 -> GREEK CAPITAL LETTER BETA
|
||||
u'\u0393' # 0x0082 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u0394' # 0x0083 -> GREEK CAPITAL LETTER DELTA
|
||||
u'\u0395' # 0x0084 -> GREEK CAPITAL LETTER EPSILON
|
||||
u'\u0396' # 0x0085 -> GREEK CAPITAL LETTER ZETA
|
||||
u'\u0397' # 0x0086 -> GREEK CAPITAL LETTER ETA
|
||||
u'\u0398' # 0x0087 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u0399' # 0x0088 -> GREEK CAPITAL LETTER IOTA
|
||||
u'\u039a' # 0x0089 -> GREEK CAPITAL LETTER KAPPA
|
||||
u'\u039b' # 0x008a -> GREEK CAPITAL LETTER LAMDA
|
||||
u'\u039c' # 0x008b -> GREEK CAPITAL LETTER MU
|
||||
u'\u039d' # 0x008c -> GREEK CAPITAL LETTER NU
|
||||
u'\u039e' # 0x008d -> GREEK CAPITAL LETTER XI
|
||||
u'\u039f' # 0x008e -> GREEK CAPITAL LETTER OMICRON
|
||||
u'\u03a0' # 0x008f -> GREEK CAPITAL LETTER PI
|
||||
u'\u03a1' # 0x0090 -> GREEK CAPITAL LETTER RHO
|
||||
u'\u03a3' # 0x0091 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03a4' # 0x0092 -> GREEK CAPITAL LETTER TAU
|
||||
u'\u03a5' # 0x0093 -> GREEK CAPITAL LETTER UPSILON
|
||||
u'\u03a6' # 0x0094 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u03a7' # 0x0095 -> GREEK CAPITAL LETTER CHI
|
||||
u'\u03a8' # 0x0096 -> GREEK CAPITAL LETTER PSI
|
||||
u'\u03a9' # 0x0097 -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b1' # 0x0098 -> GREEK SMALL LETTER ALPHA
|
||||
u'\u03b2' # 0x0099 -> GREEK SMALL LETTER BETA
|
||||
u'\u03b3' # 0x009a -> GREEK SMALL LETTER GAMMA
|
||||
u'\u03b4' # 0x009b -> GREEK SMALL LETTER DELTA
|
||||
u'\u03b5' # 0x009c -> GREEK SMALL LETTER EPSILON
|
||||
u'\u03b6' # 0x009d -> GREEK SMALL LETTER ZETA
|
||||
u'\u03b7' # 0x009e -> GREEK SMALL LETTER ETA
|
||||
u'\u03b8' # 0x009f -> GREEK SMALL LETTER THETA
|
||||
u'\u03b9' # 0x00a0 -> GREEK SMALL LETTER IOTA
|
||||
u'\u03ba' # 0x00a1 -> GREEK SMALL LETTER KAPPA
|
||||
u'\u03bb' # 0x00a2 -> GREEK SMALL LETTER LAMDA
|
||||
u'\u03bc' # 0x00a3 -> GREEK SMALL LETTER MU
|
||||
u'\u03bd' # 0x00a4 -> GREEK SMALL LETTER NU
|
||||
u'\u03be' # 0x00a5 -> GREEK SMALL LETTER XI
|
||||
u'\u03bf' # 0x00a6 -> GREEK SMALL LETTER OMICRON
|
||||
u'\u03c0' # 0x00a7 -> GREEK SMALL LETTER PI
|
||||
u'\u03c1' # 0x00a8 -> GREEK SMALL LETTER RHO
|
||||
u'\u03c3' # 0x00a9 -> GREEK SMALL LETTER SIGMA
|
||||
u'\u03c2' # 0x00aa -> GREEK SMALL LETTER FINAL SIGMA
|
||||
u'\u03c4' # 0x00ab -> GREEK SMALL LETTER TAU
|
||||
u'\u03c5' # 0x00ac -> GREEK SMALL LETTER UPSILON
|
||||
u'\u03c6' # 0x00ad -> GREEK SMALL LETTER PHI
|
||||
u'\u03c7' # 0x00ae -> GREEK SMALL LETTER CHI
|
||||
u'\u03c8' # 0x00af -> GREEK SMALL LETTER PSI
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03c9' # 0x00e0 -> GREEK SMALL LETTER OMEGA
|
||||
u'\u03ac' # 0x00e1 -> GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
u'\u03ad' # 0x00e2 -> GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
u'\u03ae' # 0x00e3 -> GREEK SMALL LETTER ETA WITH TONOS
|
||||
u'\u03ca' # 0x00e4 -> GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u03af' # 0x00e5 -> GREEK SMALL LETTER IOTA WITH TONOS
|
||||
u'\u03cc' # 0x00e6 -> GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
u'\u03cd' # 0x00e7 -> GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
u'\u03cb' # 0x00e8 -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\u03ce' # 0x00e9 -> GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
u'\u0386' # 0x00ea -> GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
u'\u0388' # 0x00eb -> GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
u'\u0389' # 0x00ec -> GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
u'\u038a' # 0x00ed -> GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
u'\u038c' # 0x00ee -> GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
u'\u038e' # 0x00ef -> GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
u'\u038f' # 0x00f0 -> GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u03aa' # 0x00f4 -> GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u03ab' # 0x00f5 -> GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x0386: 0x00ea, # GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
0x0388: 0x00eb, # GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
0x0389: 0x00ec, # GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
0x038a: 0x00ed, # GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
0x038c: 0x00ee, # GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
0x038e: 0x00ef, # GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
0x038f: 0x00f0, # GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
0x0391: 0x0080, # GREEK CAPITAL LETTER ALPHA
|
||||
0x0392: 0x0081, # GREEK CAPITAL LETTER BETA
|
||||
0x0393: 0x0082, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0394: 0x0083, # GREEK CAPITAL LETTER DELTA
|
||||
0x0395: 0x0084, # GREEK CAPITAL LETTER EPSILON
|
||||
0x0396: 0x0085, # GREEK CAPITAL LETTER ZETA
|
||||
0x0397: 0x0086, # GREEK CAPITAL LETTER ETA
|
||||
0x0398: 0x0087, # GREEK CAPITAL LETTER THETA
|
||||
0x0399: 0x0088, # GREEK CAPITAL LETTER IOTA
|
||||
0x039a: 0x0089, # GREEK CAPITAL LETTER KAPPA
|
||||
0x039b: 0x008a, # GREEK CAPITAL LETTER LAMDA
|
||||
0x039c: 0x008b, # GREEK CAPITAL LETTER MU
|
||||
0x039d: 0x008c, # GREEK CAPITAL LETTER NU
|
||||
0x039e: 0x008d, # GREEK CAPITAL LETTER XI
|
||||
0x039f: 0x008e, # GREEK CAPITAL LETTER OMICRON
|
||||
0x03a0: 0x008f, # GREEK CAPITAL LETTER PI
|
||||
0x03a1: 0x0090, # GREEK CAPITAL LETTER RHO
|
||||
0x03a3: 0x0091, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a4: 0x0092, # GREEK CAPITAL LETTER TAU
|
||||
0x03a5: 0x0093, # GREEK CAPITAL LETTER UPSILON
|
||||
0x03a6: 0x0094, # GREEK CAPITAL LETTER PHI
|
||||
0x03a7: 0x0095, # GREEK CAPITAL LETTER CHI
|
||||
0x03a8: 0x0096, # GREEK CAPITAL LETTER PSI
|
||||
0x03a9: 0x0097, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03aa: 0x00f4, # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
0x03ab: 0x00f5, # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
0x03ac: 0x00e1, # GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
0x03ad: 0x00e2, # GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
0x03ae: 0x00e3, # GREEK SMALL LETTER ETA WITH TONOS
|
||||
0x03af: 0x00e5, # GREEK SMALL LETTER IOTA WITH TONOS
|
||||
0x03b1: 0x0098, # GREEK SMALL LETTER ALPHA
|
||||
0x03b2: 0x0099, # GREEK SMALL LETTER BETA
|
||||
0x03b3: 0x009a, # GREEK SMALL LETTER GAMMA
|
||||
0x03b4: 0x009b, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x009c, # GREEK SMALL LETTER EPSILON
|
||||
0x03b6: 0x009d, # GREEK SMALL LETTER ZETA
|
||||
0x03b7: 0x009e, # GREEK SMALL LETTER ETA
|
||||
0x03b8: 0x009f, # GREEK SMALL LETTER THETA
|
||||
0x03b9: 0x00a0, # GREEK SMALL LETTER IOTA
|
||||
0x03ba: 0x00a1, # GREEK SMALL LETTER KAPPA
|
||||
0x03bb: 0x00a2, # GREEK SMALL LETTER LAMDA
|
||||
0x03bc: 0x00a3, # GREEK SMALL LETTER MU
|
||||
0x03bd: 0x00a4, # GREEK SMALL LETTER NU
|
||||
0x03be: 0x00a5, # GREEK SMALL LETTER XI
|
||||
0x03bf: 0x00a6, # GREEK SMALL LETTER OMICRON
|
||||
0x03c0: 0x00a7, # GREEK SMALL LETTER PI
|
||||
0x03c1: 0x00a8, # GREEK SMALL LETTER RHO
|
||||
0x03c2: 0x00aa, # GREEK SMALL LETTER FINAL SIGMA
|
||||
0x03c3: 0x00a9, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00ab, # GREEK SMALL LETTER TAU
|
||||
0x03c5: 0x00ac, # GREEK SMALL LETTER UPSILON
|
||||
0x03c6: 0x00ad, # GREEK SMALL LETTER PHI
|
||||
0x03c7: 0x00ae, # GREEK SMALL LETTER CHI
|
||||
0x03c8: 0x00af, # GREEK SMALL LETTER PSI
|
||||
0x03c9: 0x00e0, # GREEK SMALL LETTER OMEGA
|
||||
0x03ca: 0x00e4, # GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
0x03cb: 0x00e8, # GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
0x03cc: 0x00e6, # GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
0x03cd: 0x00e7, # GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
0x03ce: 0x00e9, # GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
697
PythonHome/Lib/encodings/cp775.py
Normal file
697
PythonHome/Lib/encodings/cp775.py
Normal file
@@ -0,0 +1,697 @@
|
||||
""" Python Character Mapping Codec cp775 generated from 'VENDORS/MICSFT/PC/CP775.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp775',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x0106, # LATIN CAPITAL LETTER C WITH ACUTE
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x0101, # LATIN SMALL LETTER A WITH MACRON
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x0123, # LATIN SMALL LETTER G WITH CEDILLA
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x0107, # LATIN SMALL LETTER C WITH ACUTE
|
||||
0x0088: 0x0142, # LATIN SMALL LETTER L WITH STROKE
|
||||
0x0089: 0x0113, # LATIN SMALL LETTER E WITH MACRON
|
||||
0x008a: 0x0156, # LATIN CAPITAL LETTER R WITH CEDILLA
|
||||
0x008b: 0x0157, # LATIN SMALL LETTER R WITH CEDILLA
|
||||
0x008c: 0x012b, # LATIN SMALL LETTER I WITH MACRON
|
||||
0x008d: 0x0179, # LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x014d, # LATIN SMALL LETTER O WITH MACRON
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x0122, # LATIN CAPITAL LETTER G WITH CEDILLA
|
||||
0x0096: 0x00a2, # CENT SIGN
|
||||
0x0097: 0x015a, # LATIN CAPITAL LETTER S WITH ACUTE
|
||||
0x0098: 0x015b, # LATIN SMALL LETTER S WITH ACUTE
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00f8, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d8, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x009e: 0x00d7, # MULTIPLICATION SIGN
|
||||
0x009f: 0x00a4, # CURRENCY SIGN
|
||||
0x00a0: 0x0100, # LATIN CAPITAL LETTER A WITH MACRON
|
||||
0x00a1: 0x012a, # LATIN CAPITAL LETTER I WITH MACRON
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x017b, # LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
0x00a4: 0x017c, # LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
0x00a5: 0x017a, # LATIN SMALL LETTER Z WITH ACUTE
|
||||
0x00a6: 0x201d, # RIGHT DOUBLE QUOTATION MARK
|
||||
0x00a7: 0x00a6, # BROKEN BAR
|
||||
0x00a8: 0x00a9, # COPYRIGHT SIGN
|
||||
0x00a9: 0x00ae, # REGISTERED SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x0141, # LATIN CAPITAL LETTER L WITH STROKE
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x0104, # LATIN CAPITAL LETTER A WITH OGONEK
|
||||
0x00b6: 0x010c, # LATIN CAPITAL LETTER C WITH CARON
|
||||
0x00b7: 0x0118, # LATIN CAPITAL LETTER E WITH OGONEK
|
||||
0x00b8: 0x0116, # LATIN CAPITAL LETTER E WITH DOT ABOVE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x012e, # LATIN CAPITAL LETTER I WITH OGONEK
|
||||
0x00be: 0x0160, # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x0172, # LATIN CAPITAL LETTER U WITH OGONEK
|
||||
0x00c7: 0x016a, # LATIN CAPITAL LETTER U WITH MACRON
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x017d, # LATIN CAPITAL LETTER Z WITH CARON
|
||||
0x00d0: 0x0105, # LATIN SMALL LETTER A WITH OGONEK
|
||||
0x00d1: 0x010d, # LATIN SMALL LETTER C WITH CARON
|
||||
0x00d2: 0x0119, # LATIN SMALL LETTER E WITH OGONEK
|
||||
0x00d3: 0x0117, # LATIN SMALL LETTER E WITH DOT ABOVE
|
||||
0x00d4: 0x012f, # LATIN SMALL LETTER I WITH OGONEK
|
||||
0x00d5: 0x0161, # LATIN SMALL LETTER S WITH CARON
|
||||
0x00d6: 0x0173, # LATIN SMALL LETTER U WITH OGONEK
|
||||
0x00d7: 0x016b, # LATIN SMALL LETTER U WITH MACRON
|
||||
0x00d8: 0x017e, # LATIN SMALL LETTER Z WITH CARON
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
0x00e2: 0x014c, # LATIN CAPITAL LETTER O WITH MACRON
|
||||
0x00e3: 0x0143, # LATIN CAPITAL LETTER N WITH ACUTE
|
||||
0x00e4: 0x00f5, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00e5: 0x00d5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x0144, # LATIN SMALL LETTER N WITH ACUTE
|
||||
0x00e8: 0x0136, # LATIN CAPITAL LETTER K WITH CEDILLA
|
||||
0x00e9: 0x0137, # LATIN SMALL LETTER K WITH CEDILLA
|
||||
0x00ea: 0x013b, # LATIN CAPITAL LETTER L WITH CEDILLA
|
||||
0x00eb: 0x013c, # LATIN SMALL LETTER L WITH CEDILLA
|
||||
0x00ec: 0x0146, # LATIN SMALL LETTER N WITH CEDILLA
|
||||
0x00ed: 0x0112, # LATIN CAPITAL LETTER E WITH MACRON
|
||||
0x00ee: 0x0145, # LATIN CAPITAL LETTER N WITH CEDILLA
|
||||
0x00ef: 0x2019, # RIGHT SINGLE QUOTATION MARK
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x201c, # LEFT DOUBLE QUOTATION MARK
|
||||
0x00f3: 0x00be, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00f4: 0x00b6, # PILCROW SIGN
|
||||
0x00f5: 0x00a7, # SECTION SIGN
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x201e, # DOUBLE LOW-9 QUOTATION MARK
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x00b9, # SUPERSCRIPT ONE
|
||||
0x00fc: 0x00b3, # SUPERSCRIPT THREE
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\u0106' # 0x0080 -> LATIN CAPITAL LETTER C WITH ACUTE
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\u0101' # 0x0083 -> LATIN SMALL LETTER A WITH MACRON
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\u0123' # 0x0085 -> LATIN SMALL LETTER G WITH CEDILLA
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\u0107' # 0x0087 -> LATIN SMALL LETTER C WITH ACUTE
|
||||
u'\u0142' # 0x0088 -> LATIN SMALL LETTER L WITH STROKE
|
||||
u'\u0113' # 0x0089 -> LATIN SMALL LETTER E WITH MACRON
|
||||
u'\u0156' # 0x008a -> LATIN CAPITAL LETTER R WITH CEDILLA
|
||||
u'\u0157' # 0x008b -> LATIN SMALL LETTER R WITH CEDILLA
|
||||
u'\u012b' # 0x008c -> LATIN SMALL LETTER I WITH MACRON
|
||||
u'\u0179' # 0x008d -> LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\u014d' # 0x0093 -> LATIN SMALL LETTER O WITH MACRON
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\u0122' # 0x0095 -> LATIN CAPITAL LETTER G WITH CEDILLA
|
||||
u'\xa2' # 0x0096 -> CENT SIGN
|
||||
u'\u015a' # 0x0097 -> LATIN CAPITAL LETTER S WITH ACUTE
|
||||
u'\u015b' # 0x0098 -> LATIN SMALL LETTER S WITH ACUTE
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xf8' # 0x009b -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd8' # 0x009d -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xd7' # 0x009e -> MULTIPLICATION SIGN
|
||||
u'\xa4' # 0x009f -> CURRENCY SIGN
|
||||
u'\u0100' # 0x00a0 -> LATIN CAPITAL LETTER A WITH MACRON
|
||||
u'\u012a' # 0x00a1 -> LATIN CAPITAL LETTER I WITH MACRON
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\u017b' # 0x00a3 -> LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
u'\u017c' # 0x00a4 -> LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
u'\u017a' # 0x00a5 -> LATIN SMALL LETTER Z WITH ACUTE
|
||||
u'\u201d' # 0x00a6 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\xa6' # 0x00a7 -> BROKEN BAR
|
||||
u'\xa9' # 0x00a8 -> COPYRIGHT SIGN
|
||||
u'\xae' # 0x00a9 -> REGISTERED SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\u0141' # 0x00ad -> LATIN CAPITAL LETTER L WITH STROKE
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u0104' # 0x00b5 -> LATIN CAPITAL LETTER A WITH OGONEK
|
||||
u'\u010c' # 0x00b6 -> LATIN CAPITAL LETTER C WITH CARON
|
||||
u'\u0118' # 0x00b7 -> LATIN CAPITAL LETTER E WITH OGONEK
|
||||
u'\u0116' # 0x00b8 -> LATIN CAPITAL LETTER E WITH DOT ABOVE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u012e' # 0x00bd -> LATIN CAPITAL LETTER I WITH OGONEK
|
||||
u'\u0160' # 0x00be -> LATIN CAPITAL LETTER S WITH CARON
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u0172' # 0x00c6 -> LATIN CAPITAL LETTER U WITH OGONEK
|
||||
u'\u016a' # 0x00c7 -> LATIN CAPITAL LETTER U WITH MACRON
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u017d' # 0x00cf -> LATIN CAPITAL LETTER Z WITH CARON
|
||||
u'\u0105' # 0x00d0 -> LATIN SMALL LETTER A WITH OGONEK
|
||||
u'\u010d' # 0x00d1 -> LATIN SMALL LETTER C WITH CARON
|
||||
u'\u0119' # 0x00d2 -> LATIN SMALL LETTER E WITH OGONEK
|
||||
u'\u0117' # 0x00d3 -> LATIN SMALL LETTER E WITH DOT ABOVE
|
||||
u'\u012f' # 0x00d4 -> LATIN SMALL LETTER I WITH OGONEK
|
||||
u'\u0161' # 0x00d5 -> LATIN SMALL LETTER S WITH CARON
|
||||
u'\u0173' # 0x00d6 -> LATIN SMALL LETTER U WITH OGONEK
|
||||
u'\u016b' # 0x00d7 -> LATIN SMALL LETTER U WITH MACRON
|
||||
u'\u017e' # 0x00d8 -> LATIN SMALL LETTER Z WITH CARON
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\xd3' # 0x00e0 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
u'\u014c' # 0x00e2 -> LATIN CAPITAL LETTER O WITH MACRON
|
||||
u'\u0143' # 0x00e3 -> LATIN CAPITAL LETTER N WITH ACUTE
|
||||
u'\xf5' # 0x00e4 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xd5' # 0x00e5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u0144' # 0x00e7 -> LATIN SMALL LETTER N WITH ACUTE
|
||||
u'\u0136' # 0x00e8 -> LATIN CAPITAL LETTER K WITH CEDILLA
|
||||
u'\u0137' # 0x00e9 -> LATIN SMALL LETTER K WITH CEDILLA
|
||||
u'\u013b' # 0x00ea -> LATIN CAPITAL LETTER L WITH CEDILLA
|
||||
u'\u013c' # 0x00eb -> LATIN SMALL LETTER L WITH CEDILLA
|
||||
u'\u0146' # 0x00ec -> LATIN SMALL LETTER N WITH CEDILLA
|
||||
u'\u0112' # 0x00ed -> LATIN CAPITAL LETTER E WITH MACRON
|
||||
u'\u0145' # 0x00ee -> LATIN CAPITAL LETTER N WITH CEDILLA
|
||||
u'\u2019' # 0x00ef -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u201c' # 0x00f2 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\xbe' # 0x00f3 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xb6' # 0x00f4 -> PILCROW SIGN
|
||||
u'\xa7' # 0x00f5 -> SECTION SIGN
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u201e' # 0x00f7 -> DOUBLE LOW-9 QUOTATION MARK
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\xb9' # 0x00fb -> SUPERSCRIPT ONE
|
||||
u'\xb3' # 0x00fc -> SUPERSCRIPT THREE
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a2: 0x0096, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a4: 0x009f, # CURRENCY SIGN
|
||||
0x00a6: 0x00a7, # BROKEN BAR
|
||||
0x00a7: 0x00f5, # SECTION SIGN
|
||||
0x00a9: 0x00a8, # COPYRIGHT SIGN
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00ae: 0x00a9, # REGISTERED SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b3: 0x00fc, # SUPERSCRIPT THREE
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b6: 0x00f4, # PILCROW SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00b9: 0x00fb, # SUPERSCRIPT ONE
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00be: 0x00f3, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00d3: 0x00e0, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d5: 0x00e5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d7: 0x009e, # MULTIPLICATION SIGN
|
||||
0x00d8: 0x009d, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f5: 0x00e4, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f8: 0x009b, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0100: 0x00a0, # LATIN CAPITAL LETTER A WITH MACRON
|
||||
0x0101: 0x0083, # LATIN SMALL LETTER A WITH MACRON
|
||||
0x0104: 0x00b5, # LATIN CAPITAL LETTER A WITH OGONEK
|
||||
0x0105: 0x00d0, # LATIN SMALL LETTER A WITH OGONEK
|
||||
0x0106: 0x0080, # LATIN CAPITAL LETTER C WITH ACUTE
|
||||
0x0107: 0x0087, # LATIN SMALL LETTER C WITH ACUTE
|
||||
0x010c: 0x00b6, # LATIN CAPITAL LETTER C WITH CARON
|
||||
0x010d: 0x00d1, # LATIN SMALL LETTER C WITH CARON
|
||||
0x0112: 0x00ed, # LATIN CAPITAL LETTER E WITH MACRON
|
||||
0x0113: 0x0089, # LATIN SMALL LETTER E WITH MACRON
|
||||
0x0116: 0x00b8, # LATIN CAPITAL LETTER E WITH DOT ABOVE
|
||||
0x0117: 0x00d3, # LATIN SMALL LETTER E WITH DOT ABOVE
|
||||
0x0118: 0x00b7, # LATIN CAPITAL LETTER E WITH OGONEK
|
||||
0x0119: 0x00d2, # LATIN SMALL LETTER E WITH OGONEK
|
||||
0x0122: 0x0095, # LATIN CAPITAL LETTER G WITH CEDILLA
|
||||
0x0123: 0x0085, # LATIN SMALL LETTER G WITH CEDILLA
|
||||
0x012a: 0x00a1, # LATIN CAPITAL LETTER I WITH MACRON
|
||||
0x012b: 0x008c, # LATIN SMALL LETTER I WITH MACRON
|
||||
0x012e: 0x00bd, # LATIN CAPITAL LETTER I WITH OGONEK
|
||||
0x012f: 0x00d4, # LATIN SMALL LETTER I WITH OGONEK
|
||||
0x0136: 0x00e8, # LATIN CAPITAL LETTER K WITH CEDILLA
|
||||
0x0137: 0x00e9, # LATIN SMALL LETTER K WITH CEDILLA
|
||||
0x013b: 0x00ea, # LATIN CAPITAL LETTER L WITH CEDILLA
|
||||
0x013c: 0x00eb, # LATIN SMALL LETTER L WITH CEDILLA
|
||||
0x0141: 0x00ad, # LATIN CAPITAL LETTER L WITH STROKE
|
||||
0x0142: 0x0088, # LATIN SMALL LETTER L WITH STROKE
|
||||
0x0143: 0x00e3, # LATIN CAPITAL LETTER N WITH ACUTE
|
||||
0x0144: 0x00e7, # LATIN SMALL LETTER N WITH ACUTE
|
||||
0x0145: 0x00ee, # LATIN CAPITAL LETTER N WITH CEDILLA
|
||||
0x0146: 0x00ec, # LATIN SMALL LETTER N WITH CEDILLA
|
||||
0x014c: 0x00e2, # LATIN CAPITAL LETTER O WITH MACRON
|
||||
0x014d: 0x0093, # LATIN SMALL LETTER O WITH MACRON
|
||||
0x0156: 0x008a, # LATIN CAPITAL LETTER R WITH CEDILLA
|
||||
0x0157: 0x008b, # LATIN SMALL LETTER R WITH CEDILLA
|
||||
0x015a: 0x0097, # LATIN CAPITAL LETTER S WITH ACUTE
|
||||
0x015b: 0x0098, # LATIN SMALL LETTER S WITH ACUTE
|
||||
0x0160: 0x00be, # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x0161: 0x00d5, # LATIN SMALL LETTER S WITH CARON
|
||||
0x016a: 0x00c7, # LATIN CAPITAL LETTER U WITH MACRON
|
||||
0x016b: 0x00d7, # LATIN SMALL LETTER U WITH MACRON
|
||||
0x0172: 0x00c6, # LATIN CAPITAL LETTER U WITH OGONEK
|
||||
0x0173: 0x00d6, # LATIN SMALL LETTER U WITH OGONEK
|
||||
0x0179: 0x008d, # LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
0x017a: 0x00a5, # LATIN SMALL LETTER Z WITH ACUTE
|
||||
0x017b: 0x00a3, # LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
0x017c: 0x00a4, # LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
0x017d: 0x00cf, # LATIN CAPITAL LETTER Z WITH CARON
|
||||
0x017e: 0x00d8, # LATIN SMALL LETTER Z WITH CARON
|
||||
0x2019: 0x00ef, # RIGHT SINGLE QUOTATION MARK
|
||||
0x201c: 0x00f2, # LEFT DOUBLE QUOTATION MARK
|
||||
0x201d: 0x00a6, # RIGHT DOUBLE QUOTATION MARK
|
||||
0x201e: 0x00f7, # DOUBLE LOW-9 QUOTATION MARK
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp850.py
Normal file
698
PythonHome/Lib/encodings/cp850.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP850.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp850',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00ef, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x00ec, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x00f2, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x00ff, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00f8, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d8, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x009e: 0x00d7, # MULTIPLICATION SIGN
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00a7: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x00ae, # REGISTERED SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x00c1, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00b6: 0x00c2, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00b7: 0x00c0, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00b8: 0x00a9, # COPYRIGHT SIGN
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x00a2, # CENT SIGN
|
||||
0x00be: 0x00a5, # YEN SIGN
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x00e3, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00c7: 0x00c3, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x00a4, # CURRENCY SIGN
|
||||
0x00d0: 0x00f0, # LATIN SMALL LETTER ETH
|
||||
0x00d1: 0x00d0, # LATIN CAPITAL LETTER ETH
|
||||
0x00d2: 0x00ca, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00d3: 0x00cb, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00d4: 0x00c8, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00d5: 0x0131, # LATIN SMALL LETTER DOTLESS I
|
||||
0x00d6: 0x00cd, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00d7: 0x00ce, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00d8: 0x00cf, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x00a6, # BROKEN BAR
|
||||
0x00de: 0x00cc, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x00d4, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00e3: 0x00d2, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00e4: 0x00f5, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00e5: 0x00d5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x00fe, # LATIN SMALL LETTER THORN
|
||||
0x00e8: 0x00de, # LATIN CAPITAL LETTER THORN
|
||||
0x00e9: 0x00da, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00ea: 0x00db, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00eb: 0x00d9, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00ec: 0x00fd, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00ed: 0x00dd, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00ee: 0x00af, # MACRON
|
||||
0x00ef: 0x00b4, # ACUTE ACCENT
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2017, # DOUBLE LOW LINE
|
||||
0x00f3: 0x00be, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00f4: 0x00b6, # PILCROW SIGN
|
||||
0x00f5: 0x00a7, # SECTION SIGN
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x00b8, # CEDILLA
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x00a8, # DIAERESIS
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x00b9, # SUPERSCRIPT ONE
|
||||
0x00fc: 0x00b3, # SUPERSCRIPT THREE
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x008b -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xec' # 0x008d -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0x0095 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xff' # 0x0098 -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xf8' # 0x009b -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd8' # 0x009d -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xd7' # 0x009e -> MULTIPLICATION SIGN
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xaa' # 0x00a6 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x00a7 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\xae' # 0x00a9 -> REGISTERED SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\xc1' # 0x00b5 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0x00b6 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc0' # 0x00b7 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xa9' # 0x00b8 -> COPYRIGHT SIGN
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\xa2' # 0x00bd -> CENT SIGN
|
||||
u'\xa5' # 0x00be -> YEN SIGN
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\xe3' # 0x00c6 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xc3' # 0x00c7 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\xa4' # 0x00cf -> CURRENCY SIGN
|
||||
u'\xf0' # 0x00d0 -> LATIN SMALL LETTER ETH
|
||||
u'\xd0' # 0x00d1 -> LATIN CAPITAL LETTER ETH
|
||||
u'\xca' # 0x00d2 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x00d3 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x00d4 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\u0131' # 0x00d5 -> LATIN SMALL LETTER DOTLESS I
|
||||
u'\xcd' # 0x00d6 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x00d7 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x00d8 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\xa6' # 0x00dd -> BROKEN BAR
|
||||
u'\xcc' # 0x00de -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\xd3' # 0x00e0 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\xd4' # 0x00e2 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd2' # 0x00e3 -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xf5' # 0x00e4 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xd5' # 0x00e5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\xfe' # 0x00e7 -> LATIN SMALL LETTER THORN
|
||||
u'\xde' # 0x00e8 -> LATIN CAPITAL LETTER THORN
|
||||
u'\xda' # 0x00e9 -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xdb' # 0x00ea -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xd9' # 0x00eb -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xfd' # 0x00ec -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xdd' # 0x00ed -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xaf' # 0x00ee -> MACRON
|
||||
u'\xb4' # 0x00ef -> ACUTE ACCENT
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2017' # 0x00f2 -> DOUBLE LOW LINE
|
||||
u'\xbe' # 0x00f3 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xb6' # 0x00f4 -> PILCROW SIGN
|
||||
u'\xa7' # 0x00f5 -> SECTION SIGN
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\xb8' # 0x00f7 -> CEDILLA
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\xa8' # 0x00f9 -> DIAERESIS
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\xb9' # 0x00fb -> SUPERSCRIPT ONE
|
||||
u'\xb3' # 0x00fc -> SUPERSCRIPT THREE
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a2: 0x00bd, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a4: 0x00cf, # CURRENCY SIGN
|
||||
0x00a5: 0x00be, # YEN SIGN
|
||||
0x00a6: 0x00dd, # BROKEN BAR
|
||||
0x00a7: 0x00f5, # SECTION SIGN
|
||||
0x00a8: 0x00f9, # DIAERESIS
|
||||
0x00a9: 0x00b8, # COPYRIGHT SIGN
|
||||
0x00aa: 0x00a6, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00ae: 0x00a9, # REGISTERED SIGN
|
||||
0x00af: 0x00ee, # MACRON
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b3: 0x00fc, # SUPERSCRIPT THREE
|
||||
0x00b4: 0x00ef, # ACUTE ACCENT
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b6: 0x00f4, # PILCROW SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00b8: 0x00f7, # CEDILLA
|
||||
0x00b9: 0x00fb, # SUPERSCRIPT ONE
|
||||
0x00ba: 0x00a7, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00be: 0x00f3, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c0: 0x00b7, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00c1: 0x00b5, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00c2: 0x00b6, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00c3: 0x00c7, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c8: 0x00d4, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00ca: 0x00d2, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00cb: 0x00d3, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00cc: 0x00de, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00cd: 0x00d6, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00ce: 0x00d7, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00cf: 0x00d8, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d0: 0x00d1, # LATIN CAPITAL LETTER ETH
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00d2: 0x00e3, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00d3: 0x00e0, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d4: 0x00e2, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00d5: 0x00e5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d7: 0x009e, # MULTIPLICATION SIGN
|
||||
0x00d8: 0x009d, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00d9: 0x00eb, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00da: 0x00e9, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00db: 0x00ea, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00dd: 0x00ed, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00de: 0x00e8, # LATIN CAPITAL LETTER THORN
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e3: 0x00c6, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ec: 0x008d, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00ef: 0x008b, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x00f0: 0x00d0, # LATIN SMALL LETTER ETH
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f2: 0x0095, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f5: 0x00e4, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f8: 0x009b, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00fd: 0x00ec, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00fe: 0x00e7, # LATIN SMALL LETTER THORN
|
||||
0x00ff: 0x0098, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0131: 0x00d5, # LATIN SMALL LETTER DOTLESS I
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x2017: 0x00f2, # DOUBLE LOW LINE
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp852.py
Normal file
698
PythonHome/Lib/encodings/cp852.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP852.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp852',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x016f, # LATIN SMALL LETTER U WITH RING ABOVE
|
||||
0x0086: 0x0107, # LATIN SMALL LETTER C WITH ACUTE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x0142, # LATIN SMALL LETTER L WITH STROKE
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x0150, # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
|
||||
0x008b: 0x0151, # LATIN SMALL LETTER O WITH DOUBLE ACUTE
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x0179, # LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x0106, # LATIN CAPITAL LETTER C WITH ACUTE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x0139, # LATIN CAPITAL LETTER L WITH ACUTE
|
||||
0x0092: 0x013a, # LATIN SMALL LETTER L WITH ACUTE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x013d, # LATIN CAPITAL LETTER L WITH CARON
|
||||
0x0096: 0x013e, # LATIN SMALL LETTER L WITH CARON
|
||||
0x0097: 0x015a, # LATIN CAPITAL LETTER S WITH ACUTE
|
||||
0x0098: 0x015b, # LATIN SMALL LETTER S WITH ACUTE
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x0164, # LATIN CAPITAL LETTER T WITH CARON
|
||||
0x009c: 0x0165, # LATIN SMALL LETTER T WITH CARON
|
||||
0x009d: 0x0141, # LATIN CAPITAL LETTER L WITH STROKE
|
||||
0x009e: 0x00d7, # MULTIPLICATION SIGN
|
||||
0x009f: 0x010d, # LATIN SMALL LETTER C WITH CARON
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x0104, # LATIN CAPITAL LETTER A WITH OGONEK
|
||||
0x00a5: 0x0105, # LATIN SMALL LETTER A WITH OGONEK
|
||||
0x00a6: 0x017d, # LATIN CAPITAL LETTER Z WITH CARON
|
||||
0x00a7: 0x017e, # LATIN SMALL LETTER Z WITH CARON
|
||||
0x00a8: 0x0118, # LATIN CAPITAL LETTER E WITH OGONEK
|
||||
0x00a9: 0x0119, # LATIN SMALL LETTER E WITH OGONEK
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x017a, # LATIN SMALL LETTER Z WITH ACUTE
|
||||
0x00ac: 0x010c, # LATIN CAPITAL LETTER C WITH CARON
|
||||
0x00ad: 0x015f, # LATIN SMALL LETTER S WITH CEDILLA
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x00c1, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00b6: 0x00c2, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00b7: 0x011a, # LATIN CAPITAL LETTER E WITH CARON
|
||||
0x00b8: 0x015e, # LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x017b, # LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
0x00be: 0x017c, # LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x0102, # LATIN CAPITAL LETTER A WITH BREVE
|
||||
0x00c7: 0x0103, # LATIN SMALL LETTER A WITH BREVE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x00a4, # CURRENCY SIGN
|
||||
0x00d0: 0x0111, # LATIN SMALL LETTER D WITH STROKE
|
||||
0x00d1: 0x0110, # LATIN CAPITAL LETTER D WITH STROKE
|
||||
0x00d2: 0x010e, # LATIN CAPITAL LETTER D WITH CARON
|
||||
0x00d3: 0x00cb, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00d4: 0x010f, # LATIN SMALL LETTER D WITH CARON
|
||||
0x00d5: 0x0147, # LATIN CAPITAL LETTER N WITH CARON
|
||||
0x00d6: 0x00cd, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00d7: 0x00ce, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00d8: 0x011b, # LATIN SMALL LETTER E WITH CARON
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x0162, # LATIN CAPITAL LETTER T WITH CEDILLA
|
||||
0x00de: 0x016e, # LATIN CAPITAL LETTER U WITH RING ABOVE
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x00d4, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00e3: 0x0143, # LATIN CAPITAL LETTER N WITH ACUTE
|
||||
0x00e4: 0x0144, # LATIN SMALL LETTER N WITH ACUTE
|
||||
0x00e5: 0x0148, # LATIN SMALL LETTER N WITH CARON
|
||||
0x00e6: 0x0160, # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x00e7: 0x0161, # LATIN SMALL LETTER S WITH CARON
|
||||
0x00e8: 0x0154, # LATIN CAPITAL LETTER R WITH ACUTE
|
||||
0x00e9: 0x00da, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00ea: 0x0155, # LATIN SMALL LETTER R WITH ACUTE
|
||||
0x00eb: 0x0170, # LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
|
||||
0x00ec: 0x00fd, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00ed: 0x00dd, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00ee: 0x0163, # LATIN SMALL LETTER T WITH CEDILLA
|
||||
0x00ef: 0x00b4, # ACUTE ACCENT
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x02dd, # DOUBLE ACUTE ACCENT
|
||||
0x00f2: 0x02db, # OGONEK
|
||||
0x00f3: 0x02c7, # CARON
|
||||
0x00f4: 0x02d8, # BREVE
|
||||
0x00f5: 0x00a7, # SECTION SIGN
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x00b8, # CEDILLA
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x00a8, # DIAERESIS
|
||||
0x00fa: 0x02d9, # DOT ABOVE
|
||||
0x00fb: 0x0171, # LATIN SMALL LETTER U WITH DOUBLE ACUTE
|
||||
0x00fc: 0x0158, # LATIN CAPITAL LETTER R WITH CARON
|
||||
0x00fd: 0x0159, # LATIN SMALL LETTER R WITH CARON
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\u016f' # 0x0085 -> LATIN SMALL LETTER U WITH RING ABOVE
|
||||
u'\u0107' # 0x0086 -> LATIN SMALL LETTER C WITH ACUTE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\u0142' # 0x0088 -> LATIN SMALL LETTER L WITH STROKE
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\u0150' # 0x008a -> LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
|
||||
u'\u0151' # 0x008b -> LATIN SMALL LETTER O WITH DOUBLE ACUTE
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\u0179' # 0x008d -> LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\u0106' # 0x008f -> LATIN CAPITAL LETTER C WITH ACUTE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\u0139' # 0x0091 -> LATIN CAPITAL LETTER L WITH ACUTE
|
||||
u'\u013a' # 0x0092 -> LATIN SMALL LETTER L WITH ACUTE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\u013d' # 0x0095 -> LATIN CAPITAL LETTER L WITH CARON
|
||||
u'\u013e' # 0x0096 -> LATIN SMALL LETTER L WITH CARON
|
||||
u'\u015a' # 0x0097 -> LATIN CAPITAL LETTER S WITH ACUTE
|
||||
u'\u015b' # 0x0098 -> LATIN SMALL LETTER S WITH ACUTE
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\u0164' # 0x009b -> LATIN CAPITAL LETTER T WITH CARON
|
||||
u'\u0165' # 0x009c -> LATIN SMALL LETTER T WITH CARON
|
||||
u'\u0141' # 0x009d -> LATIN CAPITAL LETTER L WITH STROKE
|
||||
u'\xd7' # 0x009e -> MULTIPLICATION SIGN
|
||||
u'\u010d' # 0x009f -> LATIN SMALL LETTER C WITH CARON
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\u0104' # 0x00a4 -> LATIN CAPITAL LETTER A WITH OGONEK
|
||||
u'\u0105' # 0x00a5 -> LATIN SMALL LETTER A WITH OGONEK
|
||||
u'\u017d' # 0x00a6 -> LATIN CAPITAL LETTER Z WITH CARON
|
||||
u'\u017e' # 0x00a7 -> LATIN SMALL LETTER Z WITH CARON
|
||||
u'\u0118' # 0x00a8 -> LATIN CAPITAL LETTER E WITH OGONEK
|
||||
u'\u0119' # 0x00a9 -> LATIN SMALL LETTER E WITH OGONEK
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\u017a' # 0x00ab -> LATIN SMALL LETTER Z WITH ACUTE
|
||||
u'\u010c' # 0x00ac -> LATIN CAPITAL LETTER C WITH CARON
|
||||
u'\u015f' # 0x00ad -> LATIN SMALL LETTER S WITH CEDILLA
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\xc1' # 0x00b5 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0x00b6 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\u011a' # 0x00b7 -> LATIN CAPITAL LETTER E WITH CARON
|
||||
u'\u015e' # 0x00b8 -> LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u017b' # 0x00bd -> LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
u'\u017c' # 0x00be -> LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u0102' # 0x00c6 -> LATIN CAPITAL LETTER A WITH BREVE
|
||||
u'\u0103' # 0x00c7 -> LATIN SMALL LETTER A WITH BREVE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\xa4' # 0x00cf -> CURRENCY SIGN
|
||||
u'\u0111' # 0x00d0 -> LATIN SMALL LETTER D WITH STROKE
|
||||
u'\u0110' # 0x00d1 -> LATIN CAPITAL LETTER D WITH STROKE
|
||||
u'\u010e' # 0x00d2 -> LATIN CAPITAL LETTER D WITH CARON
|
||||
u'\xcb' # 0x00d3 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\u010f' # 0x00d4 -> LATIN SMALL LETTER D WITH CARON
|
||||
u'\u0147' # 0x00d5 -> LATIN CAPITAL LETTER N WITH CARON
|
||||
u'\xcd' # 0x00d6 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x00d7 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\u011b' # 0x00d8 -> LATIN SMALL LETTER E WITH CARON
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u0162' # 0x00dd -> LATIN CAPITAL LETTER T WITH CEDILLA
|
||||
u'\u016e' # 0x00de -> LATIN CAPITAL LETTER U WITH RING ABOVE
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\xd3' # 0x00e0 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\xd4' # 0x00e2 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\u0143' # 0x00e3 -> LATIN CAPITAL LETTER N WITH ACUTE
|
||||
u'\u0144' # 0x00e4 -> LATIN SMALL LETTER N WITH ACUTE
|
||||
u'\u0148' # 0x00e5 -> LATIN SMALL LETTER N WITH CARON
|
||||
u'\u0160' # 0x00e6 -> LATIN CAPITAL LETTER S WITH CARON
|
||||
u'\u0161' # 0x00e7 -> LATIN SMALL LETTER S WITH CARON
|
||||
u'\u0154' # 0x00e8 -> LATIN CAPITAL LETTER R WITH ACUTE
|
||||
u'\xda' # 0x00e9 -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\u0155' # 0x00ea -> LATIN SMALL LETTER R WITH ACUTE
|
||||
u'\u0170' # 0x00eb -> LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
|
||||
u'\xfd' # 0x00ec -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xdd' # 0x00ed -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\u0163' # 0x00ee -> LATIN SMALL LETTER T WITH CEDILLA
|
||||
u'\xb4' # 0x00ef -> ACUTE ACCENT
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\u02dd' # 0x00f1 -> DOUBLE ACUTE ACCENT
|
||||
u'\u02db' # 0x00f2 -> OGONEK
|
||||
u'\u02c7' # 0x00f3 -> CARON
|
||||
u'\u02d8' # 0x00f4 -> BREVE
|
||||
u'\xa7' # 0x00f5 -> SECTION SIGN
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\xb8' # 0x00f7 -> CEDILLA
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\xa8' # 0x00f9 -> DIAERESIS
|
||||
u'\u02d9' # 0x00fa -> DOT ABOVE
|
||||
u'\u0171' # 0x00fb -> LATIN SMALL LETTER U WITH DOUBLE ACUTE
|
||||
u'\u0158' # 0x00fc -> LATIN CAPITAL LETTER R WITH CARON
|
||||
u'\u0159' # 0x00fd -> LATIN SMALL LETTER R WITH CARON
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a4: 0x00cf, # CURRENCY SIGN
|
||||
0x00a7: 0x00f5, # SECTION SIGN
|
||||
0x00a8: 0x00f9, # DIAERESIS
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b4: 0x00ef, # ACUTE ACCENT
|
||||
0x00b8: 0x00f7, # CEDILLA
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00c1: 0x00b5, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00c2: 0x00b6, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00cb: 0x00d3, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00cd: 0x00d6, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00ce: 0x00d7, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00d3: 0x00e0, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d4: 0x00e2, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d7: 0x009e, # MULTIPLICATION SIGN
|
||||
0x00da: 0x00e9, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00dd: 0x00ed, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00fd: 0x00ec, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x0102: 0x00c6, # LATIN CAPITAL LETTER A WITH BREVE
|
||||
0x0103: 0x00c7, # LATIN SMALL LETTER A WITH BREVE
|
||||
0x0104: 0x00a4, # LATIN CAPITAL LETTER A WITH OGONEK
|
||||
0x0105: 0x00a5, # LATIN SMALL LETTER A WITH OGONEK
|
||||
0x0106: 0x008f, # LATIN CAPITAL LETTER C WITH ACUTE
|
||||
0x0107: 0x0086, # LATIN SMALL LETTER C WITH ACUTE
|
||||
0x010c: 0x00ac, # LATIN CAPITAL LETTER C WITH CARON
|
||||
0x010d: 0x009f, # LATIN SMALL LETTER C WITH CARON
|
||||
0x010e: 0x00d2, # LATIN CAPITAL LETTER D WITH CARON
|
||||
0x010f: 0x00d4, # LATIN SMALL LETTER D WITH CARON
|
||||
0x0110: 0x00d1, # LATIN CAPITAL LETTER D WITH STROKE
|
||||
0x0111: 0x00d0, # LATIN SMALL LETTER D WITH STROKE
|
||||
0x0118: 0x00a8, # LATIN CAPITAL LETTER E WITH OGONEK
|
||||
0x0119: 0x00a9, # LATIN SMALL LETTER E WITH OGONEK
|
||||
0x011a: 0x00b7, # LATIN CAPITAL LETTER E WITH CARON
|
||||
0x011b: 0x00d8, # LATIN SMALL LETTER E WITH CARON
|
||||
0x0139: 0x0091, # LATIN CAPITAL LETTER L WITH ACUTE
|
||||
0x013a: 0x0092, # LATIN SMALL LETTER L WITH ACUTE
|
||||
0x013d: 0x0095, # LATIN CAPITAL LETTER L WITH CARON
|
||||
0x013e: 0x0096, # LATIN SMALL LETTER L WITH CARON
|
||||
0x0141: 0x009d, # LATIN CAPITAL LETTER L WITH STROKE
|
||||
0x0142: 0x0088, # LATIN SMALL LETTER L WITH STROKE
|
||||
0x0143: 0x00e3, # LATIN CAPITAL LETTER N WITH ACUTE
|
||||
0x0144: 0x00e4, # LATIN SMALL LETTER N WITH ACUTE
|
||||
0x0147: 0x00d5, # LATIN CAPITAL LETTER N WITH CARON
|
||||
0x0148: 0x00e5, # LATIN SMALL LETTER N WITH CARON
|
||||
0x0150: 0x008a, # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
|
||||
0x0151: 0x008b, # LATIN SMALL LETTER O WITH DOUBLE ACUTE
|
||||
0x0154: 0x00e8, # LATIN CAPITAL LETTER R WITH ACUTE
|
||||
0x0155: 0x00ea, # LATIN SMALL LETTER R WITH ACUTE
|
||||
0x0158: 0x00fc, # LATIN CAPITAL LETTER R WITH CARON
|
||||
0x0159: 0x00fd, # LATIN SMALL LETTER R WITH CARON
|
||||
0x015a: 0x0097, # LATIN CAPITAL LETTER S WITH ACUTE
|
||||
0x015b: 0x0098, # LATIN SMALL LETTER S WITH ACUTE
|
||||
0x015e: 0x00b8, # LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
0x015f: 0x00ad, # LATIN SMALL LETTER S WITH CEDILLA
|
||||
0x0160: 0x00e6, # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x0161: 0x00e7, # LATIN SMALL LETTER S WITH CARON
|
||||
0x0162: 0x00dd, # LATIN CAPITAL LETTER T WITH CEDILLA
|
||||
0x0163: 0x00ee, # LATIN SMALL LETTER T WITH CEDILLA
|
||||
0x0164: 0x009b, # LATIN CAPITAL LETTER T WITH CARON
|
||||
0x0165: 0x009c, # LATIN SMALL LETTER T WITH CARON
|
||||
0x016e: 0x00de, # LATIN CAPITAL LETTER U WITH RING ABOVE
|
||||
0x016f: 0x0085, # LATIN SMALL LETTER U WITH RING ABOVE
|
||||
0x0170: 0x00eb, # LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
|
||||
0x0171: 0x00fb, # LATIN SMALL LETTER U WITH DOUBLE ACUTE
|
||||
0x0179: 0x008d, # LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
0x017a: 0x00ab, # LATIN SMALL LETTER Z WITH ACUTE
|
||||
0x017b: 0x00bd, # LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
0x017c: 0x00be, # LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
0x017d: 0x00a6, # LATIN CAPITAL LETTER Z WITH CARON
|
||||
0x017e: 0x00a7, # LATIN SMALL LETTER Z WITH CARON
|
||||
0x02c7: 0x00f3, # CARON
|
||||
0x02d8: 0x00f4, # BREVE
|
||||
0x02d9: 0x00fa, # DOT ABOVE
|
||||
0x02db: 0x00f2, # OGONEK
|
||||
0x02dd: 0x00f1, # DOUBLE ACUTE ACCENT
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp855.py
Normal file
698
PythonHome/Lib/encodings/cp855.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP855.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp855',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x0452, # CYRILLIC SMALL LETTER DJE
|
||||
0x0081: 0x0402, # CYRILLIC CAPITAL LETTER DJE
|
||||
0x0082: 0x0453, # CYRILLIC SMALL LETTER GJE
|
||||
0x0083: 0x0403, # CYRILLIC CAPITAL LETTER GJE
|
||||
0x0084: 0x0451, # CYRILLIC SMALL LETTER IO
|
||||
0x0085: 0x0401, # CYRILLIC CAPITAL LETTER IO
|
||||
0x0086: 0x0454, # CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
0x0087: 0x0404, # CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
0x0088: 0x0455, # CYRILLIC SMALL LETTER DZE
|
||||
0x0089: 0x0405, # CYRILLIC CAPITAL LETTER DZE
|
||||
0x008a: 0x0456, # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
0x008b: 0x0406, # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
0x008c: 0x0457, # CYRILLIC SMALL LETTER YI
|
||||
0x008d: 0x0407, # CYRILLIC CAPITAL LETTER YI
|
||||
0x008e: 0x0458, # CYRILLIC SMALL LETTER JE
|
||||
0x008f: 0x0408, # CYRILLIC CAPITAL LETTER JE
|
||||
0x0090: 0x0459, # CYRILLIC SMALL LETTER LJE
|
||||
0x0091: 0x0409, # CYRILLIC CAPITAL LETTER LJE
|
||||
0x0092: 0x045a, # CYRILLIC SMALL LETTER NJE
|
||||
0x0093: 0x040a, # CYRILLIC CAPITAL LETTER NJE
|
||||
0x0094: 0x045b, # CYRILLIC SMALL LETTER TSHE
|
||||
0x0095: 0x040b, # CYRILLIC CAPITAL LETTER TSHE
|
||||
0x0096: 0x045c, # CYRILLIC SMALL LETTER KJE
|
||||
0x0097: 0x040c, # CYRILLIC CAPITAL LETTER KJE
|
||||
0x0098: 0x045e, # CYRILLIC SMALL LETTER SHORT U
|
||||
0x0099: 0x040e, # CYRILLIC CAPITAL LETTER SHORT U
|
||||
0x009a: 0x045f, # CYRILLIC SMALL LETTER DZHE
|
||||
0x009b: 0x040f, # CYRILLIC CAPITAL LETTER DZHE
|
||||
0x009c: 0x044e, # CYRILLIC SMALL LETTER YU
|
||||
0x009d: 0x042e, # CYRILLIC CAPITAL LETTER YU
|
||||
0x009e: 0x044a, # CYRILLIC SMALL LETTER HARD SIGN
|
||||
0x009f: 0x042a, # CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
0x00a0: 0x0430, # CYRILLIC SMALL LETTER A
|
||||
0x00a1: 0x0410, # CYRILLIC CAPITAL LETTER A
|
||||
0x00a2: 0x0431, # CYRILLIC SMALL LETTER BE
|
||||
0x00a3: 0x0411, # CYRILLIC CAPITAL LETTER BE
|
||||
0x00a4: 0x0446, # CYRILLIC SMALL LETTER TSE
|
||||
0x00a5: 0x0426, # CYRILLIC CAPITAL LETTER TSE
|
||||
0x00a6: 0x0434, # CYRILLIC SMALL LETTER DE
|
||||
0x00a7: 0x0414, # CYRILLIC CAPITAL LETTER DE
|
||||
0x00a8: 0x0435, # CYRILLIC SMALL LETTER IE
|
||||
0x00a9: 0x0415, # CYRILLIC CAPITAL LETTER IE
|
||||
0x00aa: 0x0444, # CYRILLIC SMALL LETTER EF
|
||||
0x00ab: 0x0424, # CYRILLIC CAPITAL LETTER EF
|
||||
0x00ac: 0x0433, # CYRILLIC SMALL LETTER GHE
|
||||
0x00ad: 0x0413, # CYRILLIC CAPITAL LETTER GHE
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x0445, # CYRILLIC SMALL LETTER HA
|
||||
0x00b6: 0x0425, # CYRILLIC CAPITAL LETTER HA
|
||||
0x00b7: 0x0438, # CYRILLIC SMALL LETTER I
|
||||
0x00b8: 0x0418, # CYRILLIC CAPITAL LETTER I
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x0439, # CYRILLIC SMALL LETTER SHORT I
|
||||
0x00be: 0x0419, # CYRILLIC CAPITAL LETTER SHORT I
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x043a, # CYRILLIC SMALL LETTER KA
|
||||
0x00c7: 0x041a, # CYRILLIC CAPITAL LETTER KA
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x00a4, # CURRENCY SIGN
|
||||
0x00d0: 0x043b, # CYRILLIC SMALL LETTER EL
|
||||
0x00d1: 0x041b, # CYRILLIC CAPITAL LETTER EL
|
||||
0x00d2: 0x043c, # CYRILLIC SMALL LETTER EM
|
||||
0x00d3: 0x041c, # CYRILLIC CAPITAL LETTER EM
|
||||
0x00d4: 0x043d, # CYRILLIC SMALL LETTER EN
|
||||
0x00d5: 0x041d, # CYRILLIC CAPITAL LETTER EN
|
||||
0x00d6: 0x043e, # CYRILLIC SMALL LETTER O
|
||||
0x00d7: 0x041e, # CYRILLIC CAPITAL LETTER O
|
||||
0x00d8: 0x043f, # CYRILLIC SMALL LETTER PE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x041f, # CYRILLIC CAPITAL LETTER PE
|
||||
0x00de: 0x044f, # CYRILLIC SMALL LETTER YA
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x042f, # CYRILLIC CAPITAL LETTER YA
|
||||
0x00e1: 0x0440, # CYRILLIC SMALL LETTER ER
|
||||
0x00e2: 0x0420, # CYRILLIC CAPITAL LETTER ER
|
||||
0x00e3: 0x0441, # CYRILLIC SMALL LETTER ES
|
||||
0x00e4: 0x0421, # CYRILLIC CAPITAL LETTER ES
|
||||
0x00e5: 0x0442, # CYRILLIC SMALL LETTER TE
|
||||
0x00e6: 0x0422, # CYRILLIC CAPITAL LETTER TE
|
||||
0x00e7: 0x0443, # CYRILLIC SMALL LETTER U
|
||||
0x00e8: 0x0423, # CYRILLIC CAPITAL LETTER U
|
||||
0x00e9: 0x0436, # CYRILLIC SMALL LETTER ZHE
|
||||
0x00ea: 0x0416, # CYRILLIC CAPITAL LETTER ZHE
|
||||
0x00eb: 0x0432, # CYRILLIC SMALL LETTER VE
|
||||
0x00ec: 0x0412, # CYRILLIC CAPITAL LETTER VE
|
||||
0x00ed: 0x044c, # CYRILLIC SMALL LETTER SOFT SIGN
|
||||
0x00ee: 0x042c, # CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
0x00ef: 0x2116, # NUMERO SIGN
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x044b, # CYRILLIC SMALL LETTER YERU
|
||||
0x00f2: 0x042b, # CYRILLIC CAPITAL LETTER YERU
|
||||
0x00f3: 0x0437, # CYRILLIC SMALL LETTER ZE
|
||||
0x00f4: 0x0417, # CYRILLIC CAPITAL LETTER ZE
|
||||
0x00f5: 0x0448, # CYRILLIC SMALL LETTER SHA
|
||||
0x00f6: 0x0428, # CYRILLIC CAPITAL LETTER SHA
|
||||
0x00f7: 0x044d, # CYRILLIC SMALL LETTER E
|
||||
0x00f8: 0x042d, # CYRILLIC CAPITAL LETTER E
|
||||
0x00f9: 0x0449, # CYRILLIC SMALL LETTER SHCHA
|
||||
0x00fa: 0x0429, # CYRILLIC CAPITAL LETTER SHCHA
|
||||
0x00fb: 0x0447, # CYRILLIC SMALL LETTER CHE
|
||||
0x00fc: 0x0427, # CYRILLIC CAPITAL LETTER CHE
|
||||
0x00fd: 0x00a7, # SECTION SIGN
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\u0452' # 0x0080 -> CYRILLIC SMALL LETTER DJE
|
||||
u'\u0402' # 0x0081 -> CYRILLIC CAPITAL LETTER DJE
|
||||
u'\u0453' # 0x0082 -> CYRILLIC SMALL LETTER GJE
|
||||
u'\u0403' # 0x0083 -> CYRILLIC CAPITAL LETTER GJE
|
||||
u'\u0451' # 0x0084 -> CYRILLIC SMALL LETTER IO
|
||||
u'\u0401' # 0x0085 -> CYRILLIC CAPITAL LETTER IO
|
||||
u'\u0454' # 0x0086 -> CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
u'\u0404' # 0x0087 -> CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
u'\u0455' # 0x0088 -> CYRILLIC SMALL LETTER DZE
|
||||
u'\u0405' # 0x0089 -> CYRILLIC CAPITAL LETTER DZE
|
||||
u'\u0456' # 0x008a -> CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
u'\u0406' # 0x008b -> CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
u'\u0457' # 0x008c -> CYRILLIC SMALL LETTER YI
|
||||
u'\u0407' # 0x008d -> CYRILLIC CAPITAL LETTER YI
|
||||
u'\u0458' # 0x008e -> CYRILLIC SMALL LETTER JE
|
||||
u'\u0408' # 0x008f -> CYRILLIC CAPITAL LETTER JE
|
||||
u'\u0459' # 0x0090 -> CYRILLIC SMALL LETTER LJE
|
||||
u'\u0409' # 0x0091 -> CYRILLIC CAPITAL LETTER LJE
|
||||
u'\u045a' # 0x0092 -> CYRILLIC SMALL LETTER NJE
|
||||
u'\u040a' # 0x0093 -> CYRILLIC CAPITAL LETTER NJE
|
||||
u'\u045b' # 0x0094 -> CYRILLIC SMALL LETTER TSHE
|
||||
u'\u040b' # 0x0095 -> CYRILLIC CAPITAL LETTER TSHE
|
||||
u'\u045c' # 0x0096 -> CYRILLIC SMALL LETTER KJE
|
||||
u'\u040c' # 0x0097 -> CYRILLIC CAPITAL LETTER KJE
|
||||
u'\u045e' # 0x0098 -> CYRILLIC SMALL LETTER SHORT U
|
||||
u'\u040e' # 0x0099 -> CYRILLIC CAPITAL LETTER SHORT U
|
||||
u'\u045f' # 0x009a -> CYRILLIC SMALL LETTER DZHE
|
||||
u'\u040f' # 0x009b -> CYRILLIC CAPITAL LETTER DZHE
|
||||
u'\u044e' # 0x009c -> CYRILLIC SMALL LETTER YU
|
||||
u'\u042e' # 0x009d -> CYRILLIC CAPITAL LETTER YU
|
||||
u'\u044a' # 0x009e -> CYRILLIC SMALL LETTER HARD SIGN
|
||||
u'\u042a' # 0x009f -> CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
u'\u0430' # 0x00a0 -> CYRILLIC SMALL LETTER A
|
||||
u'\u0410' # 0x00a1 -> CYRILLIC CAPITAL LETTER A
|
||||
u'\u0431' # 0x00a2 -> CYRILLIC SMALL LETTER BE
|
||||
u'\u0411' # 0x00a3 -> CYRILLIC CAPITAL LETTER BE
|
||||
u'\u0446' # 0x00a4 -> CYRILLIC SMALL LETTER TSE
|
||||
u'\u0426' # 0x00a5 -> CYRILLIC CAPITAL LETTER TSE
|
||||
u'\u0434' # 0x00a6 -> CYRILLIC SMALL LETTER DE
|
||||
u'\u0414' # 0x00a7 -> CYRILLIC CAPITAL LETTER DE
|
||||
u'\u0435' # 0x00a8 -> CYRILLIC SMALL LETTER IE
|
||||
u'\u0415' # 0x00a9 -> CYRILLIC CAPITAL LETTER IE
|
||||
u'\u0444' # 0x00aa -> CYRILLIC SMALL LETTER EF
|
||||
u'\u0424' # 0x00ab -> CYRILLIC CAPITAL LETTER EF
|
||||
u'\u0433' # 0x00ac -> CYRILLIC SMALL LETTER GHE
|
||||
u'\u0413' # 0x00ad -> CYRILLIC CAPITAL LETTER GHE
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u0445' # 0x00b5 -> CYRILLIC SMALL LETTER HA
|
||||
u'\u0425' # 0x00b6 -> CYRILLIC CAPITAL LETTER HA
|
||||
u'\u0438' # 0x00b7 -> CYRILLIC SMALL LETTER I
|
||||
u'\u0418' # 0x00b8 -> CYRILLIC CAPITAL LETTER I
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u0439' # 0x00bd -> CYRILLIC SMALL LETTER SHORT I
|
||||
u'\u0419' # 0x00be -> CYRILLIC CAPITAL LETTER SHORT I
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u043a' # 0x00c6 -> CYRILLIC SMALL LETTER KA
|
||||
u'\u041a' # 0x00c7 -> CYRILLIC CAPITAL LETTER KA
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\xa4' # 0x00cf -> CURRENCY SIGN
|
||||
u'\u043b' # 0x00d0 -> CYRILLIC SMALL LETTER EL
|
||||
u'\u041b' # 0x00d1 -> CYRILLIC CAPITAL LETTER EL
|
||||
u'\u043c' # 0x00d2 -> CYRILLIC SMALL LETTER EM
|
||||
u'\u041c' # 0x00d3 -> CYRILLIC CAPITAL LETTER EM
|
||||
u'\u043d' # 0x00d4 -> CYRILLIC SMALL LETTER EN
|
||||
u'\u041d' # 0x00d5 -> CYRILLIC CAPITAL LETTER EN
|
||||
u'\u043e' # 0x00d6 -> CYRILLIC SMALL LETTER O
|
||||
u'\u041e' # 0x00d7 -> CYRILLIC CAPITAL LETTER O
|
||||
u'\u043f' # 0x00d8 -> CYRILLIC SMALL LETTER PE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u041f' # 0x00dd -> CYRILLIC CAPITAL LETTER PE
|
||||
u'\u044f' # 0x00de -> CYRILLIC SMALL LETTER YA
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u042f' # 0x00e0 -> CYRILLIC CAPITAL LETTER YA
|
||||
u'\u0440' # 0x00e1 -> CYRILLIC SMALL LETTER ER
|
||||
u'\u0420' # 0x00e2 -> CYRILLIC CAPITAL LETTER ER
|
||||
u'\u0441' # 0x00e3 -> CYRILLIC SMALL LETTER ES
|
||||
u'\u0421' # 0x00e4 -> CYRILLIC CAPITAL LETTER ES
|
||||
u'\u0442' # 0x00e5 -> CYRILLIC SMALL LETTER TE
|
||||
u'\u0422' # 0x00e6 -> CYRILLIC CAPITAL LETTER TE
|
||||
u'\u0443' # 0x00e7 -> CYRILLIC SMALL LETTER U
|
||||
u'\u0423' # 0x00e8 -> CYRILLIC CAPITAL LETTER U
|
||||
u'\u0436' # 0x00e9 -> CYRILLIC SMALL LETTER ZHE
|
||||
u'\u0416' # 0x00ea -> CYRILLIC CAPITAL LETTER ZHE
|
||||
u'\u0432' # 0x00eb -> CYRILLIC SMALL LETTER VE
|
||||
u'\u0412' # 0x00ec -> CYRILLIC CAPITAL LETTER VE
|
||||
u'\u044c' # 0x00ed -> CYRILLIC SMALL LETTER SOFT SIGN
|
||||
u'\u042c' # 0x00ee -> CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
u'\u2116' # 0x00ef -> NUMERO SIGN
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\u044b' # 0x00f1 -> CYRILLIC SMALL LETTER YERU
|
||||
u'\u042b' # 0x00f2 -> CYRILLIC CAPITAL LETTER YERU
|
||||
u'\u0437' # 0x00f3 -> CYRILLIC SMALL LETTER ZE
|
||||
u'\u0417' # 0x00f4 -> CYRILLIC CAPITAL LETTER ZE
|
||||
u'\u0448' # 0x00f5 -> CYRILLIC SMALL LETTER SHA
|
||||
u'\u0428' # 0x00f6 -> CYRILLIC CAPITAL LETTER SHA
|
||||
u'\u044d' # 0x00f7 -> CYRILLIC SMALL LETTER E
|
||||
u'\u042d' # 0x00f8 -> CYRILLIC CAPITAL LETTER E
|
||||
u'\u0449' # 0x00f9 -> CYRILLIC SMALL LETTER SHCHA
|
||||
u'\u0429' # 0x00fa -> CYRILLIC CAPITAL LETTER SHCHA
|
||||
u'\u0447' # 0x00fb -> CYRILLIC SMALL LETTER CHE
|
||||
u'\u0427' # 0x00fc -> CYRILLIC CAPITAL LETTER CHE
|
||||
u'\xa7' # 0x00fd -> SECTION SIGN
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a4: 0x00cf, # CURRENCY SIGN
|
||||
0x00a7: 0x00fd, # SECTION SIGN
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x0401: 0x0085, # CYRILLIC CAPITAL LETTER IO
|
||||
0x0402: 0x0081, # CYRILLIC CAPITAL LETTER DJE
|
||||
0x0403: 0x0083, # CYRILLIC CAPITAL LETTER GJE
|
||||
0x0404: 0x0087, # CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
0x0405: 0x0089, # CYRILLIC CAPITAL LETTER DZE
|
||||
0x0406: 0x008b, # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
0x0407: 0x008d, # CYRILLIC CAPITAL LETTER YI
|
||||
0x0408: 0x008f, # CYRILLIC CAPITAL LETTER JE
|
||||
0x0409: 0x0091, # CYRILLIC CAPITAL LETTER LJE
|
||||
0x040a: 0x0093, # CYRILLIC CAPITAL LETTER NJE
|
||||
0x040b: 0x0095, # CYRILLIC CAPITAL LETTER TSHE
|
||||
0x040c: 0x0097, # CYRILLIC CAPITAL LETTER KJE
|
||||
0x040e: 0x0099, # CYRILLIC CAPITAL LETTER SHORT U
|
||||
0x040f: 0x009b, # CYRILLIC CAPITAL LETTER DZHE
|
||||
0x0410: 0x00a1, # CYRILLIC CAPITAL LETTER A
|
||||
0x0411: 0x00a3, # CYRILLIC CAPITAL LETTER BE
|
||||
0x0412: 0x00ec, # CYRILLIC CAPITAL LETTER VE
|
||||
0x0413: 0x00ad, # CYRILLIC CAPITAL LETTER GHE
|
||||
0x0414: 0x00a7, # CYRILLIC CAPITAL LETTER DE
|
||||
0x0415: 0x00a9, # CYRILLIC CAPITAL LETTER IE
|
||||
0x0416: 0x00ea, # CYRILLIC CAPITAL LETTER ZHE
|
||||
0x0417: 0x00f4, # CYRILLIC CAPITAL LETTER ZE
|
||||
0x0418: 0x00b8, # CYRILLIC CAPITAL LETTER I
|
||||
0x0419: 0x00be, # CYRILLIC CAPITAL LETTER SHORT I
|
||||
0x041a: 0x00c7, # CYRILLIC CAPITAL LETTER KA
|
||||
0x041b: 0x00d1, # CYRILLIC CAPITAL LETTER EL
|
||||
0x041c: 0x00d3, # CYRILLIC CAPITAL LETTER EM
|
||||
0x041d: 0x00d5, # CYRILLIC CAPITAL LETTER EN
|
||||
0x041e: 0x00d7, # CYRILLIC CAPITAL LETTER O
|
||||
0x041f: 0x00dd, # CYRILLIC CAPITAL LETTER PE
|
||||
0x0420: 0x00e2, # CYRILLIC CAPITAL LETTER ER
|
||||
0x0421: 0x00e4, # CYRILLIC CAPITAL LETTER ES
|
||||
0x0422: 0x00e6, # CYRILLIC CAPITAL LETTER TE
|
||||
0x0423: 0x00e8, # CYRILLIC CAPITAL LETTER U
|
||||
0x0424: 0x00ab, # CYRILLIC CAPITAL LETTER EF
|
||||
0x0425: 0x00b6, # CYRILLIC CAPITAL LETTER HA
|
||||
0x0426: 0x00a5, # CYRILLIC CAPITAL LETTER TSE
|
||||
0x0427: 0x00fc, # CYRILLIC CAPITAL LETTER CHE
|
||||
0x0428: 0x00f6, # CYRILLIC CAPITAL LETTER SHA
|
||||
0x0429: 0x00fa, # CYRILLIC CAPITAL LETTER SHCHA
|
||||
0x042a: 0x009f, # CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
0x042b: 0x00f2, # CYRILLIC CAPITAL LETTER YERU
|
||||
0x042c: 0x00ee, # CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
0x042d: 0x00f8, # CYRILLIC CAPITAL LETTER E
|
||||
0x042e: 0x009d, # CYRILLIC CAPITAL LETTER YU
|
||||
0x042f: 0x00e0, # CYRILLIC CAPITAL LETTER YA
|
||||
0x0430: 0x00a0, # CYRILLIC SMALL LETTER A
|
||||
0x0431: 0x00a2, # CYRILLIC SMALL LETTER BE
|
||||
0x0432: 0x00eb, # CYRILLIC SMALL LETTER VE
|
||||
0x0433: 0x00ac, # CYRILLIC SMALL LETTER GHE
|
||||
0x0434: 0x00a6, # CYRILLIC SMALL LETTER DE
|
||||
0x0435: 0x00a8, # CYRILLIC SMALL LETTER IE
|
||||
0x0436: 0x00e9, # CYRILLIC SMALL LETTER ZHE
|
||||
0x0437: 0x00f3, # CYRILLIC SMALL LETTER ZE
|
||||
0x0438: 0x00b7, # CYRILLIC SMALL LETTER I
|
||||
0x0439: 0x00bd, # CYRILLIC SMALL LETTER SHORT I
|
||||
0x043a: 0x00c6, # CYRILLIC SMALL LETTER KA
|
||||
0x043b: 0x00d0, # CYRILLIC SMALL LETTER EL
|
||||
0x043c: 0x00d2, # CYRILLIC SMALL LETTER EM
|
||||
0x043d: 0x00d4, # CYRILLIC SMALL LETTER EN
|
||||
0x043e: 0x00d6, # CYRILLIC SMALL LETTER O
|
||||
0x043f: 0x00d8, # CYRILLIC SMALL LETTER PE
|
||||
0x0440: 0x00e1, # CYRILLIC SMALL LETTER ER
|
||||
0x0441: 0x00e3, # CYRILLIC SMALL LETTER ES
|
||||
0x0442: 0x00e5, # CYRILLIC SMALL LETTER TE
|
||||
0x0443: 0x00e7, # CYRILLIC SMALL LETTER U
|
||||
0x0444: 0x00aa, # CYRILLIC SMALL LETTER EF
|
||||
0x0445: 0x00b5, # CYRILLIC SMALL LETTER HA
|
||||
0x0446: 0x00a4, # CYRILLIC SMALL LETTER TSE
|
||||
0x0447: 0x00fb, # CYRILLIC SMALL LETTER CHE
|
||||
0x0448: 0x00f5, # CYRILLIC SMALL LETTER SHA
|
||||
0x0449: 0x00f9, # CYRILLIC SMALL LETTER SHCHA
|
||||
0x044a: 0x009e, # CYRILLIC SMALL LETTER HARD SIGN
|
||||
0x044b: 0x00f1, # CYRILLIC SMALL LETTER YERU
|
||||
0x044c: 0x00ed, # CYRILLIC SMALL LETTER SOFT SIGN
|
||||
0x044d: 0x00f7, # CYRILLIC SMALL LETTER E
|
||||
0x044e: 0x009c, # CYRILLIC SMALL LETTER YU
|
||||
0x044f: 0x00de, # CYRILLIC SMALL LETTER YA
|
||||
0x0451: 0x0084, # CYRILLIC SMALL LETTER IO
|
||||
0x0452: 0x0080, # CYRILLIC SMALL LETTER DJE
|
||||
0x0453: 0x0082, # CYRILLIC SMALL LETTER GJE
|
||||
0x0454: 0x0086, # CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
0x0455: 0x0088, # CYRILLIC SMALL LETTER DZE
|
||||
0x0456: 0x008a, # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
|
||||
0x0457: 0x008c, # CYRILLIC SMALL LETTER YI
|
||||
0x0458: 0x008e, # CYRILLIC SMALL LETTER JE
|
||||
0x0459: 0x0090, # CYRILLIC SMALL LETTER LJE
|
||||
0x045a: 0x0092, # CYRILLIC SMALL LETTER NJE
|
||||
0x045b: 0x0094, # CYRILLIC SMALL LETTER TSHE
|
||||
0x045c: 0x0096, # CYRILLIC SMALL LETTER KJE
|
||||
0x045e: 0x0098, # CYRILLIC SMALL LETTER SHORT U
|
||||
0x045f: 0x009a, # CYRILLIC SMALL LETTER DZHE
|
||||
0x2116: 0x00ef, # NUMERO SIGN
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp856.py
Normal file
307
PythonHome/Lib/encodings/cp856.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp856 generated from 'MAPPINGS/VENDORS/MISC/CP856.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp856',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u05d0' # 0x80 -> HEBREW LETTER ALEF
|
||||
u'\u05d1' # 0x81 -> HEBREW LETTER BET
|
||||
u'\u05d2' # 0x82 -> HEBREW LETTER GIMEL
|
||||
u'\u05d3' # 0x83 -> HEBREW LETTER DALET
|
||||
u'\u05d4' # 0x84 -> HEBREW LETTER HE
|
||||
u'\u05d5' # 0x85 -> HEBREW LETTER VAV
|
||||
u'\u05d6' # 0x86 -> HEBREW LETTER ZAYIN
|
||||
u'\u05d7' # 0x87 -> HEBREW LETTER HET
|
||||
u'\u05d8' # 0x88 -> HEBREW LETTER TET
|
||||
u'\u05d9' # 0x89 -> HEBREW LETTER YOD
|
||||
u'\u05da' # 0x8A -> HEBREW LETTER FINAL KAF
|
||||
u'\u05db' # 0x8B -> HEBREW LETTER KAF
|
||||
u'\u05dc' # 0x8C -> HEBREW LETTER LAMED
|
||||
u'\u05dd' # 0x8D -> HEBREW LETTER FINAL MEM
|
||||
u'\u05de' # 0x8E -> HEBREW LETTER MEM
|
||||
u'\u05df' # 0x8F -> HEBREW LETTER FINAL NUN
|
||||
u'\u05e0' # 0x90 -> HEBREW LETTER NUN
|
||||
u'\u05e1' # 0x91 -> HEBREW LETTER SAMEKH
|
||||
u'\u05e2' # 0x92 -> HEBREW LETTER AYIN
|
||||
u'\u05e3' # 0x93 -> HEBREW LETTER FINAL PE
|
||||
u'\u05e4' # 0x94 -> HEBREW LETTER PE
|
||||
u'\u05e5' # 0x95 -> HEBREW LETTER FINAL TSADI
|
||||
u'\u05e6' # 0x96 -> HEBREW LETTER TSADI
|
||||
u'\u05e7' # 0x97 -> HEBREW LETTER QOF
|
||||
u'\u05e8' # 0x98 -> HEBREW LETTER RESH
|
||||
u'\u05e9' # 0x99 -> HEBREW LETTER SHIN
|
||||
u'\u05ea' # 0x9A -> HEBREW LETTER TAV
|
||||
u'\ufffe' # 0x9B -> UNDEFINED
|
||||
u'\xa3' # 0x9C -> POUND SIGN
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\xd7' # 0x9E -> MULTIPLICATION SIGN
|
||||
u'\ufffe' # 0x9F -> UNDEFINED
|
||||
u'\ufffe' # 0xA0 -> UNDEFINED
|
||||
u'\ufffe' # 0xA1 -> UNDEFINED
|
||||
u'\ufffe' # 0xA2 -> UNDEFINED
|
||||
u'\ufffe' # 0xA3 -> UNDEFINED
|
||||
u'\ufffe' # 0xA4 -> UNDEFINED
|
||||
u'\ufffe' # 0xA5 -> UNDEFINED
|
||||
u'\ufffe' # 0xA6 -> UNDEFINED
|
||||
u'\ufffe' # 0xA7 -> UNDEFINED
|
||||
u'\ufffe' # 0xA8 -> UNDEFINED
|
||||
u'\xae' # 0xA9 -> REGISTERED SIGN
|
||||
u'\xac' # 0xAA -> NOT SIGN
|
||||
u'\xbd' # 0xAB -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0xAC -> VULGAR FRACTION ONE QUARTER
|
||||
u'\ufffe' # 0xAD -> UNDEFINED
|
||||
u'\xab' # 0xAE -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0xAF -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0xB0 -> LIGHT SHADE
|
||||
u'\u2592' # 0xB1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0xB2 -> DARK SHADE
|
||||
u'\u2502' # 0xB3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0xB4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\ufffe' # 0xB5 -> UNDEFINED
|
||||
u'\ufffe' # 0xB6 -> UNDEFINED
|
||||
u'\ufffe' # 0xB7 -> UNDEFINED
|
||||
u'\xa9' # 0xB8 -> COPYRIGHT SIGN
|
||||
u'\u2563' # 0xB9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0xBA -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0xBB -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0xBC -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\xa2' # 0xBD -> CENT SIGN
|
||||
u'\xa5' # 0xBE -> YEN SIGN
|
||||
u'\u2510' # 0xBF -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0xC0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0xC1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0xC2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0xC3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0xC4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0xC5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\ufffe' # 0xC6 -> UNDEFINED
|
||||
u'\ufffe' # 0xC7 -> UNDEFINED
|
||||
u'\u255a' # 0xC8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0xC9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0xCA -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0xCB -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0xCC -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0xCD -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0xCE -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\xa4' # 0xCF -> CURRENCY SIGN
|
||||
u'\ufffe' # 0xD0 -> UNDEFINED
|
||||
u'\ufffe' # 0xD1 -> UNDEFINED
|
||||
u'\ufffe' # 0xD2 -> UNDEFINED
|
||||
u'\ufffe' # 0xD3 -> UNDEFINEDS
|
||||
u'\ufffe' # 0xD4 -> UNDEFINED
|
||||
u'\ufffe' # 0xD5 -> UNDEFINED
|
||||
u'\ufffe' # 0xD6 -> UNDEFINEDE
|
||||
u'\ufffe' # 0xD7 -> UNDEFINED
|
||||
u'\ufffe' # 0xD8 -> UNDEFINED
|
||||
u'\u2518' # 0xD9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0xDA -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0xDB -> FULL BLOCK
|
||||
u'\u2584' # 0xDC -> LOWER HALF BLOCK
|
||||
u'\xa6' # 0xDD -> BROKEN BAR
|
||||
u'\ufffe' # 0xDE -> UNDEFINED
|
||||
u'\u2580' # 0xDF -> UPPER HALF BLOCK
|
||||
u'\ufffe' # 0xE0 -> UNDEFINED
|
||||
u'\ufffe' # 0xE1 -> UNDEFINED
|
||||
u'\ufffe' # 0xE2 -> UNDEFINED
|
||||
u'\ufffe' # 0xE3 -> UNDEFINED
|
||||
u'\ufffe' # 0xE4 -> UNDEFINED
|
||||
u'\ufffe' # 0xE5 -> UNDEFINED
|
||||
u'\xb5' # 0xE6 -> MICRO SIGN
|
||||
u'\ufffe' # 0xE7 -> UNDEFINED
|
||||
u'\ufffe' # 0xE8 -> UNDEFINED
|
||||
u'\ufffe' # 0xE9 -> UNDEFINED
|
||||
u'\ufffe' # 0xEA -> UNDEFINED
|
||||
u'\ufffe' # 0xEB -> UNDEFINED
|
||||
u'\ufffe' # 0xEC -> UNDEFINED
|
||||
u'\ufffe' # 0xED -> UNDEFINED
|
||||
u'\xaf' # 0xEE -> MACRON
|
||||
u'\xb4' # 0xEF -> ACUTE ACCENT
|
||||
u'\xad' # 0xF0 -> SOFT HYPHEN
|
||||
u'\xb1' # 0xF1 -> PLUS-MINUS SIGN
|
||||
u'\u2017' # 0xF2 -> DOUBLE LOW LINE
|
||||
u'\xbe' # 0xF3 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xb6' # 0xF4 -> PILCROW SIGN
|
||||
u'\xa7' # 0xF5 -> SECTION SIGN
|
||||
u'\xf7' # 0xF6 -> DIVISION SIGN
|
||||
u'\xb8' # 0xF7 -> CEDILLA
|
||||
u'\xb0' # 0xF8 -> DEGREE SIGN
|
||||
u'\xa8' # 0xF9 -> DIAERESIS
|
||||
u'\xb7' # 0xFA -> MIDDLE DOT
|
||||
u'\xb9' # 0xFB -> SUPERSCRIPT ONE
|
||||
u'\xb3' # 0xFC -> SUPERSCRIPT THREE
|
||||
u'\xb2' # 0xFD -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0xFE -> BLACK SQUARE
|
||||
u'\xa0' # 0xFF -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
694
PythonHome/Lib/encodings/cp857.py
Normal file
694
PythonHome/Lib/encodings/cp857.py
Normal file
@@ -0,0 +1,694 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP857.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp857',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00ef, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x0131, # LATIN SMALL LETTER DOTLESS I
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x00f2, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x0130, # LATIN CAPITAL LETTER I WITH DOT ABOVE
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00f8, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d8, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x009e: 0x015e, # LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
0x009f: 0x015f, # LATIN SMALL LETTER S WITH CEDILLA
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x011e, # LATIN CAPITAL LETTER G WITH BREVE
|
||||
0x00a7: 0x011f, # LATIN SMALL LETTER G WITH BREVE
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x00ae, # REGISTERED SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x00c1, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00b6: 0x00c2, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00b7: 0x00c0, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00b8: 0x00a9, # COPYRIGHT SIGN
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x00a2, # CENT SIGN
|
||||
0x00be: 0x00a5, # YEN SIGN
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x00e3, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00c7: 0x00c3, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x00a4, # CURRENCY SIGN
|
||||
0x00d0: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00d1: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00d2: 0x00ca, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00d3: 0x00cb, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00d4: 0x00c8, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00d5: None, # UNDEFINED
|
||||
0x00d6: 0x00cd, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00d7: 0x00ce, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00d8: 0x00cf, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x00a6, # BROKEN BAR
|
||||
0x00de: 0x00cc, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x00d4, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00e3: 0x00d2, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00e4: 0x00f5, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00e5: 0x00d5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: None, # UNDEFINED
|
||||
0x00e8: 0x00d7, # MULTIPLICATION SIGN
|
||||
0x00e9: 0x00da, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00ea: 0x00db, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00eb: 0x00d9, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00ed: 0x00ff, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x00ee: 0x00af, # MACRON
|
||||
0x00ef: 0x00b4, # ACUTE ACCENT
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: None, # UNDEFINED
|
||||
0x00f3: 0x00be, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00f4: 0x00b6, # PILCROW SIGN
|
||||
0x00f5: 0x00a7, # SECTION SIGN
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x00b8, # CEDILLA
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x00a8, # DIAERESIS
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x00b9, # SUPERSCRIPT ONE
|
||||
0x00fc: 0x00b3, # SUPERSCRIPT THREE
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x008b -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\u0131' # 0x008d -> LATIN SMALL LETTER DOTLESS I
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0x0095 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\u0130' # 0x0098 -> LATIN CAPITAL LETTER I WITH DOT ABOVE
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xf8' # 0x009b -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd8' # 0x009d -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\u015e' # 0x009e -> LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
u'\u015f' # 0x009f -> LATIN SMALL LETTER S WITH CEDILLA
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\u011e' # 0x00a6 -> LATIN CAPITAL LETTER G WITH BREVE
|
||||
u'\u011f' # 0x00a7 -> LATIN SMALL LETTER G WITH BREVE
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\xae' # 0x00a9 -> REGISTERED SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\xc1' # 0x00b5 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0x00b6 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc0' # 0x00b7 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xa9' # 0x00b8 -> COPYRIGHT SIGN
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\xa2' # 0x00bd -> CENT SIGN
|
||||
u'\xa5' # 0x00be -> YEN SIGN
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\xe3' # 0x00c6 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xc3' # 0x00c7 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\xa4' # 0x00cf -> CURRENCY SIGN
|
||||
u'\xba' # 0x00d0 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xaa' # 0x00d1 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xca' # 0x00d2 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x00d3 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x00d4 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\ufffe' # 0x00d5 -> UNDEFINED
|
||||
u'\xcd' # 0x00d6 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x00d7 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x00d8 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\xa6' # 0x00dd -> BROKEN BAR
|
||||
u'\xcc' # 0x00de -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\xd3' # 0x00e0 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\xd4' # 0x00e2 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd2' # 0x00e3 -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xf5' # 0x00e4 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xd5' # 0x00e5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\ufffe' # 0x00e7 -> UNDEFINED
|
||||
u'\xd7' # 0x00e8 -> MULTIPLICATION SIGN
|
||||
u'\xda' # 0x00e9 -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xdb' # 0x00ea -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xd9' # 0x00eb -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xec' # 0x00ec -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xff' # 0x00ed -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\xaf' # 0x00ee -> MACRON
|
||||
u'\xb4' # 0x00ef -> ACUTE ACCENT
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\ufffe' # 0x00f2 -> UNDEFINED
|
||||
u'\xbe' # 0x00f3 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xb6' # 0x00f4 -> PILCROW SIGN
|
||||
u'\xa7' # 0x00f5 -> SECTION SIGN
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\xb8' # 0x00f7 -> CEDILLA
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\xa8' # 0x00f9 -> DIAERESIS
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\xb9' # 0x00fb -> SUPERSCRIPT ONE
|
||||
u'\xb3' # 0x00fc -> SUPERSCRIPT THREE
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a2: 0x00bd, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a4: 0x00cf, # CURRENCY SIGN
|
||||
0x00a5: 0x00be, # YEN SIGN
|
||||
0x00a6: 0x00dd, # BROKEN BAR
|
||||
0x00a7: 0x00f5, # SECTION SIGN
|
||||
0x00a8: 0x00f9, # DIAERESIS
|
||||
0x00a9: 0x00b8, # COPYRIGHT SIGN
|
||||
0x00aa: 0x00d1, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00ae: 0x00a9, # REGISTERED SIGN
|
||||
0x00af: 0x00ee, # MACRON
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b3: 0x00fc, # SUPERSCRIPT THREE
|
||||
0x00b4: 0x00ef, # ACUTE ACCENT
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b6: 0x00f4, # PILCROW SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00b8: 0x00f7, # CEDILLA
|
||||
0x00b9: 0x00fb, # SUPERSCRIPT ONE
|
||||
0x00ba: 0x00d0, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00be: 0x00f3, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c0: 0x00b7, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00c1: 0x00b5, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00c2: 0x00b6, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00c3: 0x00c7, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c8: 0x00d4, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00ca: 0x00d2, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00cb: 0x00d3, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00cc: 0x00de, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00cd: 0x00d6, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00ce: 0x00d7, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00cf: 0x00d8, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00d2: 0x00e3, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00d3: 0x00e0, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d4: 0x00e2, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00d5: 0x00e5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d7: 0x00e8, # MULTIPLICATION SIGN
|
||||
0x00d8: 0x009d, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00d9: 0x00eb, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00da: 0x00e9, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00db: 0x00ea, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e3: 0x00c6, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ec: 0x00ec, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00ef: 0x008b, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f2: 0x0095, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f5: 0x00e4, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f8: 0x009b, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00ff: 0x00ed, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x011e: 0x00a6, # LATIN CAPITAL LETTER G WITH BREVE
|
||||
0x011f: 0x00a7, # LATIN SMALL LETTER G WITH BREVE
|
||||
0x0130: 0x0098, # LATIN CAPITAL LETTER I WITH DOT ABOVE
|
||||
0x0131: 0x008d, # LATIN SMALL LETTER DOTLESS I
|
||||
0x015e: 0x009e, # LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
0x015f: 0x009f, # LATIN SMALL LETTER S WITH CEDILLA
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp858.py
Normal file
698
PythonHome/Lib/encodings/cp858.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec for CP858, modified from cp850.
|
||||
|
||||
"""
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp858',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00ef, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x00ec, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x00f2, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x00ff, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00f8, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d8, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x009e: 0x00d7, # MULTIPLICATION SIGN
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00a7: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x00ae, # REGISTERED SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x00c1, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00b6: 0x00c2, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00b7: 0x00c0, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00b8: 0x00a9, # COPYRIGHT SIGN
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x00a2, # CENT SIGN
|
||||
0x00be: 0x00a5, # YEN SIGN
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x00e3, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00c7: 0x00c3, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x00a4, # CURRENCY SIGN
|
||||
0x00d0: 0x00f0, # LATIN SMALL LETTER ETH
|
||||
0x00d1: 0x00d0, # LATIN CAPITAL LETTER ETH
|
||||
0x00d2: 0x00ca, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00d3: 0x00cb, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00d4: 0x00c8, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00d5: 0x20ac, # EURO SIGN
|
||||
0x00d6: 0x00cd, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00d7: 0x00ce, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00d8: 0x00cf, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x00a6, # BROKEN BAR
|
||||
0x00de: 0x00cc, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x00d4, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00e3: 0x00d2, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00e4: 0x00f5, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00e5: 0x00d5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x00fe, # LATIN SMALL LETTER THORN
|
||||
0x00e8: 0x00de, # LATIN CAPITAL LETTER THORN
|
||||
0x00e9: 0x00da, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00ea: 0x00db, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00eb: 0x00d9, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00ec: 0x00fd, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00ed: 0x00dd, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00ee: 0x00af, # MACRON
|
||||
0x00ef: 0x00b4, # ACUTE ACCENT
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2017, # DOUBLE LOW LINE
|
||||
0x00f3: 0x00be, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00f4: 0x00b6, # PILCROW SIGN
|
||||
0x00f5: 0x00a7, # SECTION SIGN
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x00b8, # CEDILLA
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x00a8, # DIAERESIS
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x00b9, # SUPERSCRIPT ONE
|
||||
0x00fc: 0x00b3, # SUPERSCRIPT THREE
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x008b -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xec' # 0x008d -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0x0095 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xff' # 0x0098 -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xf8' # 0x009b -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd8' # 0x009d -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\xd7' # 0x009e -> MULTIPLICATION SIGN
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xaa' # 0x00a6 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x00a7 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\xae' # 0x00a9 -> REGISTERED SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\xc1' # 0x00b5 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xc2' # 0x00b6 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc0' # 0x00b7 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xa9' # 0x00b8 -> COPYRIGHT SIGN
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\xa2' # 0x00bd -> CENT SIGN
|
||||
u'\xa5' # 0x00be -> YEN SIGN
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\xe3' # 0x00c6 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xc3' # 0x00c7 -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\xa4' # 0x00cf -> CURRENCY SIGN
|
||||
u'\xf0' # 0x00d0 -> LATIN SMALL LETTER ETH
|
||||
u'\xd0' # 0x00d1 -> LATIN CAPITAL LETTER ETH
|
||||
u'\xca' # 0x00d2 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x00d3 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xc8' # 0x00d4 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\u20ac' # 0x00d5 -> EURO SIGN
|
||||
u'\xcd' # 0x00d6 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xce' # 0x00d7 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\xcf' # 0x00d8 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\xa6' # 0x00dd -> BROKEN BAR
|
||||
u'\xcc' # 0x00de -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\xd3' # 0x00e0 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\xd4' # 0x00e2 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xd2' # 0x00e3 -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xf5' # 0x00e4 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xd5' # 0x00e5 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\xfe' # 0x00e7 -> LATIN SMALL LETTER THORN
|
||||
u'\xde' # 0x00e8 -> LATIN CAPITAL LETTER THORN
|
||||
u'\xda' # 0x00e9 -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xdb' # 0x00ea -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\xd9' # 0x00eb -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xfd' # 0x00ec -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xdd' # 0x00ed -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xaf' # 0x00ee -> MACRON
|
||||
u'\xb4' # 0x00ef -> ACUTE ACCENT
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2017' # 0x00f2 -> DOUBLE LOW LINE
|
||||
u'\xbe' # 0x00f3 -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xb6' # 0x00f4 -> PILCROW SIGN
|
||||
u'\xa7' # 0x00f5 -> SECTION SIGN
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\xb8' # 0x00f7 -> CEDILLA
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\xa8' # 0x00f9 -> DIAERESIS
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\xb9' # 0x00fb -> SUPERSCRIPT ONE
|
||||
u'\xb3' # 0x00fc -> SUPERSCRIPT THREE
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a2: 0x00bd, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a4: 0x00cf, # CURRENCY SIGN
|
||||
0x00a5: 0x00be, # YEN SIGN
|
||||
0x00a6: 0x00dd, # BROKEN BAR
|
||||
0x00a7: 0x00f5, # SECTION SIGN
|
||||
0x00a8: 0x00f9, # DIAERESIS
|
||||
0x00a9: 0x00b8, # COPYRIGHT SIGN
|
||||
0x00aa: 0x00a6, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00ae: 0x00a9, # REGISTERED SIGN
|
||||
0x00af: 0x00ee, # MACRON
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b3: 0x00fc, # SUPERSCRIPT THREE
|
||||
0x00b4: 0x00ef, # ACUTE ACCENT
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b6: 0x00f4, # PILCROW SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00b8: 0x00f7, # CEDILLA
|
||||
0x00b9: 0x00fb, # SUPERSCRIPT ONE
|
||||
0x00ba: 0x00a7, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00be: 0x00f3, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c0: 0x00b7, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00c1: 0x00b5, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00c2: 0x00b6, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00c3: 0x00c7, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c8: 0x00d4, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00ca: 0x00d2, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00cb: 0x00d3, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00cc: 0x00de, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00cd: 0x00d6, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00ce: 0x00d7, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00cf: 0x00d8, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d0: 0x00d1, # LATIN CAPITAL LETTER ETH
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00d2: 0x00e3, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00d3: 0x00e0, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d4: 0x00e2, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00d5: 0x00e5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d7: 0x009e, # MULTIPLICATION SIGN
|
||||
0x00d8: 0x009d, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00d9: 0x00eb, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00da: 0x00e9, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00db: 0x00ea, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00dd: 0x00ed, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00de: 0x00e8, # LATIN CAPITAL LETTER THORN
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e3: 0x00c6, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ec: 0x008d, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00ef: 0x008b, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x00f0: 0x00d0, # LATIN SMALL LETTER ETH
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f2: 0x0095, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f5: 0x00e4, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f8: 0x009b, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00fd: 0x00ec, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00fe: 0x00e7, # LATIN SMALL LETTER THORN
|
||||
0x00ff: 0x0098, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x20ac: 0x00d5, # EURO SIGN
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x2017: 0x00f2, # DOUBLE LOW LINE
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp860.py
Normal file
698
PythonHome/Lib/encodings/cp860.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP860.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp860',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e3, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00c1, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00ca, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00cd, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x008c: 0x00d4, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x008d: 0x00ec, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x008e: 0x00c3, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x008f: 0x00c2, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00c0, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x0092: 0x00c8, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f5, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x0095: 0x00f2, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x0096: 0x00da, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x00cc, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x0099: 0x00d5, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00a2, # CENT SIGN
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d9, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x009e: 0x20a7, # PESETA SIGN
|
||||
0x009f: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00a7: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x00d2, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00e3: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00e4: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00e5: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00e8: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00e9: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ea: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00eb: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00ec: 0x221e, # INFINITY
|
||||
0x00ed: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ee: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00ef: 0x2229, # INTERSECTION
|
||||
0x00f0: 0x2261, # IDENTICAL TO
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x2320, # TOP HALF INTEGRAL
|
||||
0x00f5: 0x2321, # BOTTOM HALF INTEGRAL
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe3' # 0x0084 -> LATIN SMALL LETTER A WITH TILDE
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xc1' # 0x0086 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xca' # 0x0089 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xcd' # 0x008b -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xd4' # 0x008c -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xec' # 0x008d -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xc3' # 0x008e -> LATIN CAPITAL LETTER A WITH TILDE
|
||||
u'\xc2' # 0x008f -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xc0' # 0x0091 -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xc8' # 0x0092 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf5' # 0x0094 -> LATIN SMALL LETTER O WITH TILDE
|
||||
u'\xf2' # 0x0095 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xda' # 0x0096 -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xcc' # 0x0098 -> LATIN CAPITAL LETTER I WITH GRAVE
|
||||
u'\xd5' # 0x0099 -> LATIN CAPITAL LETTER O WITH TILDE
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xa2' # 0x009b -> CENT SIGN
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd9' # 0x009d -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\u20a7' # 0x009e -> PESETA SIGN
|
||||
u'\xd3' # 0x009f -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xaa' # 0x00a6 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x00a7 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\xd2' # 0x00a9 -> LATIN CAPITAL LETTER O WITH GRAVE
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b1' # 0x00e0 -> GREEK SMALL LETTER ALPHA
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0393' # 0x00e2 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u03c0' # 0x00e3 -> GREEK SMALL LETTER PI
|
||||
u'\u03a3' # 0x00e4 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03c3' # 0x00e5 -> GREEK SMALL LETTER SIGMA
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u03c4' # 0x00e7 -> GREEK SMALL LETTER TAU
|
||||
u'\u03a6' # 0x00e8 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u0398' # 0x00e9 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u03a9' # 0x00ea -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b4' # 0x00eb -> GREEK SMALL LETTER DELTA
|
||||
u'\u221e' # 0x00ec -> INFINITY
|
||||
u'\u03c6' # 0x00ed -> GREEK SMALL LETTER PHI
|
||||
u'\u03b5' # 0x00ee -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2229' # 0x00ef -> INTERSECTION
|
||||
u'\u2261' # 0x00f0 -> IDENTICAL TO
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u2320' # 0x00f4 -> TOP HALF INTEGRAL
|
||||
u'\u2321' # 0x00f5 -> BOTTOM HALF INTEGRAL
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a2: 0x009b, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00aa: 0x00a6, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00ba: 0x00a7, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c0: 0x0091, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00c1: 0x0086, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00c2: 0x008f, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00c3: 0x008e, # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c8: 0x0092, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00ca: 0x0089, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00cc: 0x0098, # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00cd: 0x008b, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00d2: 0x00a9, # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00d3: 0x009f, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d4: 0x008c, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00d5: 0x0099, # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00d9: 0x009d, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00da: 0x0096, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e3: 0x0084, # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00ec: 0x008d, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f2: 0x0095, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f5: 0x0094, # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0393: 0x00e2, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0398: 0x00e9, # GREEK CAPITAL LETTER THETA
|
||||
0x03a3: 0x00e4, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a6: 0x00e8, # GREEK CAPITAL LETTER PHI
|
||||
0x03a9: 0x00ea, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03b1: 0x00e0, # GREEK SMALL LETTER ALPHA
|
||||
0x03b4: 0x00eb, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00ee, # GREEK SMALL LETTER EPSILON
|
||||
0x03c0: 0x00e3, # GREEK SMALL LETTER PI
|
||||
0x03c3: 0x00e5, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00e7, # GREEK SMALL LETTER TAU
|
||||
0x03c6: 0x00ed, # GREEK SMALL LETTER PHI
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x20a7: 0x009e, # PESETA SIGN
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x221e: 0x00ec, # INFINITY
|
||||
0x2229: 0x00ef, # INTERSECTION
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2261: 0x00f0, # IDENTICAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2320: 0x00f4, # TOP HALF INTEGRAL
|
||||
0x2321: 0x00f5, # BOTTOM HALF INTEGRAL
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp861.py
Normal file
698
PythonHome/Lib/encodings/cp861.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP861.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp861',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00d0, # LATIN CAPITAL LETTER ETH
|
||||
0x008c: 0x00f0, # LATIN SMALL LETTER ETH
|
||||
0x008d: 0x00de, # LATIN CAPITAL LETTER THORN
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x00fe, # LATIN SMALL LETTER THORN
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00dd, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x0098: 0x00fd, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00f8, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d8, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x009e: 0x20a7, # PESETA SIGN
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00c1, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00a5: 0x00cd, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00a6: 0x00d3, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00a7: 0x00da, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x2310, # REVERSED NOT SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00e3: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00e4: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00e5: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00e8: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00e9: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ea: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00eb: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00ec: 0x221e, # INFINITY
|
||||
0x00ed: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ee: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00ef: 0x2229, # INTERSECTION
|
||||
0x00f0: 0x2261, # IDENTICAL TO
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x2320, # TOP HALF INTEGRAL
|
||||
0x00f5: 0x2321, # BOTTOM HALF INTEGRAL
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xd0' # 0x008b -> LATIN CAPITAL LETTER ETH
|
||||
u'\xf0' # 0x008c -> LATIN SMALL LETTER ETH
|
||||
u'\xde' # 0x008d -> LATIN CAPITAL LETTER THORN
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xfe' # 0x0095 -> LATIN SMALL LETTER THORN
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xdd' # 0x0097 -> LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
u'\xfd' # 0x0098 -> LATIN SMALL LETTER Y WITH ACUTE
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xf8' # 0x009b -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd8' # 0x009d -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\u20a7' # 0x009e -> PESETA SIGN
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xc1' # 0x00a4 -> LATIN CAPITAL LETTER A WITH ACUTE
|
||||
u'\xcd' # 0x00a5 -> LATIN CAPITAL LETTER I WITH ACUTE
|
||||
u'\xd3' # 0x00a6 -> LATIN CAPITAL LETTER O WITH ACUTE
|
||||
u'\xda' # 0x00a7 -> LATIN CAPITAL LETTER U WITH ACUTE
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\u2310' # 0x00a9 -> REVERSED NOT SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b1' # 0x00e0 -> GREEK SMALL LETTER ALPHA
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0393' # 0x00e2 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u03c0' # 0x00e3 -> GREEK SMALL LETTER PI
|
||||
u'\u03a3' # 0x00e4 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03c3' # 0x00e5 -> GREEK SMALL LETTER SIGMA
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u03c4' # 0x00e7 -> GREEK SMALL LETTER TAU
|
||||
u'\u03a6' # 0x00e8 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u0398' # 0x00e9 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u03a9' # 0x00ea -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b4' # 0x00eb -> GREEK SMALL LETTER DELTA
|
||||
u'\u221e' # 0x00ec -> INFINITY
|
||||
u'\u03c6' # 0x00ed -> GREEK SMALL LETTER PHI
|
||||
u'\u03b5' # 0x00ee -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2229' # 0x00ef -> INTERSECTION
|
||||
u'\u2261' # 0x00f0 -> IDENTICAL TO
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u2320' # 0x00f4 -> TOP HALF INTEGRAL
|
||||
u'\u2321' # 0x00f5 -> BOTTOM HALF INTEGRAL
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c1: 0x00a4, # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00cd: 0x00a5, # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00d0: 0x008b, # LATIN CAPITAL LETTER ETH
|
||||
0x00d3: 0x00a6, # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d8: 0x009d, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00da: 0x00a7, # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00dd: 0x0097, # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00de: 0x008d, # LATIN CAPITAL LETTER THORN
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00f0: 0x008c, # LATIN SMALL LETTER ETH
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f8: 0x009b, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00fd: 0x0098, # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00fe: 0x0095, # LATIN SMALL LETTER THORN
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x0393: 0x00e2, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0398: 0x00e9, # GREEK CAPITAL LETTER THETA
|
||||
0x03a3: 0x00e4, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a6: 0x00e8, # GREEK CAPITAL LETTER PHI
|
||||
0x03a9: 0x00ea, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03b1: 0x00e0, # GREEK SMALL LETTER ALPHA
|
||||
0x03b4: 0x00eb, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00ee, # GREEK SMALL LETTER EPSILON
|
||||
0x03c0: 0x00e3, # GREEK SMALL LETTER PI
|
||||
0x03c3: 0x00e5, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00e7, # GREEK SMALL LETTER TAU
|
||||
0x03c6: 0x00ed, # GREEK SMALL LETTER PHI
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x20a7: 0x009e, # PESETA SIGN
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x221e: 0x00ec, # INFINITY
|
||||
0x2229: 0x00ef, # INTERSECTION
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2261: 0x00f0, # IDENTICAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2310: 0x00a9, # REVERSED NOT SIGN
|
||||
0x2320: 0x00f4, # TOP HALF INTEGRAL
|
||||
0x2321: 0x00f5, # BOTTOM HALF INTEGRAL
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp862.py
Normal file
698
PythonHome/Lib/encodings/cp862.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP862.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp862',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x05d0, # HEBREW LETTER ALEF
|
||||
0x0081: 0x05d1, # HEBREW LETTER BET
|
||||
0x0082: 0x05d2, # HEBREW LETTER GIMEL
|
||||
0x0083: 0x05d3, # HEBREW LETTER DALET
|
||||
0x0084: 0x05d4, # HEBREW LETTER HE
|
||||
0x0085: 0x05d5, # HEBREW LETTER VAV
|
||||
0x0086: 0x05d6, # HEBREW LETTER ZAYIN
|
||||
0x0087: 0x05d7, # HEBREW LETTER HET
|
||||
0x0088: 0x05d8, # HEBREW LETTER TET
|
||||
0x0089: 0x05d9, # HEBREW LETTER YOD
|
||||
0x008a: 0x05da, # HEBREW LETTER FINAL KAF
|
||||
0x008b: 0x05db, # HEBREW LETTER KAF
|
||||
0x008c: 0x05dc, # HEBREW LETTER LAMED
|
||||
0x008d: 0x05dd, # HEBREW LETTER FINAL MEM
|
||||
0x008e: 0x05de, # HEBREW LETTER MEM
|
||||
0x008f: 0x05df, # HEBREW LETTER FINAL NUN
|
||||
0x0090: 0x05e0, # HEBREW LETTER NUN
|
||||
0x0091: 0x05e1, # HEBREW LETTER SAMEKH
|
||||
0x0092: 0x05e2, # HEBREW LETTER AYIN
|
||||
0x0093: 0x05e3, # HEBREW LETTER FINAL PE
|
||||
0x0094: 0x05e4, # HEBREW LETTER PE
|
||||
0x0095: 0x05e5, # HEBREW LETTER FINAL TSADI
|
||||
0x0096: 0x05e6, # HEBREW LETTER TSADI
|
||||
0x0097: 0x05e7, # HEBREW LETTER QOF
|
||||
0x0098: 0x05e8, # HEBREW LETTER RESH
|
||||
0x0099: 0x05e9, # HEBREW LETTER SHIN
|
||||
0x009a: 0x05ea, # HEBREW LETTER TAV
|
||||
0x009b: 0x00a2, # CENT SIGN
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00a5, # YEN SIGN
|
||||
0x009e: 0x20a7, # PESETA SIGN
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00a7: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x2310, # REVERSED NOT SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
0x00e2: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00e3: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00e4: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00e5: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00e8: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00e9: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ea: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00eb: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00ec: 0x221e, # INFINITY
|
||||
0x00ed: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ee: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00ef: 0x2229, # INTERSECTION
|
||||
0x00f0: 0x2261, # IDENTICAL TO
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x2320, # TOP HALF INTEGRAL
|
||||
0x00f5: 0x2321, # BOTTOM HALF INTEGRAL
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\u05d0' # 0x0080 -> HEBREW LETTER ALEF
|
||||
u'\u05d1' # 0x0081 -> HEBREW LETTER BET
|
||||
u'\u05d2' # 0x0082 -> HEBREW LETTER GIMEL
|
||||
u'\u05d3' # 0x0083 -> HEBREW LETTER DALET
|
||||
u'\u05d4' # 0x0084 -> HEBREW LETTER HE
|
||||
u'\u05d5' # 0x0085 -> HEBREW LETTER VAV
|
||||
u'\u05d6' # 0x0086 -> HEBREW LETTER ZAYIN
|
||||
u'\u05d7' # 0x0087 -> HEBREW LETTER HET
|
||||
u'\u05d8' # 0x0088 -> HEBREW LETTER TET
|
||||
u'\u05d9' # 0x0089 -> HEBREW LETTER YOD
|
||||
u'\u05da' # 0x008a -> HEBREW LETTER FINAL KAF
|
||||
u'\u05db' # 0x008b -> HEBREW LETTER KAF
|
||||
u'\u05dc' # 0x008c -> HEBREW LETTER LAMED
|
||||
u'\u05dd' # 0x008d -> HEBREW LETTER FINAL MEM
|
||||
u'\u05de' # 0x008e -> HEBREW LETTER MEM
|
||||
u'\u05df' # 0x008f -> HEBREW LETTER FINAL NUN
|
||||
u'\u05e0' # 0x0090 -> HEBREW LETTER NUN
|
||||
u'\u05e1' # 0x0091 -> HEBREW LETTER SAMEKH
|
||||
u'\u05e2' # 0x0092 -> HEBREW LETTER AYIN
|
||||
u'\u05e3' # 0x0093 -> HEBREW LETTER FINAL PE
|
||||
u'\u05e4' # 0x0094 -> HEBREW LETTER PE
|
||||
u'\u05e5' # 0x0095 -> HEBREW LETTER FINAL TSADI
|
||||
u'\u05e6' # 0x0096 -> HEBREW LETTER TSADI
|
||||
u'\u05e7' # 0x0097 -> HEBREW LETTER QOF
|
||||
u'\u05e8' # 0x0098 -> HEBREW LETTER RESH
|
||||
u'\u05e9' # 0x0099 -> HEBREW LETTER SHIN
|
||||
u'\u05ea' # 0x009a -> HEBREW LETTER TAV
|
||||
u'\xa2' # 0x009b -> CENT SIGN
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xa5' # 0x009d -> YEN SIGN
|
||||
u'\u20a7' # 0x009e -> PESETA SIGN
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xaa' # 0x00a6 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x00a7 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\u2310' # 0x00a9 -> REVERSED NOT SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b1' # 0x00e0 -> GREEK SMALL LETTER ALPHA
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
u'\u0393' # 0x00e2 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u03c0' # 0x00e3 -> GREEK SMALL LETTER PI
|
||||
u'\u03a3' # 0x00e4 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03c3' # 0x00e5 -> GREEK SMALL LETTER SIGMA
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u03c4' # 0x00e7 -> GREEK SMALL LETTER TAU
|
||||
u'\u03a6' # 0x00e8 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u0398' # 0x00e9 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u03a9' # 0x00ea -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b4' # 0x00eb -> GREEK SMALL LETTER DELTA
|
||||
u'\u221e' # 0x00ec -> INFINITY
|
||||
u'\u03c6' # 0x00ed -> GREEK SMALL LETTER PHI
|
||||
u'\u03b5' # 0x00ee -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2229' # 0x00ef -> INTERSECTION
|
||||
u'\u2261' # 0x00f0 -> IDENTICAL TO
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u2320' # 0x00f4 -> TOP HALF INTEGRAL
|
||||
u'\u2321' # 0x00f5 -> BOTTOM HALF INTEGRAL
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a2: 0x009b, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a5: 0x009d, # YEN SIGN
|
||||
0x00aa: 0x00a6, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00ba: 0x00a7, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S (GERMAN)
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x0393: 0x00e2, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0398: 0x00e9, # GREEK CAPITAL LETTER THETA
|
||||
0x03a3: 0x00e4, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a6: 0x00e8, # GREEK CAPITAL LETTER PHI
|
||||
0x03a9: 0x00ea, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03b1: 0x00e0, # GREEK SMALL LETTER ALPHA
|
||||
0x03b4: 0x00eb, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00ee, # GREEK SMALL LETTER EPSILON
|
||||
0x03c0: 0x00e3, # GREEK SMALL LETTER PI
|
||||
0x03c3: 0x00e5, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00e7, # GREEK SMALL LETTER TAU
|
||||
0x03c6: 0x00ed, # GREEK SMALL LETTER PHI
|
||||
0x05d0: 0x0080, # HEBREW LETTER ALEF
|
||||
0x05d1: 0x0081, # HEBREW LETTER BET
|
||||
0x05d2: 0x0082, # HEBREW LETTER GIMEL
|
||||
0x05d3: 0x0083, # HEBREW LETTER DALET
|
||||
0x05d4: 0x0084, # HEBREW LETTER HE
|
||||
0x05d5: 0x0085, # HEBREW LETTER VAV
|
||||
0x05d6: 0x0086, # HEBREW LETTER ZAYIN
|
||||
0x05d7: 0x0087, # HEBREW LETTER HET
|
||||
0x05d8: 0x0088, # HEBREW LETTER TET
|
||||
0x05d9: 0x0089, # HEBREW LETTER YOD
|
||||
0x05da: 0x008a, # HEBREW LETTER FINAL KAF
|
||||
0x05db: 0x008b, # HEBREW LETTER KAF
|
||||
0x05dc: 0x008c, # HEBREW LETTER LAMED
|
||||
0x05dd: 0x008d, # HEBREW LETTER FINAL MEM
|
||||
0x05de: 0x008e, # HEBREW LETTER MEM
|
||||
0x05df: 0x008f, # HEBREW LETTER FINAL NUN
|
||||
0x05e0: 0x0090, # HEBREW LETTER NUN
|
||||
0x05e1: 0x0091, # HEBREW LETTER SAMEKH
|
||||
0x05e2: 0x0092, # HEBREW LETTER AYIN
|
||||
0x05e3: 0x0093, # HEBREW LETTER FINAL PE
|
||||
0x05e4: 0x0094, # HEBREW LETTER PE
|
||||
0x05e5: 0x0095, # HEBREW LETTER FINAL TSADI
|
||||
0x05e6: 0x0096, # HEBREW LETTER TSADI
|
||||
0x05e7: 0x0097, # HEBREW LETTER QOF
|
||||
0x05e8: 0x0098, # HEBREW LETTER RESH
|
||||
0x05e9: 0x0099, # HEBREW LETTER SHIN
|
||||
0x05ea: 0x009a, # HEBREW LETTER TAV
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x20a7: 0x009e, # PESETA SIGN
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x221e: 0x00ec, # INFINITY
|
||||
0x2229: 0x00ef, # INTERSECTION
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2261: 0x00f0, # IDENTICAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2310: 0x00a9, # REVERSED NOT SIGN
|
||||
0x2320: 0x00f4, # TOP HALF INTEGRAL
|
||||
0x2321: 0x00f5, # BOTTOM HALF INTEGRAL
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp863.py
Normal file
698
PythonHome/Lib/encodings/cp863.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP863.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp863',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00c2, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00b6, # PILCROW SIGN
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00ef, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x2017, # DOUBLE LOW LINE
|
||||
0x008e: 0x00c0, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x008f: 0x00a7, # SECTION SIGN
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00c8, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x0092: 0x00ca, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00cb, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x0095: 0x00cf, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x00a4, # CURRENCY SIGN
|
||||
0x0099: 0x00d4, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00a2, # CENT SIGN
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d9, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x009e: 0x00db, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00a6, # BROKEN BAR
|
||||
0x00a1: 0x00b4, # ACUTE ACCENT
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00a8, # DIAERESIS
|
||||
0x00a5: 0x00b8, # CEDILLA
|
||||
0x00a6: 0x00b3, # SUPERSCRIPT THREE
|
||||
0x00a7: 0x00af, # MACRON
|
||||
0x00a8: 0x00ce, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00a9: 0x2310, # REVERSED NOT SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00be, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00e3: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00e4: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00e5: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00e8: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00e9: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ea: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00eb: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00ec: 0x221e, # INFINITY
|
||||
0x00ed: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ee: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00ef: 0x2229, # INTERSECTION
|
||||
0x00f0: 0x2261, # IDENTICAL TO
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x2320, # TOP HALF INTEGRAL
|
||||
0x00f5: 0x2321, # BOTTOM HALF INTEGRAL
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xc2' # 0x0084 -> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xb6' # 0x0086 -> PILCROW SIGN
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x008b -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\u2017' # 0x008d -> DOUBLE LOW LINE
|
||||
u'\xc0' # 0x008e -> LATIN CAPITAL LETTER A WITH GRAVE
|
||||
u'\xa7' # 0x008f -> SECTION SIGN
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xc8' # 0x0091 -> LATIN CAPITAL LETTER E WITH GRAVE
|
||||
u'\xca' # 0x0092 -> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xcb' # 0x0094 -> LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
u'\xcf' # 0x0095 -> LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xa4' # 0x0098 -> CURRENCY SIGN
|
||||
u'\xd4' # 0x0099 -> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xa2' # 0x009b -> CENT SIGN
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd9' # 0x009d -> LATIN CAPITAL LETTER U WITH GRAVE
|
||||
u'\xdb' # 0x009e -> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xa6' # 0x00a0 -> BROKEN BAR
|
||||
u'\xb4' # 0x00a1 -> ACUTE ACCENT
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xa8' # 0x00a4 -> DIAERESIS
|
||||
u'\xb8' # 0x00a5 -> CEDILLA
|
||||
u'\xb3' # 0x00a6 -> SUPERSCRIPT THREE
|
||||
u'\xaf' # 0x00a7 -> MACRON
|
||||
u'\xce' # 0x00a8 -> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
u'\u2310' # 0x00a9 -> REVERSED NOT SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xbe' # 0x00ad -> VULGAR FRACTION THREE QUARTERS
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b1' # 0x00e0 -> GREEK SMALL LETTER ALPHA
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0393' # 0x00e2 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u03c0' # 0x00e3 -> GREEK SMALL LETTER PI
|
||||
u'\u03a3' # 0x00e4 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03c3' # 0x00e5 -> GREEK SMALL LETTER SIGMA
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u03c4' # 0x00e7 -> GREEK SMALL LETTER TAU
|
||||
u'\u03a6' # 0x00e8 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u0398' # 0x00e9 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u03a9' # 0x00ea -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b4' # 0x00eb -> GREEK SMALL LETTER DELTA
|
||||
u'\u221e' # 0x00ec -> INFINITY
|
||||
u'\u03c6' # 0x00ed -> GREEK SMALL LETTER PHI
|
||||
u'\u03b5' # 0x00ee -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2229' # 0x00ef -> INTERSECTION
|
||||
u'\u2261' # 0x00f0 -> IDENTICAL TO
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u2320' # 0x00f4 -> TOP HALF INTEGRAL
|
||||
u'\u2321' # 0x00f5 -> BOTTOM HALF INTEGRAL
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a2: 0x009b, # CENT SIGN
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a4: 0x0098, # CURRENCY SIGN
|
||||
0x00a6: 0x00a0, # BROKEN BAR
|
||||
0x00a7: 0x008f, # SECTION SIGN
|
||||
0x00a8: 0x00a4, # DIAERESIS
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00af: 0x00a7, # MACRON
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b3: 0x00a6, # SUPERSCRIPT THREE
|
||||
0x00b4: 0x00a1, # ACUTE ACCENT
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b6: 0x0086, # PILCROW SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00b8: 0x00a5, # CEDILLA
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00be: 0x00ad, # VULGAR FRACTION THREE QUARTERS
|
||||
0x00c0: 0x008e, # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00c2: 0x0084, # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c8: 0x0091, # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00ca: 0x0092, # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00cb: 0x0094, # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00ce: 0x00a8, # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00cf: 0x0095, # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
0x00d4: 0x0099, # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00d9: 0x009d, # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00db: 0x009e, # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00ef: 0x008b, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x0393: 0x00e2, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0398: 0x00e9, # GREEK CAPITAL LETTER THETA
|
||||
0x03a3: 0x00e4, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a6: 0x00e8, # GREEK CAPITAL LETTER PHI
|
||||
0x03a9: 0x00ea, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03b1: 0x00e0, # GREEK SMALL LETTER ALPHA
|
||||
0x03b4: 0x00eb, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00ee, # GREEK SMALL LETTER EPSILON
|
||||
0x03c0: 0x00e3, # GREEK SMALL LETTER PI
|
||||
0x03c3: 0x00e5, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00e7, # GREEK SMALL LETTER TAU
|
||||
0x03c6: 0x00ed, # GREEK SMALL LETTER PHI
|
||||
0x2017: 0x008d, # DOUBLE LOW LINE
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x221e: 0x00ec, # INFINITY
|
||||
0x2229: 0x00ef, # INTERSECTION
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2261: 0x00f0, # IDENTICAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2310: 0x00a9, # REVERSED NOT SIGN
|
||||
0x2320: 0x00f4, # TOP HALF INTEGRAL
|
||||
0x2321: 0x00f5, # BOTTOM HALF INTEGRAL
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
690
PythonHome/Lib/encodings/cp864.py
Normal file
690
PythonHome/Lib/encodings/cp864.py
Normal file
@@ -0,0 +1,690 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP864.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp864',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0025: 0x066a, # ARABIC PERCENT SIGN
|
||||
0x0080: 0x00b0, # DEGREE SIGN
|
||||
0x0081: 0x00b7, # MIDDLE DOT
|
||||
0x0082: 0x2219, # BULLET OPERATOR
|
||||
0x0083: 0x221a, # SQUARE ROOT
|
||||
0x0084: 0x2592, # MEDIUM SHADE
|
||||
0x0085: 0x2500, # FORMS LIGHT HORIZONTAL
|
||||
0x0086: 0x2502, # FORMS LIGHT VERTICAL
|
||||
0x0087: 0x253c, # FORMS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x0088: 0x2524, # FORMS LIGHT VERTICAL AND LEFT
|
||||
0x0089: 0x252c, # FORMS LIGHT DOWN AND HORIZONTAL
|
||||
0x008a: 0x251c, # FORMS LIGHT VERTICAL AND RIGHT
|
||||
0x008b: 0x2534, # FORMS LIGHT UP AND HORIZONTAL
|
||||
0x008c: 0x2510, # FORMS LIGHT DOWN AND LEFT
|
||||
0x008d: 0x250c, # FORMS LIGHT DOWN AND RIGHT
|
||||
0x008e: 0x2514, # FORMS LIGHT UP AND RIGHT
|
||||
0x008f: 0x2518, # FORMS LIGHT UP AND LEFT
|
||||
0x0090: 0x03b2, # GREEK SMALL BETA
|
||||
0x0091: 0x221e, # INFINITY
|
||||
0x0092: 0x03c6, # GREEK SMALL PHI
|
||||
0x0093: 0x00b1, # PLUS-OR-MINUS SIGN
|
||||
0x0094: 0x00bd, # FRACTION 1/2
|
||||
0x0095: 0x00bc, # FRACTION 1/4
|
||||
0x0096: 0x2248, # ALMOST EQUAL TO
|
||||
0x0097: 0x00ab, # LEFT POINTING GUILLEMET
|
||||
0x0098: 0x00bb, # RIGHT POINTING GUILLEMET
|
||||
0x0099: 0xfef7, # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
0x009a: 0xfef8, # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
|
||||
0x009b: None, # UNDEFINED
|
||||
0x009c: None, # UNDEFINED
|
||||
0x009d: 0xfefb, # ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
|
||||
0x009e: 0xfefc, # ARABIC LIGATURE LAM WITH ALEF FINAL FORM
|
||||
0x009f: None, # UNDEFINED
|
||||
0x00a1: 0x00ad, # SOFT HYPHEN
|
||||
0x00a2: 0xfe82, # ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
|
||||
0x00a5: 0xfe84, # ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
|
||||
0x00a6: None, # UNDEFINED
|
||||
0x00a7: None, # UNDEFINED
|
||||
0x00a8: 0xfe8e, # ARABIC LETTER ALEF FINAL FORM
|
||||
0x00a9: 0xfe8f, # ARABIC LETTER BEH ISOLATED FORM
|
||||
0x00aa: 0xfe95, # ARABIC LETTER TEH ISOLATED FORM
|
||||
0x00ab: 0xfe99, # ARABIC LETTER THEH ISOLATED FORM
|
||||
0x00ac: 0x060c, # ARABIC COMMA
|
||||
0x00ad: 0xfe9d, # ARABIC LETTER JEEM ISOLATED FORM
|
||||
0x00ae: 0xfea1, # ARABIC LETTER HAH ISOLATED FORM
|
||||
0x00af: 0xfea5, # ARABIC LETTER KHAH ISOLATED FORM
|
||||
0x00b0: 0x0660, # ARABIC-INDIC DIGIT ZERO
|
||||
0x00b1: 0x0661, # ARABIC-INDIC DIGIT ONE
|
||||
0x00b2: 0x0662, # ARABIC-INDIC DIGIT TWO
|
||||
0x00b3: 0x0663, # ARABIC-INDIC DIGIT THREE
|
||||
0x00b4: 0x0664, # ARABIC-INDIC DIGIT FOUR
|
||||
0x00b5: 0x0665, # ARABIC-INDIC DIGIT FIVE
|
||||
0x00b6: 0x0666, # ARABIC-INDIC DIGIT SIX
|
||||
0x00b7: 0x0667, # ARABIC-INDIC DIGIT SEVEN
|
||||
0x00b8: 0x0668, # ARABIC-INDIC DIGIT EIGHT
|
||||
0x00b9: 0x0669, # ARABIC-INDIC DIGIT NINE
|
||||
0x00ba: 0xfed1, # ARABIC LETTER FEH ISOLATED FORM
|
||||
0x00bb: 0x061b, # ARABIC SEMICOLON
|
||||
0x00bc: 0xfeb1, # ARABIC LETTER SEEN ISOLATED FORM
|
||||
0x00bd: 0xfeb5, # ARABIC LETTER SHEEN ISOLATED FORM
|
||||
0x00be: 0xfeb9, # ARABIC LETTER SAD ISOLATED FORM
|
||||
0x00bf: 0x061f, # ARABIC QUESTION MARK
|
||||
0x00c0: 0x00a2, # CENT SIGN
|
||||
0x00c1: 0xfe80, # ARABIC LETTER HAMZA ISOLATED FORM
|
||||
0x00c2: 0xfe81, # ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
0x00c3: 0xfe83, # ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
0x00c4: 0xfe85, # ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
|
||||
0x00c5: 0xfeca, # ARABIC LETTER AIN FINAL FORM
|
||||
0x00c6: 0xfe8b, # ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
|
||||
0x00c7: 0xfe8d, # ARABIC LETTER ALEF ISOLATED FORM
|
||||
0x00c8: 0xfe91, # ARABIC LETTER BEH INITIAL FORM
|
||||
0x00c9: 0xfe93, # ARABIC LETTER TEH MARBUTA ISOLATED FORM
|
||||
0x00ca: 0xfe97, # ARABIC LETTER TEH INITIAL FORM
|
||||
0x00cb: 0xfe9b, # ARABIC LETTER THEH INITIAL FORM
|
||||
0x00cc: 0xfe9f, # ARABIC LETTER JEEM INITIAL FORM
|
||||
0x00cd: 0xfea3, # ARABIC LETTER HAH INITIAL FORM
|
||||
0x00ce: 0xfea7, # ARABIC LETTER KHAH INITIAL FORM
|
||||
0x00cf: 0xfea9, # ARABIC LETTER DAL ISOLATED FORM
|
||||
0x00d0: 0xfeab, # ARABIC LETTER THAL ISOLATED FORM
|
||||
0x00d1: 0xfead, # ARABIC LETTER REH ISOLATED FORM
|
||||
0x00d2: 0xfeaf, # ARABIC LETTER ZAIN ISOLATED FORM
|
||||
0x00d3: 0xfeb3, # ARABIC LETTER SEEN INITIAL FORM
|
||||
0x00d4: 0xfeb7, # ARABIC LETTER SHEEN INITIAL FORM
|
||||
0x00d5: 0xfebb, # ARABIC LETTER SAD INITIAL FORM
|
||||
0x00d6: 0xfebf, # ARABIC LETTER DAD INITIAL FORM
|
||||
0x00d7: 0xfec1, # ARABIC LETTER TAH ISOLATED FORM
|
||||
0x00d8: 0xfec5, # ARABIC LETTER ZAH ISOLATED FORM
|
||||
0x00d9: 0xfecb, # ARABIC LETTER AIN INITIAL FORM
|
||||
0x00da: 0xfecf, # ARABIC LETTER GHAIN INITIAL FORM
|
||||
0x00db: 0x00a6, # BROKEN VERTICAL BAR
|
||||
0x00dc: 0x00ac, # NOT SIGN
|
||||
0x00dd: 0x00f7, # DIVISION SIGN
|
||||
0x00de: 0x00d7, # MULTIPLICATION SIGN
|
||||
0x00df: 0xfec9, # ARABIC LETTER AIN ISOLATED FORM
|
||||
0x00e0: 0x0640, # ARABIC TATWEEL
|
||||
0x00e1: 0xfed3, # ARABIC LETTER FEH INITIAL FORM
|
||||
0x00e2: 0xfed7, # ARABIC LETTER QAF INITIAL FORM
|
||||
0x00e3: 0xfedb, # ARABIC LETTER KAF INITIAL FORM
|
||||
0x00e4: 0xfedf, # ARABIC LETTER LAM INITIAL FORM
|
||||
0x00e5: 0xfee3, # ARABIC LETTER MEEM INITIAL FORM
|
||||
0x00e6: 0xfee7, # ARABIC LETTER NOON INITIAL FORM
|
||||
0x00e7: 0xfeeb, # ARABIC LETTER HEH INITIAL FORM
|
||||
0x00e8: 0xfeed, # ARABIC LETTER WAW ISOLATED FORM
|
||||
0x00e9: 0xfeef, # ARABIC LETTER ALEF MAKSURA ISOLATED FORM
|
||||
0x00ea: 0xfef3, # ARABIC LETTER YEH INITIAL FORM
|
||||
0x00eb: 0xfebd, # ARABIC LETTER DAD ISOLATED FORM
|
||||
0x00ec: 0xfecc, # ARABIC LETTER AIN MEDIAL FORM
|
||||
0x00ed: 0xfece, # ARABIC LETTER GHAIN FINAL FORM
|
||||
0x00ee: 0xfecd, # ARABIC LETTER GHAIN ISOLATED FORM
|
||||
0x00ef: 0xfee1, # ARABIC LETTER MEEM ISOLATED FORM
|
||||
0x00f0: 0xfe7d, # ARABIC SHADDA MEDIAL FORM
|
||||
0x00f1: 0x0651, # ARABIC SHADDAH
|
||||
0x00f2: 0xfee5, # ARABIC LETTER NOON ISOLATED FORM
|
||||
0x00f3: 0xfee9, # ARABIC LETTER HEH ISOLATED FORM
|
||||
0x00f4: 0xfeec, # ARABIC LETTER HEH MEDIAL FORM
|
||||
0x00f5: 0xfef0, # ARABIC LETTER ALEF MAKSURA FINAL FORM
|
||||
0x00f6: 0xfef2, # ARABIC LETTER YEH FINAL FORM
|
||||
0x00f7: 0xfed0, # ARABIC LETTER GHAIN MEDIAL FORM
|
||||
0x00f8: 0xfed5, # ARABIC LETTER QAF ISOLATED FORM
|
||||
0x00f9: 0xfef5, # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
0x00fa: 0xfef6, # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
|
||||
0x00fb: 0xfedd, # ARABIC LETTER LAM ISOLATED FORM
|
||||
0x00fc: 0xfed9, # ARABIC LETTER KAF ISOLATED FORM
|
||||
0x00fd: 0xfef1, # ARABIC LETTER YEH ISOLATED FORM
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: None, # UNDEFINED
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'\u066a' # 0x0025 -> ARABIC PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xb0' # 0x0080 -> DEGREE SIGN
|
||||
u'\xb7' # 0x0081 -> MIDDLE DOT
|
||||
u'\u2219' # 0x0082 -> BULLET OPERATOR
|
||||
u'\u221a' # 0x0083 -> SQUARE ROOT
|
||||
u'\u2592' # 0x0084 -> MEDIUM SHADE
|
||||
u'\u2500' # 0x0085 -> FORMS LIGHT HORIZONTAL
|
||||
u'\u2502' # 0x0086 -> FORMS LIGHT VERTICAL
|
||||
u'\u253c' # 0x0087 -> FORMS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u2524' # 0x0088 -> FORMS LIGHT VERTICAL AND LEFT
|
||||
u'\u252c' # 0x0089 -> FORMS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x008a -> FORMS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2534' # 0x008b -> FORMS LIGHT UP AND HORIZONTAL
|
||||
u'\u2510' # 0x008c -> FORMS LIGHT DOWN AND LEFT
|
||||
u'\u250c' # 0x008d -> FORMS LIGHT DOWN AND RIGHT
|
||||
u'\u2514' # 0x008e -> FORMS LIGHT UP AND RIGHT
|
||||
u'\u2518' # 0x008f -> FORMS LIGHT UP AND LEFT
|
||||
u'\u03b2' # 0x0090 -> GREEK SMALL BETA
|
||||
u'\u221e' # 0x0091 -> INFINITY
|
||||
u'\u03c6' # 0x0092 -> GREEK SMALL PHI
|
||||
u'\xb1' # 0x0093 -> PLUS-OR-MINUS SIGN
|
||||
u'\xbd' # 0x0094 -> FRACTION 1/2
|
||||
u'\xbc' # 0x0095 -> FRACTION 1/4
|
||||
u'\u2248' # 0x0096 -> ALMOST EQUAL TO
|
||||
u'\xab' # 0x0097 -> LEFT POINTING GUILLEMET
|
||||
u'\xbb' # 0x0098 -> RIGHT POINTING GUILLEMET
|
||||
u'\ufef7' # 0x0099 -> ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
u'\ufef8' # 0x009a -> ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
|
||||
u'\ufffe' # 0x009b -> UNDEFINED
|
||||
u'\ufffe' # 0x009c -> UNDEFINED
|
||||
u'\ufefb' # 0x009d -> ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
|
||||
u'\ufefc' # 0x009e -> ARABIC LIGATURE LAM WITH ALEF FINAL FORM
|
||||
u'\ufffe' # 0x009f -> UNDEFINED
|
||||
u'\xa0' # 0x00a0 -> NON-BREAKING SPACE
|
||||
u'\xad' # 0x00a1 -> SOFT HYPHEN
|
||||
u'\ufe82' # 0x00a2 -> ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
|
||||
u'\xa3' # 0x00a3 -> POUND SIGN
|
||||
u'\xa4' # 0x00a4 -> CURRENCY SIGN
|
||||
u'\ufe84' # 0x00a5 -> ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
|
||||
u'\ufffe' # 0x00a6 -> UNDEFINED
|
||||
u'\ufffe' # 0x00a7 -> UNDEFINED
|
||||
u'\ufe8e' # 0x00a8 -> ARABIC LETTER ALEF FINAL FORM
|
||||
u'\ufe8f' # 0x00a9 -> ARABIC LETTER BEH ISOLATED FORM
|
||||
u'\ufe95' # 0x00aa -> ARABIC LETTER TEH ISOLATED FORM
|
||||
u'\ufe99' # 0x00ab -> ARABIC LETTER THEH ISOLATED FORM
|
||||
u'\u060c' # 0x00ac -> ARABIC COMMA
|
||||
u'\ufe9d' # 0x00ad -> ARABIC LETTER JEEM ISOLATED FORM
|
||||
u'\ufea1' # 0x00ae -> ARABIC LETTER HAH ISOLATED FORM
|
||||
u'\ufea5' # 0x00af -> ARABIC LETTER KHAH ISOLATED FORM
|
||||
u'\u0660' # 0x00b0 -> ARABIC-INDIC DIGIT ZERO
|
||||
u'\u0661' # 0x00b1 -> ARABIC-INDIC DIGIT ONE
|
||||
u'\u0662' # 0x00b2 -> ARABIC-INDIC DIGIT TWO
|
||||
u'\u0663' # 0x00b3 -> ARABIC-INDIC DIGIT THREE
|
||||
u'\u0664' # 0x00b4 -> ARABIC-INDIC DIGIT FOUR
|
||||
u'\u0665' # 0x00b5 -> ARABIC-INDIC DIGIT FIVE
|
||||
u'\u0666' # 0x00b6 -> ARABIC-INDIC DIGIT SIX
|
||||
u'\u0667' # 0x00b7 -> ARABIC-INDIC DIGIT SEVEN
|
||||
u'\u0668' # 0x00b8 -> ARABIC-INDIC DIGIT EIGHT
|
||||
u'\u0669' # 0x00b9 -> ARABIC-INDIC DIGIT NINE
|
||||
u'\ufed1' # 0x00ba -> ARABIC LETTER FEH ISOLATED FORM
|
||||
u'\u061b' # 0x00bb -> ARABIC SEMICOLON
|
||||
u'\ufeb1' # 0x00bc -> ARABIC LETTER SEEN ISOLATED FORM
|
||||
u'\ufeb5' # 0x00bd -> ARABIC LETTER SHEEN ISOLATED FORM
|
||||
u'\ufeb9' # 0x00be -> ARABIC LETTER SAD ISOLATED FORM
|
||||
u'\u061f' # 0x00bf -> ARABIC QUESTION MARK
|
||||
u'\xa2' # 0x00c0 -> CENT SIGN
|
||||
u'\ufe80' # 0x00c1 -> ARABIC LETTER HAMZA ISOLATED FORM
|
||||
u'\ufe81' # 0x00c2 -> ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
u'\ufe83' # 0x00c3 -> ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
u'\ufe85' # 0x00c4 -> ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
|
||||
u'\ufeca' # 0x00c5 -> ARABIC LETTER AIN FINAL FORM
|
||||
u'\ufe8b' # 0x00c6 -> ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
|
||||
u'\ufe8d' # 0x00c7 -> ARABIC LETTER ALEF ISOLATED FORM
|
||||
u'\ufe91' # 0x00c8 -> ARABIC LETTER BEH INITIAL FORM
|
||||
u'\ufe93' # 0x00c9 -> ARABIC LETTER TEH MARBUTA ISOLATED FORM
|
||||
u'\ufe97' # 0x00ca -> ARABIC LETTER TEH INITIAL FORM
|
||||
u'\ufe9b' # 0x00cb -> ARABIC LETTER THEH INITIAL FORM
|
||||
u'\ufe9f' # 0x00cc -> ARABIC LETTER JEEM INITIAL FORM
|
||||
u'\ufea3' # 0x00cd -> ARABIC LETTER HAH INITIAL FORM
|
||||
u'\ufea7' # 0x00ce -> ARABIC LETTER KHAH INITIAL FORM
|
||||
u'\ufea9' # 0x00cf -> ARABIC LETTER DAL ISOLATED FORM
|
||||
u'\ufeab' # 0x00d0 -> ARABIC LETTER THAL ISOLATED FORM
|
||||
u'\ufead' # 0x00d1 -> ARABIC LETTER REH ISOLATED FORM
|
||||
u'\ufeaf' # 0x00d2 -> ARABIC LETTER ZAIN ISOLATED FORM
|
||||
u'\ufeb3' # 0x00d3 -> ARABIC LETTER SEEN INITIAL FORM
|
||||
u'\ufeb7' # 0x00d4 -> ARABIC LETTER SHEEN INITIAL FORM
|
||||
u'\ufebb' # 0x00d5 -> ARABIC LETTER SAD INITIAL FORM
|
||||
u'\ufebf' # 0x00d6 -> ARABIC LETTER DAD INITIAL FORM
|
||||
u'\ufec1' # 0x00d7 -> ARABIC LETTER TAH ISOLATED FORM
|
||||
u'\ufec5' # 0x00d8 -> ARABIC LETTER ZAH ISOLATED FORM
|
||||
u'\ufecb' # 0x00d9 -> ARABIC LETTER AIN INITIAL FORM
|
||||
u'\ufecf' # 0x00da -> ARABIC LETTER GHAIN INITIAL FORM
|
||||
u'\xa6' # 0x00db -> BROKEN VERTICAL BAR
|
||||
u'\xac' # 0x00dc -> NOT SIGN
|
||||
u'\xf7' # 0x00dd -> DIVISION SIGN
|
||||
u'\xd7' # 0x00de -> MULTIPLICATION SIGN
|
||||
u'\ufec9' # 0x00df -> ARABIC LETTER AIN ISOLATED FORM
|
||||
u'\u0640' # 0x00e0 -> ARABIC TATWEEL
|
||||
u'\ufed3' # 0x00e1 -> ARABIC LETTER FEH INITIAL FORM
|
||||
u'\ufed7' # 0x00e2 -> ARABIC LETTER QAF INITIAL FORM
|
||||
u'\ufedb' # 0x00e3 -> ARABIC LETTER KAF INITIAL FORM
|
||||
u'\ufedf' # 0x00e4 -> ARABIC LETTER LAM INITIAL FORM
|
||||
u'\ufee3' # 0x00e5 -> ARABIC LETTER MEEM INITIAL FORM
|
||||
u'\ufee7' # 0x00e6 -> ARABIC LETTER NOON INITIAL FORM
|
||||
u'\ufeeb' # 0x00e7 -> ARABIC LETTER HEH INITIAL FORM
|
||||
u'\ufeed' # 0x00e8 -> ARABIC LETTER WAW ISOLATED FORM
|
||||
u'\ufeef' # 0x00e9 -> ARABIC LETTER ALEF MAKSURA ISOLATED FORM
|
||||
u'\ufef3' # 0x00ea -> ARABIC LETTER YEH INITIAL FORM
|
||||
u'\ufebd' # 0x00eb -> ARABIC LETTER DAD ISOLATED FORM
|
||||
u'\ufecc' # 0x00ec -> ARABIC LETTER AIN MEDIAL FORM
|
||||
u'\ufece' # 0x00ed -> ARABIC LETTER GHAIN FINAL FORM
|
||||
u'\ufecd' # 0x00ee -> ARABIC LETTER GHAIN ISOLATED FORM
|
||||
u'\ufee1' # 0x00ef -> ARABIC LETTER MEEM ISOLATED FORM
|
||||
u'\ufe7d' # 0x00f0 -> ARABIC SHADDA MEDIAL FORM
|
||||
u'\u0651' # 0x00f1 -> ARABIC SHADDAH
|
||||
u'\ufee5' # 0x00f2 -> ARABIC LETTER NOON ISOLATED FORM
|
||||
u'\ufee9' # 0x00f3 -> ARABIC LETTER HEH ISOLATED FORM
|
||||
u'\ufeec' # 0x00f4 -> ARABIC LETTER HEH MEDIAL FORM
|
||||
u'\ufef0' # 0x00f5 -> ARABIC LETTER ALEF MAKSURA FINAL FORM
|
||||
u'\ufef2' # 0x00f6 -> ARABIC LETTER YEH FINAL FORM
|
||||
u'\ufed0' # 0x00f7 -> ARABIC LETTER GHAIN MEDIAL FORM
|
||||
u'\ufed5' # 0x00f8 -> ARABIC LETTER QAF ISOLATED FORM
|
||||
u'\ufef5' # 0x00f9 -> ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
u'\ufef6' # 0x00fa -> ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
|
||||
u'\ufedd' # 0x00fb -> ARABIC LETTER LAM ISOLATED FORM
|
||||
u'\ufed9' # 0x00fc -> ARABIC LETTER KAF ISOLATED FORM
|
||||
u'\ufef1' # 0x00fd -> ARABIC LETTER YEH ISOLATED FORM
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\ufffe' # 0x00ff -> UNDEFINED
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00a0, # NON-BREAKING SPACE
|
||||
0x00a2: 0x00c0, # CENT SIGN
|
||||
0x00a3: 0x00a3, # POUND SIGN
|
||||
0x00a4: 0x00a4, # CURRENCY SIGN
|
||||
0x00a6: 0x00db, # BROKEN VERTICAL BAR
|
||||
0x00ab: 0x0097, # LEFT POINTING GUILLEMET
|
||||
0x00ac: 0x00dc, # NOT SIGN
|
||||
0x00ad: 0x00a1, # SOFT HYPHEN
|
||||
0x00b0: 0x0080, # DEGREE SIGN
|
||||
0x00b1: 0x0093, # PLUS-OR-MINUS SIGN
|
||||
0x00b7: 0x0081, # MIDDLE DOT
|
||||
0x00bb: 0x0098, # RIGHT POINTING GUILLEMET
|
||||
0x00bc: 0x0095, # FRACTION 1/4
|
||||
0x00bd: 0x0094, # FRACTION 1/2
|
||||
0x00d7: 0x00de, # MULTIPLICATION SIGN
|
||||
0x00f7: 0x00dd, # DIVISION SIGN
|
||||
0x03b2: 0x0090, # GREEK SMALL BETA
|
||||
0x03c6: 0x0092, # GREEK SMALL PHI
|
||||
0x060c: 0x00ac, # ARABIC COMMA
|
||||
0x061b: 0x00bb, # ARABIC SEMICOLON
|
||||
0x061f: 0x00bf, # ARABIC QUESTION MARK
|
||||
0x0640: 0x00e0, # ARABIC TATWEEL
|
||||
0x0651: 0x00f1, # ARABIC SHADDAH
|
||||
0x0660: 0x00b0, # ARABIC-INDIC DIGIT ZERO
|
||||
0x0661: 0x00b1, # ARABIC-INDIC DIGIT ONE
|
||||
0x0662: 0x00b2, # ARABIC-INDIC DIGIT TWO
|
||||
0x0663: 0x00b3, # ARABIC-INDIC DIGIT THREE
|
||||
0x0664: 0x00b4, # ARABIC-INDIC DIGIT FOUR
|
||||
0x0665: 0x00b5, # ARABIC-INDIC DIGIT FIVE
|
||||
0x0666: 0x00b6, # ARABIC-INDIC DIGIT SIX
|
||||
0x0667: 0x00b7, # ARABIC-INDIC DIGIT SEVEN
|
||||
0x0668: 0x00b8, # ARABIC-INDIC DIGIT EIGHT
|
||||
0x0669: 0x00b9, # ARABIC-INDIC DIGIT NINE
|
||||
0x066a: 0x0025, # ARABIC PERCENT SIGN
|
||||
0x2219: 0x0082, # BULLET OPERATOR
|
||||
0x221a: 0x0083, # SQUARE ROOT
|
||||
0x221e: 0x0091, # INFINITY
|
||||
0x2248: 0x0096, # ALMOST EQUAL TO
|
||||
0x2500: 0x0085, # FORMS LIGHT HORIZONTAL
|
||||
0x2502: 0x0086, # FORMS LIGHT VERTICAL
|
||||
0x250c: 0x008d, # FORMS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x008c, # FORMS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x008e, # FORMS LIGHT UP AND RIGHT
|
||||
0x2518: 0x008f, # FORMS LIGHT UP AND LEFT
|
||||
0x251c: 0x008a, # FORMS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x0088, # FORMS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x0089, # FORMS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x008b, # FORMS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x0087, # FORMS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2592: 0x0084, # MEDIUM SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
0xfe7d: 0x00f0, # ARABIC SHADDA MEDIAL FORM
|
||||
0xfe80: 0x00c1, # ARABIC LETTER HAMZA ISOLATED FORM
|
||||
0xfe81: 0x00c2, # ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
0xfe82: 0x00a2, # ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
|
||||
0xfe83: 0x00c3, # ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
0xfe84: 0x00a5, # ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
|
||||
0xfe85: 0x00c4, # ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
|
||||
0xfe8b: 0x00c6, # ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
|
||||
0xfe8d: 0x00c7, # ARABIC LETTER ALEF ISOLATED FORM
|
||||
0xfe8e: 0x00a8, # ARABIC LETTER ALEF FINAL FORM
|
||||
0xfe8f: 0x00a9, # ARABIC LETTER BEH ISOLATED FORM
|
||||
0xfe91: 0x00c8, # ARABIC LETTER BEH INITIAL FORM
|
||||
0xfe93: 0x00c9, # ARABIC LETTER TEH MARBUTA ISOLATED FORM
|
||||
0xfe95: 0x00aa, # ARABIC LETTER TEH ISOLATED FORM
|
||||
0xfe97: 0x00ca, # ARABIC LETTER TEH INITIAL FORM
|
||||
0xfe99: 0x00ab, # ARABIC LETTER THEH ISOLATED FORM
|
||||
0xfe9b: 0x00cb, # ARABIC LETTER THEH INITIAL FORM
|
||||
0xfe9d: 0x00ad, # ARABIC LETTER JEEM ISOLATED FORM
|
||||
0xfe9f: 0x00cc, # ARABIC LETTER JEEM INITIAL FORM
|
||||
0xfea1: 0x00ae, # ARABIC LETTER HAH ISOLATED FORM
|
||||
0xfea3: 0x00cd, # ARABIC LETTER HAH INITIAL FORM
|
||||
0xfea5: 0x00af, # ARABIC LETTER KHAH ISOLATED FORM
|
||||
0xfea7: 0x00ce, # ARABIC LETTER KHAH INITIAL FORM
|
||||
0xfea9: 0x00cf, # ARABIC LETTER DAL ISOLATED FORM
|
||||
0xfeab: 0x00d0, # ARABIC LETTER THAL ISOLATED FORM
|
||||
0xfead: 0x00d1, # ARABIC LETTER REH ISOLATED FORM
|
||||
0xfeaf: 0x00d2, # ARABIC LETTER ZAIN ISOLATED FORM
|
||||
0xfeb1: 0x00bc, # ARABIC LETTER SEEN ISOLATED FORM
|
||||
0xfeb3: 0x00d3, # ARABIC LETTER SEEN INITIAL FORM
|
||||
0xfeb5: 0x00bd, # ARABIC LETTER SHEEN ISOLATED FORM
|
||||
0xfeb7: 0x00d4, # ARABIC LETTER SHEEN INITIAL FORM
|
||||
0xfeb9: 0x00be, # ARABIC LETTER SAD ISOLATED FORM
|
||||
0xfebb: 0x00d5, # ARABIC LETTER SAD INITIAL FORM
|
||||
0xfebd: 0x00eb, # ARABIC LETTER DAD ISOLATED FORM
|
||||
0xfebf: 0x00d6, # ARABIC LETTER DAD INITIAL FORM
|
||||
0xfec1: 0x00d7, # ARABIC LETTER TAH ISOLATED FORM
|
||||
0xfec5: 0x00d8, # ARABIC LETTER ZAH ISOLATED FORM
|
||||
0xfec9: 0x00df, # ARABIC LETTER AIN ISOLATED FORM
|
||||
0xfeca: 0x00c5, # ARABIC LETTER AIN FINAL FORM
|
||||
0xfecb: 0x00d9, # ARABIC LETTER AIN INITIAL FORM
|
||||
0xfecc: 0x00ec, # ARABIC LETTER AIN MEDIAL FORM
|
||||
0xfecd: 0x00ee, # ARABIC LETTER GHAIN ISOLATED FORM
|
||||
0xfece: 0x00ed, # ARABIC LETTER GHAIN FINAL FORM
|
||||
0xfecf: 0x00da, # ARABIC LETTER GHAIN INITIAL FORM
|
||||
0xfed0: 0x00f7, # ARABIC LETTER GHAIN MEDIAL FORM
|
||||
0xfed1: 0x00ba, # ARABIC LETTER FEH ISOLATED FORM
|
||||
0xfed3: 0x00e1, # ARABIC LETTER FEH INITIAL FORM
|
||||
0xfed5: 0x00f8, # ARABIC LETTER QAF ISOLATED FORM
|
||||
0xfed7: 0x00e2, # ARABIC LETTER QAF INITIAL FORM
|
||||
0xfed9: 0x00fc, # ARABIC LETTER KAF ISOLATED FORM
|
||||
0xfedb: 0x00e3, # ARABIC LETTER KAF INITIAL FORM
|
||||
0xfedd: 0x00fb, # ARABIC LETTER LAM ISOLATED FORM
|
||||
0xfedf: 0x00e4, # ARABIC LETTER LAM INITIAL FORM
|
||||
0xfee1: 0x00ef, # ARABIC LETTER MEEM ISOLATED FORM
|
||||
0xfee3: 0x00e5, # ARABIC LETTER MEEM INITIAL FORM
|
||||
0xfee5: 0x00f2, # ARABIC LETTER NOON ISOLATED FORM
|
||||
0xfee7: 0x00e6, # ARABIC LETTER NOON INITIAL FORM
|
||||
0xfee9: 0x00f3, # ARABIC LETTER HEH ISOLATED FORM
|
||||
0xfeeb: 0x00e7, # ARABIC LETTER HEH INITIAL FORM
|
||||
0xfeec: 0x00f4, # ARABIC LETTER HEH MEDIAL FORM
|
||||
0xfeed: 0x00e8, # ARABIC LETTER WAW ISOLATED FORM
|
||||
0xfeef: 0x00e9, # ARABIC LETTER ALEF MAKSURA ISOLATED FORM
|
||||
0xfef0: 0x00f5, # ARABIC LETTER ALEF MAKSURA FINAL FORM
|
||||
0xfef1: 0x00fd, # ARABIC LETTER YEH ISOLATED FORM
|
||||
0xfef2: 0x00f6, # ARABIC LETTER YEH FINAL FORM
|
||||
0xfef3: 0x00ea, # ARABIC LETTER YEH INITIAL FORM
|
||||
0xfef5: 0x00f9, # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
0xfef6: 0x00fa, # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
|
||||
0xfef7: 0x0099, # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
0xfef8: 0x009a, # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
|
||||
0xfefb: 0x009d, # ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
|
||||
0xfefc: 0x009e, # ARABIC LIGATURE LAM WITH ALEF FINAL FORM
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp865.py
Normal file
698
PythonHome/Lib/encodings/cp865.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP865.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp865',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x00c7, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x0081: 0x00fc, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x0082: 0x00e9, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x0083: 0x00e2, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x0084: 0x00e4, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x0085: 0x00e0, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x0086: 0x00e5, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x0087: 0x00e7, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x0088: 0x00ea, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x0089: 0x00eb, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x008a: 0x00e8, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x008b: 0x00ef, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x008c: 0x00ee, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x008d: 0x00ec, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x008e: 0x00c4, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x008f: 0x00c5, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x0090: 0x00c9, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x0091: 0x00e6, # LATIN SMALL LIGATURE AE
|
||||
0x0092: 0x00c6, # LATIN CAPITAL LIGATURE AE
|
||||
0x0093: 0x00f4, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x0094: 0x00f6, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x0095: 0x00f2, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x0096: 0x00fb, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x0097: 0x00f9, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x0098: 0x00ff, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0099: 0x00d6, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x009a: 0x00dc, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x009b: 0x00f8, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x00d8, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x009e: 0x20a7, # PESETA SIGN
|
||||
0x009f: 0x0192, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x00a0: 0x00e1, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00a1: 0x00ed, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00a2: 0x00f3, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00a3: 0x00fa, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00a4: 0x00f1, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00a5: 0x00d1, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00a6: 0x00aa, # FEMININE ORDINAL INDICATOR
|
||||
0x00a7: 0x00ba, # MASCULINE ORDINAL INDICATOR
|
||||
0x00a8: 0x00bf, # INVERTED QUESTION MARK
|
||||
0x00a9: 0x2310, # REVERSED NOT SIGN
|
||||
0x00aa: 0x00ac, # NOT SIGN
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x00bc, # VULGAR FRACTION ONE QUARTER
|
||||
0x00ad: 0x00a1, # INVERTED EXCLAMATION MARK
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00a4, # CURRENCY SIGN
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00e1: 0x00df, # LATIN SMALL LETTER SHARP S
|
||||
0x00e2: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00e3: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00e4: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00e5: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00e6: 0x00b5, # MICRO SIGN
|
||||
0x00e7: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00e8: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00e9: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ea: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00eb: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00ec: 0x221e, # INFINITY
|
||||
0x00ed: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00ee: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00ef: 0x2229, # INTERSECTION
|
||||
0x00f0: 0x2261, # IDENTICAL TO
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x2265, # GREATER-THAN OR EQUAL TO
|
||||
0x00f3: 0x2264, # LESS-THAN OR EQUAL TO
|
||||
0x00f4: 0x2320, # TOP HALF INTEGRAL
|
||||
0x00f5: 0x2321, # BOTTOM HALF INTEGRAL
|
||||
0x00f6: 0x00f7, # DIVISION SIGN
|
||||
0x00f7: 0x2248, # ALMOST EQUAL TO
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x207f, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x00fd: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\xc7' # 0x0080 -> LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
u'\xfc' # 0x0081 -> LATIN SMALL LETTER U WITH DIAERESIS
|
||||
u'\xe9' # 0x0082 -> LATIN SMALL LETTER E WITH ACUTE
|
||||
u'\xe2' # 0x0083 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
u'\xe4' # 0x0084 -> LATIN SMALL LETTER A WITH DIAERESIS
|
||||
u'\xe0' # 0x0085 -> LATIN SMALL LETTER A WITH GRAVE
|
||||
u'\xe5' # 0x0086 -> LATIN SMALL LETTER A WITH RING ABOVE
|
||||
u'\xe7' # 0x0087 -> LATIN SMALL LETTER C WITH CEDILLA
|
||||
u'\xea' # 0x0088 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
u'\xeb' # 0x0089 -> LATIN SMALL LETTER E WITH DIAERESIS
|
||||
u'\xe8' # 0x008a -> LATIN SMALL LETTER E WITH GRAVE
|
||||
u'\xef' # 0x008b -> LATIN SMALL LETTER I WITH DIAERESIS
|
||||
u'\xee' # 0x008c -> LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
u'\xec' # 0x008d -> LATIN SMALL LETTER I WITH GRAVE
|
||||
u'\xc4' # 0x008e -> LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
u'\xc5' # 0x008f -> LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
u'\xc9' # 0x0090 -> LATIN CAPITAL LETTER E WITH ACUTE
|
||||
u'\xe6' # 0x0091 -> LATIN SMALL LIGATURE AE
|
||||
u'\xc6' # 0x0092 -> LATIN CAPITAL LIGATURE AE
|
||||
u'\xf4' # 0x0093 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
u'\xf6' # 0x0094 -> LATIN SMALL LETTER O WITH DIAERESIS
|
||||
u'\xf2' # 0x0095 -> LATIN SMALL LETTER O WITH GRAVE
|
||||
u'\xfb' # 0x0096 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
u'\xf9' # 0x0097 -> LATIN SMALL LETTER U WITH GRAVE
|
||||
u'\xff' # 0x0098 -> LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
u'\xd6' # 0x0099 -> LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
u'\xdc' # 0x009a -> LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
u'\xf8' # 0x009b -> LATIN SMALL LETTER O WITH STROKE
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\xd8' # 0x009d -> LATIN CAPITAL LETTER O WITH STROKE
|
||||
u'\u20a7' # 0x009e -> PESETA SIGN
|
||||
u'\u0192' # 0x009f -> LATIN SMALL LETTER F WITH HOOK
|
||||
u'\xe1' # 0x00a0 -> LATIN SMALL LETTER A WITH ACUTE
|
||||
u'\xed' # 0x00a1 -> LATIN SMALL LETTER I WITH ACUTE
|
||||
u'\xf3' # 0x00a2 -> LATIN SMALL LETTER O WITH ACUTE
|
||||
u'\xfa' # 0x00a3 -> LATIN SMALL LETTER U WITH ACUTE
|
||||
u'\xf1' # 0x00a4 -> LATIN SMALL LETTER N WITH TILDE
|
||||
u'\xd1' # 0x00a5 -> LATIN CAPITAL LETTER N WITH TILDE
|
||||
u'\xaa' # 0x00a6 -> FEMININE ORDINAL INDICATOR
|
||||
u'\xba' # 0x00a7 -> MASCULINE ORDINAL INDICATOR
|
||||
u'\xbf' # 0x00a8 -> INVERTED QUESTION MARK
|
||||
u'\u2310' # 0x00a9 -> REVERSED NOT SIGN
|
||||
u'\xac' # 0x00aa -> NOT SIGN
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\xbc' # 0x00ac -> VULGAR FRACTION ONE QUARTER
|
||||
u'\xa1' # 0x00ad -> INVERTED EXCLAMATION MARK
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xa4' # 0x00af -> CURRENCY SIGN
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b1' # 0x00e0 -> GREEK SMALL LETTER ALPHA
|
||||
u'\xdf' # 0x00e1 -> LATIN SMALL LETTER SHARP S
|
||||
u'\u0393' # 0x00e2 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u03c0' # 0x00e3 -> GREEK SMALL LETTER PI
|
||||
u'\u03a3' # 0x00e4 -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03c3' # 0x00e5 -> GREEK SMALL LETTER SIGMA
|
||||
u'\xb5' # 0x00e6 -> MICRO SIGN
|
||||
u'\u03c4' # 0x00e7 -> GREEK SMALL LETTER TAU
|
||||
u'\u03a6' # 0x00e8 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u0398' # 0x00e9 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u03a9' # 0x00ea -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b4' # 0x00eb -> GREEK SMALL LETTER DELTA
|
||||
u'\u221e' # 0x00ec -> INFINITY
|
||||
u'\u03c6' # 0x00ed -> GREEK SMALL LETTER PHI
|
||||
u'\u03b5' # 0x00ee -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2229' # 0x00ef -> INTERSECTION
|
||||
u'\u2261' # 0x00f0 -> IDENTICAL TO
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u2265' # 0x00f2 -> GREATER-THAN OR EQUAL TO
|
||||
u'\u2264' # 0x00f3 -> LESS-THAN OR EQUAL TO
|
||||
u'\u2320' # 0x00f4 -> TOP HALF INTEGRAL
|
||||
u'\u2321' # 0x00f5 -> BOTTOM HALF INTEGRAL
|
||||
u'\xf7' # 0x00f6 -> DIVISION SIGN
|
||||
u'\u2248' # 0x00f7 -> ALMOST EQUAL TO
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u207f' # 0x00fc -> SUPERSCRIPT LATIN SMALL LETTER N
|
||||
u'\xb2' # 0x00fd -> SUPERSCRIPT TWO
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a1: 0x00ad, # INVERTED EXCLAMATION MARK
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a4: 0x00af, # CURRENCY SIGN
|
||||
0x00aa: 0x00a6, # FEMININE ORDINAL INDICATOR
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x00aa, # NOT SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x00fd, # SUPERSCRIPT TWO
|
||||
0x00b5: 0x00e6, # MICRO SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x00ba: 0x00a7, # MASCULINE ORDINAL INDICATOR
|
||||
0x00bc: 0x00ac, # VULGAR FRACTION ONE QUARTER
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x00bf: 0x00a8, # INVERTED QUESTION MARK
|
||||
0x00c4: 0x008e, # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00c5: 0x008f, # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00c6: 0x0092, # LATIN CAPITAL LIGATURE AE
|
||||
0x00c7: 0x0080, # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00c9: 0x0090, # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00d1: 0x00a5, # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00d6: 0x0099, # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00d8: 0x009d, # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00dc: 0x009a, # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00df: 0x00e1, # LATIN SMALL LETTER SHARP S
|
||||
0x00e0: 0x0085, # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00e1: 0x00a0, # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00e2: 0x0083, # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00e4: 0x0084, # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00e5: 0x0086, # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00e6: 0x0091, # LATIN SMALL LIGATURE AE
|
||||
0x00e7: 0x0087, # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00e8: 0x008a, # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00e9: 0x0082, # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00ea: 0x0088, # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00eb: 0x0089, # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00ec: 0x008d, # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ed: 0x00a1, # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00ee: 0x008c, # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00ef: 0x008b, # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
0x00f1: 0x00a4, # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00f2: 0x0095, # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00f3: 0x00a2, # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00f4: 0x0093, # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00f6: 0x0094, # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00f7: 0x00f6, # DIVISION SIGN
|
||||
0x00f8: 0x009b, # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00f9: 0x0097, # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00fa: 0x00a3, # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00fb: 0x0096, # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00fc: 0x0081, # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00ff: 0x0098, # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
0x0192: 0x009f, # LATIN SMALL LETTER F WITH HOOK
|
||||
0x0393: 0x00e2, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0398: 0x00e9, # GREEK CAPITAL LETTER THETA
|
||||
0x03a3: 0x00e4, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a6: 0x00e8, # GREEK CAPITAL LETTER PHI
|
||||
0x03a9: 0x00ea, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03b1: 0x00e0, # GREEK SMALL LETTER ALPHA
|
||||
0x03b4: 0x00eb, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00ee, # GREEK SMALL LETTER EPSILON
|
||||
0x03c0: 0x00e3, # GREEK SMALL LETTER PI
|
||||
0x03c3: 0x00e5, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00e7, # GREEK SMALL LETTER TAU
|
||||
0x03c6: 0x00ed, # GREEK SMALL LETTER PHI
|
||||
0x207f: 0x00fc, # SUPERSCRIPT LATIN SMALL LETTER N
|
||||
0x20a7: 0x009e, # PESETA SIGN
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x221e: 0x00ec, # INFINITY
|
||||
0x2229: 0x00ef, # INTERSECTION
|
||||
0x2248: 0x00f7, # ALMOST EQUAL TO
|
||||
0x2261: 0x00f0, # IDENTICAL TO
|
||||
0x2264: 0x00f3, # LESS-THAN OR EQUAL TO
|
||||
0x2265: 0x00f2, # GREATER-THAN OR EQUAL TO
|
||||
0x2310: 0x00a9, # REVERSED NOT SIGN
|
||||
0x2320: 0x00f4, # TOP HALF INTEGRAL
|
||||
0x2321: 0x00f5, # BOTTOM HALF INTEGRAL
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
698
PythonHome/Lib/encodings/cp866.py
Normal file
698
PythonHome/Lib/encodings/cp866.py
Normal file
@@ -0,0 +1,698 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP866.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp866',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: 0x0410, # CYRILLIC CAPITAL LETTER A
|
||||
0x0081: 0x0411, # CYRILLIC CAPITAL LETTER BE
|
||||
0x0082: 0x0412, # CYRILLIC CAPITAL LETTER VE
|
||||
0x0083: 0x0413, # CYRILLIC CAPITAL LETTER GHE
|
||||
0x0084: 0x0414, # CYRILLIC CAPITAL LETTER DE
|
||||
0x0085: 0x0415, # CYRILLIC CAPITAL LETTER IE
|
||||
0x0086: 0x0416, # CYRILLIC CAPITAL LETTER ZHE
|
||||
0x0087: 0x0417, # CYRILLIC CAPITAL LETTER ZE
|
||||
0x0088: 0x0418, # CYRILLIC CAPITAL LETTER I
|
||||
0x0089: 0x0419, # CYRILLIC CAPITAL LETTER SHORT I
|
||||
0x008a: 0x041a, # CYRILLIC CAPITAL LETTER KA
|
||||
0x008b: 0x041b, # CYRILLIC CAPITAL LETTER EL
|
||||
0x008c: 0x041c, # CYRILLIC CAPITAL LETTER EM
|
||||
0x008d: 0x041d, # CYRILLIC CAPITAL LETTER EN
|
||||
0x008e: 0x041e, # CYRILLIC CAPITAL LETTER O
|
||||
0x008f: 0x041f, # CYRILLIC CAPITAL LETTER PE
|
||||
0x0090: 0x0420, # CYRILLIC CAPITAL LETTER ER
|
||||
0x0091: 0x0421, # CYRILLIC CAPITAL LETTER ES
|
||||
0x0092: 0x0422, # CYRILLIC CAPITAL LETTER TE
|
||||
0x0093: 0x0423, # CYRILLIC CAPITAL LETTER U
|
||||
0x0094: 0x0424, # CYRILLIC CAPITAL LETTER EF
|
||||
0x0095: 0x0425, # CYRILLIC CAPITAL LETTER HA
|
||||
0x0096: 0x0426, # CYRILLIC CAPITAL LETTER TSE
|
||||
0x0097: 0x0427, # CYRILLIC CAPITAL LETTER CHE
|
||||
0x0098: 0x0428, # CYRILLIC CAPITAL LETTER SHA
|
||||
0x0099: 0x0429, # CYRILLIC CAPITAL LETTER SHCHA
|
||||
0x009a: 0x042a, # CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
0x009b: 0x042b, # CYRILLIC CAPITAL LETTER YERU
|
||||
0x009c: 0x042c, # CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
0x009d: 0x042d, # CYRILLIC CAPITAL LETTER E
|
||||
0x009e: 0x042e, # CYRILLIC CAPITAL LETTER YU
|
||||
0x009f: 0x042f, # CYRILLIC CAPITAL LETTER YA
|
||||
0x00a0: 0x0430, # CYRILLIC SMALL LETTER A
|
||||
0x00a1: 0x0431, # CYRILLIC SMALL LETTER BE
|
||||
0x00a2: 0x0432, # CYRILLIC SMALL LETTER VE
|
||||
0x00a3: 0x0433, # CYRILLIC SMALL LETTER GHE
|
||||
0x00a4: 0x0434, # CYRILLIC SMALL LETTER DE
|
||||
0x00a5: 0x0435, # CYRILLIC SMALL LETTER IE
|
||||
0x00a6: 0x0436, # CYRILLIC SMALL LETTER ZHE
|
||||
0x00a7: 0x0437, # CYRILLIC SMALL LETTER ZE
|
||||
0x00a8: 0x0438, # CYRILLIC SMALL LETTER I
|
||||
0x00a9: 0x0439, # CYRILLIC SMALL LETTER SHORT I
|
||||
0x00aa: 0x043a, # CYRILLIC SMALL LETTER KA
|
||||
0x00ab: 0x043b, # CYRILLIC SMALL LETTER EL
|
||||
0x00ac: 0x043c, # CYRILLIC SMALL LETTER EM
|
||||
0x00ad: 0x043d, # CYRILLIC SMALL LETTER EN
|
||||
0x00ae: 0x043e, # CYRILLIC SMALL LETTER O
|
||||
0x00af: 0x043f, # CYRILLIC SMALL LETTER PE
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x2561, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x00b6: 0x2562, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x00b7: 0x2556, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x00b8: 0x2555, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x255c, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x00be: 0x255b, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x255e, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x00c7: 0x255f, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x2567, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d0: 0x2568, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d1: 0x2564, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d2: 0x2565, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d3: 0x2559, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x00d4: 0x2558, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x00d5: 0x2552, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x00d6: 0x2553, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x00d7: 0x256b, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x00d8: 0x256a, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x258c, # LEFT HALF BLOCK
|
||||
0x00de: 0x2590, # RIGHT HALF BLOCK
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x0440, # CYRILLIC SMALL LETTER ER
|
||||
0x00e1: 0x0441, # CYRILLIC SMALL LETTER ES
|
||||
0x00e2: 0x0442, # CYRILLIC SMALL LETTER TE
|
||||
0x00e3: 0x0443, # CYRILLIC SMALL LETTER U
|
||||
0x00e4: 0x0444, # CYRILLIC SMALL LETTER EF
|
||||
0x00e5: 0x0445, # CYRILLIC SMALL LETTER HA
|
||||
0x00e6: 0x0446, # CYRILLIC SMALL LETTER TSE
|
||||
0x00e7: 0x0447, # CYRILLIC SMALL LETTER CHE
|
||||
0x00e8: 0x0448, # CYRILLIC SMALL LETTER SHA
|
||||
0x00e9: 0x0449, # CYRILLIC SMALL LETTER SHCHA
|
||||
0x00ea: 0x044a, # CYRILLIC SMALL LETTER HARD SIGN
|
||||
0x00eb: 0x044b, # CYRILLIC SMALL LETTER YERU
|
||||
0x00ec: 0x044c, # CYRILLIC SMALL LETTER SOFT SIGN
|
||||
0x00ed: 0x044d, # CYRILLIC SMALL LETTER E
|
||||
0x00ee: 0x044e, # CYRILLIC SMALL LETTER YU
|
||||
0x00ef: 0x044f, # CYRILLIC SMALL LETTER YA
|
||||
0x00f0: 0x0401, # CYRILLIC CAPITAL LETTER IO
|
||||
0x00f1: 0x0451, # CYRILLIC SMALL LETTER IO
|
||||
0x00f2: 0x0404, # CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
0x00f3: 0x0454, # CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
0x00f4: 0x0407, # CYRILLIC CAPITAL LETTER YI
|
||||
0x00f5: 0x0457, # CYRILLIC SMALL LETTER YI
|
||||
0x00f6: 0x040e, # CYRILLIC CAPITAL LETTER SHORT U
|
||||
0x00f7: 0x045e, # CYRILLIC SMALL LETTER SHORT U
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x2219, # BULLET OPERATOR
|
||||
0x00fa: 0x00b7, # MIDDLE DOT
|
||||
0x00fb: 0x221a, # SQUARE ROOT
|
||||
0x00fc: 0x2116, # NUMERO SIGN
|
||||
0x00fd: 0x00a4, # CURRENCY SIGN
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\u0410' # 0x0080 -> CYRILLIC CAPITAL LETTER A
|
||||
u'\u0411' # 0x0081 -> CYRILLIC CAPITAL LETTER BE
|
||||
u'\u0412' # 0x0082 -> CYRILLIC CAPITAL LETTER VE
|
||||
u'\u0413' # 0x0083 -> CYRILLIC CAPITAL LETTER GHE
|
||||
u'\u0414' # 0x0084 -> CYRILLIC CAPITAL LETTER DE
|
||||
u'\u0415' # 0x0085 -> CYRILLIC CAPITAL LETTER IE
|
||||
u'\u0416' # 0x0086 -> CYRILLIC CAPITAL LETTER ZHE
|
||||
u'\u0417' # 0x0087 -> CYRILLIC CAPITAL LETTER ZE
|
||||
u'\u0418' # 0x0088 -> CYRILLIC CAPITAL LETTER I
|
||||
u'\u0419' # 0x0089 -> CYRILLIC CAPITAL LETTER SHORT I
|
||||
u'\u041a' # 0x008a -> CYRILLIC CAPITAL LETTER KA
|
||||
u'\u041b' # 0x008b -> CYRILLIC CAPITAL LETTER EL
|
||||
u'\u041c' # 0x008c -> CYRILLIC CAPITAL LETTER EM
|
||||
u'\u041d' # 0x008d -> CYRILLIC CAPITAL LETTER EN
|
||||
u'\u041e' # 0x008e -> CYRILLIC CAPITAL LETTER O
|
||||
u'\u041f' # 0x008f -> CYRILLIC CAPITAL LETTER PE
|
||||
u'\u0420' # 0x0090 -> CYRILLIC CAPITAL LETTER ER
|
||||
u'\u0421' # 0x0091 -> CYRILLIC CAPITAL LETTER ES
|
||||
u'\u0422' # 0x0092 -> CYRILLIC CAPITAL LETTER TE
|
||||
u'\u0423' # 0x0093 -> CYRILLIC CAPITAL LETTER U
|
||||
u'\u0424' # 0x0094 -> CYRILLIC CAPITAL LETTER EF
|
||||
u'\u0425' # 0x0095 -> CYRILLIC CAPITAL LETTER HA
|
||||
u'\u0426' # 0x0096 -> CYRILLIC CAPITAL LETTER TSE
|
||||
u'\u0427' # 0x0097 -> CYRILLIC CAPITAL LETTER CHE
|
||||
u'\u0428' # 0x0098 -> CYRILLIC CAPITAL LETTER SHA
|
||||
u'\u0429' # 0x0099 -> CYRILLIC CAPITAL LETTER SHCHA
|
||||
u'\u042a' # 0x009a -> CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
u'\u042b' # 0x009b -> CYRILLIC CAPITAL LETTER YERU
|
||||
u'\u042c' # 0x009c -> CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
u'\u042d' # 0x009d -> CYRILLIC CAPITAL LETTER E
|
||||
u'\u042e' # 0x009e -> CYRILLIC CAPITAL LETTER YU
|
||||
u'\u042f' # 0x009f -> CYRILLIC CAPITAL LETTER YA
|
||||
u'\u0430' # 0x00a0 -> CYRILLIC SMALL LETTER A
|
||||
u'\u0431' # 0x00a1 -> CYRILLIC SMALL LETTER BE
|
||||
u'\u0432' # 0x00a2 -> CYRILLIC SMALL LETTER VE
|
||||
u'\u0433' # 0x00a3 -> CYRILLIC SMALL LETTER GHE
|
||||
u'\u0434' # 0x00a4 -> CYRILLIC SMALL LETTER DE
|
||||
u'\u0435' # 0x00a5 -> CYRILLIC SMALL LETTER IE
|
||||
u'\u0436' # 0x00a6 -> CYRILLIC SMALL LETTER ZHE
|
||||
u'\u0437' # 0x00a7 -> CYRILLIC SMALL LETTER ZE
|
||||
u'\u0438' # 0x00a8 -> CYRILLIC SMALL LETTER I
|
||||
u'\u0439' # 0x00a9 -> CYRILLIC SMALL LETTER SHORT I
|
||||
u'\u043a' # 0x00aa -> CYRILLIC SMALL LETTER KA
|
||||
u'\u043b' # 0x00ab -> CYRILLIC SMALL LETTER EL
|
||||
u'\u043c' # 0x00ac -> CYRILLIC SMALL LETTER EM
|
||||
u'\u043d' # 0x00ad -> CYRILLIC SMALL LETTER EN
|
||||
u'\u043e' # 0x00ae -> CYRILLIC SMALL LETTER O
|
||||
u'\u043f' # 0x00af -> CYRILLIC SMALL LETTER PE
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u258c' # 0x00dd -> LEFT HALF BLOCK
|
||||
u'\u2590' # 0x00de -> RIGHT HALF BLOCK
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u0440' # 0x00e0 -> CYRILLIC SMALL LETTER ER
|
||||
u'\u0441' # 0x00e1 -> CYRILLIC SMALL LETTER ES
|
||||
u'\u0442' # 0x00e2 -> CYRILLIC SMALL LETTER TE
|
||||
u'\u0443' # 0x00e3 -> CYRILLIC SMALL LETTER U
|
||||
u'\u0444' # 0x00e4 -> CYRILLIC SMALL LETTER EF
|
||||
u'\u0445' # 0x00e5 -> CYRILLIC SMALL LETTER HA
|
||||
u'\u0446' # 0x00e6 -> CYRILLIC SMALL LETTER TSE
|
||||
u'\u0447' # 0x00e7 -> CYRILLIC SMALL LETTER CHE
|
||||
u'\u0448' # 0x00e8 -> CYRILLIC SMALL LETTER SHA
|
||||
u'\u0449' # 0x00e9 -> CYRILLIC SMALL LETTER SHCHA
|
||||
u'\u044a' # 0x00ea -> CYRILLIC SMALL LETTER HARD SIGN
|
||||
u'\u044b' # 0x00eb -> CYRILLIC SMALL LETTER YERU
|
||||
u'\u044c' # 0x00ec -> CYRILLIC SMALL LETTER SOFT SIGN
|
||||
u'\u044d' # 0x00ed -> CYRILLIC SMALL LETTER E
|
||||
u'\u044e' # 0x00ee -> CYRILLIC SMALL LETTER YU
|
||||
u'\u044f' # 0x00ef -> CYRILLIC SMALL LETTER YA
|
||||
u'\u0401' # 0x00f0 -> CYRILLIC CAPITAL LETTER IO
|
||||
u'\u0451' # 0x00f1 -> CYRILLIC SMALL LETTER IO
|
||||
u'\u0404' # 0x00f2 -> CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
u'\u0454' # 0x00f3 -> CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
u'\u0407' # 0x00f4 -> CYRILLIC CAPITAL LETTER YI
|
||||
u'\u0457' # 0x00f5 -> CYRILLIC SMALL LETTER YI
|
||||
u'\u040e' # 0x00f6 -> CYRILLIC CAPITAL LETTER SHORT U
|
||||
u'\u045e' # 0x00f7 -> CYRILLIC SMALL LETTER SHORT U
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\u2219' # 0x00f9 -> BULLET OPERATOR
|
||||
u'\xb7' # 0x00fa -> MIDDLE DOT
|
||||
u'\u221a' # 0x00fb -> SQUARE ROOT
|
||||
u'\u2116' # 0x00fc -> NUMERO SIGN
|
||||
u'\xa4' # 0x00fd -> CURRENCY SIGN
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a4: 0x00fd, # CURRENCY SIGN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b7: 0x00fa, # MIDDLE DOT
|
||||
0x0401: 0x00f0, # CYRILLIC CAPITAL LETTER IO
|
||||
0x0404: 0x00f2, # CYRILLIC CAPITAL LETTER UKRAINIAN IE
|
||||
0x0407: 0x00f4, # CYRILLIC CAPITAL LETTER YI
|
||||
0x040e: 0x00f6, # CYRILLIC CAPITAL LETTER SHORT U
|
||||
0x0410: 0x0080, # CYRILLIC CAPITAL LETTER A
|
||||
0x0411: 0x0081, # CYRILLIC CAPITAL LETTER BE
|
||||
0x0412: 0x0082, # CYRILLIC CAPITAL LETTER VE
|
||||
0x0413: 0x0083, # CYRILLIC CAPITAL LETTER GHE
|
||||
0x0414: 0x0084, # CYRILLIC CAPITAL LETTER DE
|
||||
0x0415: 0x0085, # CYRILLIC CAPITAL LETTER IE
|
||||
0x0416: 0x0086, # CYRILLIC CAPITAL LETTER ZHE
|
||||
0x0417: 0x0087, # CYRILLIC CAPITAL LETTER ZE
|
||||
0x0418: 0x0088, # CYRILLIC CAPITAL LETTER I
|
||||
0x0419: 0x0089, # CYRILLIC CAPITAL LETTER SHORT I
|
||||
0x041a: 0x008a, # CYRILLIC CAPITAL LETTER KA
|
||||
0x041b: 0x008b, # CYRILLIC CAPITAL LETTER EL
|
||||
0x041c: 0x008c, # CYRILLIC CAPITAL LETTER EM
|
||||
0x041d: 0x008d, # CYRILLIC CAPITAL LETTER EN
|
||||
0x041e: 0x008e, # CYRILLIC CAPITAL LETTER O
|
||||
0x041f: 0x008f, # CYRILLIC CAPITAL LETTER PE
|
||||
0x0420: 0x0090, # CYRILLIC CAPITAL LETTER ER
|
||||
0x0421: 0x0091, # CYRILLIC CAPITAL LETTER ES
|
||||
0x0422: 0x0092, # CYRILLIC CAPITAL LETTER TE
|
||||
0x0423: 0x0093, # CYRILLIC CAPITAL LETTER U
|
||||
0x0424: 0x0094, # CYRILLIC CAPITAL LETTER EF
|
||||
0x0425: 0x0095, # CYRILLIC CAPITAL LETTER HA
|
||||
0x0426: 0x0096, # CYRILLIC CAPITAL LETTER TSE
|
||||
0x0427: 0x0097, # CYRILLIC CAPITAL LETTER CHE
|
||||
0x0428: 0x0098, # CYRILLIC CAPITAL LETTER SHA
|
||||
0x0429: 0x0099, # CYRILLIC CAPITAL LETTER SHCHA
|
||||
0x042a: 0x009a, # CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
0x042b: 0x009b, # CYRILLIC CAPITAL LETTER YERU
|
||||
0x042c: 0x009c, # CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
0x042d: 0x009d, # CYRILLIC CAPITAL LETTER E
|
||||
0x042e: 0x009e, # CYRILLIC CAPITAL LETTER YU
|
||||
0x042f: 0x009f, # CYRILLIC CAPITAL LETTER YA
|
||||
0x0430: 0x00a0, # CYRILLIC SMALL LETTER A
|
||||
0x0431: 0x00a1, # CYRILLIC SMALL LETTER BE
|
||||
0x0432: 0x00a2, # CYRILLIC SMALL LETTER VE
|
||||
0x0433: 0x00a3, # CYRILLIC SMALL LETTER GHE
|
||||
0x0434: 0x00a4, # CYRILLIC SMALL LETTER DE
|
||||
0x0435: 0x00a5, # CYRILLIC SMALL LETTER IE
|
||||
0x0436: 0x00a6, # CYRILLIC SMALL LETTER ZHE
|
||||
0x0437: 0x00a7, # CYRILLIC SMALL LETTER ZE
|
||||
0x0438: 0x00a8, # CYRILLIC SMALL LETTER I
|
||||
0x0439: 0x00a9, # CYRILLIC SMALL LETTER SHORT I
|
||||
0x043a: 0x00aa, # CYRILLIC SMALL LETTER KA
|
||||
0x043b: 0x00ab, # CYRILLIC SMALL LETTER EL
|
||||
0x043c: 0x00ac, # CYRILLIC SMALL LETTER EM
|
||||
0x043d: 0x00ad, # CYRILLIC SMALL LETTER EN
|
||||
0x043e: 0x00ae, # CYRILLIC SMALL LETTER O
|
||||
0x043f: 0x00af, # CYRILLIC SMALL LETTER PE
|
||||
0x0440: 0x00e0, # CYRILLIC SMALL LETTER ER
|
||||
0x0441: 0x00e1, # CYRILLIC SMALL LETTER ES
|
||||
0x0442: 0x00e2, # CYRILLIC SMALL LETTER TE
|
||||
0x0443: 0x00e3, # CYRILLIC SMALL LETTER U
|
||||
0x0444: 0x00e4, # CYRILLIC SMALL LETTER EF
|
||||
0x0445: 0x00e5, # CYRILLIC SMALL LETTER HA
|
||||
0x0446: 0x00e6, # CYRILLIC SMALL LETTER TSE
|
||||
0x0447: 0x00e7, # CYRILLIC SMALL LETTER CHE
|
||||
0x0448: 0x00e8, # CYRILLIC SMALL LETTER SHA
|
||||
0x0449: 0x00e9, # CYRILLIC SMALL LETTER SHCHA
|
||||
0x044a: 0x00ea, # CYRILLIC SMALL LETTER HARD SIGN
|
||||
0x044b: 0x00eb, # CYRILLIC SMALL LETTER YERU
|
||||
0x044c: 0x00ec, # CYRILLIC SMALL LETTER SOFT SIGN
|
||||
0x044d: 0x00ed, # CYRILLIC SMALL LETTER E
|
||||
0x044e: 0x00ee, # CYRILLIC SMALL LETTER YU
|
||||
0x044f: 0x00ef, # CYRILLIC SMALL LETTER YA
|
||||
0x0451: 0x00f1, # CYRILLIC SMALL LETTER IO
|
||||
0x0454: 0x00f3, # CYRILLIC SMALL LETTER UKRAINIAN IE
|
||||
0x0457: 0x00f5, # CYRILLIC SMALL LETTER YI
|
||||
0x045e: 0x00f7, # CYRILLIC SMALL LETTER SHORT U
|
||||
0x2116: 0x00fc, # NUMERO SIGN
|
||||
0x2219: 0x00f9, # BULLET OPERATOR
|
||||
0x221a: 0x00fb, # SQUARE ROOT
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2552: 0x00d5, # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
0x2553: 0x00d6, # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2555: 0x00b8, # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
0x2556: 0x00b7, # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x2558: 0x00d4, # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
0x2559: 0x00d3, # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255b: 0x00be, # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
0x255c: 0x00bd, # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x255e: 0x00c6, # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
0x255f: 0x00c7, # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2561: 0x00b5, # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
0x2562: 0x00b6, # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2564: 0x00d1, # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2565: 0x00d2, # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2567: 0x00cf, # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
0x2568: 0x00d0, # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256a: 0x00d8, # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
0x256b: 0x00d7, # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x258c: 0x00dd, # LEFT HALF BLOCK
|
||||
0x2590: 0x00de, # RIGHT HALF BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
689
PythonHome/Lib/encodings/cp869.py
Normal file
689
PythonHome/Lib/encodings/cp869.py
Normal file
@@ -0,0 +1,689 @@
|
||||
""" Python Character Mapping Codec generated from 'VENDORS/MICSFT/PC/CP869.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_map)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp869',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
### Decoding Map
|
||||
|
||||
decoding_map = codecs.make_identity_dict(range(256))
|
||||
decoding_map.update({
|
||||
0x0080: None, # UNDEFINED
|
||||
0x0081: None, # UNDEFINED
|
||||
0x0082: None, # UNDEFINED
|
||||
0x0083: None, # UNDEFINED
|
||||
0x0084: None, # UNDEFINED
|
||||
0x0085: None, # UNDEFINED
|
||||
0x0086: 0x0386, # GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
0x0087: None, # UNDEFINED
|
||||
0x0088: 0x00b7, # MIDDLE DOT
|
||||
0x0089: 0x00ac, # NOT SIGN
|
||||
0x008a: 0x00a6, # BROKEN BAR
|
||||
0x008b: 0x2018, # LEFT SINGLE QUOTATION MARK
|
||||
0x008c: 0x2019, # RIGHT SINGLE QUOTATION MARK
|
||||
0x008d: 0x0388, # GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
0x008e: 0x2015, # HORIZONTAL BAR
|
||||
0x008f: 0x0389, # GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
0x0090: 0x038a, # GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
0x0091: 0x03aa, # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
0x0092: 0x038c, # GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
0x0093: None, # UNDEFINED
|
||||
0x0094: None, # UNDEFINED
|
||||
0x0095: 0x038e, # GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
0x0096: 0x03ab, # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
0x0097: 0x00a9, # COPYRIGHT SIGN
|
||||
0x0098: 0x038f, # GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
0x0099: 0x00b2, # SUPERSCRIPT TWO
|
||||
0x009a: 0x00b3, # SUPERSCRIPT THREE
|
||||
0x009b: 0x03ac, # GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
0x009c: 0x00a3, # POUND SIGN
|
||||
0x009d: 0x03ad, # GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
0x009e: 0x03ae, # GREEK SMALL LETTER ETA WITH TONOS
|
||||
0x009f: 0x03af, # GREEK SMALL LETTER IOTA WITH TONOS
|
||||
0x00a0: 0x03ca, # GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
0x00a1: 0x0390, # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
|
||||
0x00a2: 0x03cc, # GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
0x00a3: 0x03cd, # GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
0x00a4: 0x0391, # GREEK CAPITAL LETTER ALPHA
|
||||
0x00a5: 0x0392, # GREEK CAPITAL LETTER BETA
|
||||
0x00a6: 0x0393, # GREEK CAPITAL LETTER GAMMA
|
||||
0x00a7: 0x0394, # GREEK CAPITAL LETTER DELTA
|
||||
0x00a8: 0x0395, # GREEK CAPITAL LETTER EPSILON
|
||||
0x00a9: 0x0396, # GREEK CAPITAL LETTER ZETA
|
||||
0x00aa: 0x0397, # GREEK CAPITAL LETTER ETA
|
||||
0x00ab: 0x00bd, # VULGAR FRACTION ONE HALF
|
||||
0x00ac: 0x0398, # GREEK CAPITAL LETTER THETA
|
||||
0x00ad: 0x0399, # GREEK CAPITAL LETTER IOTA
|
||||
0x00ae: 0x00ab, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00af: 0x00bb, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00b0: 0x2591, # LIGHT SHADE
|
||||
0x00b1: 0x2592, # MEDIUM SHADE
|
||||
0x00b2: 0x2593, # DARK SHADE
|
||||
0x00b3: 0x2502, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x00b4: 0x2524, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x00b5: 0x039a, # GREEK CAPITAL LETTER KAPPA
|
||||
0x00b6: 0x039b, # GREEK CAPITAL LETTER LAMDA
|
||||
0x00b7: 0x039c, # GREEK CAPITAL LETTER MU
|
||||
0x00b8: 0x039d, # GREEK CAPITAL LETTER NU
|
||||
0x00b9: 0x2563, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x00ba: 0x2551, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x00bb: 0x2557, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x00bc: 0x255d, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x00bd: 0x039e, # GREEK CAPITAL LETTER XI
|
||||
0x00be: 0x039f, # GREEK CAPITAL LETTER OMICRON
|
||||
0x00bf: 0x2510, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x00c0: 0x2514, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x00c1: 0x2534, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x00c2: 0x252c, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x00c3: 0x251c, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x00c4: 0x2500, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x00c5: 0x253c, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x00c6: 0x03a0, # GREEK CAPITAL LETTER PI
|
||||
0x00c7: 0x03a1, # GREEK CAPITAL LETTER RHO
|
||||
0x00c8: 0x255a, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x00c9: 0x2554, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x00ca: 0x2569, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x00cb: 0x2566, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x00cc: 0x2560, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x00cd: 0x2550, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x00ce: 0x256c, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x00cf: 0x03a3, # GREEK CAPITAL LETTER SIGMA
|
||||
0x00d0: 0x03a4, # GREEK CAPITAL LETTER TAU
|
||||
0x00d1: 0x03a5, # GREEK CAPITAL LETTER UPSILON
|
||||
0x00d2: 0x03a6, # GREEK CAPITAL LETTER PHI
|
||||
0x00d3: 0x03a7, # GREEK CAPITAL LETTER CHI
|
||||
0x00d4: 0x03a8, # GREEK CAPITAL LETTER PSI
|
||||
0x00d5: 0x03a9, # GREEK CAPITAL LETTER OMEGA
|
||||
0x00d6: 0x03b1, # GREEK SMALL LETTER ALPHA
|
||||
0x00d7: 0x03b2, # GREEK SMALL LETTER BETA
|
||||
0x00d8: 0x03b3, # GREEK SMALL LETTER GAMMA
|
||||
0x00d9: 0x2518, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x00da: 0x250c, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x00db: 0x2588, # FULL BLOCK
|
||||
0x00dc: 0x2584, # LOWER HALF BLOCK
|
||||
0x00dd: 0x03b4, # GREEK SMALL LETTER DELTA
|
||||
0x00de: 0x03b5, # GREEK SMALL LETTER EPSILON
|
||||
0x00df: 0x2580, # UPPER HALF BLOCK
|
||||
0x00e0: 0x03b6, # GREEK SMALL LETTER ZETA
|
||||
0x00e1: 0x03b7, # GREEK SMALL LETTER ETA
|
||||
0x00e2: 0x03b8, # GREEK SMALL LETTER THETA
|
||||
0x00e3: 0x03b9, # GREEK SMALL LETTER IOTA
|
||||
0x00e4: 0x03ba, # GREEK SMALL LETTER KAPPA
|
||||
0x00e5: 0x03bb, # GREEK SMALL LETTER LAMDA
|
||||
0x00e6: 0x03bc, # GREEK SMALL LETTER MU
|
||||
0x00e7: 0x03bd, # GREEK SMALL LETTER NU
|
||||
0x00e8: 0x03be, # GREEK SMALL LETTER XI
|
||||
0x00e9: 0x03bf, # GREEK SMALL LETTER OMICRON
|
||||
0x00ea: 0x03c0, # GREEK SMALL LETTER PI
|
||||
0x00eb: 0x03c1, # GREEK SMALL LETTER RHO
|
||||
0x00ec: 0x03c3, # GREEK SMALL LETTER SIGMA
|
||||
0x00ed: 0x03c2, # GREEK SMALL LETTER FINAL SIGMA
|
||||
0x00ee: 0x03c4, # GREEK SMALL LETTER TAU
|
||||
0x00ef: 0x0384, # GREEK TONOS
|
||||
0x00f0: 0x00ad, # SOFT HYPHEN
|
||||
0x00f1: 0x00b1, # PLUS-MINUS SIGN
|
||||
0x00f2: 0x03c5, # GREEK SMALL LETTER UPSILON
|
||||
0x00f3: 0x03c6, # GREEK SMALL LETTER PHI
|
||||
0x00f4: 0x03c7, # GREEK SMALL LETTER CHI
|
||||
0x00f5: 0x00a7, # SECTION SIGN
|
||||
0x00f6: 0x03c8, # GREEK SMALL LETTER PSI
|
||||
0x00f7: 0x0385, # GREEK DIALYTIKA TONOS
|
||||
0x00f8: 0x00b0, # DEGREE SIGN
|
||||
0x00f9: 0x00a8, # DIAERESIS
|
||||
0x00fa: 0x03c9, # GREEK SMALL LETTER OMEGA
|
||||
0x00fb: 0x03cb, # GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
0x00fc: 0x03b0, # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
|
||||
0x00fd: 0x03ce, # GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
0x00fe: 0x25a0, # BLACK SQUARE
|
||||
0x00ff: 0x00a0, # NO-BREAK SPACE
|
||||
})
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x0000 -> NULL
|
||||
u'\x01' # 0x0001 -> START OF HEADING
|
||||
u'\x02' # 0x0002 -> START OF TEXT
|
||||
u'\x03' # 0x0003 -> END OF TEXT
|
||||
u'\x04' # 0x0004 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x0005 -> ENQUIRY
|
||||
u'\x06' # 0x0006 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x0007 -> BELL
|
||||
u'\x08' # 0x0008 -> BACKSPACE
|
||||
u'\t' # 0x0009 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x000a -> LINE FEED
|
||||
u'\x0b' # 0x000b -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x000c -> FORM FEED
|
||||
u'\r' # 0x000d -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x000e -> SHIFT OUT
|
||||
u'\x0f' # 0x000f -> SHIFT IN
|
||||
u'\x10' # 0x0010 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x0011 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x0012 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x0013 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x0018 -> CANCEL
|
||||
u'\x19' # 0x0019 -> END OF MEDIUM
|
||||
u'\x1a' # 0x001a -> SUBSTITUTE
|
||||
u'\x1b' # 0x001b -> ESCAPE
|
||||
u'\x1c' # 0x001c -> FILE SEPARATOR
|
||||
u'\x1d' # 0x001d -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x001e -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x001f -> UNIT SEPARATOR
|
||||
u' ' # 0x0020 -> SPACE
|
||||
u'!' # 0x0021 -> EXCLAMATION MARK
|
||||
u'"' # 0x0022 -> QUOTATION MARK
|
||||
u'#' # 0x0023 -> NUMBER SIGN
|
||||
u'$' # 0x0024 -> DOLLAR SIGN
|
||||
u'%' # 0x0025 -> PERCENT SIGN
|
||||
u'&' # 0x0026 -> AMPERSAND
|
||||
u"'" # 0x0027 -> APOSTROPHE
|
||||
u'(' # 0x0028 -> LEFT PARENTHESIS
|
||||
u')' # 0x0029 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x002a -> ASTERISK
|
||||
u'+' # 0x002b -> PLUS SIGN
|
||||
u',' # 0x002c -> COMMA
|
||||
u'-' # 0x002d -> HYPHEN-MINUS
|
||||
u'.' # 0x002e -> FULL STOP
|
||||
u'/' # 0x002f -> SOLIDUS
|
||||
u'0' # 0x0030 -> DIGIT ZERO
|
||||
u'1' # 0x0031 -> DIGIT ONE
|
||||
u'2' # 0x0032 -> DIGIT TWO
|
||||
u'3' # 0x0033 -> DIGIT THREE
|
||||
u'4' # 0x0034 -> DIGIT FOUR
|
||||
u'5' # 0x0035 -> DIGIT FIVE
|
||||
u'6' # 0x0036 -> DIGIT SIX
|
||||
u'7' # 0x0037 -> DIGIT SEVEN
|
||||
u'8' # 0x0038 -> DIGIT EIGHT
|
||||
u'9' # 0x0039 -> DIGIT NINE
|
||||
u':' # 0x003a -> COLON
|
||||
u';' # 0x003b -> SEMICOLON
|
||||
u'<' # 0x003c -> LESS-THAN SIGN
|
||||
u'=' # 0x003d -> EQUALS SIGN
|
||||
u'>' # 0x003e -> GREATER-THAN SIGN
|
||||
u'?' # 0x003f -> QUESTION MARK
|
||||
u'@' # 0x0040 -> COMMERCIAL AT
|
||||
u'A' # 0x0041 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x0042 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x0043 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x0044 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x0045 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x0046 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x0047 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x0048 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x0049 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x004a -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x004b -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x004c -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x004d -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x004e -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x004f -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x0050 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x0052 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x0053 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x0054 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x0055 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x0056 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x0057 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x0058 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x005b -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x005c -> REVERSE SOLIDUS
|
||||
u']' # 0x005d -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x005e -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x005f -> LOW LINE
|
||||
u'`' # 0x0060 -> GRAVE ACCENT
|
||||
u'a' # 0x0061 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x0062 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x0063 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x0064 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x0065 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x0066 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x0067 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x0068 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x0069 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x006a -> LATIN SMALL LETTER J
|
||||
u'k' # 0x006b -> LATIN SMALL LETTER K
|
||||
u'l' # 0x006c -> LATIN SMALL LETTER L
|
||||
u'm' # 0x006d -> LATIN SMALL LETTER M
|
||||
u'n' # 0x006e -> LATIN SMALL LETTER N
|
||||
u'o' # 0x006f -> LATIN SMALL LETTER O
|
||||
u'p' # 0x0070 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x0071 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x0072 -> LATIN SMALL LETTER R
|
||||
u's' # 0x0073 -> LATIN SMALL LETTER S
|
||||
u't' # 0x0074 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x0075 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x0076 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x0077 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x0078 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x0079 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x007a -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x007b -> LEFT CURLY BRACKET
|
||||
u'|' # 0x007c -> VERTICAL LINE
|
||||
u'}' # 0x007d -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x007e -> TILDE
|
||||
u'\x7f' # 0x007f -> DELETE
|
||||
u'\ufffe' # 0x0080 -> UNDEFINED
|
||||
u'\ufffe' # 0x0081 -> UNDEFINED
|
||||
u'\ufffe' # 0x0082 -> UNDEFINED
|
||||
u'\ufffe' # 0x0083 -> UNDEFINED
|
||||
u'\ufffe' # 0x0084 -> UNDEFINED
|
||||
u'\ufffe' # 0x0085 -> UNDEFINED
|
||||
u'\u0386' # 0x0086 -> GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
u'\ufffe' # 0x0087 -> UNDEFINED
|
||||
u'\xb7' # 0x0088 -> MIDDLE DOT
|
||||
u'\xac' # 0x0089 -> NOT SIGN
|
||||
u'\xa6' # 0x008a -> BROKEN BAR
|
||||
u'\u2018' # 0x008b -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x008c -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u0388' # 0x008d -> GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
u'\u2015' # 0x008e -> HORIZONTAL BAR
|
||||
u'\u0389' # 0x008f -> GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
u'\u038a' # 0x0090 -> GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
u'\u03aa' # 0x0091 -> GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u038c' # 0x0092 -> GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
u'\ufffe' # 0x0093 -> UNDEFINED
|
||||
u'\ufffe' # 0x0094 -> UNDEFINED
|
||||
u'\u038e' # 0x0095 -> GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
u'\u03ab' # 0x0096 -> GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\xa9' # 0x0097 -> COPYRIGHT SIGN
|
||||
u'\u038f' # 0x0098 -> GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
u'\xb2' # 0x0099 -> SUPERSCRIPT TWO
|
||||
u'\xb3' # 0x009a -> SUPERSCRIPT THREE
|
||||
u'\u03ac' # 0x009b -> GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
u'\xa3' # 0x009c -> POUND SIGN
|
||||
u'\u03ad' # 0x009d -> GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
u'\u03ae' # 0x009e -> GREEK SMALL LETTER ETA WITH TONOS
|
||||
u'\u03af' # 0x009f -> GREEK SMALL LETTER IOTA WITH TONOS
|
||||
u'\u03ca' # 0x00a0 -> GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u0390' # 0x00a1 -> GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
|
||||
u'\u03cc' # 0x00a2 -> GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
u'\u03cd' # 0x00a3 -> GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
u'\u0391' # 0x00a4 -> GREEK CAPITAL LETTER ALPHA
|
||||
u'\u0392' # 0x00a5 -> GREEK CAPITAL LETTER BETA
|
||||
u'\u0393' # 0x00a6 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u0394' # 0x00a7 -> GREEK CAPITAL LETTER DELTA
|
||||
u'\u0395' # 0x00a8 -> GREEK CAPITAL LETTER EPSILON
|
||||
u'\u0396' # 0x00a9 -> GREEK CAPITAL LETTER ZETA
|
||||
u'\u0397' # 0x00aa -> GREEK CAPITAL LETTER ETA
|
||||
u'\xbd' # 0x00ab -> VULGAR FRACTION ONE HALF
|
||||
u'\u0398' # 0x00ac -> GREEK CAPITAL LETTER THETA
|
||||
u'\u0399' # 0x00ad -> GREEK CAPITAL LETTER IOTA
|
||||
u'\xab' # 0x00ae -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xbb' # 0x00af -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\u2591' # 0x00b0 -> LIGHT SHADE
|
||||
u'\u2592' # 0x00b1 -> MEDIUM SHADE
|
||||
u'\u2593' # 0x00b2 -> DARK SHADE
|
||||
u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
|
||||
u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
u'\u039a' # 0x00b5 -> GREEK CAPITAL LETTER KAPPA
|
||||
u'\u039b' # 0x00b6 -> GREEK CAPITAL LETTER LAMDA
|
||||
u'\u039c' # 0x00b7 -> GREEK CAPITAL LETTER MU
|
||||
u'\u039d' # 0x00b8 -> GREEK CAPITAL LETTER NU
|
||||
u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
|
||||
u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
u'\u039e' # 0x00bd -> GREEK CAPITAL LETTER XI
|
||||
u'\u039f' # 0x00be -> GREEK CAPITAL LETTER OMICRON
|
||||
u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
|
||||
u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
u'\u03a0' # 0x00c6 -> GREEK CAPITAL LETTER PI
|
||||
u'\u03a1' # 0x00c7 -> GREEK CAPITAL LETTER RHO
|
||||
u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
u'\u03a3' # 0x00cf -> GREEK CAPITAL LETTER SIGMA
|
||||
u'\u03a4' # 0x00d0 -> GREEK CAPITAL LETTER TAU
|
||||
u'\u03a5' # 0x00d1 -> GREEK CAPITAL LETTER UPSILON
|
||||
u'\u03a6' # 0x00d2 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u03a7' # 0x00d3 -> GREEK CAPITAL LETTER CHI
|
||||
u'\u03a8' # 0x00d4 -> GREEK CAPITAL LETTER PSI
|
||||
u'\u03a9' # 0x00d5 -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03b1' # 0x00d6 -> GREEK SMALL LETTER ALPHA
|
||||
u'\u03b2' # 0x00d7 -> GREEK SMALL LETTER BETA
|
||||
u'\u03b3' # 0x00d8 -> GREEK SMALL LETTER GAMMA
|
||||
u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
|
||||
u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
u'\u2588' # 0x00db -> FULL BLOCK
|
||||
u'\u2584' # 0x00dc -> LOWER HALF BLOCK
|
||||
u'\u03b4' # 0x00dd -> GREEK SMALL LETTER DELTA
|
||||
u'\u03b5' # 0x00de -> GREEK SMALL LETTER EPSILON
|
||||
u'\u2580' # 0x00df -> UPPER HALF BLOCK
|
||||
u'\u03b6' # 0x00e0 -> GREEK SMALL LETTER ZETA
|
||||
u'\u03b7' # 0x00e1 -> GREEK SMALL LETTER ETA
|
||||
u'\u03b8' # 0x00e2 -> GREEK SMALL LETTER THETA
|
||||
u'\u03b9' # 0x00e3 -> GREEK SMALL LETTER IOTA
|
||||
u'\u03ba' # 0x00e4 -> GREEK SMALL LETTER KAPPA
|
||||
u'\u03bb' # 0x00e5 -> GREEK SMALL LETTER LAMDA
|
||||
u'\u03bc' # 0x00e6 -> GREEK SMALL LETTER MU
|
||||
u'\u03bd' # 0x00e7 -> GREEK SMALL LETTER NU
|
||||
u'\u03be' # 0x00e8 -> GREEK SMALL LETTER XI
|
||||
u'\u03bf' # 0x00e9 -> GREEK SMALL LETTER OMICRON
|
||||
u'\u03c0' # 0x00ea -> GREEK SMALL LETTER PI
|
||||
u'\u03c1' # 0x00eb -> GREEK SMALL LETTER RHO
|
||||
u'\u03c3' # 0x00ec -> GREEK SMALL LETTER SIGMA
|
||||
u'\u03c2' # 0x00ed -> GREEK SMALL LETTER FINAL SIGMA
|
||||
u'\u03c4' # 0x00ee -> GREEK SMALL LETTER TAU
|
||||
u'\u0384' # 0x00ef -> GREEK TONOS
|
||||
u'\xad' # 0x00f0 -> SOFT HYPHEN
|
||||
u'\xb1' # 0x00f1 -> PLUS-MINUS SIGN
|
||||
u'\u03c5' # 0x00f2 -> GREEK SMALL LETTER UPSILON
|
||||
u'\u03c6' # 0x00f3 -> GREEK SMALL LETTER PHI
|
||||
u'\u03c7' # 0x00f4 -> GREEK SMALL LETTER CHI
|
||||
u'\xa7' # 0x00f5 -> SECTION SIGN
|
||||
u'\u03c8' # 0x00f6 -> GREEK SMALL LETTER PSI
|
||||
u'\u0385' # 0x00f7 -> GREEK DIALYTIKA TONOS
|
||||
u'\xb0' # 0x00f8 -> DEGREE SIGN
|
||||
u'\xa8' # 0x00f9 -> DIAERESIS
|
||||
u'\u03c9' # 0x00fa -> GREEK SMALL LETTER OMEGA
|
||||
u'\u03cb' # 0x00fb -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\u03b0' # 0x00fc -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
|
||||
u'\u03ce' # 0x00fd -> GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
u'\u25a0' # 0x00fe -> BLACK SQUARE
|
||||
u'\xa0' # 0x00ff -> NO-BREAK SPACE
|
||||
)
|
||||
|
||||
### Encoding Map
|
||||
|
||||
encoding_map = {
|
||||
0x0000: 0x0000, # NULL
|
||||
0x0001: 0x0001, # START OF HEADING
|
||||
0x0002: 0x0002, # START OF TEXT
|
||||
0x0003: 0x0003, # END OF TEXT
|
||||
0x0004: 0x0004, # END OF TRANSMISSION
|
||||
0x0005: 0x0005, # ENQUIRY
|
||||
0x0006: 0x0006, # ACKNOWLEDGE
|
||||
0x0007: 0x0007, # BELL
|
||||
0x0008: 0x0008, # BACKSPACE
|
||||
0x0009: 0x0009, # HORIZONTAL TABULATION
|
||||
0x000a: 0x000a, # LINE FEED
|
||||
0x000b: 0x000b, # VERTICAL TABULATION
|
||||
0x000c: 0x000c, # FORM FEED
|
||||
0x000d: 0x000d, # CARRIAGE RETURN
|
||||
0x000e: 0x000e, # SHIFT OUT
|
||||
0x000f: 0x000f, # SHIFT IN
|
||||
0x0010: 0x0010, # DATA LINK ESCAPE
|
||||
0x0011: 0x0011, # DEVICE CONTROL ONE
|
||||
0x0012: 0x0012, # DEVICE CONTROL TWO
|
||||
0x0013: 0x0013, # DEVICE CONTROL THREE
|
||||
0x0014: 0x0014, # DEVICE CONTROL FOUR
|
||||
0x0015: 0x0015, # NEGATIVE ACKNOWLEDGE
|
||||
0x0016: 0x0016, # SYNCHRONOUS IDLE
|
||||
0x0017: 0x0017, # END OF TRANSMISSION BLOCK
|
||||
0x0018: 0x0018, # CANCEL
|
||||
0x0019: 0x0019, # END OF MEDIUM
|
||||
0x001a: 0x001a, # SUBSTITUTE
|
||||
0x001b: 0x001b, # ESCAPE
|
||||
0x001c: 0x001c, # FILE SEPARATOR
|
||||
0x001d: 0x001d, # GROUP SEPARATOR
|
||||
0x001e: 0x001e, # RECORD SEPARATOR
|
||||
0x001f: 0x001f, # UNIT SEPARATOR
|
||||
0x0020: 0x0020, # SPACE
|
||||
0x0021: 0x0021, # EXCLAMATION MARK
|
||||
0x0022: 0x0022, # QUOTATION MARK
|
||||
0x0023: 0x0023, # NUMBER SIGN
|
||||
0x0024: 0x0024, # DOLLAR SIGN
|
||||
0x0025: 0x0025, # PERCENT SIGN
|
||||
0x0026: 0x0026, # AMPERSAND
|
||||
0x0027: 0x0027, # APOSTROPHE
|
||||
0x0028: 0x0028, # LEFT PARENTHESIS
|
||||
0x0029: 0x0029, # RIGHT PARENTHESIS
|
||||
0x002a: 0x002a, # ASTERISK
|
||||
0x002b: 0x002b, # PLUS SIGN
|
||||
0x002c: 0x002c, # COMMA
|
||||
0x002d: 0x002d, # HYPHEN-MINUS
|
||||
0x002e: 0x002e, # FULL STOP
|
||||
0x002f: 0x002f, # SOLIDUS
|
||||
0x0030: 0x0030, # DIGIT ZERO
|
||||
0x0031: 0x0031, # DIGIT ONE
|
||||
0x0032: 0x0032, # DIGIT TWO
|
||||
0x0033: 0x0033, # DIGIT THREE
|
||||
0x0034: 0x0034, # DIGIT FOUR
|
||||
0x0035: 0x0035, # DIGIT FIVE
|
||||
0x0036: 0x0036, # DIGIT SIX
|
||||
0x0037: 0x0037, # DIGIT SEVEN
|
||||
0x0038: 0x0038, # DIGIT EIGHT
|
||||
0x0039: 0x0039, # DIGIT NINE
|
||||
0x003a: 0x003a, # COLON
|
||||
0x003b: 0x003b, # SEMICOLON
|
||||
0x003c: 0x003c, # LESS-THAN SIGN
|
||||
0x003d: 0x003d, # EQUALS SIGN
|
||||
0x003e: 0x003e, # GREATER-THAN SIGN
|
||||
0x003f: 0x003f, # QUESTION MARK
|
||||
0x0040: 0x0040, # COMMERCIAL AT
|
||||
0x0041: 0x0041, # LATIN CAPITAL LETTER A
|
||||
0x0042: 0x0042, # LATIN CAPITAL LETTER B
|
||||
0x0043: 0x0043, # LATIN CAPITAL LETTER C
|
||||
0x0044: 0x0044, # LATIN CAPITAL LETTER D
|
||||
0x0045: 0x0045, # LATIN CAPITAL LETTER E
|
||||
0x0046: 0x0046, # LATIN CAPITAL LETTER F
|
||||
0x0047: 0x0047, # LATIN CAPITAL LETTER G
|
||||
0x0048: 0x0048, # LATIN CAPITAL LETTER H
|
||||
0x0049: 0x0049, # LATIN CAPITAL LETTER I
|
||||
0x004a: 0x004a, # LATIN CAPITAL LETTER J
|
||||
0x004b: 0x004b, # LATIN CAPITAL LETTER K
|
||||
0x004c: 0x004c, # LATIN CAPITAL LETTER L
|
||||
0x004d: 0x004d, # LATIN CAPITAL LETTER M
|
||||
0x004e: 0x004e, # LATIN CAPITAL LETTER N
|
||||
0x004f: 0x004f, # LATIN CAPITAL LETTER O
|
||||
0x0050: 0x0050, # LATIN CAPITAL LETTER P
|
||||
0x0051: 0x0051, # LATIN CAPITAL LETTER Q
|
||||
0x0052: 0x0052, # LATIN CAPITAL LETTER R
|
||||
0x0053: 0x0053, # LATIN CAPITAL LETTER S
|
||||
0x0054: 0x0054, # LATIN CAPITAL LETTER T
|
||||
0x0055: 0x0055, # LATIN CAPITAL LETTER U
|
||||
0x0056: 0x0056, # LATIN CAPITAL LETTER V
|
||||
0x0057: 0x0057, # LATIN CAPITAL LETTER W
|
||||
0x0058: 0x0058, # LATIN CAPITAL LETTER X
|
||||
0x0059: 0x0059, # LATIN CAPITAL LETTER Y
|
||||
0x005a: 0x005a, # LATIN CAPITAL LETTER Z
|
||||
0x005b: 0x005b, # LEFT SQUARE BRACKET
|
||||
0x005c: 0x005c, # REVERSE SOLIDUS
|
||||
0x005d: 0x005d, # RIGHT SQUARE BRACKET
|
||||
0x005e: 0x005e, # CIRCUMFLEX ACCENT
|
||||
0x005f: 0x005f, # LOW LINE
|
||||
0x0060: 0x0060, # GRAVE ACCENT
|
||||
0x0061: 0x0061, # LATIN SMALL LETTER A
|
||||
0x0062: 0x0062, # LATIN SMALL LETTER B
|
||||
0x0063: 0x0063, # LATIN SMALL LETTER C
|
||||
0x0064: 0x0064, # LATIN SMALL LETTER D
|
||||
0x0065: 0x0065, # LATIN SMALL LETTER E
|
||||
0x0066: 0x0066, # LATIN SMALL LETTER F
|
||||
0x0067: 0x0067, # LATIN SMALL LETTER G
|
||||
0x0068: 0x0068, # LATIN SMALL LETTER H
|
||||
0x0069: 0x0069, # LATIN SMALL LETTER I
|
||||
0x006a: 0x006a, # LATIN SMALL LETTER J
|
||||
0x006b: 0x006b, # LATIN SMALL LETTER K
|
||||
0x006c: 0x006c, # LATIN SMALL LETTER L
|
||||
0x006d: 0x006d, # LATIN SMALL LETTER M
|
||||
0x006e: 0x006e, # LATIN SMALL LETTER N
|
||||
0x006f: 0x006f, # LATIN SMALL LETTER O
|
||||
0x0070: 0x0070, # LATIN SMALL LETTER P
|
||||
0x0071: 0x0071, # LATIN SMALL LETTER Q
|
||||
0x0072: 0x0072, # LATIN SMALL LETTER R
|
||||
0x0073: 0x0073, # LATIN SMALL LETTER S
|
||||
0x0074: 0x0074, # LATIN SMALL LETTER T
|
||||
0x0075: 0x0075, # LATIN SMALL LETTER U
|
||||
0x0076: 0x0076, # LATIN SMALL LETTER V
|
||||
0x0077: 0x0077, # LATIN SMALL LETTER W
|
||||
0x0078: 0x0078, # LATIN SMALL LETTER X
|
||||
0x0079: 0x0079, # LATIN SMALL LETTER Y
|
||||
0x007a: 0x007a, # LATIN SMALL LETTER Z
|
||||
0x007b: 0x007b, # LEFT CURLY BRACKET
|
||||
0x007c: 0x007c, # VERTICAL LINE
|
||||
0x007d: 0x007d, # RIGHT CURLY BRACKET
|
||||
0x007e: 0x007e, # TILDE
|
||||
0x007f: 0x007f, # DELETE
|
||||
0x00a0: 0x00ff, # NO-BREAK SPACE
|
||||
0x00a3: 0x009c, # POUND SIGN
|
||||
0x00a6: 0x008a, # BROKEN BAR
|
||||
0x00a7: 0x00f5, # SECTION SIGN
|
||||
0x00a8: 0x00f9, # DIAERESIS
|
||||
0x00a9: 0x0097, # COPYRIGHT SIGN
|
||||
0x00ab: 0x00ae, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00ac: 0x0089, # NOT SIGN
|
||||
0x00ad: 0x00f0, # SOFT HYPHEN
|
||||
0x00b0: 0x00f8, # DEGREE SIGN
|
||||
0x00b1: 0x00f1, # PLUS-MINUS SIGN
|
||||
0x00b2: 0x0099, # SUPERSCRIPT TWO
|
||||
0x00b3: 0x009a, # SUPERSCRIPT THREE
|
||||
0x00b7: 0x0088, # MIDDLE DOT
|
||||
0x00bb: 0x00af, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0x00bd: 0x00ab, # VULGAR FRACTION ONE HALF
|
||||
0x0384: 0x00ef, # GREEK TONOS
|
||||
0x0385: 0x00f7, # GREEK DIALYTIKA TONOS
|
||||
0x0386: 0x0086, # GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
0x0388: 0x008d, # GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
0x0389: 0x008f, # GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
0x038a: 0x0090, # GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
0x038c: 0x0092, # GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
0x038e: 0x0095, # GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
0x038f: 0x0098, # GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
0x0390: 0x00a1, # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
|
||||
0x0391: 0x00a4, # GREEK CAPITAL LETTER ALPHA
|
||||
0x0392: 0x00a5, # GREEK CAPITAL LETTER BETA
|
||||
0x0393: 0x00a6, # GREEK CAPITAL LETTER GAMMA
|
||||
0x0394: 0x00a7, # GREEK CAPITAL LETTER DELTA
|
||||
0x0395: 0x00a8, # GREEK CAPITAL LETTER EPSILON
|
||||
0x0396: 0x00a9, # GREEK CAPITAL LETTER ZETA
|
||||
0x0397: 0x00aa, # GREEK CAPITAL LETTER ETA
|
||||
0x0398: 0x00ac, # GREEK CAPITAL LETTER THETA
|
||||
0x0399: 0x00ad, # GREEK CAPITAL LETTER IOTA
|
||||
0x039a: 0x00b5, # GREEK CAPITAL LETTER KAPPA
|
||||
0x039b: 0x00b6, # GREEK CAPITAL LETTER LAMDA
|
||||
0x039c: 0x00b7, # GREEK CAPITAL LETTER MU
|
||||
0x039d: 0x00b8, # GREEK CAPITAL LETTER NU
|
||||
0x039e: 0x00bd, # GREEK CAPITAL LETTER XI
|
||||
0x039f: 0x00be, # GREEK CAPITAL LETTER OMICRON
|
||||
0x03a0: 0x00c6, # GREEK CAPITAL LETTER PI
|
||||
0x03a1: 0x00c7, # GREEK CAPITAL LETTER RHO
|
||||
0x03a3: 0x00cf, # GREEK CAPITAL LETTER SIGMA
|
||||
0x03a4: 0x00d0, # GREEK CAPITAL LETTER TAU
|
||||
0x03a5: 0x00d1, # GREEK CAPITAL LETTER UPSILON
|
||||
0x03a6: 0x00d2, # GREEK CAPITAL LETTER PHI
|
||||
0x03a7: 0x00d3, # GREEK CAPITAL LETTER CHI
|
||||
0x03a8: 0x00d4, # GREEK CAPITAL LETTER PSI
|
||||
0x03a9: 0x00d5, # GREEK CAPITAL LETTER OMEGA
|
||||
0x03aa: 0x0091, # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
0x03ab: 0x0096, # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
0x03ac: 0x009b, # GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
0x03ad: 0x009d, # GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
0x03ae: 0x009e, # GREEK SMALL LETTER ETA WITH TONOS
|
||||
0x03af: 0x009f, # GREEK SMALL LETTER IOTA WITH TONOS
|
||||
0x03b0: 0x00fc, # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
|
||||
0x03b1: 0x00d6, # GREEK SMALL LETTER ALPHA
|
||||
0x03b2: 0x00d7, # GREEK SMALL LETTER BETA
|
||||
0x03b3: 0x00d8, # GREEK SMALL LETTER GAMMA
|
||||
0x03b4: 0x00dd, # GREEK SMALL LETTER DELTA
|
||||
0x03b5: 0x00de, # GREEK SMALL LETTER EPSILON
|
||||
0x03b6: 0x00e0, # GREEK SMALL LETTER ZETA
|
||||
0x03b7: 0x00e1, # GREEK SMALL LETTER ETA
|
||||
0x03b8: 0x00e2, # GREEK SMALL LETTER THETA
|
||||
0x03b9: 0x00e3, # GREEK SMALL LETTER IOTA
|
||||
0x03ba: 0x00e4, # GREEK SMALL LETTER KAPPA
|
||||
0x03bb: 0x00e5, # GREEK SMALL LETTER LAMDA
|
||||
0x03bc: 0x00e6, # GREEK SMALL LETTER MU
|
||||
0x03bd: 0x00e7, # GREEK SMALL LETTER NU
|
||||
0x03be: 0x00e8, # GREEK SMALL LETTER XI
|
||||
0x03bf: 0x00e9, # GREEK SMALL LETTER OMICRON
|
||||
0x03c0: 0x00ea, # GREEK SMALL LETTER PI
|
||||
0x03c1: 0x00eb, # GREEK SMALL LETTER RHO
|
||||
0x03c2: 0x00ed, # GREEK SMALL LETTER FINAL SIGMA
|
||||
0x03c3: 0x00ec, # GREEK SMALL LETTER SIGMA
|
||||
0x03c4: 0x00ee, # GREEK SMALL LETTER TAU
|
||||
0x03c5: 0x00f2, # GREEK SMALL LETTER UPSILON
|
||||
0x03c6: 0x00f3, # GREEK SMALL LETTER PHI
|
||||
0x03c7: 0x00f4, # GREEK SMALL LETTER CHI
|
||||
0x03c8: 0x00f6, # GREEK SMALL LETTER PSI
|
||||
0x03c9: 0x00fa, # GREEK SMALL LETTER OMEGA
|
||||
0x03ca: 0x00a0, # GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
0x03cb: 0x00fb, # GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
0x03cc: 0x00a2, # GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
0x03cd: 0x00a3, # GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
0x03ce: 0x00fd, # GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
0x2015: 0x008e, # HORIZONTAL BAR
|
||||
0x2018: 0x008b, # LEFT SINGLE QUOTATION MARK
|
||||
0x2019: 0x008c, # RIGHT SINGLE QUOTATION MARK
|
||||
0x2500: 0x00c4, # BOX DRAWINGS LIGHT HORIZONTAL
|
||||
0x2502: 0x00b3, # BOX DRAWINGS LIGHT VERTICAL
|
||||
0x250c: 0x00da, # BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
0x2510: 0x00bf, # BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
0x2514: 0x00c0, # BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
0x2518: 0x00d9, # BOX DRAWINGS LIGHT UP AND LEFT
|
||||
0x251c: 0x00c3, # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
0x2524: 0x00b4, # BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
0x252c: 0x00c2, # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
0x2534: 0x00c1, # BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
0x253c: 0x00c5, # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
0x2550: 0x00cd, # BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
0x2551: 0x00ba, # BOX DRAWINGS DOUBLE VERTICAL
|
||||
0x2554: 0x00c9, # BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
0x2557: 0x00bb, # BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
0x255a: 0x00c8, # BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
0x255d: 0x00bc, # BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
0x2560: 0x00cc, # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
0x2563: 0x00b9, # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
0x2566: 0x00cb, # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
0x2569: 0x00ca, # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
0x256c: 0x00ce, # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
0x2580: 0x00df, # UPPER HALF BLOCK
|
||||
0x2584: 0x00dc, # LOWER HALF BLOCK
|
||||
0x2588: 0x00db, # FULL BLOCK
|
||||
0x2591: 0x00b0, # LIGHT SHADE
|
||||
0x2592: 0x00b1, # MEDIUM SHADE
|
||||
0x2593: 0x00b2, # DARK SHADE
|
||||
0x25a0: 0x00fe, # BLACK SQUARE
|
||||
}
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp874.py
Normal file
307
PythonHome/Lib/encodings/cp874.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp874 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP874.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp874',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x04' # 0x04 -> END OF TRANSMISSION
|
||||
u'\x05' # 0x05 -> ENQUIRY
|
||||
u'\x06' # 0x06 -> ACKNOWLEDGE
|
||||
u'\x07' # 0x07 -> BELL
|
||||
u'\x08' # 0x08 -> BACKSPACE
|
||||
u'\t' # 0x09 -> HORIZONTAL TABULATION
|
||||
u'\n' # 0x0A -> LINE FEED
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x14' # 0x14 -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x16' # 0x16 -> SYNCHRONOUS IDLE
|
||||
u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x1a' # 0x1A -> SUBSTITUTE
|
||||
u'\x1b' # 0x1B -> ESCAPE
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u' ' # 0x20 -> SPACE
|
||||
u'!' # 0x21 -> EXCLAMATION MARK
|
||||
u'"' # 0x22 -> QUOTATION MARK
|
||||
u'#' # 0x23 -> NUMBER SIGN
|
||||
u'$' # 0x24 -> DOLLAR SIGN
|
||||
u'%' # 0x25 -> PERCENT SIGN
|
||||
u'&' # 0x26 -> AMPERSAND
|
||||
u"'" # 0x27 -> APOSTROPHE
|
||||
u'(' # 0x28 -> LEFT PARENTHESIS
|
||||
u')' # 0x29 -> RIGHT PARENTHESIS
|
||||
u'*' # 0x2A -> ASTERISK
|
||||
u'+' # 0x2B -> PLUS SIGN
|
||||
u',' # 0x2C -> COMMA
|
||||
u'-' # 0x2D -> HYPHEN-MINUS
|
||||
u'.' # 0x2E -> FULL STOP
|
||||
u'/' # 0x2F -> SOLIDUS
|
||||
u'0' # 0x30 -> DIGIT ZERO
|
||||
u'1' # 0x31 -> DIGIT ONE
|
||||
u'2' # 0x32 -> DIGIT TWO
|
||||
u'3' # 0x33 -> DIGIT THREE
|
||||
u'4' # 0x34 -> DIGIT FOUR
|
||||
u'5' # 0x35 -> DIGIT FIVE
|
||||
u'6' # 0x36 -> DIGIT SIX
|
||||
u'7' # 0x37 -> DIGIT SEVEN
|
||||
u'8' # 0x38 -> DIGIT EIGHT
|
||||
u'9' # 0x39 -> DIGIT NINE
|
||||
u':' # 0x3A -> COLON
|
||||
u';' # 0x3B -> SEMICOLON
|
||||
u'<' # 0x3C -> LESS-THAN SIGN
|
||||
u'=' # 0x3D -> EQUALS SIGN
|
||||
u'>' # 0x3E -> GREATER-THAN SIGN
|
||||
u'?' # 0x3F -> QUESTION MARK
|
||||
u'@' # 0x40 -> COMMERCIAL AT
|
||||
u'A' # 0x41 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0x42 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0x43 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0x44 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0x45 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0x46 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0x47 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0x48 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0x49 -> LATIN CAPITAL LETTER I
|
||||
u'J' # 0x4A -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0x4B -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0x4C -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0x4D -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0x4E -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0x4F -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0x50 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0x52 -> LATIN CAPITAL LETTER R
|
||||
u'S' # 0x53 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0x54 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0x55 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0x56 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0x57 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0x58 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
|
||||
u'[' # 0x5B -> LEFT SQUARE BRACKET
|
||||
u'\\' # 0x5C -> REVERSE SOLIDUS
|
||||
u']' # 0x5D -> RIGHT SQUARE BRACKET
|
||||
u'^' # 0x5E -> CIRCUMFLEX ACCENT
|
||||
u'_' # 0x5F -> LOW LINE
|
||||
u'`' # 0x60 -> GRAVE ACCENT
|
||||
u'a' # 0x61 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x62 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x63 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x64 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x65 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x66 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x67 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x68 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x69 -> LATIN SMALL LETTER I
|
||||
u'j' # 0x6A -> LATIN SMALL LETTER J
|
||||
u'k' # 0x6B -> LATIN SMALL LETTER K
|
||||
u'l' # 0x6C -> LATIN SMALL LETTER L
|
||||
u'm' # 0x6D -> LATIN SMALL LETTER M
|
||||
u'n' # 0x6E -> LATIN SMALL LETTER N
|
||||
u'o' # 0x6F -> LATIN SMALL LETTER O
|
||||
u'p' # 0x70 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x71 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x72 -> LATIN SMALL LETTER R
|
||||
u's' # 0x73 -> LATIN SMALL LETTER S
|
||||
u't' # 0x74 -> LATIN SMALL LETTER T
|
||||
u'u' # 0x75 -> LATIN SMALL LETTER U
|
||||
u'v' # 0x76 -> LATIN SMALL LETTER V
|
||||
u'w' # 0x77 -> LATIN SMALL LETTER W
|
||||
u'x' # 0x78 -> LATIN SMALL LETTER X
|
||||
u'y' # 0x79 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0x7A -> LATIN SMALL LETTER Z
|
||||
u'{' # 0x7B -> LEFT CURLY BRACKET
|
||||
u'|' # 0x7C -> VERTICAL LINE
|
||||
u'}' # 0x7D -> RIGHT CURLY BRACKET
|
||||
u'~' # 0x7E -> TILDE
|
||||
u'\x7f' # 0x7F -> DELETE
|
||||
u'\u20ac' # 0x80 -> EURO SIGN
|
||||
u'\ufffe' # 0x81 -> UNDEFINED
|
||||
u'\ufffe' # 0x82 -> UNDEFINED
|
||||
u'\ufffe' # 0x83 -> UNDEFINED
|
||||
u'\ufffe' # 0x84 -> UNDEFINED
|
||||
u'\u2026' # 0x85 -> HORIZONTAL ELLIPSIS
|
||||
u'\ufffe' # 0x86 -> UNDEFINED
|
||||
u'\ufffe' # 0x87 -> UNDEFINED
|
||||
u'\ufffe' # 0x88 -> UNDEFINED
|
||||
u'\ufffe' # 0x89 -> UNDEFINED
|
||||
u'\ufffe' # 0x8A -> UNDEFINED
|
||||
u'\ufffe' # 0x8B -> UNDEFINED
|
||||
u'\ufffe' # 0x8C -> UNDEFINED
|
||||
u'\ufffe' # 0x8D -> UNDEFINED
|
||||
u'\ufffe' # 0x8E -> UNDEFINED
|
||||
u'\ufffe' # 0x8F -> UNDEFINED
|
||||
u'\ufffe' # 0x90 -> UNDEFINED
|
||||
u'\u2018' # 0x91 -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2019' # 0x92 -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\u201c' # 0x93 -> LEFT DOUBLE QUOTATION MARK
|
||||
u'\u201d' # 0x94 -> RIGHT DOUBLE QUOTATION MARK
|
||||
u'\u2022' # 0x95 -> BULLET
|
||||
u'\u2013' # 0x96 -> EN DASH
|
||||
u'\u2014' # 0x97 -> EM DASH
|
||||
u'\ufffe' # 0x98 -> UNDEFINED
|
||||
u'\ufffe' # 0x99 -> UNDEFINED
|
||||
u'\ufffe' # 0x9A -> UNDEFINED
|
||||
u'\ufffe' # 0x9B -> UNDEFINED
|
||||
u'\ufffe' # 0x9C -> UNDEFINED
|
||||
u'\ufffe' # 0x9D -> UNDEFINED
|
||||
u'\ufffe' # 0x9E -> UNDEFINED
|
||||
u'\ufffe' # 0x9F -> UNDEFINED
|
||||
u'\xa0' # 0xA0 -> NO-BREAK SPACE
|
||||
u'\u0e01' # 0xA1 -> THAI CHARACTER KO KAI
|
||||
u'\u0e02' # 0xA2 -> THAI CHARACTER KHO KHAI
|
||||
u'\u0e03' # 0xA3 -> THAI CHARACTER KHO KHUAT
|
||||
u'\u0e04' # 0xA4 -> THAI CHARACTER KHO KHWAI
|
||||
u'\u0e05' # 0xA5 -> THAI CHARACTER KHO KHON
|
||||
u'\u0e06' # 0xA6 -> THAI CHARACTER KHO RAKHANG
|
||||
u'\u0e07' # 0xA7 -> THAI CHARACTER NGO NGU
|
||||
u'\u0e08' # 0xA8 -> THAI CHARACTER CHO CHAN
|
||||
u'\u0e09' # 0xA9 -> THAI CHARACTER CHO CHING
|
||||
u'\u0e0a' # 0xAA -> THAI CHARACTER CHO CHANG
|
||||
u'\u0e0b' # 0xAB -> THAI CHARACTER SO SO
|
||||
u'\u0e0c' # 0xAC -> THAI CHARACTER CHO CHOE
|
||||
u'\u0e0d' # 0xAD -> THAI CHARACTER YO YING
|
||||
u'\u0e0e' # 0xAE -> THAI CHARACTER DO CHADA
|
||||
u'\u0e0f' # 0xAF -> THAI CHARACTER TO PATAK
|
||||
u'\u0e10' # 0xB0 -> THAI CHARACTER THO THAN
|
||||
u'\u0e11' # 0xB1 -> THAI CHARACTER THO NANGMONTHO
|
||||
u'\u0e12' # 0xB2 -> THAI CHARACTER THO PHUTHAO
|
||||
u'\u0e13' # 0xB3 -> THAI CHARACTER NO NEN
|
||||
u'\u0e14' # 0xB4 -> THAI CHARACTER DO DEK
|
||||
u'\u0e15' # 0xB5 -> THAI CHARACTER TO TAO
|
||||
u'\u0e16' # 0xB6 -> THAI CHARACTER THO THUNG
|
||||
u'\u0e17' # 0xB7 -> THAI CHARACTER THO THAHAN
|
||||
u'\u0e18' # 0xB8 -> THAI CHARACTER THO THONG
|
||||
u'\u0e19' # 0xB9 -> THAI CHARACTER NO NU
|
||||
u'\u0e1a' # 0xBA -> THAI CHARACTER BO BAIMAI
|
||||
u'\u0e1b' # 0xBB -> THAI CHARACTER PO PLA
|
||||
u'\u0e1c' # 0xBC -> THAI CHARACTER PHO PHUNG
|
||||
u'\u0e1d' # 0xBD -> THAI CHARACTER FO FA
|
||||
u'\u0e1e' # 0xBE -> THAI CHARACTER PHO PHAN
|
||||
u'\u0e1f' # 0xBF -> THAI CHARACTER FO FAN
|
||||
u'\u0e20' # 0xC0 -> THAI CHARACTER PHO SAMPHAO
|
||||
u'\u0e21' # 0xC1 -> THAI CHARACTER MO MA
|
||||
u'\u0e22' # 0xC2 -> THAI CHARACTER YO YAK
|
||||
u'\u0e23' # 0xC3 -> THAI CHARACTER RO RUA
|
||||
u'\u0e24' # 0xC4 -> THAI CHARACTER RU
|
||||
u'\u0e25' # 0xC5 -> THAI CHARACTER LO LING
|
||||
u'\u0e26' # 0xC6 -> THAI CHARACTER LU
|
||||
u'\u0e27' # 0xC7 -> THAI CHARACTER WO WAEN
|
||||
u'\u0e28' # 0xC8 -> THAI CHARACTER SO SALA
|
||||
u'\u0e29' # 0xC9 -> THAI CHARACTER SO RUSI
|
||||
u'\u0e2a' # 0xCA -> THAI CHARACTER SO SUA
|
||||
u'\u0e2b' # 0xCB -> THAI CHARACTER HO HIP
|
||||
u'\u0e2c' # 0xCC -> THAI CHARACTER LO CHULA
|
||||
u'\u0e2d' # 0xCD -> THAI CHARACTER O ANG
|
||||
u'\u0e2e' # 0xCE -> THAI CHARACTER HO NOKHUK
|
||||
u'\u0e2f' # 0xCF -> THAI CHARACTER PAIYANNOI
|
||||
u'\u0e30' # 0xD0 -> THAI CHARACTER SARA A
|
||||
u'\u0e31' # 0xD1 -> THAI CHARACTER MAI HAN-AKAT
|
||||
u'\u0e32' # 0xD2 -> THAI CHARACTER SARA AA
|
||||
u'\u0e33' # 0xD3 -> THAI CHARACTER SARA AM
|
||||
u'\u0e34' # 0xD4 -> THAI CHARACTER SARA I
|
||||
u'\u0e35' # 0xD5 -> THAI CHARACTER SARA II
|
||||
u'\u0e36' # 0xD6 -> THAI CHARACTER SARA UE
|
||||
u'\u0e37' # 0xD7 -> THAI CHARACTER SARA UEE
|
||||
u'\u0e38' # 0xD8 -> THAI CHARACTER SARA U
|
||||
u'\u0e39' # 0xD9 -> THAI CHARACTER SARA UU
|
||||
u'\u0e3a' # 0xDA -> THAI CHARACTER PHINTHU
|
||||
u'\ufffe' # 0xDB -> UNDEFINED
|
||||
u'\ufffe' # 0xDC -> UNDEFINED
|
||||
u'\ufffe' # 0xDD -> UNDEFINED
|
||||
u'\ufffe' # 0xDE -> UNDEFINED
|
||||
u'\u0e3f' # 0xDF -> THAI CURRENCY SYMBOL BAHT
|
||||
u'\u0e40' # 0xE0 -> THAI CHARACTER SARA E
|
||||
u'\u0e41' # 0xE1 -> THAI CHARACTER SARA AE
|
||||
u'\u0e42' # 0xE2 -> THAI CHARACTER SARA O
|
||||
u'\u0e43' # 0xE3 -> THAI CHARACTER SARA AI MAIMUAN
|
||||
u'\u0e44' # 0xE4 -> THAI CHARACTER SARA AI MAIMALAI
|
||||
u'\u0e45' # 0xE5 -> THAI CHARACTER LAKKHANGYAO
|
||||
u'\u0e46' # 0xE6 -> THAI CHARACTER MAIYAMOK
|
||||
u'\u0e47' # 0xE7 -> THAI CHARACTER MAITAIKHU
|
||||
u'\u0e48' # 0xE8 -> THAI CHARACTER MAI EK
|
||||
u'\u0e49' # 0xE9 -> THAI CHARACTER MAI THO
|
||||
u'\u0e4a' # 0xEA -> THAI CHARACTER MAI TRI
|
||||
u'\u0e4b' # 0xEB -> THAI CHARACTER MAI CHATTAWA
|
||||
u'\u0e4c' # 0xEC -> THAI CHARACTER THANTHAKHAT
|
||||
u'\u0e4d' # 0xED -> THAI CHARACTER NIKHAHIT
|
||||
u'\u0e4e' # 0xEE -> THAI CHARACTER YAMAKKAN
|
||||
u'\u0e4f' # 0xEF -> THAI CHARACTER FONGMAN
|
||||
u'\u0e50' # 0xF0 -> THAI DIGIT ZERO
|
||||
u'\u0e51' # 0xF1 -> THAI DIGIT ONE
|
||||
u'\u0e52' # 0xF2 -> THAI DIGIT TWO
|
||||
u'\u0e53' # 0xF3 -> THAI DIGIT THREE
|
||||
u'\u0e54' # 0xF4 -> THAI DIGIT FOUR
|
||||
u'\u0e55' # 0xF5 -> THAI DIGIT FIVE
|
||||
u'\u0e56' # 0xF6 -> THAI DIGIT SIX
|
||||
u'\u0e57' # 0xF7 -> THAI DIGIT SEVEN
|
||||
u'\u0e58' # 0xF8 -> THAI DIGIT EIGHT
|
||||
u'\u0e59' # 0xF9 -> THAI DIGIT NINE
|
||||
u'\u0e5a' # 0xFA -> THAI CHARACTER ANGKHANKHU
|
||||
u'\u0e5b' # 0xFB -> THAI CHARACTER KHOMUT
|
||||
u'\ufffe' # 0xFC -> UNDEFINED
|
||||
u'\ufffe' # 0xFD -> UNDEFINED
|
||||
u'\ufffe' # 0xFE -> UNDEFINED
|
||||
u'\ufffe' # 0xFF -> UNDEFINED
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
307
PythonHome/Lib/encodings/cp875.py
Normal file
307
PythonHome/Lib/encodings/cp875.py
Normal file
@@ -0,0 +1,307 @@
|
||||
""" Python Character Mapping Codec cp875 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP875.TXT' with gencodec.py.
|
||||
|
||||
"""#"
|
||||
|
||||
import codecs
|
||||
|
||||
### Codec APIs
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
|
||||
def encode(self,input,errors='strict'):
|
||||
return codecs.charmap_encode(input,errors,encoding_table)
|
||||
|
||||
def decode(self,input,errors='strict'):
|
||||
return codecs.charmap_decode(input,errors,decoding_table)
|
||||
|
||||
class IncrementalEncoder(codecs.IncrementalEncoder):
|
||||
def encode(self, input, final=False):
|
||||
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
|
||||
|
||||
class IncrementalDecoder(codecs.IncrementalDecoder):
|
||||
def decode(self, input, final=False):
|
||||
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
|
||||
|
||||
class StreamWriter(Codec,codecs.StreamWriter):
|
||||
pass
|
||||
|
||||
class StreamReader(Codec,codecs.StreamReader):
|
||||
pass
|
||||
|
||||
### encodings module API
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp875',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
|
||||
|
||||
### Decoding Table
|
||||
|
||||
decoding_table = (
|
||||
u'\x00' # 0x00 -> NULL
|
||||
u'\x01' # 0x01 -> START OF HEADING
|
||||
u'\x02' # 0x02 -> START OF TEXT
|
||||
u'\x03' # 0x03 -> END OF TEXT
|
||||
u'\x9c' # 0x04 -> CONTROL
|
||||
u'\t' # 0x05 -> HORIZONTAL TABULATION
|
||||
u'\x86' # 0x06 -> CONTROL
|
||||
u'\x7f' # 0x07 -> DELETE
|
||||
u'\x97' # 0x08 -> CONTROL
|
||||
u'\x8d' # 0x09 -> CONTROL
|
||||
u'\x8e' # 0x0A -> CONTROL
|
||||
u'\x0b' # 0x0B -> VERTICAL TABULATION
|
||||
u'\x0c' # 0x0C -> FORM FEED
|
||||
u'\r' # 0x0D -> CARRIAGE RETURN
|
||||
u'\x0e' # 0x0E -> SHIFT OUT
|
||||
u'\x0f' # 0x0F -> SHIFT IN
|
||||
u'\x10' # 0x10 -> DATA LINK ESCAPE
|
||||
u'\x11' # 0x11 -> DEVICE CONTROL ONE
|
||||
u'\x12' # 0x12 -> DEVICE CONTROL TWO
|
||||
u'\x13' # 0x13 -> DEVICE CONTROL THREE
|
||||
u'\x9d' # 0x14 -> CONTROL
|
||||
u'\x85' # 0x15 -> CONTROL
|
||||
u'\x08' # 0x16 -> BACKSPACE
|
||||
u'\x87' # 0x17 -> CONTROL
|
||||
u'\x18' # 0x18 -> CANCEL
|
||||
u'\x19' # 0x19 -> END OF MEDIUM
|
||||
u'\x92' # 0x1A -> CONTROL
|
||||
u'\x8f' # 0x1B -> CONTROL
|
||||
u'\x1c' # 0x1C -> FILE SEPARATOR
|
||||
u'\x1d' # 0x1D -> GROUP SEPARATOR
|
||||
u'\x1e' # 0x1E -> RECORD SEPARATOR
|
||||
u'\x1f' # 0x1F -> UNIT SEPARATOR
|
||||
u'\x80' # 0x20 -> CONTROL
|
||||
u'\x81' # 0x21 -> CONTROL
|
||||
u'\x82' # 0x22 -> CONTROL
|
||||
u'\x83' # 0x23 -> CONTROL
|
||||
u'\x84' # 0x24 -> CONTROL
|
||||
u'\n' # 0x25 -> LINE FEED
|
||||
u'\x17' # 0x26 -> END OF TRANSMISSION BLOCK
|
||||
u'\x1b' # 0x27 -> ESCAPE
|
||||
u'\x88' # 0x28 -> CONTROL
|
||||
u'\x89' # 0x29 -> CONTROL
|
||||
u'\x8a' # 0x2A -> CONTROL
|
||||
u'\x8b' # 0x2B -> CONTROL
|
||||
u'\x8c' # 0x2C -> CONTROL
|
||||
u'\x05' # 0x2D -> ENQUIRY
|
||||
u'\x06' # 0x2E -> ACKNOWLEDGE
|
||||
u'\x07' # 0x2F -> BELL
|
||||
u'\x90' # 0x30 -> CONTROL
|
||||
u'\x91' # 0x31 -> CONTROL
|
||||
u'\x16' # 0x32 -> SYNCHRONOUS IDLE
|
||||
u'\x93' # 0x33 -> CONTROL
|
||||
u'\x94' # 0x34 -> CONTROL
|
||||
u'\x95' # 0x35 -> CONTROL
|
||||
u'\x96' # 0x36 -> CONTROL
|
||||
u'\x04' # 0x37 -> END OF TRANSMISSION
|
||||
u'\x98' # 0x38 -> CONTROL
|
||||
u'\x99' # 0x39 -> CONTROL
|
||||
u'\x9a' # 0x3A -> CONTROL
|
||||
u'\x9b' # 0x3B -> CONTROL
|
||||
u'\x14' # 0x3C -> DEVICE CONTROL FOUR
|
||||
u'\x15' # 0x3D -> NEGATIVE ACKNOWLEDGE
|
||||
u'\x9e' # 0x3E -> CONTROL
|
||||
u'\x1a' # 0x3F -> SUBSTITUTE
|
||||
u' ' # 0x40 -> SPACE
|
||||
u'\u0391' # 0x41 -> GREEK CAPITAL LETTER ALPHA
|
||||
u'\u0392' # 0x42 -> GREEK CAPITAL LETTER BETA
|
||||
u'\u0393' # 0x43 -> GREEK CAPITAL LETTER GAMMA
|
||||
u'\u0394' # 0x44 -> GREEK CAPITAL LETTER DELTA
|
||||
u'\u0395' # 0x45 -> GREEK CAPITAL LETTER EPSILON
|
||||
u'\u0396' # 0x46 -> GREEK CAPITAL LETTER ZETA
|
||||
u'\u0397' # 0x47 -> GREEK CAPITAL LETTER ETA
|
||||
u'\u0398' # 0x48 -> GREEK CAPITAL LETTER THETA
|
||||
u'\u0399' # 0x49 -> GREEK CAPITAL LETTER IOTA
|
||||
u'[' # 0x4A -> LEFT SQUARE BRACKET
|
||||
u'.' # 0x4B -> FULL STOP
|
||||
u'<' # 0x4C -> LESS-THAN SIGN
|
||||
u'(' # 0x4D -> LEFT PARENTHESIS
|
||||
u'+' # 0x4E -> PLUS SIGN
|
||||
u'!' # 0x4F -> EXCLAMATION MARK
|
||||
u'&' # 0x50 -> AMPERSAND
|
||||
u'\u039a' # 0x51 -> GREEK CAPITAL LETTER KAPPA
|
||||
u'\u039b' # 0x52 -> GREEK CAPITAL LETTER LAMDA
|
||||
u'\u039c' # 0x53 -> GREEK CAPITAL LETTER MU
|
||||
u'\u039d' # 0x54 -> GREEK CAPITAL LETTER NU
|
||||
u'\u039e' # 0x55 -> GREEK CAPITAL LETTER XI
|
||||
u'\u039f' # 0x56 -> GREEK CAPITAL LETTER OMICRON
|
||||
u'\u03a0' # 0x57 -> GREEK CAPITAL LETTER PI
|
||||
u'\u03a1' # 0x58 -> GREEK CAPITAL LETTER RHO
|
||||
u'\u03a3' # 0x59 -> GREEK CAPITAL LETTER SIGMA
|
||||
u']' # 0x5A -> RIGHT SQUARE BRACKET
|
||||
u'$' # 0x5B -> DOLLAR SIGN
|
||||
u'*' # 0x5C -> ASTERISK
|
||||
u')' # 0x5D -> RIGHT PARENTHESIS
|
||||
u';' # 0x5E -> SEMICOLON
|
||||
u'^' # 0x5F -> CIRCUMFLEX ACCENT
|
||||
u'-' # 0x60 -> HYPHEN-MINUS
|
||||
u'/' # 0x61 -> SOLIDUS
|
||||
u'\u03a4' # 0x62 -> GREEK CAPITAL LETTER TAU
|
||||
u'\u03a5' # 0x63 -> GREEK CAPITAL LETTER UPSILON
|
||||
u'\u03a6' # 0x64 -> GREEK CAPITAL LETTER PHI
|
||||
u'\u03a7' # 0x65 -> GREEK CAPITAL LETTER CHI
|
||||
u'\u03a8' # 0x66 -> GREEK CAPITAL LETTER PSI
|
||||
u'\u03a9' # 0x67 -> GREEK CAPITAL LETTER OMEGA
|
||||
u'\u03aa' # 0x68 -> GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u03ab' # 0x69 -> GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
|
||||
u'|' # 0x6A -> VERTICAL LINE
|
||||
u',' # 0x6B -> COMMA
|
||||
u'%' # 0x6C -> PERCENT SIGN
|
||||
u'_' # 0x6D -> LOW LINE
|
||||
u'>' # 0x6E -> GREATER-THAN SIGN
|
||||
u'?' # 0x6F -> QUESTION MARK
|
||||
u'\xa8' # 0x70 -> DIAERESIS
|
||||
u'\u0386' # 0x71 -> GREEK CAPITAL LETTER ALPHA WITH TONOS
|
||||
u'\u0388' # 0x72 -> GREEK CAPITAL LETTER EPSILON WITH TONOS
|
||||
u'\u0389' # 0x73 -> GREEK CAPITAL LETTER ETA WITH TONOS
|
||||
u'\xa0' # 0x74 -> NO-BREAK SPACE
|
||||
u'\u038a' # 0x75 -> GREEK CAPITAL LETTER IOTA WITH TONOS
|
||||
u'\u038c' # 0x76 -> GREEK CAPITAL LETTER OMICRON WITH TONOS
|
||||
u'\u038e' # 0x77 -> GREEK CAPITAL LETTER UPSILON WITH TONOS
|
||||
u'\u038f' # 0x78 -> GREEK CAPITAL LETTER OMEGA WITH TONOS
|
||||
u'`' # 0x79 -> GRAVE ACCENT
|
||||
u':' # 0x7A -> COLON
|
||||
u'#' # 0x7B -> NUMBER SIGN
|
||||
u'@' # 0x7C -> COMMERCIAL AT
|
||||
u"'" # 0x7D -> APOSTROPHE
|
||||
u'=' # 0x7E -> EQUALS SIGN
|
||||
u'"' # 0x7F -> QUOTATION MARK
|
||||
u'\u0385' # 0x80 -> GREEK DIALYTIKA TONOS
|
||||
u'a' # 0x81 -> LATIN SMALL LETTER A
|
||||
u'b' # 0x82 -> LATIN SMALL LETTER B
|
||||
u'c' # 0x83 -> LATIN SMALL LETTER C
|
||||
u'd' # 0x84 -> LATIN SMALL LETTER D
|
||||
u'e' # 0x85 -> LATIN SMALL LETTER E
|
||||
u'f' # 0x86 -> LATIN SMALL LETTER F
|
||||
u'g' # 0x87 -> LATIN SMALL LETTER G
|
||||
u'h' # 0x88 -> LATIN SMALL LETTER H
|
||||
u'i' # 0x89 -> LATIN SMALL LETTER I
|
||||
u'\u03b1' # 0x8A -> GREEK SMALL LETTER ALPHA
|
||||
u'\u03b2' # 0x8B -> GREEK SMALL LETTER BETA
|
||||
u'\u03b3' # 0x8C -> GREEK SMALL LETTER GAMMA
|
||||
u'\u03b4' # 0x8D -> GREEK SMALL LETTER DELTA
|
||||
u'\u03b5' # 0x8E -> GREEK SMALL LETTER EPSILON
|
||||
u'\u03b6' # 0x8F -> GREEK SMALL LETTER ZETA
|
||||
u'\xb0' # 0x90 -> DEGREE SIGN
|
||||
u'j' # 0x91 -> LATIN SMALL LETTER J
|
||||
u'k' # 0x92 -> LATIN SMALL LETTER K
|
||||
u'l' # 0x93 -> LATIN SMALL LETTER L
|
||||
u'm' # 0x94 -> LATIN SMALL LETTER M
|
||||
u'n' # 0x95 -> LATIN SMALL LETTER N
|
||||
u'o' # 0x96 -> LATIN SMALL LETTER O
|
||||
u'p' # 0x97 -> LATIN SMALL LETTER P
|
||||
u'q' # 0x98 -> LATIN SMALL LETTER Q
|
||||
u'r' # 0x99 -> LATIN SMALL LETTER R
|
||||
u'\u03b7' # 0x9A -> GREEK SMALL LETTER ETA
|
||||
u'\u03b8' # 0x9B -> GREEK SMALL LETTER THETA
|
||||
u'\u03b9' # 0x9C -> GREEK SMALL LETTER IOTA
|
||||
u'\u03ba' # 0x9D -> GREEK SMALL LETTER KAPPA
|
||||
u'\u03bb' # 0x9E -> GREEK SMALL LETTER LAMDA
|
||||
u'\u03bc' # 0x9F -> GREEK SMALL LETTER MU
|
||||
u'\xb4' # 0xA0 -> ACUTE ACCENT
|
||||
u'~' # 0xA1 -> TILDE
|
||||
u's' # 0xA2 -> LATIN SMALL LETTER S
|
||||
u't' # 0xA3 -> LATIN SMALL LETTER T
|
||||
u'u' # 0xA4 -> LATIN SMALL LETTER U
|
||||
u'v' # 0xA5 -> LATIN SMALL LETTER V
|
||||
u'w' # 0xA6 -> LATIN SMALL LETTER W
|
||||
u'x' # 0xA7 -> LATIN SMALL LETTER X
|
||||
u'y' # 0xA8 -> LATIN SMALL LETTER Y
|
||||
u'z' # 0xA9 -> LATIN SMALL LETTER Z
|
||||
u'\u03bd' # 0xAA -> GREEK SMALL LETTER NU
|
||||
u'\u03be' # 0xAB -> GREEK SMALL LETTER XI
|
||||
u'\u03bf' # 0xAC -> GREEK SMALL LETTER OMICRON
|
||||
u'\u03c0' # 0xAD -> GREEK SMALL LETTER PI
|
||||
u'\u03c1' # 0xAE -> GREEK SMALL LETTER RHO
|
||||
u'\u03c3' # 0xAF -> GREEK SMALL LETTER SIGMA
|
||||
u'\xa3' # 0xB0 -> POUND SIGN
|
||||
u'\u03ac' # 0xB1 -> GREEK SMALL LETTER ALPHA WITH TONOS
|
||||
u'\u03ad' # 0xB2 -> GREEK SMALL LETTER EPSILON WITH TONOS
|
||||
u'\u03ae' # 0xB3 -> GREEK SMALL LETTER ETA WITH TONOS
|
||||
u'\u03ca' # 0xB4 -> GREEK SMALL LETTER IOTA WITH DIALYTIKA
|
||||
u'\u03af' # 0xB5 -> GREEK SMALL LETTER IOTA WITH TONOS
|
||||
u'\u03cc' # 0xB6 -> GREEK SMALL LETTER OMICRON WITH TONOS
|
||||
u'\u03cd' # 0xB7 -> GREEK SMALL LETTER UPSILON WITH TONOS
|
||||
u'\u03cb' # 0xB8 -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA
|
||||
u'\u03ce' # 0xB9 -> GREEK SMALL LETTER OMEGA WITH TONOS
|
||||
u'\u03c2' # 0xBA -> GREEK SMALL LETTER FINAL SIGMA
|
||||
u'\u03c4' # 0xBB -> GREEK SMALL LETTER TAU
|
||||
u'\u03c5' # 0xBC -> GREEK SMALL LETTER UPSILON
|
||||
u'\u03c6' # 0xBD -> GREEK SMALL LETTER PHI
|
||||
u'\u03c7' # 0xBE -> GREEK SMALL LETTER CHI
|
||||
u'\u03c8' # 0xBF -> GREEK SMALL LETTER PSI
|
||||
u'{' # 0xC0 -> LEFT CURLY BRACKET
|
||||
u'A' # 0xC1 -> LATIN CAPITAL LETTER A
|
||||
u'B' # 0xC2 -> LATIN CAPITAL LETTER B
|
||||
u'C' # 0xC3 -> LATIN CAPITAL LETTER C
|
||||
u'D' # 0xC4 -> LATIN CAPITAL LETTER D
|
||||
u'E' # 0xC5 -> LATIN CAPITAL LETTER E
|
||||
u'F' # 0xC6 -> LATIN CAPITAL LETTER F
|
||||
u'G' # 0xC7 -> LATIN CAPITAL LETTER G
|
||||
u'H' # 0xC8 -> LATIN CAPITAL LETTER H
|
||||
u'I' # 0xC9 -> LATIN CAPITAL LETTER I
|
||||
u'\xad' # 0xCA -> SOFT HYPHEN
|
||||
u'\u03c9' # 0xCB -> GREEK SMALL LETTER OMEGA
|
||||
u'\u0390' # 0xCC -> GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
|
||||
u'\u03b0' # 0xCD -> GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
|
||||
u'\u2018' # 0xCE -> LEFT SINGLE QUOTATION MARK
|
||||
u'\u2015' # 0xCF -> HORIZONTAL BAR
|
||||
u'}' # 0xD0 -> RIGHT CURLY BRACKET
|
||||
u'J' # 0xD1 -> LATIN CAPITAL LETTER J
|
||||
u'K' # 0xD2 -> LATIN CAPITAL LETTER K
|
||||
u'L' # 0xD3 -> LATIN CAPITAL LETTER L
|
||||
u'M' # 0xD4 -> LATIN CAPITAL LETTER M
|
||||
u'N' # 0xD5 -> LATIN CAPITAL LETTER N
|
||||
u'O' # 0xD6 -> LATIN CAPITAL LETTER O
|
||||
u'P' # 0xD7 -> LATIN CAPITAL LETTER P
|
||||
u'Q' # 0xD8 -> LATIN CAPITAL LETTER Q
|
||||
u'R' # 0xD9 -> LATIN CAPITAL LETTER R
|
||||
u'\xb1' # 0xDA -> PLUS-MINUS SIGN
|
||||
u'\xbd' # 0xDB -> VULGAR FRACTION ONE HALF
|
||||
u'\x1a' # 0xDC -> SUBSTITUTE
|
||||
u'\u0387' # 0xDD -> GREEK ANO TELEIA
|
||||
u'\u2019' # 0xDE -> RIGHT SINGLE QUOTATION MARK
|
||||
u'\xa6' # 0xDF -> BROKEN BAR
|
||||
u'\\' # 0xE0 -> REVERSE SOLIDUS
|
||||
u'\x1a' # 0xE1 -> SUBSTITUTE
|
||||
u'S' # 0xE2 -> LATIN CAPITAL LETTER S
|
||||
u'T' # 0xE3 -> LATIN CAPITAL LETTER T
|
||||
u'U' # 0xE4 -> LATIN CAPITAL LETTER U
|
||||
u'V' # 0xE5 -> LATIN CAPITAL LETTER V
|
||||
u'W' # 0xE6 -> LATIN CAPITAL LETTER W
|
||||
u'X' # 0xE7 -> LATIN CAPITAL LETTER X
|
||||
u'Y' # 0xE8 -> LATIN CAPITAL LETTER Y
|
||||
u'Z' # 0xE9 -> LATIN CAPITAL LETTER Z
|
||||
u'\xb2' # 0xEA -> SUPERSCRIPT TWO
|
||||
u'\xa7' # 0xEB -> SECTION SIGN
|
||||
u'\x1a' # 0xEC -> SUBSTITUTE
|
||||
u'\x1a' # 0xED -> SUBSTITUTE
|
||||
u'\xab' # 0xEE -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\xac' # 0xEF -> NOT SIGN
|
||||
u'0' # 0xF0 -> DIGIT ZERO
|
||||
u'1' # 0xF1 -> DIGIT ONE
|
||||
u'2' # 0xF2 -> DIGIT TWO
|
||||
u'3' # 0xF3 -> DIGIT THREE
|
||||
u'4' # 0xF4 -> DIGIT FOUR
|
||||
u'5' # 0xF5 -> DIGIT FIVE
|
||||
u'6' # 0xF6 -> DIGIT SIX
|
||||
u'7' # 0xF7 -> DIGIT SEVEN
|
||||
u'8' # 0xF8 -> DIGIT EIGHT
|
||||
u'9' # 0xF9 -> DIGIT NINE
|
||||
u'\xb3' # 0xFA -> SUPERSCRIPT THREE
|
||||
u'\xa9' # 0xFB -> COPYRIGHT SIGN
|
||||
u'\x1a' # 0xFC -> SUBSTITUTE
|
||||
u'\x1a' # 0xFD -> SUBSTITUTE
|
||||
u'\xbb' # 0xFE -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
u'\x9f' # 0xFF -> CONTROL
|
||||
)
|
||||
|
||||
### Encoding table
|
||||
encoding_table=codecs.charmap_build(decoding_table)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/cp932.py
Normal file
39
PythonHome/Lib/encodings/cp932.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# cp932.py: Python Unicode Codec for CP932
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_jp, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_jp.getcodec('cp932')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp932',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/cp949.py
Normal file
39
PythonHome/Lib/encodings/cp949.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# cp949.py: Python Unicode Codec for CP949
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_kr, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_kr.getcodec('cp949')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp949',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/cp950.py
Normal file
39
PythonHome/Lib/encodings/cp950.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# cp950.py: Python Unicode Codec for CP950
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_tw, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_tw.getcodec('cp950')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='cp950',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/euc_jis_2004.py
Normal file
39
PythonHome/Lib/encodings/euc_jis_2004.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# euc_jis_2004.py: Python Unicode Codec for EUC_JIS_2004
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_jp, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_jp.getcodec('euc_jis_2004')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='euc_jis_2004',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/euc_jisx0213.py
Normal file
39
PythonHome/Lib/encodings/euc_jisx0213.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# euc_jisx0213.py: Python Unicode Codec for EUC_JISX0213
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_jp, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_jp.getcodec('euc_jisx0213')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='euc_jisx0213',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/euc_jp.py
Normal file
39
PythonHome/Lib/encodings/euc_jp.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# euc_jp.py: Python Unicode Codec for EUC_JP
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_jp, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_jp.getcodec('euc_jp')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='euc_jp',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
39
PythonHome/Lib/encodings/euc_kr.py
Normal file
39
PythonHome/Lib/encodings/euc_kr.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# euc_kr.py: Python Unicode Codec for EUC_KR
|
||||
#
|
||||
# Written by Hye-Shik Chang <perky@FreeBSD.org>
|
||||
#
|
||||
|
||||
import _codecs_kr, codecs
|
||||
import _multibytecodec as mbc
|
||||
|
||||
codec = _codecs_kr.getcodec('euc_kr')
|
||||
|
||||
class Codec(codecs.Codec):
|
||||
encode = codec.encode
|
||||
decode = codec.decode
|
||||
|
||||
class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,
|
||||
codecs.IncrementalEncoder):
|
||||
codec = codec
|
||||
|
||||
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,
|
||||
codecs.IncrementalDecoder):
|
||||
codec = codec
|
||||
|
||||
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):
|
||||
codec = codec
|
||||
|
||||
class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
|
||||
codec = codec
|
||||
|
||||
def getregentry():
|
||||
return codecs.CodecInfo(
|
||||
name='euc_kr',
|
||||
encode=Codec().encode,
|
||||
decode=Codec().decode,
|
||||
incrementalencoder=IncrementalEncoder,
|
||||
incrementaldecoder=IncrementalDecoder,
|
||||
streamreader=StreamReader,
|
||||
streamwriter=StreamWriter,
|
||||
)
|
||||
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user