{-# LANGUAGE OverloadedStrings #-} module Text.Table.Chars ( z_ascii , z_digit , z_asciidigit , z_kana , h_ascii , h_digit , h_asciidigit , h_kana , h_kana_d , h_kana_d_map , h_kana_p ) where import Data.Text import Data.Map z_ascii :: [Text] z_ascii = [ "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "!", "”", "#", "$", "%", "&", "’", "(", ")", "*", "+", ",", "−", ".", "/", ":", ";", "<", "=", ">", "?", "@", "[", "¥", "]", "^", "_", "‘", "{", "|", "}", "〜", " " ] z_digit :: [Text] z_digit = [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" ] z_asciidigit :: [Text] z_asciidigit = z_ascii ++ z_digit z_kana :: [Text] z_kana = [ "ア", "イ", "ウ", "エ", "オ", "カ", "キ", "ク", "ケ", "コ", "サ", "シ", "ス", "セ", "ソ", "タ", "チ", "ツ", "テ", "ト", "ナ", "ニ", "ヌ", "ネ", "ノ", "ハ", "ヒ", "フ", "ヘ", "ホ", "マ", "ミ", "ム", "メ", "モ", "ヤ", "ユ", "ヨ", "ラ", "リ", "ル", "レ", "ロ", "ワ", "ヲ", "ン", "ァ", "ィ", "ゥ", "ェ", "ォ", "ッ", "ャ", "ュ", "ョ", "ヴ", "ガ", "ギ", "グ", "ゲ", "ゴ", "ザ", "ジ", "ズ", "ゼ", "ゾ", "ダ", "ヂ", "ヅ", "デ", "ド", "バ", "ビ", "ブ", "ベ", "ボ", "パ", "ピ", "プ", "ペ", "ポ", "。", "、", "・", "゛", "゜", "「", "」", "ー" ] h_kana_d_map :: Map Text Text h_kana_d_map = fromList [ ("ウ゛", "ヴ"), ("カ゛", "ガ"), ("キ゛", "ギ"), ("ク゛", "グ"), ("ケ゛", "ゲ"), ("コ゛", "ゴ"), ("サ゛", "ザ"), ("シ゛", "ジ"), ("ス゛", "ズ"), ("セ゛", "ゼ"), ("ソ゛", "ゾ"), ("タ゛", "ダ"), ("チ゛", "ヂ"), ("ツ゛", "ヅ"), ("テ゛", "デ"), ("ト゛", "ド"), ("ハ゛", "バ"), ("ヒ゛", "ビ"), ("フ゛", "ブ"), ("ヘ゛", "ベ"), ("ホ゛", "ボ"), ("ハ゜", "パ"), ("ヒ゜", "ピ"), ("フ゜", "プ"), ("ヘ゜", "ペ"), ("ホ゜", "ポ") ] h_ascii :: [Text] h_ascii = [ "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "!", "\"", "#", "$", "%", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", ":", ";", "<", "=", ">", "?", "@", "[", "\\", "]", "^", "_", "`", "{", "|", "}", "~", " " ] h_digit :: [Text] h_digit = [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" ] h_asciidigit :: [Text] h_asciidigit = h_ascii ++ h_digit h_kana :: [Text] h_kana = [ "ア", "イ", "ウ", "エ", "オ", "カ", "キ", "ク", "ケ", "コ", "サ", "シ", "ス", "セ", "ソ", "タ", "チ", "ツ", "テ", "ト", "ナ", "ニ", "ヌ", "ネ", "ノ", "ハ", "ヒ", "フ", "ヘ", "ホ", "マ", "ミ", "ム", "メ", "モ", "ヤ", "ユ", "ヨ", "ラ", "リ", "ル", "レ", "ロ", "ワ", "ヲ", "ン", "ァ", "ィ", "ゥ", "ェ", "ォ", "ッ", "ャ", "ュ", "ョ" ] ++ h_kana_d ++ h_kana_p ++ [ "。", "、", "・", "゙", "゚", "「", "」", "ー" ] h_kana_d :: [Text] h_kana_d = [ "ヴ", "ガ", "ギ", "グ", "ゲ", "ゴ", "ザ", "ジ", "ズ", "ゼ", "ゾ", "ダ", "ヂ", "ヅ", "デ", "ド", "バ", "ビ", "ブ", "ベ", "ボ" ] h_kana_p :: [Text] h_kana_p = [ "パ", "ピ", "プ", "ペ", "ポ" ]