wAp7z      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy Safe-Inferred@A chunk is some textual data coupled with a description of what : color the text is, attributes like whether it is bold or A underlined, etc. The chunk knows what foreground and background D colors and what attributes to use for both an 8 color terminal and  a 256 color terminal. %The text is held as a list of strict z. AThe TextSpec bundles together the styles for the 8 and 256 color ? terminals, so that the text can be portrayed on any terminal. @Describes text appearance (foreground and background colors, as B well as other attributes such as bold) for a 256 color terminal. @Describes text appearance (foreground and background colors, as A well as other attributes such as bold) for an 8 color terminal. 2Style elements that apply in both 8 and 256 color E terminals. However, the elements are described separately for 8 and = 256 color terminals, so that the text appearance can change . depending on how many colors a terminal has. :Color for an 256-color terminal. Does not affect 8-color  terminals. =Nothing indicates to use the default color for the terminal; + otherwise, use the corresponding Terminfo {. :Color for an 8-color terminal. Does not affect 256-color  terminals. =Nothing indicates to use the default color for the terminal; + otherwise, use the corresponding Terminfo {. 'A simple enumeration for eight values. +"Which terminal definition to use. ,?Use the terminal with this given name. You might get this from @ the TERM environment variable, or set it explicitly. A runtime < error will result if the terminfo database does not have a = definition for this terminal. If this terminal supports 256 B colors, then 256 colors are used. If this terminal supports less ; than 256 colors, but at least 8 colors, then 8 colors are & used. Otherwise, no colors are used. -?Using this terminal should always succeed. This suppresses all C colors. Uesful if output is not going to a TTY, or if you just do  not like colors. .:Gets the terminal definition from the environment. If the 0 environment does not have a TERM veriable, use -. /@Gets the terminal definition from the environment and a handle. " If the handle is not a terminal, - is returned. Otherwise, 0 the terminal is obtained from the environment. Changed in version 0.12.0.0! - the type of this function was ! different in previous versions. 38Any color for an 8-color terminal can also be used in a  256-color terminal. 4 Creates a  from a strict z with default colors  and no special effects. 5 Creates a  from a lazy | with default colors and  no special effects. 8:Gets the right set of terminal codes to apply the desired < highlighting, bold, underlining, etc. Be sure to apply the 8 attributes first (bold, underlining, etc) and then the C colors. Setting the colors first and then the attributes seems to ( reset the colors, giving blank output. :ASends a list of chunks to the given handle for printing. Sets up B the terminal (this only needs to be done once.) Lazily processes  the list of Chunk. See ; for notes on how many colors  are used. ;@Sends a list of chunks to standard output for printing. Sets up B the terminal (this only needs to be done once.) Lazily processes  the list of Chunk. 'Which colors are used depends upon the + . If it is -, + then no colors are used on output. If the + is specified with  ,:, the UNIX terminfo library is used to determine how many C colors the terminal supports. If it supports at least 256 colors, E then 256 colors are used. If it supports at least 8 colors but less E than 256 colors, then 256 colors are used. Otherwise, no colors are ) used. A runtime error will occur if the , is not found in  the system terminal database. <'Print one chunk at a time, to a handle =.Print one chunk at a time, to standard output >9Print one chunk at a time, to a handle, append a newline ?@Print one chunk at a time, to standard output, append a newline PABold. What actually happens when you use Bold is going to depend E on your terminal. For example, xterm allows you actually use a bold C font for bold, if you have one. Otherwise, it might simulate bold B by using overstriking. Another possibility is that your terminal D might use a different color to indicate bold. For more details (at 4 least for xterm), look at xterm (1) and search for  boldColors. AIf your terminal uses a different color for bold, this allows an , 8-color terminal to really have 16 colors. ^  !"#$%&'()*+,-./<Check this handle to see if it is a terminal (typically you  will use stdout). 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW}~X  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX+-,./*)('&%$#"! 0123  456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW= &%$#"! '()*+-,./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW}~ Safe-Inferred X@Changing colors. Instances of this class affect the background 1 or the foreground color. For example, to get a  that $ changes the background to red, use Y s ; for the  foreground, use Z s . Whether 8-color or 256-color < terminals (or both) are affected depends on the particular  instance. Because  is an instance of X, you can use literals to D affect the color of 256-color terminals. For example, if you have  a 256 color terminal:  ? putChunkLn $ "muddy yellow background" <> back (100 :: Word8) :This example would not affect an 8-color terminal, as the  , instance affects 256-color terminals only. Y Create a ) that affects the background color only. Z Create a ) that affects the foreground color only. [Things of type [) affect both 8- and 256-color terminals.  (They do not- affect both the foreground and background.) ^If  , use the ] color on 256-color terminals. _?Resets the color (foreground or background, as appropriate) to D the default for your terminal. Usually you will not need this, as  each  starts out with the terminal's default colors. h?Resets the color (foreground or background, as appropriate) to D the default for your terminal. Usually you will not need this, as  each  starts out with the terminal's default colors. >Affects the foreground and background of 256-color terminals. <Affects the foreground and background of 8-color terminals. ?Affects the foreground and background of both 8- and 256-color  terminals. 'XYZ[\]^_`abcdefghijklmnopqrstuvwxy"XYZ[\]^_`abcdefghijklmnopqrstuvwxy"_`abcdefghijklmnop[\]^qrstuvwxyXYZ"XYZ[\]^_`abcdefghijklmnopqrstuvwxy Safe-InferredZ !"#$%&+,-./345:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoprstuvwxyZ+-,./45;:=?<>PQVWTURS@ABCDEFGJKHINOLMXYZ[\]^rstuvwxy&%$#"! _`abcdefghijklmnop3       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXXYZ[\]^_`abcdefghijklmnopqrstuvwxyzUv{x|}~rainbow-0.18.0.0 Rainbow.TypesRainbow.ColorsRainbowChunktextSpectextTextSpecstyle8style256Style256 foreground256 background256 common256Style8 foreground8 background8common8 StyleCommonscBold scUnderlinescFlash scInverseColor256 unColor256Color8unColor8Enum8E7E6E5E4E3E2E1E0 Foreground256 Foreground8 Background256 Background8TermTermNameDumb termFromEnvsmartTermFromEnv enum8toWord8color8toTerminfocolor256toTerminfoto256fromText fromLazyText defaultColors commonAttrs getTermCodes hPrintChunk hPutChunks putChunks hPutChunkputChunk hPutChunkLn putChunkLnbold8bold8off underline8 underline8offflash8 flash8offinverse8 inverse8off underline256underline256offbold256 bold256off inverse256 inverse256offflash256 flash256offboldboldOffinverse inverseOffflashflashOff underline underlineOffColorbackforeBothboth8both256noColor8black8red8green8yellow8blue8magenta8cyan8white8 noColor256grey brightRed brightGreen brightYellow brightBlue brightMagenta brightCyan brightWhitebothblackredgreenyellowbluemagentacyanwhite text-1.1.1.3Data.Text.InternalTextterminfo-0.4.0.0System.Console.Terminfo.ColorData.Text.Internal.Lazy $fMonoidChunk$fIsStringChunk$fMonoidTextSpec$fMonoidStyle256$fMonoidStyle8$fMonoidStyleCommonbaseGHC.WordWord8 Data.MaybeNothing $fColorWord8 $fColorEnum8 $fColorBoth$fColorColor256 $fColorColor8