diff options
Diffstat (limited to 'pokemontools/chars.py')
-rw-r--r-- | pokemontools/chars.py | 279 |
1 files changed, 279 insertions, 0 deletions
diff --git a/pokemontools/chars.py b/pokemontools/chars.py new file mode 100644 index 0000000..fc69fc5 --- /dev/null +++ b/pokemontools/chars.py @@ -0,0 +1,279 @@ +# -*- 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: "ー", +}) + +#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 |