{-# LANGUAGE OverloadedStrings #-} module Pdf.Content.Encoding.WinAnsi ( encoding ) where import Data.Word import Data.Map (Map) import qualified Data.Map as Map import Data.Text (Text) encoding :: Map Word8 Text encoding :: Map Word8 Text encoding = [(Word8, Text)] -> Map Word8 Text forall k a. Ord k => [(k, a)] -> Map k a Map.fromList ([(Word8, Text)] -> Map Word8 Text) -> [(Word8, Text)] -> Map Word8 Text forall a b. (a -> b) -> a -> b $ [Word8] -> [Text] -> [(Word8, Text)] forall a b. [a] -> [b] -> [(a, b)] zip [Word8] codes [Text] chars chars :: [Text] chars :: [Text] chars = [ Text "A", Text "Æ", Text "Á", Text "Â", Text "Ä", Text "À", Text "Å", Text "Ã", Text "B", Text "C", Text "Ç", Text "D", Text "E", Text "É", Text "Ê", Text "Ë", Text "È", Text "Ð", Text "€", Text "F", Text "G", Text "H", Text "I", Text "Í", Text "Î", Text "Ï", Text "Ì", Text "J", Text "K", Text "L", Text "M", Text "N", Text "Ñ", Text "O", Text "Œ", Text "Ó", Text "Ô", Text "Ö", Text "Ò", Text "Ø", Text "Õ", Text "P", Text "Q", Text "R", Text "S", Text "Š", Text "T", Text "Þ", Text "U", Text "Ú", Text "Û", Text "Ü", Text "Ù", Text "V", Text "W", Text "X", Text "Y", Text "Ý", Text "Ÿ", Text "Z", Text "Ž", Text "a", Text "á", Text "â", Text "´", Text "ä", Text "æ", Text "à", Text "&", Text "å", Text "^", Text "~", Text "*", Text "@", Text "ã", Text "b", Text "\\", Text "|", Text "{", Text "}", Text "[", Text "]", Text "¦", Text "•", Text "c", Text "ç", Text " ̧", Text "¢", Text "ˆ", Text ":", Text ",", Text "©", Text "¤", Text "d", Text "†", Text "‡", Text "°", Text "¨", Text "÷", Text "$", Text "e", Text "é", Text "ê", Text "ë", Text "è", Text "8", Text "…", Text "—", Text "–", Text "=", Text "ð", Text "!", Text "¡", Text "f", Text "5", Text "ƒ", Text "4", Text "g", Text "ß", Text "`", Text ">", Text "«", Text "»", Text "‹", Text "›", Text "h", Text "-", Text "i", Text "í", Text "î", Text "ï", Text "ì", Text "j", Text "k", Text "l", Text "<", Text "¬", Text "m", Text " ̄", Text "μ", Text "×", Text "n", Text "9", Text "ñ", Text "#", Text "o", Text "ó", Text "ô", Text "ö", Text "œ", Text "ò", Text "1", Text "½", Text "¼", Text "¹", Text "ª", Text "º", Text "ø", Text "õ", Text "p", Text "¶", Text "(", Text ")", Text "%", Text ".", Text "·", Text "‰", Text "+", Text "±", Text "q", Text "?", Text "¿", Text "\"", Text "„", Text "“", Text "”", Text "‘", Text "’", Text "‚", Text "'", Text "r", Text "®", Text "s", Text "š", Text "§", Text ";", Text "7", Text "6", Text "/", Text " ", Text "£", Text "t", Text "þ", Text "3", Text "¾", Text "³", Text "~", Text "™", Text "2", Text "²", Text "u", Text "ú", Text "û", Text "ü", Text "ù", Text "_", Text "v", Text "w", Text "x", Text "y", Text "ý", Text "ÿ", Text "¥", Text "z", Text "ž", Text "0" ] codes :: [Word8] codes :: [Word8] codes = [ Word8 0o101, Word8 0o306, Word8 0o301, Word8 0o302, Word8 0o304, Word8 0o300, Word8 0o305, Word8 0o303, Word8 0o102, Word8 0o103, Word8 0o307, Word8 0o104, Word8 0o105, Word8 0o311, Word8 0o312, Word8 0o313, Word8 0o310, Word8 0o320, Word8 0o200, Word8 0o106, Word8 0o107, Word8 0o110, Word8 0o111, Word8 0o315, Word8 0o316, Word8 0o317, Word8 0o314, Word8 0o112, Word8 0o113, Word8 0o114, Word8 0o115, Word8 0o116, Word8 0o321, Word8 0o117, Word8 0o214, Word8 0o323, Word8 0o324, Word8 0o326, Word8 0o322, Word8 0o330, Word8 0o325, Word8 0o120, Word8 0o121, Word8 0o122, Word8 0o123, Word8 0o212, Word8 0o124, Word8 0o336, Word8 0o125, Word8 0o332, Word8 0o333, Word8 0o334, Word8 0o331, Word8 0o126, Word8 0o127, Word8 0o130, Word8 0o131, Word8 0o335, Word8 0o237, Word8 0o132, Word8 0o216, Word8 0o141, Word8 0o341, Word8 0o342, Word8 0o264, Word8 0o344, Word8 0o346, Word8 0o340, Word8 0o046, Word8 0o345, Word8 0o136, Word8 0o176, Word8 0o052, Word8 0o100, Word8 0o343, Word8 0o142, Word8 0o134, Word8 0o174, Word8 0o173, Word8 0o175, Word8 0o133, Word8 0o135, Word8 0o246, Word8 0o225, Word8 0o143, Word8 0o347, Word8 0o270, Word8 0o242, Word8 0o210, Word8 0o072, Word8 0o054, Word8 0o251, Word8 0o244, Word8 0o144, Word8 0o206, Word8 0o207, Word8 0o260, Word8 0o250, Word8 0o367, Word8 0o044, Word8 0o145, Word8 0o351, Word8 0o352, Word8 0o353, Word8 0o350, Word8 0o070, Word8 0o205, Word8 0o227, Word8 0o226, Word8 0o075, Word8 0o360, Word8 0o041, Word8 0o241, Word8 0o146, Word8 0o065, Word8 0o203, Word8 0o064, Word8 0o147, Word8 0o337, Word8 0o140, Word8 0o076, Word8 0o253, Word8 0o273, Word8 0o213, Word8 0o233, Word8 0o150, Word8 0o055, Word8 0o151, Word8 0o355, Word8 0o356, Word8 0o357, Word8 0o354, Word8 0o152, Word8 0o153, Word8 0o154, Word8 0o074, Word8 0o254, Word8 0o155, Word8 0o257, Word8 0o265, Word8 0o327, Word8 0o156, Word8 0o071, Word8 0o361, Word8 0o043, Word8 0o157, Word8 0o363, Word8 0o364, Word8 0o366, Word8 0o234, Word8 0o362, Word8 0o061, Word8 0o275, Word8 0o274, Word8 0o271, Word8 0o252, Word8 0o272, Word8 0o370, Word8 0o365, Word8 0o160, Word8 0o266, Word8 0o050, Word8 0o051, Word8 0o045, Word8 0o056, Word8 0o267, Word8 0o211, Word8 0o053, Word8 0o261, Word8 0o161, Word8 0o077, Word8 0o277, Word8 0o042, Word8 0o204, Word8 0o223, Word8 0o224, Word8 0o221, Word8 0o222, Word8 0o202, Word8 0o047, Word8 0o162, Word8 0o256, Word8 0o163, Word8 0o232, Word8 0o247, Word8 0o073, Word8 0o067, Word8 0o066, Word8 0o057, Word8 0o040, Word8 0o243, Word8 0o164, Word8 0o376, Word8 0o063, Word8 0o276, Word8 0o263, Word8 0o230, Word8 0o231, Word8 0o062, Word8 0o262, Word8 0o165, Word8 0o372, Word8 0o373, Word8 0o374, Word8 0o371, Word8 0o137, Word8 0o166, Word8 0o167, Word8 0o170, Word8 0o171, Word8 0o375, Word8 0o377, Word8 0o245, Word8 0o172, Word8 0o236, Word8 0o060 ]