# -*- coding: utf-8 -*- from copy import copy # this is straight out of ../preprocessor.py because i'm lazy # (also, it's flipped) # see jap_chars for overrides if you are in japanese mode? chars = { 0x50: "@", 0x54: "#", 0x75: "…", 0x79: "┌", 0x7A: "─", 0x7B: "┐", 0x7C: "│", 0x7D: "└", 0x7E: "┘", 0x74: "№", 0x7F: " ", 0x80: "A", 0x81: "B", 0x82: "C", 0x83: "D", 0x84: "E", 0x85: "F", 0x86: "G", 0x87: "H", 0x88: "I", 0x89: "J", 0x8A: "K", 0x8B: "L", 0x8C: "M", 0x8D: "N", 0x8E: "O", 0x8F: "P", 0x90: "Q", 0x91: "R", 0x92: "S", 0x93: "T", 0x94: "U", 0x95: "V", 0x96: "W", 0x97: "X", 0x98: "Y", 0x99: "Z", 0x9A: "(", 0x9B: ")", 0x9C: ":", 0x9D: ";", 0x9E: "[", 0x9F: "]", 0xA0: "a", 0xA1: "b", 0xA2: "c", 0xA3: "d", 0xA4: "e", 0xA5: "f", 0xA6: "g", 0xA7: "h", 0xA8: "i", 0xA9: "j", 0xAA: "k", 0xAB: "l", 0xAC: "m", 0xAD: "n", 0xAE: "o", 0xAF: "p", 0xB0: "q", 0xB1: "r", 0xB2: "s", 0xB3: "t", 0xB4: "u", 0xB5: "v", 0xB6: "w", 0xB7: "x", 0xB8: "y", 0xB9: "z", 0xC0: "Ä", 0xC1: "Ö", 0xC2: "Ü", 0xC3: "ä", 0xC4: "ö", 0xC5: "ü", 0xD0: "'d", 0xD1: "'l", 0xD2: "'m", 0xD3: "'r", 0xD4: "'s", 0xD5: "'t", 0xD6: "'v", 0xE0: "'", 0xE3: "-", 0xE6: "?", 0xE7: "!", 0xE8: ".", 0xE9: "&", 0xEA: "é", 0xEB: "→", 0xEC: "▷", 0xED: "▶", 0xEE: "▼", 0xEF: "♂", 0xF0: "¥", 0xF1: "×", 0xF3: "/", 0xF4: ",", 0xF5: "♀", 0xF6: "0", 0xF7: "1", 0xF8: "2", 0xF9: "3", 0xFA: "4", 0xFB: "5", 0xFC: "6", 0xFD: "7", 0xFE: "8", 0xFF: "9", } #override whatever defaults for japanese symbols jap_chars = copy(chars) jap_chars.update({ 0x05: "ガ", 0x06: "ギ", 0x07: "グ", 0x08: "ゲ", 0x09: "ゴ", 0x0A: "ザ", 0x0B: "ジ", 0x0C: "ズ", 0x0D: "ゼ", 0x0E: "ゾ", 0x0F: "ダ", 0x10: "ヂ", 0x11: "ヅ", 0x12: "デ", 0x13: "ド", 0x19: "バ", 0x1A: "ビ", 0x1B: "ブ", 0x1C: "ボ", 0x26: "が", 0x27: "ぎ", 0x28: "ぐ", 0x29: "げ", 0x2A: "ご", 0x2B: "ざ", 0x2C: "じ", 0x2D: "ず", 0x2E: "ぜ", 0x2F: "ぞ", 0x30: "だ", 0x31: "ぢ", 0x32: "づ", 0x33: "で", 0x34: "ど", 0x3A: "ば", 0x3B: "び", 0x3C: "ぶ", 0x3D: "べ", 0x3E: "ぼ", 0x40: "パ", 0x41: "ピ", 0x42: "プ", 0x43: "ポ", 0x44: "ぱ", 0x45: "ぴ", 0x46: "ぷ", 0x47: "ぺ", 0x48: "ぽ", 0x80: "ア", 0x81: "イ", 0x82: "ウ", 0x83: "エ", 0x84: "ォ", 0x85: "カ", 0x86: "キ", 0x87: "ク", 0x88: "ケ", 0x89: "コ", 0x8A: "サ", 0x8B: "シ", 0x8C: "ス", 0x8D: "セ", 0x8E: "ソ", 0x8F: "タ", 0x90: "チ", 0x91: "ツ", 0x92: "テ", 0x93: "ト", 0x94: "ナ", 0x95: "ニ", 0x96: "ヌ", 0x97: "ネ", 0x98: "ノ", 0x99: "ハ", 0x9A: "ヒ", 0x9B: "フ", 0x9C: "ホ", 0x9D: "マ", 0x9E: "ミ", 0x9F: "ム", 0xA0: "メ", 0xA1: "モ", 0xA2: "ヤ", 0xA3: "ユ", 0xA4: "ヨ", 0xA5: "ラ", 0xA6: "ル", 0xA7: "レ", 0xA8: "ロ", 0xA9: "ワ", 0xAA: "ヲ", 0xAB: "ン", 0xAC: "ッ", 0xAD: "ャ", 0xAE: "ュ", 0xAF: "ョ", 0xB0: "ィ", 0xB1: "あ", 0xB2: "い", 0xB3: "う", 0xB4: "え", 0xB5: "お", 0xB6: "か", 0xB7: "き", 0xB8: "く", 0xB9: "け", 0xBA: "こ", 0xBB: "さ", 0xBC: "し", 0xBD: "す", 0xBE: "せ", 0xBF: "そ", 0xC0: "た", 0xC1: "ち", 0xC2: "つ", 0xC3: "て", 0xC4: "と", 0xC5: "な", 0xC6: "に", 0xC7: "ぬ", 0xC8: "ね", 0xC9: "の", 0xCA: "は", 0xCB: "ひ", 0xCC: "ふ", 0xCD: "へ", 0xCE: "ほ", 0xCF: "ま", 0xD0: "み", 0xD1: "む", 0xD2: "め", 0xD3: "も", 0xD4: "や", 0xD5: "ゆ", 0xD6: "よ", 0xD7: "ら", 0xD8: "り", 0xD9: "る", 0xDA: "れ", 0xDB: "ろ", 0xDC: "わ", 0xDD: "を", 0xDE: "ん", 0xDF: "っ", 0xE0: "ゃ", 0xE1: "ゅ", 0xE2: "ょ", 0xE3: "ー", 0xE9: "ァ", }) #some of the japanese characters can probably fit into the english table #without overriding any of the other mappings. for key, value in jap_chars.items(): if key not in chars.keys(): chars[key] = value