Skip to content

Instantly share code, notes, and snippets.

@eight04
Created June 11, 2018 07:59
Show Gist options
  • Save eight04/3de731b7300a6b5036e082f801e2e3e9 to your computer and use it in GitHub Desktop.
Save eight04/3de731b7300a6b5036e082f801e2e3e9 to your computer and use it in GitHub Desktop.
Big5-UAO containing control characters
('\x9b', '@', '妿')
('\x9b', 'A', '槡')
('\x9b', 'B', '樃')
('\x9b', 'C', '樚')
('\x9b', 'D', '樜')
('\x9b', 'E', '樬')
('\x9b', 'F', '樭')
('\x9b', 'G', '樳')
('\x9b', 'H', '橃')
('\x9b', 'I', '橅')
('\x9b', 'J', '橌')
('\x9b', 'K', '橓')
('\x9b', 'L', '橗')
('\x9b', 'M', '橣')
('\x9b', 'N', '橴')
('\x9b', 'O', '檂')
('\x9b', 'P', '檊')
('\x9b', 'Q', '檏')
('\x9b', 'R', '檙')
('\x9b', 'S', '檧')
('\x9b', 'T', '檱')
('\x9b', 'U', '檵')
('\x9b', 'V', '檾')
('\x9b', 'W', '櫉')
('\x9b', 'X', '櫔')
('\x9b', 'Y', '櫘')
('\x9b', 'Z', '櫶')
('\x9b', '[', '歗')
('\x9b', '\\', '歺')
('\x9b', ']', '毜')
('\x9b', '^', '氜')
('\x9b', '_', '氱')
('\x9b', '`', '汘')
('\x9b', 'a', '汮')
('\x9b', 'b', '汵')
('\x9b', 'c', '汿')
('\x9b', 'd', '沯')
('\x9b', 'e', '泋')
('\x9b', 'f', '泟')
('\x9b', 'g', '泿')
('\x9b', 'h', '洂')
('\x9b', 'i', '洅')
('\x9b', 'j', '洆')
('\x9b', 'k', '洦')
('\x9b', 'l', '浗')
('\x9b', 'm', '浛')
('\x9b', 'n', '浱')
('\x9b', 'o', '涁')
('\x9b', 'p', '涏')
('\x9b', 'q', '涥')
('\x9b', 'r', '涱')
('\x9b', 's', '淾')
('\x9b', 't', '渂')
('\x9b', 'u', '渄')
('\x9b', 'v', '渏')
('\x9b', 'w', '渘')
('\x9b', 'x', '渪')
('\x9b', 'y', '湐')
('\x9b', 'z', '湙')
('\x9b', '{', '溚')
('\x9b', '|', '溵')
('\x9b', '}', '溸')
('\x9b', '~', '滛')
('\x9b', '¡', '滺')
('\x9b', '¢', '漄')
('\x9b', '£', '漋')
('\x9b', '¤', '漌')
('\x9b', '¥', '漖')
('\x9b', '¦', '漗')
('\x9b', '§', '漴')
('\x9b', '¨', '漽')
('\x9b', '©', '潖')
('\x9b', 'ª', '潹')
('\x9b', '«', '澊')
('\x9b', '¬', '澝')
('\x9b', '\xad', '澟')
('\x9b', '®', '澻')
('\x9b', '¯', '澾')
('\x9b', '°', '濓')
('\x9b', '±', '濙')
('\x9b', '²', '濸')
('\x9b', '³', '瀃')
('\x9b', '´', '灋')
('\x9b', 'µ', '灍')
('\x9b', '¶', '灐')
('\x9b', '·', '灔')
('\x9b', '¸', '灜')
('\x9b', '¹', '灧')
('\x9b', 'º', '灷')
('\x9b', '»', '灹')
('\x9b', '¼', '炋')
('\x9b', '½', '炏')
('\x9b', '¾', '炠')
('\x9b', '¿', '炣')
('\x9b', 'À', '炥')
('\x9b', 'Á', '炦')
('\x9b', 'Â', '炧')
('\x9b', 'Ã', '烄')
('\x9b', 'Ä', '烌')
('\x9b', 'Å', '烐')
('\x9b', 'Æ', '烖')
('\x9b', 'Ç', 'ɪ')
('\x9b', 'È', 'ɛ')
('\x9b', 'É', 'æ')
('\x9b', 'Ê', 'ʌ')
('\x9b', 'Ë', 'ɑ')
('\x9b', 'Ì', 'ɔ')
('\x9b', 'Í', 'ʊ')
('\x9b', 'Î', 'ɝ')
('\x9b', 'Ï', 'ə')
('\x9b', 'Ð', 'ɚ')
('\x9b', 'Ñ', 'ɜ')
('\x9b', 'Ò', 'ɡ')
('\x9b', 'Ó', 'ṃ')
('\x9b', 'Ô', 'ṉ')
('\x9b', 'Õ', 'Ŋ')
('\x9b', 'Ö', 'ḻ')
('\x9b', '×', 'ɵ')
('\x9b', 'Ø', 'ð')
('\x9b', 'Ù', 'ʃ')
('\x9b', 'Ú', 'ʒ')
('\x9b', 'Û', 'ʧ')
('\x9b', 'Ü', 'ʤ')
('\x9b', 'Ý', 'ã')
('\x9b', 'Þ', '\ueb86')
('\x9b', 'ß', '\ueb87')
('\x9b', 'à', 'ɯ')
('\x9b', 'á', 'ɸ')
('\x9b', 'â', 'ʇ')
('\x9b', 'ã', '\ueb8b')
('\x9b', 'ä', 'Ç')
('\x9b', 'å', 'œ')
('\x9b', 'æ', 'ɒ')
('\x9b', 'ç', 'g')
('\x9b', 'è', 'ˋ')
('\x9b', 'é', 'ˏ')
('\x9b', 'ê', 'a')
('\x9b', 'ë', 'b')
('\x9b', 'ì', 'd')
('\x9b', 'í', 'e')
('\x9b', 'î', 'f')
('\x9b', 'ï', 'h')
('\x9b', 'ð', 'i')
('\x9b', 'ñ', 'j')
('\x9b', 'ò', 'k')
('\x9b', 'ó', 'l')
('\x9b', 'ô', 'm')
('\x9b', 'õ', 'n')
('\x9b', 'ö', 'o')
('\x9b', '÷', 'p')
('\x9b', 'ø', 'r')
('\x9b', 'ù', 's')
('\x9b', 'ú', 't')
('\x9b', 'û', 'u')
('\x9b', 'ü', 'v')
('\x9b', 'ý', 'w')
('\x9b', 'þ', 'z')
('\x9d', '@', '☎')
('\x9d', 'A', '→')
('\x9d', 'B', '←')
('\x9d', 'C', '↑')
('\x9d', 'D', '↓')
('\x9d', 'E', '⇨')
('\x9d', 'F', '⇦')
('\x9d', 'G', '⇧')
('\x9d', 'H', '⇩')
('\x9d', 'I', '⇨')
('\x9d', 'J', '⇦')
('\x9d', 'K', '⇧')
('\x9d', 'L', '⇩')
('\x9d', 'M', '☞')
('\x9d', 'N', '☜')
('\x9d', 'O', '☛')
('\x9d', 'P', '☟')
('\x9d', 'Q', '〖')
('\x9d', 'R', '〗')
('\x9d', 'S', '○')
('\x9d', 'T', '✕')
('\x9d', 'U', '✓')
('\x9d', 'V', '囻')
('\x9d', 'W', '☽')
('\x9d', 'X', '夝')
('\x9d', 'Y', '晍')
('\x9d', 'Z', '爥')
('\x9d', '[', '✩')
('\x9d', '\\', '✡')
('\x9d', ']', '☺')
('\x9d', '^', '☹')
('\x9d', '_', '\uec63')
('\x9d', '`', '\uec64')
('\x9d', 'a', '\uec65')
('\x9d', 'b', '\uec66')
('\x9d', 'c', '\uec67')
('\x9d', 'd', '屸')
('\x9d', 'e', '♬')
('\x9d', 'f', '♪')
('\x9d', 'g', '嫑')
('\x9d', 'h', '宷')
('\x9d', 'i', '峼')
('\x9d', 'j', '\uec6e')
('\x9d', 'k', '✉')
('\x9d', 'l', '✂')
('\x9d', 'm', '\uec71')
('\x9d', 'n', '\uec72')
('\x9d', 'o', '\uec73')
('\x9d', 'p', '\uec74')
('\x9d', 'q', '峕')
('\x9d', 'r', '杮')
('\x9d', 's', '瑡')
('\x9d', 't', '璝')
('\x9d', 'u', '罓')
('\x9d', 'v', '薓')
('\x9d', 'w', '❏')
('\x9d', 'x', '\uec7c')
('\x9d', 'y', '\uec7d')
('\x9d', 'z', '嵸')
('\x9d', '{', '弻')
('\x9d', '|', '\uec80')
('\x9d', '}', '━')
('\x9d', '~', '┃')
('\x9d', '¡', '\uec83')
('\x9d', '¢', '\uec84')
('\x9d', '£', '\uec85')
('\x9d', '¤', '\uec86')
('\x9d', '¥', '\uec87')
('\x9d', '¦', '\uec88')
('\x9d', '§', '\uec89')
('\x9d', '¨', '\uec8a')
('\x9d', '©', '\uec8b')
('\x9d', 'ª', '\uec8c')
('\x9d', '«', '\uec8d')
('\x9d', '¬', '\uec8e')
('\x9d', '\xad', '\uec8f')
('\x9d', '®', '\uec90')
('\x9d', '¯', '\uec91')
('\x9d', '°', '骲')
('\x9d', '±', '髠')
('\x9d', '²', '鬔')
('\x9d', '³', '鬴')
('\x9d', '´', '鬹')
('\x9d', 'µ', '魀')
('\x9d', '¶', '魐')
('\x9d', '·', '魿')
('\x9d', '¸', '☼')
('\x9d', '¹', '綕')
('\x9d', 'º', '☁')
('\x9d', '»', '霴')
('\x9d', '¼', '☂')
('\x9d', '½', '\uec9f')
('\x9d', '¾', '\ueca0')
('\x9d', '¿', '\ueca1')
('\x9d', 'À', '✈')
('\x9d', 'Á', '\ueca3')
('\x9d', 'Â', '\ueca4')
('\x9d', 'Ã', '\ueca5')
('\x9d', 'Ä', '\ueca6')
('\x9d', 'Å', '\ueca7')
('\x9d', 'Æ', '\ueca8')
('\x9d', 'Ç', '\ueca9')
('\x9d', 'È', '℻')
('\x9d', 'É', '℡')
('\x9d', 'Ê', '曧')
('\x9d', 'Ë', '湗')
('\x9d', 'Ì', '\uecae')
('\x9d', 'Í', '煗')
('\x9d', 'Î', '秊')
('\x9d', 'Ï', '№')
('\x9d', 'Ð', '腬')
('\x9d', 'Ñ', '諹')
('\x9d', 'Ò', '顖')
('\x9d', 'Ó', '\uecb5')
('\x9d', 'Ô', '\uecb6')
('\x9d', 'Õ', '☠')
('\x9d', 'Ö', '\uecb8')
('\x9d', '×', '♤')
('\x9d', 'Ø', '♠')
('\x9d', 'Ù', '♧')
('\x9d', 'Ú', '♣')
('\x9d', 'Û', '♢')
('\x9d', 'Ü', '♦')
('\x9d', 'Ý', '♡')
('\x9d', 'Þ', '♥')
('\x9d', 'ß', '\uecc1')
('\x9d', 'à', '\uecc2')
('\x9d', 'á', '櫤')
('\x9d', 'â', '℞')
('\x9d', 'ã', '㏂')
('\x9d', 'ä', '㏘')
('\x9d', 'å', '㎡')
('\x9d', 'æ', '\uecc8')
('\x9d', 'ç', '㎥')
('\x9d', 'è', '\uecca')
('\x9d', 'é', '\ueccb')
('\x9d', 'ê', '\ueccc')
('\x9d', 'ë', '\ueccd')
('\x9d', 'ì', '\uecce')
('\x9d', 'í', '☑')
('\x9d', 'î', '鮁')
('\x9d', 'ï', '鮋')
('\x9d', 'ð', '鮍')
('\x9d', 'ñ', '鯝')
('\x9d', 'ò', '鯩')
('\x9d', 'ó', '鯭')
('\x9d', 'ô', '鯴')
('\x9d', 'õ', '鰟')
('\x9d', 'ö', '鰠')
('\x9d', '÷', '鰦')
('\x9d', 'ø', '鱓')
('\x9d', 'ù', '鱝')
('\x9d', 'ú', '鱻')
('\x9d', 'û', '鴌')
('\x9d', 'ü', '鴖')
('\x9d', 'ý', '↲')
('\x9d', 'þ', '欅')
from uao.b2u import b2u_table
from pyte.streams import Stream
from pyte import control as ctrl
from pprint import pformat
_special = set([ctrl.ESC, ctrl.CSI_C1, ctrl.NUL, ctrl.DEL, ctrl.OSC_C1])
_special.update(Stream.basic)
with open("bad-characters.txt", "w", encoding="utf-8") as f:
for b, uni in b2u_table.items():
b1 = chr(b // 0x100)
b2 = chr(b % 0x100)
if b1 in _special or b2 in _special:
f.write(pformat((b1, b2, uni)) + "\n")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment