packages feed

hscolour (empty) → 1.6

raw patch · 64 files changed

+9122/−0 lines, 64 filesdep +basedep +haskell98build-type:Customsetup-changedbinary-added

Dependencies added: base, haskell98

Files

+ .hscolour view
@@ -0,0 +1,15 @@+ColourPrefs+  { keyword  = [Underscore,Foreground Green]+  , keyglyph = [Foreground Red]+  , layout   = [Foreground Cyan]+  , comment  = [Foreground Blue]+  , conid    = [Normal]+  , varid    = [Normal]+  , conop    = [Bold,Foreground Red]+  , varop    = [Foreground Cyan]+  , string   = [Foreground Magenta]+  , char     = [Foreground Magenta]+  , number   = [Foreground Magenta]+  , selection = [Bold, Foreground Magenta]+  , variantselection = [Dim, Foreground Red, Underscore]+  }
+ HsColour.hs view
@@ -0,0 +1,44 @@+module Main where++import Language.Haskell.HsColour+import Language.Haskell.HsColour.Colourise (readColourPrefs)++import System+import IO (hPutStrLn,hFlush,stdout,stderr,hSetBuffering,BufferMode(..))++version = "1.6"++main :: IO ()+main = do+  prog <- System.getProgName+  args <- System.getArgs+  pref <- readColourPrefs+  (ioWrapper,output,anchors) <- case args of+        []                -> errorOut (help prog)+        ["-h"]            -> errorOut (help prog)+        ["-help"]         -> errorOut (help prog)+        ["--help"]        -> errorOut (help prog)+        ["-v"]            -> errorOut (prog++" "++version)+        ["-version"]      -> errorOut (prog++" "++version)+        ["--version"]     -> errorOut (prog++" "++version)+        ["-tty"]          -> return (ttyInteract, TTY,  False)+        ["-html"]         -> return (ttyInteract, HTML, False)+        ["-css"]          -> return (ttyInteract, CSS,  False)+        ["-latex"]        -> return (ttyInteract, LaTeX,False)+        ["-anchorHTML"]   -> return (ttyInteract, HTML, True)+        ["-anchorCSS"]    -> return (ttyInteract, CSS,  True)+        [a]               -> return (fileInteract a, TTY,  False)+        ["-tty",a]        -> return (fileInteract a, TTY,  False)+        ["-html",a]       -> return (fileInteract a, HTML, False)+        ["-css",a]        -> return (fileInteract a, CSS,  False)+        ["-latex",a]      -> return (fileInteract a, LaTeX,False)+        ["-anchorHTML",a] -> return (fileInteract a, HTML, True)+        ["-anchorCSS",a]  -> return (fileInteract a, CSS,  True)+        _                 -> errorOut (help prog)+  ioWrapper (hscolour output pref anchors)+  hFlush stdout+  where+    fileInteract f u = do readFile f >>= putStr . u+    ttyInteract s = do hSetBuffering stdout NoBuffering >> Prelude.interact s+    errorOut s = hPutStrLn stderr s >> hFlush stderr >> exitFailure+    help p = "Usage: "++p++" [-tty|-html|-css|-latex|-anchorHTML|-anchorCSS] [file.hs]"
+ LICENCE-GPL view
@@ -0,0 +1,342 @@+		    GNU GENERAL PUBLIC LICENSE+		       Version 2, June 1991++ Copyright (C) 1989, 1991 Free Software Foundation, Inc.+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA+ Everyone is permitted to copy and distribute verbatim copies+ of this license document, but changing it is not allowed.++			    Preamble++  The licenses for most software are designed to take away your+freedom to share and change it.  By contrast, the GNU General Public+License is intended to guarantee your freedom to share and change free+software--to make sure the software is free for all its users.  This+General Public License applies to most of the Free Software+Foundation's software and to any other program whose authors commit to+using it.  (Some other Free Software Foundation software is covered by+the GNU Library General Public License instead.)  You can apply it to+your programs, too.++  When we speak of free software, we are referring to freedom, not+price.  Our General Public Licenses are designed to make sure that you+have the freedom to distribute copies of free software (and charge for+this service if you wish), that you receive source code or can get it+if you want it, that you can change the software or use pieces of it+in new free programs; and that you know you can do these things.++  To protect your rights, we need to make restrictions that forbid+anyone to deny you these rights or to ask you to surrender the rights.+These restrictions translate to certain responsibilities for you if you+distribute copies of the software, or if you modify it.++  For example, if you distribute copies of such a program, whether+gratis or for a fee, you must give the recipients all the rights that+you have.  You must make sure that they, too, receive or can get the+source code.  And you must show them these terms so they know their+rights.++  We protect your rights with two steps: (1) copyright the software, and+(2) offer you this license which gives you legal permission to copy,+distribute and/or modify the software.++  Also, for each author's protection and ours, we want to make certain+that everyone understands that there is no warranty for this free+software.  If the software is modified by someone else and passed on, we+want its recipients to know that what they have is not the original, so+that any problems introduced by others will not reflect on the original+authors' reputations.++  Finally, any free program is threatened constantly by software+patents.  We wish to avoid the danger that redistributors of a free+program will individually obtain patent licenses, in effect making the+program proprietary.  To prevent this, we have made it clear that any+patent must be licensed for everyone's free use or not licensed at all.++  The precise terms and conditions for copying, distribution and+modification follow.+++		    GNU GENERAL PUBLIC LICENSE+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION++  0. This License applies to any program or other work which contains+a notice placed by the copyright holder saying it may be distributed+under the terms of this General Public License.  The "Program", below,+refers to any such program or work, and a "work based on the Program"+means either the Program or any derivative work under copyright law:+that is to say, a work containing the Program or a portion of it,+either verbatim or with modifications and/or translated into another+language.  (Hereinafter, translation is included without limitation in+the term "modification".)  Each licensee is addressed as "you".++Activities other than copying, distribution and modification are not+covered by this License; they are outside its scope.  The act of+running the Program is not restricted, and the output from the Program+is covered only if its contents constitute a work based on the+Program (independent of having been made by running the Program).+Whether that is true depends on what the Program does.++  1. You may copy and distribute verbatim copies of the Program's+source code as you receive it, in any medium, provided that you+conspicuously and appropriately publish on each copy an appropriate+copyright notice and disclaimer of warranty; keep intact all the+notices that refer to this License and to the absence of any warranty;+and give any other recipients of the Program a copy of this License+along with the Program.++You may charge a fee for the physical act of transferring a copy, and+you may at your option offer warranty protection in exchange for a fee.++  2. You may modify your copy or copies of the Program or any portion+of it, thus forming a work based on the Program, and copy and+distribute such modifications or work under the terms of Section 1+above, provided that you also meet all of these conditions:++    a) You must cause the modified files to carry prominent notices+    stating that you changed the files and the date of any change.++    b) You must cause any work that you distribute or publish, that in+    whole or in part contains or is derived from the Program or any+    part thereof, to be licensed as a whole at no charge to all third+    parties under the terms of this License.++    c) If the modified program normally reads commands interactively+    when run, you must cause it, when started running for such+    interactive use in the most ordinary way, to print or display an+    announcement including an appropriate copyright notice and a+    notice that there is no warranty (or else, saying that you provide+    a warranty) and that users may redistribute the program under+    these conditions, and telling the user how to view a copy of this+    License.  (Exception: if the Program itself is interactive but+    does not normally print such an announcement, your work based on+    the Program is not required to print an announcement.)++These requirements apply to the modified work as a whole.  If+identifiable sections of that work are not derived from the Program,+and can be reasonably considered independent and separate works in+themselves, then this License, and its terms, do not apply to those+sections when you distribute them as separate works.  But when you+distribute the same sections as part of a whole which is a work based+on the Program, the distribution of the whole must be on the terms of+this License, whose permissions for other licensees extend to the+entire whole, and thus to each and every part regardless of who wrote it.++Thus, it is not the intent of this section to claim rights or contest+your rights to work written entirely by you; rather, the intent is to+exercise the right to control the distribution of derivative or+collective works based on the Program.++In addition, mere aggregation of another work not based on the Program+with the Program (or with a work based on the Program) on a volume of+a storage or distribution medium does not bring the other work under+the scope of this License.++  3. You may copy and distribute the Program (or a work based on it,+under Section 2) in object code or executable form under the terms of+Sections 1 and 2 above provided that you also do one of the following:++    a) Accompany it with the complete corresponding machine-readable+    source code, which must be distributed under the terms of Sections+    1 and 2 above on a medium customarily used for software interchange; or,++    b) Accompany it with a written offer, valid for at least three+    years, to give any third party, for a charge no more than your+    cost of physically performing source distribution, a complete+    machine-readable copy of the corresponding source code, to be+    distributed under the terms of Sections 1 and 2 above on a medium+    customarily used for software interchange; or,++    c) Accompany it with the information you received as to the offer+    to distribute corresponding source code.  (This alternative is+    allowed only for noncommercial distribution and only if you+    received the program in object code or executable form with such+    an offer, in accord with Subsection b above.)++The source code for a work means the preferred form of the work for+making modifications to it.  For an executable work, complete source+code means all the source code for all modules it contains, plus any+associated interface definition files, plus the scripts used to+control compilation and installation of the executable.  However, as a+special exception, the source code distributed need not include+anything that is normally distributed (in either source or binary+form) with the major components (compiler, kernel, and so on) of the+operating system on which the executable runs, unless that component+itself accompanies the executable.++If distribution of executable or object code is made by offering+access to copy from a designated place, then offering equivalent+access to copy the source code from the same place counts as+distribution of the source code, even though third parties are not+compelled to copy the source along with the object code.++  4. You may not copy, modify, sublicense, or distribute the Program+except as expressly provided under this License.  Any attempt+otherwise to copy, modify, sublicense or distribute the Program is+void, and will automatically terminate your rights under this License.+However, parties who have received copies, or rights, from you under+this License will not have their licenses terminated so long as such+parties remain in full compliance.++  5. You are not required to accept this License, since you have not+signed it.  However, nothing else grants you permission to modify or+distribute the Program or its derivative works.  These actions are+prohibited by law if you do not accept this License.  Therefore, by+modifying or distributing the Program (or any work based on the+Program), you indicate your acceptance of this License to do so, and+all its terms and conditions for copying, distributing or modifying+the Program or works based on it.++  6. Each time you redistribute the Program (or any work based on the+Program), the recipient automatically receives a license from the+original licensor to copy, distribute or modify the Program subject to+these terms and conditions.  You may not impose any further+restrictions on the recipients' exercise of the rights granted herein.+You are not responsible for enforcing compliance by third parties to+this License.++  7. If, as a consequence of a court judgment or allegation of patent+infringement or for any other reason (not limited to patent issues),+conditions are imposed on you (whether by court order, agreement or+otherwise) that contradict the conditions of this License, they do not+excuse you from the conditions of this License.  If you cannot+distribute so as to satisfy simultaneously your obligations under this+License and any other pertinent obligations, then as a consequence you+may not distribute the Program at all.  For example, if a patent+license would not permit royalty-free redistribution of the Program by+all those who receive copies directly or indirectly through you, then+the only way you could satisfy both it and this License would be to+refrain entirely from distribution of the Program.++If any portion of this section is held invalid or unenforceable under+any particular circumstance, the balance of the section is intended to+apply and the section as a whole is intended to apply in other+circumstances.++It is not the purpose of this section to induce you to infringe any+patents or other property right claims or to contest validity of any+such claims; this section has the sole purpose of protecting the+integrity of the free software distribution system, which is+implemented by public license practices.  Many people have made+generous contributions to the wide range of software distributed+through that system in reliance on consistent application of that+system; it is up to the author/donor to decide if he or she is willing+to distribute software through any other system and a licensee cannot+impose that choice.++This section is intended to make thoroughly clear what is believed to+be a consequence of the rest of this License.++  8. If the distribution and/or use of the Program is restricted in+certain countries either by patents or by copyrighted interfaces, the+original copyright holder who places the Program under this License+may add an explicit geographical distribution limitation excluding+those countries, so that distribution is permitted only in or among+countries not thus excluded.  In such case, this License incorporates+the limitation as if written in the body of this License.++  9. The Free Software Foundation may publish revised and/or new versions+of the General Public License from time to time.  Such new versions will+be similar in spirit to the present version, but may differ in detail to+address new problems or concerns.++Each version is given a distinguishing version number.  If the Program+specifies a version number of this License which applies to it and "any+later version", you have the option of following the terms and conditions+either of that version or of any later version published by the Free+Software Foundation.  If the Program does not specify a version number of+this License, you may choose any version ever published by the Free Software+Foundation.++  10. If you wish to incorporate parts of the Program into other free+programs whose distribution conditions are different, write to the author+to ask for permission.  For software which is copyrighted by the Free+Software Foundation, write to the Free Software Foundation; we sometimes+make exceptions for this.  Our decision will be guided by the two goals+of preserving the free status of all derivatives of our free software and+of promoting the sharing and reuse of software generally.++			    NO WARRANTY++  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,+REPAIR OR CORRECTION.++  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE+POSSIBILITY OF SUCH DAMAGES.++		     END OF TERMS AND CONDITIONS+++	    How to Apply These Terms to Your New Programs++  If you develop a new program, and you want it to be of the greatest+possible use to the public, the best way to achieve this is to make it+free software which everyone can redistribute and change under these terms.++  To do so, attach the following notices to the program.  It is safest+to attach them to the start of each source file to most effectively+convey the exclusion of warranty; and each file should have at least+the "copyright" line and a pointer to where the full notice is found.++    <one line to give the program's name and a brief idea of what it does.>+    Copyright (C) <year>  <name of author>++    This program is free software; you can redistribute it and/or modify+    it under the terms of the GNU General Public License as published by+    the Free Software Foundation; either version 2 of the License, or+    (at your option) any later version.++    This program is distributed in the hope that it will be useful,+    but WITHOUT ANY WARRANTY; without even the implied warranty of+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the+    GNU General Public License for more details.++    You should have received a copy of the GNU General Public License+    along with this program; if not, write to the Free Software+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA+++Also add information on how to contact you by electronic and paper mail.++If the program is interactive, make it output a short notice like this+when it starts in an interactive mode:++    Gnomovision version 69, Copyright (C) year name of author+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.+    This is free software, and you are welcome to redistribute it+    under certain conditions; type `show c' for details.++The hypothetical commands `show w' and `show c' should show the appropriate+parts of the General Public License.  Of course, the commands you use may+be called something other than `show w' and `show c'; they could even be+mouse-clicks or menu items--whatever suits your program.++You should also get your employer (if you work as a programmer) or your+school, if any, to sign a "copyright disclaimer" for the program, if+necessary.  Here is a sample; alter the names:++  Yoyodyne, Inc., hereby disclaims all copyright interest in the program+  `Gnomovision' (which makes passes at compilers) written by James Hacker.++  <signature of Ty Coon>, 1 April 1989+  Ty Coon, President of Vice++This General Public License does not permit incorporating your program into+proprietary programs.  If your program is a subroutine library, you may+consider it more useful to permit linking proprietary applications with the+library.  If this is what you want to do, use the GNU Library General+Public License instead of this License.
+ Language/Haskell/HsColour.hs view
@@ -0,0 +1,36 @@+-- | This is a library with colourises Haskell code. +--   It currently has three output formats: +--+-- * ANSI terminal codes+--+-- * LaTeX macros+--+-- * HTML with font tags+--+-- * HTML with CSS.+--+module Language.Haskell.HsColour (Output(..), ColourPrefs(..),+                                  hscolour) where++import Language.Haskell.HsColour.Colourise (ColourPrefs(..))+import qualified Language.Haskell.HsColour.TTY  as TTY+import qualified Language.Haskell.HsColour.HTML as HTML+import qualified Language.Haskell.HsColour.CSS  as CSS+import qualified Language.Haskell.HsColour.LaTeX  as LaTeX++-- | The supported output formats.+data Output = TTY   -- ^ ANSI terminal codes+            | LaTeX -- ^ TeX macros+            | HTML  -- ^ HTML with font tags+            | CSS   -- ^ HTML with CSS.++-- | Colourise Haskell source code with the give output format.+hscolour :: Output      -- ^ Output format.+         -> ColourPrefs -- ^ Colour preferences for formats that support it.+         -> Bool        -- ^ Whether to include anchors.+         -> String      -- ^ Haskell source code.+         -> String      -- ^ Coloured Haskell source code.+hscolour TTY   pref _      = TTY.hscolour pref+hscolour LaTeX pref _      = LaTeX.hscolour pref+hscolour HTML  pref anchor = HTML.hscolour pref anchor+hscolour CSS   _    anchor = CSS.hscolour anchor
+ Language/Haskell/HsColour/ANSI.hs view
@@ -0,0 +1,93 @@+-- Partially taken from Hugs AnsiScreen.hs library:+module Language.Haskell.HsColour.ANSI+  ( highlightOn+  , highlightOff+  , highlight+  , cleareol, clearbol, clearline, clearDown, clearUp, cls+  , goto+  , cursorUp, cursorDown, cursorLeft, cursorRight+  , savePosition, restorePosition+  , Highlight(..)+  , Colour(..)+  , colourCycle+  , enableScrollRegion, scrollUp, scrollDown+  , lineWrap+  ) where++import Language.Haskell.HsColour.ColourHighlight++import List (intersperse,isPrefixOf)+import Char (isDigit)+++-- Basic screen control codes:++type Pos           = (Int,Int)++at        :: Pos -> String -> String+goto      :: Int -> Int -> String+home      :: String+cls       :: String++at (x,y) s  = goto x y ++ s+goto x y    = '\ESC':'[':(show y ++(';':show x ++ "H"))+home        = goto 1 1++cursorUp    = "\ESC[A"+cursorDown  = "\ESC[B"+cursorRight = "\ESC[C"+cursorLeft  = "\ESC[D"++cleareol    = "\ESC[K"+clearbol    = "\ESC[1K"+clearline   = "\ESC[2K"+clearDown   = "\ESC[J"+clearUp     = "\ESC[1J"+-- Choose whichever of the following lines is suitable for your system:+cls         = "\ESC[2J"     -- for PC with ANSI.SYS+--cls         = "\^L"         -- for Sun window++savePosition    = "\ESC7"+restorePosition = "\ESC8"+++-- data Colour    -- imported from ColourHighlight+-- data Highlight -- imported from ColourHighlight++instance Enum Highlight where+  fromEnum Normal       = 0+  fromEnum Bold         = 1+  fromEnum Dim          = 2+  fromEnum Underscore   = 4+  fromEnum Blink        = 5+  fromEnum ReverseVideo = 7+  fromEnum Concealed    = 8+  fromEnum (Foreground c) = 30 + fromEnum c+  fromEnum (Background c) = 40 + fromEnum c++highlight :: [Highlight] -> String -> String+highlight attrs s = highlightOn attrs ++ s ++ highlightOff++highlightOn []     = highlightOn [Normal]+highlightOn attrs  = "\ESC["+                     ++ concat (intersperse ";" (map (show.fromEnum) attrs))+                     ++"m"+highlightOff = "\ESC[0m"+++-- An infinite supply of colours.+colourCycle :: [Colour]+colourCycle = cycle [Red,Blue,Magenta,Green,Cyan]+++-- Scrolling+enableScrollRegion :: Int -> Int -> String+enableScrollRegion start end = "\ESC["++show start++';':show end++"r"++scrollDown  = "\ESCD"+scrollUp    = "\ESCM"++-- Line-wrapping mode+lineWrap True  = "\ESC[7h"+lineWrap False = "\ESC[7l"+
+ Language/Haskell/HsColour/Anchors.hs view
@@ -0,0 +1,130 @@+module Language.Haskell.HsColour.Anchors+  ( insertAnchors+  ) where++import Language.Haskell.HsColour.Classify+import List++-- This is an attempt to find the first defining occurrence of an+-- identifier (function, datatype, class) in a Haskell source file.+-- Rather than parse the module properly, we try to get by with just+-- a finite state automaton.  Keeping a record of identifiers we+-- have already seen, we look at the beginning of every line to see+-- if it starts with the right tokens to introduce a defn.  If so,+-- we look a little bit further until we can be certain.  Then plonk+-- (or not) an anchor at the beginning of the line.++type Anchor = String++-- | 'insertAnchors' places an anchor marker in the token stream before the+--   first defining occurrence of any identifier.  Here, /before/ means+--   immediately preceding its type signature, or preceding a (haddock)+--   comment that comes immediately before the type signature, or failing+--   either of those, before the first equation.+insertAnchors :: [(TokenType,String)] -> [Either Anchor (TokenType,String)]+insertAnchors = anchor emptyST++-- looks at first token in the left-most position of each line+-- precondition: have just seen a newline token.+anchor st s = case identifier st s of+                Nothing -> emit st s+                Just v  -> Left v: emit (insertST v st) s++-- emit passes stuff through until the next newline has been encountered,+-- then jumps back into the anchor function+-- pre-condition: newlines are explicitly single tokens+emit st (t@(Space,"\n"):stream) = Right t: anchor st stream+emit st (t:stream)              = Right t: emit st stream+emit _  []                      = []++-- Given that we are at the beginning of a line, determine whether there+-- is an identifier defined here, and if so, return it.+-- precondition: have just seen a newline token.+identifier st t@((Varid,v):stream) =+    case skip stream of+        ((Varop,v):_) | not (v`inST`st) -> Just (fix v)+        notVarop  --  | typesig stream  -> Nothing    -- not a defn+                      | v `inST` st     -> Nothing    -- already defined+                      | otherwise       -> Just v+identifier st t@((Layout,"("):stream) =+    case stream of+      ((Varop,v):(Layout,")"):_)+                  --  | typesig stream  -> Nothing+	              | v `inST` st     -> Nothing+	              | otherwise	-> Just (fix v)+      notVarop -> case skip (munchParens stream) of+          ((Varop,v):_) | not (v`inST`st) -> Just (fix v)+          _             -> Nothing+identifier st t@((Keyword,"foreign"):stream) = Nothing -- not yet implemented+identifier st t@((Keyword,"data"):stream)    = getConid stream+identifier st t@((Keyword,"type"):stream)    = getConid stream+identifier st t@((Keyword,"class"):stream)   = getConid stream+identifier st t@((Comment,_):(Space,"\n"):stream) = identifier st stream+identifier st stream = Nothing++-- Is this really a type signature?  (no longer used)+typesig :: [(TokenType,String)] -> Bool+typesig ((Keyglyph,"::"):_)   = True+typesig ((Varid,_):stream)    = typesig stream+typesig ((Layout,"("):(Varop,_):(Layout,")"):stream)    = typesig stream+typesig ((Layout,","):stream) = typesig stream+typesig ((Space,_):stream)    = typesig stream+typesig ((Comment,_):stream)  = typesig stream+typesig _                     = False++-- throw away everything from opening paren to matching close+munchParens =  munch (0::Int)	-- already seen open paren+  where munch 0 ((Layout,")"):rest) = rest+        munch n ((Layout,")"):rest) = munch (n-1) rest+        munch n ((Layout,"("):rest) = munch (n+1) rest+        munch n (_:rest)            = munch n rest+        munch _ []                  = []	-- source is ill-formed++-- ensure anchor name is correct for a Varop+fix ('`':v) = init v+fix v       = v++-- look past whitespace and comments to next "real" token+skip ((Space,_):stream)   = skip stream+skip ((Comment,_):stream) = skip stream+skip stream               = stream++-- skip possible context up to and including "=>", returning next Conid token+-- (this function is highly partial - relies on source being parse-correct)+getConid stream =+    case skip stream of+        ((Conid,c):rest) -> case context rest of+                              ((Keyglyph,"="):_)     -> Just c+                              ((Keyglyph,"=>"):more) ->+                                  case skip more of+                                      ((Conid,c'):_) -> Just c'+                                      v -> debug v ("Conid "++c++" =>")+                              v -> debug v ("Conid "++c++" no = or =>")+        ((Layout,"("):rest) -> case context rest of+                                   ((Keyglyph,"=>"):more) ->+                                       case skip more of+                                           ((Conid,c'):_) -> Just c'+                                           v -> debug v ("(...) =>")+                                   v -> debug v ("(...) no =>")+        v -> debug v ("no Conid or (...)")+    where debug (s:t) c = Nothing+       -- debug (s:t) c = error ("HsColour: getConid failed: "++show s+       --                       ++"\n  in the context of: "++c)++-- jump past possible class context+context stream@((Keyglyph,"="):_) = stream+context stream@((Keyglyph,"=>"):_) = stream+context (_:stream) = context stream++-- simple implementation of a string lookup table.+-- replace this with something more sophisticated if needed.+type ST = [String]++emptyST :: ST+emptyST = []++insertST :: String -> ST -> ST+insertST k st = insert k st++inST :: String -> ST -> Bool+inST k st = k `elem` st
+ Language/Haskell/HsColour/CSS.hs view
@@ -0,0 +1,65 @@+-- | Formats Haskell source code as HTML with CSS.+module Language.Haskell.HsColour.CSS (hscolour, hscolourFragment) where++import Language.Haskell.HsColour.Anchors+import Language.Haskell.HsColour.Classify as Classify+import Language.Haskell.HsColour.HTML (renderAnchors, renderComment, escape)++-- | Formats Haskell source code as a complete HTML document with CSS.+hscolour :: Bool   -- ^ Whether to include anchors+         -> String -- ^ Haskell source code.+         -> String -- ^ An HTML document containing the coloured +                   --   Haskell source code.+hscolour anchor = top'n'tail . hscolourFragment anchor++-- | Formats Haskell source code as an HTML fragment with CSS.+--   No stylesheet link is included in the output.+hscolourFragment :: Bool   -- ^ Whether to include anchors+                 -> String -- ^ Haskell source code.+                 -> String -- ^ An HTML fragment containing the coloured +                           --   Haskell source code.+hscolourFragment anchor = +    pre . (if anchor +           then concatMap (renderAnchors renderToken) . insertAnchors+           else concatMap renderToken) . tokenise++top'n'tail :: String -> String+top'n'tail  = (cssPrefix++) . (++cssSuffix)++pre :: String -> String+pre = ("<pre>"++) . (++"</pre>")++renderToken :: (TokenType,String) -> String+renderToken (Space,text) = text+renderToken (cls,text)   = "<span class='" ++ cssClass cls ++ "'>" +++                           (if cls == Comment then renderComment text else escape text) +++                           "</span>"++cssClass Keyword  = "keyword"+cssClass Keyglyph = "keyglyph"+cssClass Layout   = "layout"+cssClass Comment  = "comment"+cssClass Conid    = "conid"+cssClass Varid    = "varid"+cssClass Conop    = "conop"+cssClass Varop    = "varop"+cssClass String   = "str"+cssClass Char     = "chr"+cssClass Number   = "num"+cssClass Error    = "sel"++cssPrefix = unlines+    ["<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"+    ,"<html>"+    ,"<head>"+    ,"<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->"+    ,"<title>Haskell Code by HsColour</title>"+    ,"<link type='text/css' rel='stylesheet' href='hscolour.css' />"+    ,"</head>"+    ,"<body>"+    ]+    +cssSuffix = unlines+    ["</body>"+    ,"</html>"+    ]
+ Language/Haskell/HsColour/Classify.hs view
@@ -0,0 +1,99 @@+module Language.Haskell.HsColour.Classify+  ( TokenType(..)+  , tokenise+  ) where++import Char+import List++-- Lex Haskell source code into an annotated token stream, without+-- discarding any characters or layout.+tokenise :: String -> [(TokenType,String)]+tokenise = map (\s-> (classify s,s)) . glue . chunk++-- Basic Haskell lexing, except we keep whitespace.+chunk :: String -> [String]+chunk []    = []+chunk ('\r':s) = chunk s -- get rid of DOS newline stuff+chunk ('\n':s) = "\n": chunk s+chunk (c:s) | isLinearSpace c+            = (c:ss): chunk rest where (ss,rest) = span isLinearSpace s+chunk ('{':'-':s) = let (com,s') = nestcomment 0 s+                    in ('{':'-':com) : chunk s'+chunk s = case Prelude.lex s of+              []             -> [head s]: chunk (tail s) -- e.g. inside comment+              ((tok@('-':'-':_),rest):_)+                  | all (=='-') tok -> (tok++com): chunk s'+                                       where (com,s') = eolcomment rest+              ((tok,rest):_) -> tok: chunk rest++isLinearSpace c = c `elem` " \t" -- " \t\xa0"++-- Glue sequences of tokens into more useful blobs+--glue (q:".":n:rest) | Char.isUpper (head q)	-- qualified names+--                    = glue ((q++"."++n): rest)+glue ("`":rest) =				-- `varid` -> varop+  case glue rest of+    (qn:"`":rest) -> ("`"++qn++"`"): glue rest+    _             -> ("`": rest)+glue (s:ss)       | all (=='-') s && length s >=2	-- eol comment+                  = (s++concat c): glue rest+                  where (c,rest) = break ('\n'`elem`) ss+--glue ("{":"-":ss)  = ("{-"++c): glue rest	-- nested comment+--                  where (c,rest) = nestcomment 0 ss+glue (s:ss)       = s: glue ss+glue []           = []++-- Deal with comments.+nestcomment :: Int -> String -> (String,String)+nestcomment n ('{':'-':ss) | n>=0 = (("{-"++cs),rm)+                                  where (cs,rm) = nestcomment (n+1) ss+nestcomment n ('-':'}':ss) | n>0  = (("-}"++cs),rm)+                                  where (cs,rm) = nestcomment (n-1) ss+nestcomment n ('-':'}':ss) | n==0 = ("-}",ss)+nestcomment n (s:ss)       | n>=0 = ((s:cs),rm)+                                  where (cs,rm) = nestcomment n ss+nestcomment n [] = ([],[])++eolcomment :: String -> (String,String)+eolcomment s@('\n':_) = ([], s)+eolcomment (c:s)      = (c:cs, s') where (cs,s') = eolcomment s+eolcomment []         = ([],[])++-- Classify tokens+data TokenType =+  Space | Keyword | Keyglyph | Layout | Comment | Conid | Varid |+  Conop | Varop   | String   | Char   | Number  | Error+  deriving (Eq,Show)++classify :: String -> TokenType+classify s@(h:_)+    | isSpace h              = Space+    | all (=='-') s          = Comment+    | "--" `isPrefixOf` s+      && any isSpace s       = Comment		-- not fully correct+    | "{-" `isPrefixOf` s    = Comment+    | s `elem` keywords      = Keyword+    | s `elem` keyglyphs     = Keyglyph+    | s `elem` layoutchars   = Layout+    | isUpper h              = Conid+    | isLower h              = Varid+    | h `elem` symbols       = Varop+    | h==':'                 = Conop+    | h=='`'                 = Varop+    | h=='"'                 = String+    | h=='\''                = Char+    | isDigit h              = Number+    | otherwise              = Error++-- Haskell keywords+keywords =+  ["case","class","data","default","deriving","do","else"+  ,"if","import","in","infix","infixl","infixr","instance","let","module"+  ,"newtype","of","then","type","where","_","foreign","ccall","as"]+keyglyphs =+  ["..","::","=","\\","|","<-","->","@","~","=>","[","]"]+layoutchars =+  map (:[]) ";{}(),"+symbols =+  "!#$%&*+./<=>?@\\^|-~"
+ Language/Haskell/HsColour/ColourHighlight.hs view
@@ -0,0 +1,20 @@+module Language.Haskell.HsColour.ColourHighlight+  ( Colour(..)+  , Highlight(..)+  ) where++data Colour = Black | Red | Green | Yellow | Blue | Magenta | Cyan | White+  deriving (Eq,Show,Read,Enum)++data Highlight =+    Normal+  | Bold+  | Dim+  | Underscore+  | Blink+  | ReverseVideo+  | Concealed+  | Foreground Colour+  | Background Colour+  deriving (Eq,Show,Read)+
+ Language/Haskell/HsColour/Colourise.hs view
@@ -0,0 +1,64 @@+module Language.Haskell.HsColour.Colourise+  ( module Language.Haskell.HsColour.ColourHighlight+  , ColourPrefs(..)+  , readColourPrefs+  , colourise+  ) where++import Language.Haskell.HsColour.ColourHighlight+import Language.Haskell.HsColour.Classify (TokenType(..))++import System (getEnv)+import Char+import List++-- | Colour preferences.+data ColourPrefs = ColourPrefs+  { keyword, keyglyph, layout, comment+  , conid, varid, conop, varop+  , string, char, number+  , selection, variantselection :: [Highlight]+  } deriving (Eq,Show,Read)++defaultColourPrefs = ColourPrefs+  { keyword  = [Foreground Green,Underscore]+  , keyglyph = [Foreground Red]+  , layout   = [Foreground Cyan]+  , comment  = [Foreground Blue]+  , conid    = [Normal]+  , varid    = [Normal]+  , conop    = [Foreground Red,Bold]+  , varop    = [Foreground Cyan]+  , string   = [Foreground Magenta]+  , char     = [Foreground Magenta]+  , number   = [Foreground Magenta]+  , selection = [Bold, Foreground Magenta]+  , variantselection = [Dim, Foreground Red, Underscore]+  }++readColourPrefs :: IO ColourPrefs+readColourPrefs = catch+  (do val <- readFile ".hscolour"+      return (read val))+  (\e-> catch+    (do home <- getEnv "HOME"+        val <- readFile (home++"/.hscolour")+        return (read val))+    (\e-> return defaultColourPrefs))++-- Convert classification to colour highlights.+colourise :: ColourPrefs -> TokenType -> [Highlight]+colourise pref Space    = [Normal]+colourise pref Comment  = comment pref+colourise pref Keyword  = keyword pref+colourise pref Keyglyph = keyglyph pref+colourise pref Layout   = layout pref+colourise pref Conid    = conid pref+colourise pref Varid    = varid pref+colourise pref Conop    = conop pref+colourise pref Varop    = varop pref+colourise pref String   = string pref+colourise pref Char     = char pref+colourise pref Number   = number pref+colourise pref Error    = selection pref+
+ Language/Haskell/HsColour/HTML.hs view
@@ -0,0 +1,68 @@+-- | Formats Haskell source code using HTML with font tags.+module Language.Haskell.HsColour.HTML +    (hscolour, +     -- * Internals+     renderAnchors, renderComment, escape) where++import Language.Haskell.HsColour.Anchors+import Language.Haskell.HsColour.Classify as Classify+import Language.Haskell.HsColour.Colourise++import Data.Char(isAlphaNum)+++-- | Formats Haskell source code using HTML with font tags.+hscolour :: ColourPrefs -- ^ Colour preferences.+         -> Bool        -- ^ Whether to include anchors+         -> String      -- ^ Haskell source code.+         -> String      -- ^ Coloured Haskell source code.+hscolour pref anchor = +    top'n'tail . (if anchor then concatMap (renderAnchors (renderToken pref)) +                                   . insertAnchors+                            else concatMap (renderToken pref)) . tokenise++top'n'tail :: String -> String+top'n'tail = ("<pre>"++) . (++"</pre>")++renderToken :: ColourPrefs -> (TokenType,String) -> String+renderToken pref (t,s) = fontify (colourise pref t)+                         (if t == Comment then renderComment s else escape s)++renderAnchors :: ((TokenType,String)->String)+                 -> Either String (TokenType,String) -> String+renderAnchors _      (Left v) = "<a name=\""++v++"\"></a>"+renderAnchors render (Right r) = render r++-- if there are http://links/ in a comment, turn them into+-- hyperlinks+renderComment :: String -> String+renderComment xs@('h':'t':'t':'p':':':'/':'/':_) =+        renderLink a ++ renderComment b+    where+        -- see http://www.gbiv.com/protocols/uri/rfc/rfc3986.html#characters+        isUrlChar x = isAlphaNum x || x `elem` ":/?#[]@!$&'()*+,;=-._~%"+        (a,b) = span isUrlChar xs+        renderLink link = "<a href=\"" ++ link ++ "\">" ++ escape link ++ "</a>"+        +renderComment (x:xs) = escape [x] ++ renderComment xs+renderComment [] = []++-- Html stuff+fontify [] s     = s+fontify (h:hs) s = font h (fontify hs s)++font Normal         s = s+font Bold           s = "<b>"++s++"</b>"+font Dim            s = "<em>"++s++"</em>"+font Underscore     s = "<u>"++s++"</u>"+font Blink          s = "<blink>"++s++"</blink>"+font ReverseVideo   s = s+font Concealed      s = s+font (Foreground c) s = "<font color="++show c++">"++s++"</font>"+font (Background c) s = "<font bgcolor="++show c++">"++s++"</font>"++escape ('<':cs) = "&lt;"++escape cs+escape ('>':cs) = "&gt;"++escape cs+escape ('&':cs) = "&amp;"++escape cs+escape (c:cs)   = c: escape cs+escape []       = []
+ Language/Haskell/HsColour/LaTeX.hs view
@@ -0,0 +1,111 @@+-- | Formats Haskell source code using LaTeX macros.+module Language.Haskell.HsColour.LaTeX (hscolour, hscolourFragment) where++import Language.Haskell.HsColour.Classify as Classify+import Language.Haskell.HsColour.Colourise++-- | Formats Haskell source code as a complete LaTeX document.+hscolour :: ColourPrefs -- ^ Colour preferences.+         -> String      -- ^ Haskell source code.+         -> String      -- ^ An LaTeX document containing the coloured +                        --   Haskell source code.+hscolour pref = top'n'tail . hscolourFragment pref++-- | Formats Haskell source code as an LaTeX fragment.+hscolourFragment :: ColourPrefs -- ^ Colour preferences.+                 -> String -- ^ Haskell source code.+                 -> String -- ^ An LaTeX fragment containing the coloured +                           --   Haskell source code.+hscolourFragment pref = concatMap (renderToken pref) . tokenise++top'n'tail :: String -> String+top'n'tail  = (latexPrefix++) . (++latexSuffix)++-- | Wrap each lexeme in the appropriate LaTeX macro.+--   TODO: filter dangerous characters like "{}_$"+renderToken :: ColourPrefs -> (TokenType,String) -> String+renderToken pref (Space,text) = filterSpace text+renderToken pref (cls,text)   = let +	symb = case cls of+		String -> "``" ++ (reverse . tail . reverse . tail $ text) ++ "''"+		_      -> text+	style = colourise pref cls+	(pre, post) = unzip $ map latexHighlight style in+	(concat pre) ++ filterSpecial symb ++ (concat post) ++-- | Filter white space characters.+filterSpace :: String+            -> String+filterSpace ('\n':ss) = '\\':'\\':(filterSpace ss)+filterSpace (' ':ss)  = "\\hsspace "++(filterSpace ss)+filterSpace ('\t':ss) = "\\hstab "++(filterSpace ss)+filterSpace (c:ss)    = c:(filterSpace ss)+filterSpace []        = []++-- | Filters the characters "#$%&~_^\{}" which are special+--   in LaTeX.+filterSpecial :: String  -- ^ The string to filter. +              -> String  -- ^ The LaTeX-safe string.+filterSpecial ('#':cs)  = '\\':'#':(filterSpecial cs)+filterSpecial ('$':cs)  = '\\':'$':(filterSpecial cs)+filterSpecial ('%':cs)  = '\\':'%':(filterSpecial cs)+filterSpecial ('&':cs)  = '\\':'&':(filterSpecial cs)+filterSpecial ('~':cs)  = "\\tilde{ }"++(filterSpecial cs)+filterSpecial ('_':cs)  = '\\':'_':(filterSpecial cs)+filterSpecial ('^':cs)  = "\\hat{ }"++(filterSpecial cs)+filterSpecial ('\\':cs) = "$\\backslash$"++(filterSpecial cs)+filterSpecial ('{':cs)  = '\\':'{':(filterSpecial cs)+filterSpecial ('}':cs)  = '\\':'}':(filterSpecial cs)+filterSpecial ('|':cs)  = "\\ensuremath{|}"++(filterSpecial cs)+filterSpecial ('<':'-':cs)  = "\\ensuremath{\\leftarrow}"++(filterSpecial cs)+filterSpecial ('<':cs)  = "\\ensuremath{\\langle}"++(filterSpecial cs)+filterSpecial ('-':'>':cs)  = "\\ensuremath{\\rightarrow}"++(filterSpecial cs)+filterSpecial ('>':cs)  = "\\ensuremath{\\rangle}"++(filterSpecial cs)+filterSpecial (c:cs)    = c:(filterSpecial cs)+filterSpecial []        = []+++-- | Constructs the appropriate LaTeX macro for the given style.+latexHighlight :: Highlight -> (String, String)+latexHighlight Normal         = ("{\\rm{}", "}")+latexHighlight Bold           = ("{\\bf{}", "}")+latexHighlight Dim            = ("", "")+latexHighlight Underscore     = ("\\underline{", "}")+latexHighlight Blink          = ("", "")+latexHighlight ReverseVideo   = ("", "")+latexHighlight Concealed      = ("\\conceal{", "}")+latexHighlight (Foreground c) = ("\\textcolor{"++ latexColour c ++"}{", "}")+latexHighlight (Background c) = ("\\colorbox{"++ latexColour c ++"}{", "}")++-- | Translate a 'Colour' into a LaTeX colour name.+latexColour :: Colour -> String+latexColour Black   = "black"+latexColour Red     = "red"+latexColour Green   = "green"+latexColour Yellow  = "yellow"+latexColour Blue    = "blue"+latexColour Magenta = "magenta"+latexColour Cyan    = "cyan"+latexColour White   = "white"++-- | Generic LaTeX document preamble.+latexPrefix = unlines+    ["\\documentclass[a4paper, 12pt]{article}"+    ,"\\usepackage[usenames]{color}"+    ,"\\usepackage{hyperref}"+    ,"\\newsavebox{\\spaceb}"+    ,"\\newsavebox{\\tabb}"+    ,"\\savebox{\\spaceb}[1ex]{~}"+    ,"\\savebox{\\tabb}[4ex]{~}"+    ,"\\newcommand{\\hsspace}{\\usebox{\\spaceb}}"+    ,"\\newcommand{\\hstab}{\\usebox{\\tabb}}"+    ,"\\newcommand{\\conceal}[1]{}"+    ,"\\begin{document}"+    ,"\\noindent"+    ]++-- | Generic LaTeX document postamble.+latexSuffix = unlines+    [""+    ,"\\end{document}"+    ]
+ Language/Haskell/HsColour/TTY.hs view
@@ -0,0 +1,15 @@+-- | Highlights Haskell code with ANSI terminal codes.+module Language.Haskell.HsColour.TTY (hscolour) where++import Language.Haskell.HsColour.ANSI as ANSI+import Language.Haskell.HsColour.Classify+import Language.Haskell.HsColour.Colourise++-- | Highlights Haskell code with ANSI terminal codes.+hscolour :: ColourPrefs -- ^ Colour preferences.+         -> String      -- ^ Haskell source code.+         -> String      -- ^ Coloured Haskell source code.+hscolour pref = concatMap (renderToken pref) . tokenise++renderToken :: ColourPrefs -> (TokenType,String) -> String+renderToken pref (t,s) = ANSI.highlight (colourise pref t) s
+ Makefile view
@@ -0,0 +1,47 @@+LIBRARY	= hscolour+VERSION	= 1.6++DIRS	= Language/Haskell/HsColour++SRCS	= Language/Haskell/HsColour.hs \+	  Language/Haskell/HsColour/ANSI.hs \+	  Language/Haskell/HsColour/Anchors.hs \+	  Language/Haskell/HsColour/CSS.hs \+	  Language/Haskell/HsColour/Classify.hs \+	  Language/Haskell/HsColour/ColourHighlight.hs \+	  Language/Haskell/HsColour/Colourise.hs \+	  Language/Haskell/HsColour/HTML.hs \+	  Language/Haskell/HsColour/LaTeX.hs \+	  Language/Haskell/HsColour/TTY.hs++AUX	= README LICENCE* $(LIBRARY).cabal Setup.hs Makefile \+	  HsColour.hs hscolour.css .hscolour \+	  index.html docs/*++#all: $(LIBRARY)+executable: $(SRCS) HsColour.hs+	ghc --make HsColour+	mv a.out $(LIBRARY)+package:+	tar cf tmp.tar $(SRCS) $(AUX)+	mkdir $(LIBRARY)-$(VERSION)+	cd $(LIBRARY)-$(VERSION); tar xf ../tmp.tar+	tar zcf $(LIBRARY)-$(VERSION).tar.gz $(LIBRARY)-$(VERSION)+	zip -r $(LIBRARY)-$(VERSION).zip $(LIBRARY)-$(VERSION)+	rm -r tmp.tar $(LIBRARY)-$(VERSION)+haddock: $(SRCS)+	mkdir -p docs/$(LIBRARY)+	for dir in $(DIRS); do mkdir -p docs/$(LIBRARY)/$$dir; done+	for file in $(SRCS); \+	    do HsColour -anchorHTML $$file \+	          >docs/$(LIBRARY)/`dirname $$file`/`basename $$file .hs`.html;\+	    done+	haddock --html --title=$(LIBRARY) --odir=docs/$(LIBRARY) \+	    --package=$(LIBRARY) \+	    --source-module="%{MODULE/.//}.html" \+	    --source-entity="%{MODULE/.//}.html#%{NAME}" \+	    $(SRCS)++$(LIBRARY): $(SRCS)+	$(HC) $(HFLAGS) $(HEAP) -o $@  $(SRCS)+	$(STRIP) $@
+ README view
@@ -0,0 +1,55 @@+HsColour: A Haskell source-code colouriser.+-------------------------------------------+Copyright:  2003-2006, Malcolm Wallace, University of York+Licence:    GPL++Building:+    hmake HsColour+or+    ghc --make HsColour++Usage:+    HsColour [ -tty | -html | -css | -anchorHTML | -anchorCSS ] [file.hs]++The program can colourise a Haskell source file for either terminal+output (option -tty) or HTML output with font tags (option -html), or+HTML output with CSS (option -css).  The default is for terminal output,+which uses standard ANSI screen codes for the colours.++If no file argument is given, it reads standard input.  Output is+always written to standard output.++HsColour can add named anchors (with -anchorHTML or -anchorCSS) to+top-level definitions in the source file (functions, datatypes,+classes).  This enables you to make links to a specific location in the+generated file with the standard "file.html#anchor" notation.++You can configure the colours for different lexical entities by+editing a configuration file called .hscolour in the current directory.+(An example is included in the distribution.)  The file format is as+a simple Haskell value of type ColourPrefs, constructed using named+fields, as follows:++  data ColourPrefs = ColourPrefs+    { keyword, keyglyph, layout, comment+    , conid, varid, conop, varop+    , string, char, number+    , selection, variantselection :: [Highlight]+    }++  data Colour = Black | Red | Green | Yellow | Blue | Magenta | Cyan | White++  data Highlight =+      Normal+    | Bold+    | Dim+    | Underscore+    | Blink+    | ReverseVideo+    | Concealed+    | Foreground Colour+    | Background Colour++For CSS output, it is sufficient to edit the hscolour.css file, also in+the distribution.+
+ Setup.hs view
@@ -0,0 +1,4 @@+#!/usr/bin/env runghc++import Distribution.Simple+main = defaultMain
+ docs/hscolour/Language-Haskell-HsColour-ANSI.html view
@@ -0,0 +1,532 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.ANSI</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/ANSI.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.ANSI</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Ahighlight"+></A+><B+>highlight</B+> :: [<A HREF="Language-Haskell-HsColour-ANSI.html#t%3AHighlight"+>Highlight</A+>] -&gt; String -&gt; String</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#highlight"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Acls"+></A+><B+>cls</B+> :: String</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#cls"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Agoto"+></A+><B+>goto</B+> :: Int -&gt; Int -&gt; String</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#goto"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AHighlight"+></A+><B+>Highlight</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#Highlight"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3ANormal"+></A+><B+>Normal</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABold"+></A+><B+>Bold</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ADim"+></A+><B+>Dim</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AUnderscore"+></A+><B+>Underscore</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABlink"+></A+><B+>Blink</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AReverseVideo"+></A+><B+>ReverseVideo</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AConcealed"+></A+><B+>Concealed</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AForeground"+></A+><B+>Foreground</B+> <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABackground"+></A+><B+>Background</B+> <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+></TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Highlight')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:Highlight" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Enum <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AHighlight"+>Highlight</A+></TD+></TR+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AHighlight"+>Highlight</A+></TD+></TR+><TR+><TD CLASS="decl"+>Read <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AHighlight"+>Highlight</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AHighlight"+>Highlight</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AColour"+></A+><B+>Colour</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#Colour"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3ABlack"+></A+><B+>Black</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ARed"+></A+><B+>Red</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AGreen"+></A+><B+>Green</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AYellow"+></A+><B+>Yellow</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABlue"+></A+><B+>Blue</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AMagenta"+></A+><B+>Magenta</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ACyan"+></A+><B+>Cyan</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AWhite"+></A+><B+>White</B+></TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Colour')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:Colour" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Enum <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+></TD+></TR+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+></TD+></TR+><TR+><TD CLASS="decl"+>Read <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AcolourCycle"+></A+><B+>colourCycle</B+> :: [<A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Colour</A+>]</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#colourCycle"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AenableScrollRegion"+></A+><B+>enableScrollRegion</B+> :: Int -&gt; Int -&gt; String</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ANSI.html#enableScrollRegion"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-Anchors.html view
@@ -0,0 +1,155 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.Anchors</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/Anchors.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.Anchors</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><A HREF="#v%3AinsertAnchors"+>insertAnchors</A+> :: [(<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String)] -&gt; [Either Anchor (<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String)]</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AinsertAnchors"+></A+><B+>insertAnchors</B+> :: [(<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String)] -&gt; [Either Anchor (<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String)]</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/Anchors.html#insertAnchors"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><TT+><A HREF="Language-Haskell-HsColour-Anchors.html#v%3AinsertAnchors"+>insertAnchors</A+></TT+> places an anchor marker in the token stream before the+   first defining occurrence of any identifier.  Here, <EM+>before</EM+> means+   immediately preceding its type signature, or preceding a (haddock)+   comment that comes immediately before the type signature, or failing+   either of those, before the first equation.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-CSS.html view
@@ -0,0 +1,240 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.CSS</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/CSS.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.CSS</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+>Formats Haskell source code as HTML with CSS.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><A HREF="#v%3Ahscolour"+>hscolour</A+> :: Bool -&gt; String -&gt; String</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhscolourFragment"+>hscolourFragment</A+> :: Bool -&gt; String -&gt; String</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Ahscolour"+></A+><B+>hscolour</B+></TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/CSS.html#hscolour"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="arg"+>:: Bool</TD+><TD CLASS="rdoc"+>Whether to include anchors+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Haskell source code.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>An HTML document containing the coloured +   Haskell source code.+</TD+></TR+><TR+><TD CLASS="ndoc" COLSPAN="2"+>Formats Haskell source code as a complete HTML document with CSS.+</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhscolourFragment"+></A+><B+>hscolourFragment</B+></TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/CSS.html#hscolourFragment"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="arg"+>:: Bool</TD+><TD CLASS="rdoc"+>Whether to include anchors+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Haskell source code.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>An HTML fragment containing the coloured +   Haskell source code.+</TD+></TR+><TR+><TD CLASS="ndoc" COLSPAN="2"+>Formats Haskell source code as an HTML fragment with CSS.+   No stylesheet link is included in the output.+</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-Classify.html view
@@ -0,0 +1,309 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.Classify</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/Classify.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.Classify</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3ATokenType"+></A+><B+>TokenType</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/Classify.html#TokenType"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3ASpace"+></A+><B+>Space</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AKeyword"+></A+><B+>Keyword</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AKeyglyph"+></A+><B+>Keyglyph</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ALayout"+></A+><B+>Layout</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AComment"+></A+><B+>Comment</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AConid"+></A+><B+>Conid</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AVarid"+></A+><B+>Varid</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AConop"+></A+><B+>Conop</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AVarop"+></A+><B+>Varop</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AString"+></A+><B+>String</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AChar"+></A+><B+>Char</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ANumber"+></A+><B+>Number</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AError"+></A+><B+>Error</B+></TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:TokenType')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:TokenType" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Atokenise"+></A+><B+>tokenise</B+> :: String -&gt; [(<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String)]</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/Classify.html#tokenise"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-ColourHighlight.html view
@@ -0,0 +1,418 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.ColourHighlight</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/ColourHighlight.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.ColourHighlight</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AColour"+></A+><B+>Colour</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ColourHighlight.html#Colour"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3ABlack"+></A+><B+>Black</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ARed"+></A+><B+>Red</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AGreen"+></A+><B+>Green</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AYellow"+></A+><B+>Yellow</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABlue"+></A+><B+>Blue</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AMagenta"+></A+><B+>Magenta</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ACyan"+></A+><B+>Cyan</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AWhite"+></A+><B+>White</B+></TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Colour')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:Colour" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Enum <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Colour</A+></TD+></TR+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Colour</A+></TD+></TR+><TR+><TD CLASS="decl"+>Read <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Colour</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Colour</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AHighlight"+></A+><B+>Highlight</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/ColourHighlight.html#Highlight"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3ANormal"+></A+><B+>Normal</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABold"+></A+><B+>Bold</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ADim"+></A+><B+>Dim</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AUnderscore"+></A+><B+>Underscore</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABlink"+></A+><B+>Blink</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AReverseVideo"+></A+><B+>ReverseVideo</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AConcealed"+></A+><B+>Concealed</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AForeground"+></A+><B+>Foreground</B+> <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Colour</A+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ABackground"+></A+><B+>Background</B+> <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Colour</A+></TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Highlight')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:Highlight" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Enum <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+></TD+></TR+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+></TD+></TR+><TR+><TD CLASS="decl"+>Read <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-Colourise.html view
@@ -0,0 +1,400 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.Colourise</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/Colourise.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.Colourise</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+>module <A HREF="Language-Haskell-HsColour-ColourHighlight.html"+>Language.Haskell.HsColour.ColourHighlight</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>data</SPAN+> <A HREF="#t%3AColourPrefs"+>ColourPrefs</A+>  = <A HREF="#v%3AColourPrefs"+>ColourPrefs</A+> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="recfield"+><A HREF="#v%3Akeyword"+>keyword</A+>, <A HREF="#v%3Akeyglyph"+>keyglyph</A+>, <A HREF="#v%3Alayout"+>layout</A+>, <A HREF="#v%3Acomment"+>comment</A+>, <A HREF="#v%3Aconid"+>conid</A+>, <A HREF="#v%3Avarid"+>varid</A+>, <A HREF="#v%3Aconop"+>conop</A+>, <A HREF="#v%3Avarop"+>varop</A+>, <A HREF="#v%3Astring"+>string</A+>, <A HREF="#v%3Achar"+>char</A+>, <A HREF="#v%3Anumber"+>number</A+>, <A HREF="#v%3Aselection"+>selection</A+>, <A HREF="#v%3Avariantselection"+>variantselection</A+> :: [<A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+>]</TD+></TR+></TABLE+>}</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AreadColourPrefs"+>readColourPrefs</A+> :: IO <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Acolourise"+>colourise</A+> :: <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+> -&gt; <A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+> -&gt; [<A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+>]</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="decl"+>module <A HREF="Language-Haskell-HsColour-ColourHighlight.html"+>Language.Haskell.HsColour.ColourHighlight</A+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AColourPrefs"+></A+><B+>ColourPrefs</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/Colourise.html#ColourPrefs"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="ndoc"+>Colour preferences.+</TD+></TR+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3AColourPrefs"+></A+><B+>ColourPrefs</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="body" COLSPAN="2"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3Akeyword"+></A+><B+>keyword</B+>, <A NAME="v%3Akeyglyph"+></A+><B+>keyglyph</B+>, <A NAME="v%3Alayout"+></A+><B+>layout</B+>, <A NAME="v%3Acomment"+></A+><B+>comment</B+>, <A NAME="v%3Aconid"+></A+><B+>conid</B+>, <A NAME="v%3Avarid"+></A+><B+>varid</B+>, <A NAME="v%3Aconop"+></A+><B+>conop</B+>, <A NAME="v%3Avarop"+></A+><B+>varop</B+>, <A NAME="v%3Astring"+></A+><B+>string</B+>, <A NAME="v%3Achar"+></A+><B+>char</B+>, <A NAME="v%3Anumber"+></A+><B+>number</B+>, <A NAME="v%3Aselection"+></A+><B+>selection</B+>, <A NAME="v%3Avariantselection"+></A+><B+>variantselection</B+> :: [<A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+>]</TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ColourPrefs')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:ColourPrefs" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+><TR+><TD CLASS="decl"+>Read <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AreadColourPrefs"+></A+><B+>readColourPrefs</B+> :: IO <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/Colourise.html#readColourPrefs"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Acolourise"+></A+><B+>colourise</B+> :: <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+> -&gt; <A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+> -&gt; [<A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+>]</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/Colourise.html#colourise"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-HTML.html view
@@ -0,0 +1,284 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.HTML</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/HTML.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.HTML</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+><B+>Contents</B+></TD+></TR+><TR+><TD+><DL+><DT+><A HREF="#1"+>Internals+</A+></DT+></DL+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+>Formats Haskell source code using HTML with font tags.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><A HREF="#v%3Ahscolour"+>hscolour</A+> :: <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+> -&gt; Bool -&gt; String -&gt; String</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3ArenderAnchors"+>renderAnchors</A+> :: ((<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String) -&gt; String) -&gt; Either String (<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String) -&gt; String</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3ArenderComment"+>renderComment</A+> :: String -&gt; String</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Ahscolour"+></A+><B+>hscolour</B+></TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/HTML.html#hscolour"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="arg"+>:: <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+><TD CLASS="rdoc"+>Colour preferences.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; Bool</TD+><TD CLASS="rdoc"+>Whether to include anchors+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Haskell source code.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Coloured Haskell source code.+</TD+></TR+><TR+><TD CLASS="ndoc" COLSPAN="2"+>Formats Haskell source code using HTML with font tags.+</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+><A NAME="1"+>Internals+</A+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3ArenderAnchors"+></A+><B+>renderAnchors</B+> :: ((<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String) -&gt; String) -&gt; Either String (<A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>TokenType</A+>, String) -&gt; String</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/HTML.html#renderAnchors"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3ArenderComment"+></A+><B+>renderComment</B+> :: String -&gt; String</TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/HTML.html#renderComment"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour-TTY.html view
@@ -0,0 +1,177 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour.TTY</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour/TTY.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour.TTY</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+>Highlights Haskell code with ANSI terminal codes.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><A HREF="#v%3Ahscolour"+>hscolour</A+> :: <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+> -&gt; String -&gt; String</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Ahscolour"+></A+><B+>hscolour</B+></TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour/TTY.html#hscolour"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="arg"+>:: <A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+><TD CLASS="rdoc"+>Colour preferences.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Haskell source code.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Coloured Haskell source code.+</TD+></TR+><TR+><TD CLASS="ndoc" COLSPAN="2"+>Highlights Haskell code with ANSI terminal codes.+</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language-Haskell-HsColour.html view
@@ -0,0 +1,549 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Language.Haskell.HsColour</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="Language/Haskell/HsColour.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Language.Haskell.HsColour</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+><P+>This is a library with colourises Haskell code. +   It currently has three output formats: +</P+><UL+><LI+> ANSI terminal codes+</LI+><LI+> LaTeX macros+</LI+><LI+> HTML with font tags+</LI+><LI+> HTML with CSS.+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>data</SPAN+> <A HREF="#t%3AOutput"+>Output</A+> </TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+>= <A HREF="#v%3ATTY"+>TTY</A+></TD+></TR+><TR+><TD CLASS="decl"+>| <A HREF="#v%3ALaTeX"+>LaTeX</A+></TD+></TR+><TR+><TD CLASS="decl"+>| <A HREF="#v%3AHTML"+>HTML</A+></TD+></TR+><TR+><TD CLASS="decl"+>| <A HREF="#v%3ACSS"+>CSS</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>data</SPAN+> <A HREF="#t%3AColourPrefs"+>ColourPrefs</A+>  = <A HREF="#v%3AColourPrefs"+>ColourPrefs</A+> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="recfield"+><A HREF="#v%3Akeyword"+>keyword</A+>, <A HREF="#v%3Akeyglyph"+>keyglyph</A+>, <A HREF="#v%3Alayout"+>layout</A+>, <A HREF="#v%3Acomment"+>comment</A+>, <A HREF="#v%3Aconid"+>conid</A+>, <A HREF="#v%3Avarid"+>varid</A+>, <A HREF="#v%3Aconop"+>conop</A+>, <A HREF="#v%3Avarop"+>varop</A+>, <A HREF="#v%3Astring"+>string</A+>, <A HREF="#v%3Achar"+>char</A+>, <A HREF="#v%3Anumber"+>number</A+>, <A HREF="#v%3Aselection"+>selection</A+>, <A HREF="#v%3Avariantselection"+>variantselection</A+> :: [<A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+>]</TD+></TR+></TABLE+>}</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Ahscolour"+>hscolour</A+> :: <A HREF="Language-Haskell-HsColour.html#t%3AOutput"+>Output</A+> -&gt; <A HREF="Language-Haskell-HsColour.html#t%3AColourPrefs"+>ColourPrefs</A+> -&gt; Bool -&gt; String -&gt; String</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AOutput"+></A+><B+>Output</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour.html#Output"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="ndoc"+>The supported output formats.+</TD+></TR+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3ATTY"+></A+><B+>TTY</B+></TD+><TD CLASS="rdoc"+>ANSI terminal codes+</TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ALaTeX"+></A+><B+>LaTeX</B+></TD+><TD CLASS="rdoc"+>TeX macros+</TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3AHTML"+></A+><B+>HTML</B+></TD+><TD CLASS="rdoc"+>HTML with font tags+</TD+></TR+><TR+><TD CLASS="arg"+><A NAME="v%3ACSS"+></A+><B+>CSS</B+></TD+><TD CLASS="rdoc"+>HTML with CSS.+</TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+> <A NAME="t%3AColourPrefs"+></A+><B+>ColourPrefs</B+> </TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour.html#ColourPrefs"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="ndoc"+>Colour preferences.+</TD+></TR+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3AColourPrefs"+></A+><B+>ColourPrefs</B+></TD+><TD CLASS="rdoc"+></TD+></TR+><TR+><TD CLASS="body" COLSPAN="2"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+><A NAME="v%3Akeyword"+></A+><B+>keyword</B+>, <A NAME="v%3Akeyglyph"+></A+><B+>keyglyph</B+>, <A NAME="v%3Alayout"+></A+><B+>layout</B+>, <A NAME="v%3Acomment"+></A+><B+>comment</B+>, <A NAME="v%3Aconid"+></A+><B+>conid</B+>, <A NAME="v%3Avarid"+></A+><B+>varid</B+>, <A NAME="v%3Aconop"+></A+><B+>conop</B+>, <A NAME="v%3Avarop"+></A+><B+>varop</B+>, <A NAME="v%3Astring"+></A+><B+>string</B+>, <A NAME="v%3Achar"+></A+><B+>char</B+>, <A NAME="v%3Anumber"+></A+><B+>number</B+>, <A NAME="v%3Aselection"+></A+><B+>selection</B+>, <A NAME="v%3Avariantselection"+></A+><B+>variantselection</B+> :: [<A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Highlight</A+>]</TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section4"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ColourPrefs')" ALT="show/hide"+> Instances</TD+></TR+><TR+><TD CLASS="body"+><DIV ID="i:ColourPrefs" STYLE="display:block;"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="decl"+>Eq <A HREF="Language-Haskell-HsColour.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+><TR+><TD CLASS="decl"+>Read <A HREF="Language-Haskell-HsColour.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+><TR+><TD CLASS="decl"+>Show <A HREF="Language-Haskell-HsColour.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+></TR+></TABLE+></DIV+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Ahscolour"+></A+><B+>hscolour</B+></TD+><TD CLASS="declbut"+><A HREF="Language/Haskell/HsColour.html#hscolour"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="arg"+>:: <A HREF="Language-Haskell-HsColour.html#t%3AOutput"+>Output</A+></TD+><TD CLASS="rdoc"+>Output format.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; <A HREF="Language-Haskell-HsColour.html#t%3AColourPrefs"+>ColourPrefs</A+></TD+><TD CLASS="rdoc"+>Colour preferences for formats that support it.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; Bool</TD+><TD CLASS="rdoc"+>Whether to include anchors.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Haskell source code.+</TD+></TR+><TR+><TD CLASS="arg"+>-&gt; String</TD+><TD CLASS="rdoc"+>Coloured Haskell source code.+</TD+></TR+><TR+><TD CLASS="ndoc" COLSPAN="2"+>Colourise Haskell source code with the give output format.+</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/Language/Haskell/HsColour.html view
@@ -0,0 +1,37 @@+<pre><font color=Blue>-- | This is a library with colourises Haskell code. </font>+<font color=Blue>--   It currently has three output formats: </font>+<font color=Blue>--</font>+<font color=Blue>-- * ANSI terminal codes</font>+<font color=Blue>--</font>+<font color=Blue>-- * LaTeX macros</font>+<font color=Blue>--</font>+<font color=Blue>-- * HTML with font tags</font>+<font color=Blue>--</font>+<font color=Blue>-- * HTML with CSS.</font>+<font color=Blue>--</font>+<u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour <font color=Cyan>(</font>Output<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font><font color=Cyan>,</font> ColourPrefs<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font><font color=Cyan>,</font>+                                  hscolour<font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Colourise <font color=Cyan>(</font>ColourPrefs<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font><font color=Cyan>)</font>+<u><font color=Green>import</font></u> qualified Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>TTY  <u><font color=Green>as</font></u> TTY+<u><font color=Green>import</font></u> qualified Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>HTML <u><font color=Green>as</font></u> HTML+<u><font color=Green>import</font></u> qualified Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>CSS  <u><font color=Green>as</font></u> CSS+<u><font color=Green>import</font></u> qualified Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>LaTeX  <u><font color=Green>as</font></u> LaTeX++<font color=Blue>-- | The supported output formats.</font>+<a name="Output"></a><u><font color=Green>data</font></u> Output <font color=Red>=</font> TTY   <font color=Blue>-- ^ ANSI terminal codes</font>+            <font color=Red>|</font> LaTeX <font color=Blue>-- ^ TeX macros</font>+            <font color=Red>|</font> HTML  <font color=Blue>-- ^ HTML with font tags</font>+            <font color=Red>|</font> CSS   <font color=Blue>-- ^ HTML with CSS.</font>++<font color=Blue>-- | Colourise Haskell source code with the give output format.</font>+hscolour <font color=Red>::</font> Output      <font color=Blue>-- ^ Output format.</font>+         <font color=Red>-&gt;</font> ColourPrefs <font color=Blue>-- ^ Colour preferences for formats that support it.</font>+         <font color=Red>-&gt;</font> Bool        <font color=Blue>-- ^ Whether to include anchors.</font>+         <font color=Red>-&gt;</font> String      <font color=Blue>-- ^ Haskell source code.</font>+         <font color=Red>-&gt;</font> String      <font color=Blue>-- ^ Coloured Haskell source code.</font>+<a name="hscolour"></a>hscolour TTY   pref <u><font color=Green>_</font></u>      <font color=Red>=</font> TTY<font color=Cyan>.</font>hscolour pref+hscolour LaTeX pref <u><font color=Green>_</font></u>      <font color=Red>=</font> LaTeX<font color=Cyan>.</font>hscolour pref+hscolour HTML  pref anchor <font color=Red>=</font> HTML<font color=Cyan>.</font>hscolour pref anchor+hscolour CSS   <u><font color=Green>_</font></u>    anchor <font color=Red>=</font> CSS<font color=Cyan>.</font>hscolour anchor+</pre>
+ docs/hscolour/Language/Haskell/HsColour/ANSI.html view
@@ -0,0 +1,94 @@+<pre><font color=Blue>-- Partially taken from Hugs AnsiScreen.hs library:</font>+<u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>ANSI+  <font color=Cyan>(</font> highlightOn+  <font color=Cyan>,</font> highlightOff+  <font color=Cyan>,</font> highlight+  <font color=Cyan>,</font> cleareol<font color=Cyan>,</font> clearbol<font color=Cyan>,</font> clearline<font color=Cyan>,</font> clearDown<font color=Cyan>,</font> clearUp<font color=Cyan>,</font> cls+  <font color=Cyan>,</font> goto+  <font color=Cyan>,</font> cursorUp<font color=Cyan>,</font> cursorDown<font color=Cyan>,</font> cursorLeft<font color=Cyan>,</font> cursorRight+  <font color=Cyan>,</font> savePosition<font color=Cyan>,</font> restorePosition+  <font color=Cyan>,</font> Highlight<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font>+  <font color=Cyan>,</font> Colour<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font>+  <font color=Cyan>,</font> colourCycle+  <font color=Cyan>,</font> enableScrollRegion<font color=Cyan>,</font> scrollUp<font color=Cyan>,</font> scrollDown+  <font color=Cyan>,</font> lineWrap+  <font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>ColourHighlight++<u><font color=Green>import</font></u> List <font color=Cyan>(</font>intersperse<font color=Cyan>,</font>isPrefixOf<font color=Cyan>)</font>+<u><font color=Green>import</font></u> Char <font color=Cyan>(</font>isDigit<font color=Cyan>)</font>+++<font color=Blue>-- Basic screen control codes:</font>++<a name="Pos"></a><u><font color=Green>type</font></u> Pos           <font color=Red>=</font> <font color=Cyan>(</font>Int<font color=Cyan>,</font>Int<font color=Cyan>)</font>++at        <font color=Red>::</font> Pos <font color=Red>-&gt;</font> String <font color=Red>-&gt;</font> String+goto      <font color=Red>::</font> Int <font color=Red>-&gt;</font> Int <font color=Red>-&gt;</font> String+home      <font color=Red>::</font> String+cls       <font color=Red>::</font> String++<a name="at"></a>at <font color=Cyan>(</font>x<font color=Cyan>,</font>y<font color=Cyan>)</font> s  <font color=Red>=</font> goto x y <font color=Cyan>++</font> s+<a name="goto"></a>goto x y    <font color=Red>=</font> <font color=Magenta>'\ESC'</font><b><font color=Red>:</font></b><font color=Magenta>'['</font><b><font color=Red>:</font></b><font color=Cyan>(</font>show y <font color=Cyan>++</font><font color=Cyan>(</font><font color=Magenta>';'</font><b><font color=Red>:</font></b>show x <font color=Cyan>++</font> <font color=Magenta>"H"</font><font color=Cyan>)</font><font color=Cyan>)</font>+<a name="home"></a>home        <font color=Red>=</font> goto <font color=Magenta>1</font> <font color=Magenta>1</font>++<a name="cursorUp"></a>cursorUp    <font color=Red>=</font> <font color=Magenta>"\ESC[A"</font>+<a name="cursorDown"></a>cursorDown  <font color=Red>=</font> <font color=Magenta>"\ESC[B"</font>+<a name="cursorRight"></a>cursorRight <font color=Red>=</font> <font color=Magenta>"\ESC[C"</font>+<a name="cursorLeft"></a>cursorLeft  <font color=Red>=</font> <font color=Magenta>"\ESC[D"</font>++<a name="cleareol"></a>cleareol    <font color=Red>=</font> <font color=Magenta>"\ESC[K"</font>+<a name="clearbol"></a>clearbol    <font color=Red>=</font> <font color=Magenta>"\ESC[1K"</font>+<a name="clearline"></a>clearline   <font color=Red>=</font> <font color=Magenta>"\ESC[2K"</font>+<a name="clearDown"></a>clearDown   <font color=Red>=</font> <font color=Magenta>"\ESC[J"</font>+<a name="clearUp"></a>clearUp     <font color=Red>=</font> <font color=Magenta>"\ESC[1J"</font>+<font color=Blue>-- Choose whichever of the following lines is suitable for your system:</font>+<a name="cls"></a>cls         <font color=Red>=</font> <font color=Magenta>"\ESC[2J"</font>     <font color=Blue>-- for PC with ANSI.SYS</font>+<font color=Blue>--cls         = "\^L"         -- for Sun window</font>++<a name="savePosition"></a>savePosition    <font color=Red>=</font> <font color=Magenta>"\ESC7"</font>+<a name="restorePosition"></a>restorePosition <font color=Red>=</font> <font color=Magenta>"\ESC8"</font>+++<font color=Blue>-- data Colour    -- imported from ColourHighlight</font>+<font color=Blue>-- data Highlight -- imported from ColourHighlight</font>++<u><font color=Green>instance</font></u> Enum Highlight <u><font color=Green>where</font></u>+  fromEnum Normal       <font color=Red>=</font> <font color=Magenta>0</font>+  fromEnum Bold         <font color=Red>=</font> <font color=Magenta>1</font>+  fromEnum Dim          <font color=Red>=</font> <font color=Magenta>2</font>+  fromEnum Underscore   <font color=Red>=</font> <font color=Magenta>4</font>+  fromEnum Blink        <font color=Red>=</font> <font color=Magenta>5</font>+  fromEnum ReverseVideo <font color=Red>=</font> <font color=Magenta>7</font>+  fromEnum Concealed    <font color=Red>=</font> <font color=Magenta>8</font>+  fromEnum <font color=Cyan>(</font>Foreground c<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>30</font> <font color=Cyan>+</font> fromEnum c+  fromEnum <font color=Cyan>(</font>Background c<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>40</font> <font color=Cyan>+</font> fromEnum c++highlight <font color=Red>::</font> <font color=Red>[</font>Highlight<font color=Red>]</font> <font color=Red>-&gt;</font> String <font color=Red>-&gt;</font> String+<a name="highlight"></a>highlight attrs s <font color=Red>=</font> highlightOn attrs <font color=Cyan>++</font> s <font color=Cyan>++</font> highlightOff++<a name="highlightOn"></a>highlightOn <font color=Red>[</font><font color=Red>]</font>     <font color=Red>=</font> highlightOn <font color=Red>[</font>Normal<font color=Red>]</font>+highlightOn attrs  <font color=Red>=</font> <font color=Magenta>"\ESC["</font>+                     <font color=Cyan>++</font> concat <font color=Cyan>(</font>intersperse <font color=Magenta>";"</font> <font color=Cyan>(</font>map <font color=Cyan>(</font>show<font color=Cyan>.</font>fromEnum<font color=Cyan>)</font> attrs<font color=Cyan>)</font><font color=Cyan>)</font>+                     <font color=Cyan>++</font><font color=Magenta>"m"</font>+<a name="highlightOff"></a>highlightOff <font color=Red>=</font> <font color=Magenta>"\ESC[0m"</font>+++<font color=Blue>-- An infinite supply of colours.</font>+colourCycle <font color=Red>::</font> <font color=Red>[</font>Colour<font color=Red>]</font>+<a name="colourCycle"></a>colourCycle <font color=Red>=</font> cycle <font color=Red>[</font>Red<font color=Cyan>,</font>Blue<font color=Cyan>,</font>Magenta<font color=Cyan>,</font>Green<font color=Cyan>,</font>Cyan<font color=Red>]</font>+++<font color=Blue>-- Scrolling</font>+enableScrollRegion <font color=Red>::</font> Int <font color=Red>-&gt;</font> Int <font color=Red>-&gt;</font> String+<a name="enableScrollRegion"></a>enableScrollRegion start end <font color=Red>=</font> <font color=Magenta>"\ESC["</font><font color=Cyan>++</font>show start<font color=Cyan>++</font><font color=Magenta>';'</font><b><font color=Red>:</font></b>show end<font color=Cyan>++</font><font color=Magenta>"r"</font>++<a name="scrollDown"></a>scrollDown  <font color=Red>=</font> <font color=Magenta>"\ESCD"</font>+<a name="scrollUp"></a>scrollUp    <font color=Red>=</font> <font color=Magenta>"\ESCM"</font>++<font color=Blue>-- Line-wrapping mode</font>+<a name="lineWrap"></a>lineWrap True  <font color=Red>=</font> <font color=Magenta>"\ESC[7h"</font>+lineWrap False <font color=Red>=</font> <font color=Magenta>"\ESC[7l"</font>++</pre>
+ docs/hscolour/Language/Haskell/HsColour/Anchors.html view
@@ -0,0 +1,131 @@+<pre><u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Anchors+  <font color=Cyan>(</font> insertAnchors+  <font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Classify+<u><font color=Green>import</font></u> List++<font color=Blue>-- This is an attempt to find the first defining occurrence of an</font>+<font color=Blue>-- identifier (function, datatype, class) in a Haskell source file.</font>+<font color=Blue>-- Rather than parse the module properly, we try to get by with just</font>+<font color=Blue>-- a finite state automaton.  Keeping a record of identifiers we</font>+<font color=Blue>-- have already seen, we look at the beginning of every line to see</font>+<font color=Blue>-- if it starts with the right tokens to introduce a defn.  If so,</font>+<font color=Blue>-- we look a little bit further until we can be certain.  Then plonk</font>+<font color=Blue>-- (or not) an anchor at the beginning of the line.</font>++<a name="Anchor"></a><u><font color=Green>type</font></u> Anchor <font color=Red>=</font> String++<font color=Blue>-- | 'insertAnchors' places an anchor marker in the token stream before the</font>+<font color=Blue>--   first defining occurrence of any identifier.  Here, /before/ means</font>+<font color=Blue>--   immediately preceding its type signature, or preceding a (haddock)</font>+<font color=Blue>--   comment that comes immediately before the type signature, or failing</font>+<font color=Blue>--   either of those, before the first equation.</font>+insertAnchors <font color=Red>::</font> <font color=Red>[</font><font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font><font color=Red>]</font> <font color=Red>-&gt;</font> <font color=Red>[</font>Either Anchor <font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font><font color=Red>]</font>+<a name="insertAnchors"></a>insertAnchors <font color=Red>=</font> anchor emptyST++<font color=Blue>-- looks at first token in the left-most position of each line</font>+<font color=Blue>-- precondition: have just seen a newline token.</font>+<a name="anchor"></a>anchor st s <font color=Red>=</font> <u><font color=Green>case</font></u> identifier st s <u><font color=Green>of</font></u>+                Nothing <font color=Red>-&gt;</font> emit st s+                Just v  <font color=Red>-&gt;</font> Left v<b><font color=Red>:</font></b> emit <font color=Cyan>(</font>insertST v st<font color=Cyan>)</font> s++<font color=Blue>-- emit passes stuff through until the next newline has been encountered,</font>+<font color=Blue>-- then jumps back into the anchor function</font>+<font color=Blue>-- pre-condition: newlines are explicitly single tokens</font>+<a name="emit"></a>emit st <font color=Cyan>(</font>t<font color=Red>@</font><font color=Cyan>(</font>Space<font color=Cyan>,</font><font color=Magenta>"\n"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font> Right t<b><font color=Red>:</font></b> anchor st stream+emit st <font color=Cyan>(</font>t<b><font color=Red>:</font></b>stream<font color=Cyan>)</font>              <font color=Red>=</font> Right t<b><font color=Red>:</font></b> emit st stream+emit <u><font color=Green>_</font></u>  <font color=Red>[</font><font color=Red>]</font>                      <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>++<font color=Blue>-- Given that we are at the beginning of a line, determine whether there</font>+<font color=Blue>-- is an identifier defined here, and if so, return it.</font>+<font color=Blue>-- precondition: have just seen a newline token.</font>+<a name="identifier"></a>identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Varid<font color=Cyan>,</font>v<font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font>+    <u><font color=Green>case</font></u> skip stream <u><font color=Green>of</font></u>+        <font color=Cyan>(</font><font color=Cyan>(</font>Varop<font color=Cyan>,</font>v<font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>|</font> not <font color=Cyan>(</font>v<font color=Cyan>`inST`</font>st<font color=Cyan>)</font> <font color=Red>-&gt;</font> Just <font color=Cyan>(</font>fix v<font color=Cyan>)</font>+        notVarop  <font color=Blue>--  | typesig stream  -&gt; Nothing    -- not a defn</font>+                      <font color=Red>|</font> v <font color=Cyan>`inST`</font> st     <font color=Red>-&gt;</font> Nothing    <font color=Blue>-- already defined</font>+                      <font color=Red>|</font> otherwise       <font color=Red>-&gt;</font> Just v+identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>"("</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font>+    <u><font color=Green>case</font></u> stream <u><font color=Green>of</font></u>+      <font color=Cyan>(</font><font color=Cyan>(</font>Varop<font color=Cyan>,</font>v<font color=Cyan>)</font><b><font color=Red>:</font></b><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>")"</font><font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font>+                  <font color=Blue>--  | typesig stream  -&gt; Nothing</font>+	              <font color=Red>|</font> v <font color=Cyan>`inST`</font> st     <font color=Red>-&gt;</font> Nothing+	              <font color=Red>|</font> otherwise	<font color=Red>-&gt;</font> Just <font color=Cyan>(</font>fix v<font color=Cyan>)</font>+      notVarop <font color=Red>-&gt;</font> <u><font color=Green>case</font></u> skip <font color=Cyan>(</font>munchParens stream<font color=Cyan>)</font> <u><font color=Green>of</font></u>+          <font color=Cyan>(</font><font color=Cyan>(</font>Varop<font color=Cyan>,</font>v<font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>|</font> not <font color=Cyan>(</font>v<font color=Cyan>`inST`</font>st<font color=Cyan>)</font> <font color=Red>-&gt;</font> Just <font color=Cyan>(</font>fix v<font color=Cyan>)</font>+          <u><font color=Green>_</font></u>             <font color=Red>-&gt;</font> Nothing+identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Keyword<font color=Cyan>,</font><font color=Magenta>"foreign"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font> Nothing <font color=Blue>-- not yet implemented</font>+identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Keyword<font color=Cyan>,</font><font color=Magenta>"data"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>    <font color=Red>=</font> getConid stream+identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Keyword<font color=Cyan>,</font><font color=Magenta>"type"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>    <font color=Red>=</font> getConid stream+identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Keyword<font color=Cyan>,</font><font color=Magenta>"class"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>   <font color=Red>=</font> getConid stream+identifier st t<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Comment<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b><font color=Cyan>(</font>Space<font color=Cyan>,</font><font color=Magenta>"\n"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font> identifier st stream+identifier st stream <font color=Red>=</font> Nothing++<font color=Blue>-- Is this really a type signature?  (no longer used)</font>+typesig <font color=Red>::</font> <font color=Red>[</font><font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font><font color=Red>]</font> <font color=Red>-&gt;</font> Bool+<a name="typesig"></a>typesig <font color=Cyan>(</font><font color=Cyan>(</font>Keyglyph<font color=Cyan>,</font><font color=Magenta>"::"</font><font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font>   <font color=Red>=</font> True+typesig <font color=Cyan>(</font><font color=Cyan>(</font>Varid<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>    <font color=Red>=</font> typesig stream+typesig <font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>"("</font><font color=Cyan>)</font><b><font color=Red>:</font></b><font color=Cyan>(</font>Varop<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>")"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>    <font color=Red>=</font> typesig stream+typesig <font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>","</font><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font> typesig stream+typesig <font color=Cyan>(</font><font color=Cyan>(</font>Space<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>    <font color=Red>=</font> typesig stream+typesig <font color=Cyan>(</font><font color=Cyan>(</font>Comment<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>  <font color=Red>=</font> typesig stream+typesig <u><font color=Green>_</font></u>                     <font color=Red>=</font> False++<font color=Blue>-- throw away everything from opening paren to matching close</font>+<a name="munchParens"></a>munchParens <font color=Red>=</font>  munch <font color=Cyan>(</font><font color=Magenta>0</font><font color=Red>::</font>Int<font color=Cyan>)</font>	<font color=Blue>-- already seen open paren</font>+  <u><font color=Green>where</font></u> munch <font color=Magenta>0</font> <font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>")"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>=</font> rest+        munch n <font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>")"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>=</font> munch <font color=Cyan>(</font>n<font color=Blue>-</font><font color=Magenta>1</font><font color=Cyan>)</font> rest+        munch n <font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>"("</font><font color=Cyan>)</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>=</font> munch <font color=Cyan>(</font>n<font color=Cyan>+</font><font color=Magenta>1</font><font color=Cyan>)</font> rest+        munch n <font color=Cyan>(</font><u><font color=Green>_</font></u><b><font color=Red>:</font></b>rest<font color=Cyan>)</font>            <font color=Red>=</font> munch n rest+        munch <u><font color=Green>_</font></u> <font color=Red>[</font><font color=Red>]</font>                  <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>	<font color=Blue>-- source is ill-formed</font>++<font color=Blue>-- ensure anchor name is correct for a Varop</font>+<a name="fix"></a>fix <font color=Cyan>(</font><font color=Magenta>'`'</font><b><font color=Red>:</font></b>v<font color=Cyan>)</font> <font color=Red>=</font> init v+fix v       <font color=Red>=</font> v++<font color=Blue>-- look past whitespace and comments to next "real" token</font>+<a name="skip"></a>skip <font color=Cyan>(</font><font color=Cyan>(</font>Space<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font>   <font color=Red>=</font> skip stream+skip <font color=Cyan>(</font><font color=Cyan>(</font>Comment<font color=Cyan>,</font><u><font color=Green>_</font></u><font color=Cyan>)</font><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font> skip stream+skip stream               <font color=Red>=</font> stream++<font color=Blue>-- skip possible context up to and including "=&gt;", returning next Conid token</font>+<font color=Blue>-- (this function is highly partial - relies on source being parse-correct)</font>+<a name="getConid"></a>getConid stream <font color=Red>=</font>+    <u><font color=Green>case</font></u> skip stream <u><font color=Green>of</font></u>+        <font color=Cyan>(</font><font color=Cyan>(</font>Conid<font color=Cyan>,</font>c<font color=Cyan>)</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>-&gt;</font> <u><font color=Green>case</font></u> context rest <u><font color=Green>of</font></u>+                              <font color=Cyan>(</font><font color=Cyan>(</font>Keyglyph<font color=Cyan>,</font><font color=Magenta>"="</font><font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font>     <font color=Red>-&gt;</font> Just c+                              <font color=Cyan>(</font><font color=Cyan>(</font>Keyglyph<font color=Cyan>,</font><font color=Magenta>"=&gt;"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>more<font color=Cyan>)</font> <font color=Red>-&gt;</font>+                                  <u><font color=Green>case</font></u> skip more <u><font color=Green>of</font></u>+                                      <font color=Cyan>(</font><font color=Cyan>(</font>Conid<font color=Cyan>,</font>c'<font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>-&gt;</font> Just c'+                                      v <font color=Red>-&gt;</font> debug v <font color=Cyan>(</font><font color=Magenta>"Conid "</font><font color=Cyan>++</font>c<font color=Cyan>++</font><font color=Magenta>" =&gt;"</font><font color=Cyan>)</font>+                              v <font color=Red>-&gt;</font> debug v <font color=Cyan>(</font><font color=Magenta>"Conid "</font><font color=Cyan>++</font>c<font color=Cyan>++</font><font color=Magenta>" no = or =&gt;"</font><font color=Cyan>)</font>+        <font color=Cyan>(</font><font color=Cyan>(</font>Layout<font color=Cyan>,</font><font color=Magenta>"("</font><font color=Cyan>)</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>-&gt;</font> <u><font color=Green>case</font></u> context rest <u><font color=Green>of</font></u>+                                   <font color=Cyan>(</font><font color=Cyan>(</font>Keyglyph<font color=Cyan>,</font><font color=Magenta>"=&gt;"</font><font color=Cyan>)</font><b><font color=Red>:</font></b>more<font color=Cyan>)</font> <font color=Red>-&gt;</font>+                                       <u><font color=Green>case</font></u> skip more <u><font color=Green>of</font></u>+                                           <font color=Cyan>(</font><font color=Cyan>(</font>Conid<font color=Cyan>,</font>c'<font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>-&gt;</font> Just c'+                                           v <font color=Red>-&gt;</font> debug v <font color=Cyan>(</font><font color=Magenta>"(...) =&gt;"</font><font color=Cyan>)</font>+                                   v <font color=Red>-&gt;</font> debug v <font color=Cyan>(</font><font color=Magenta>"(...) no =&gt;"</font><font color=Cyan>)</font>+        v <font color=Red>-&gt;</font> debug v <font color=Cyan>(</font><font color=Magenta>"no Conid or (...)"</font><font color=Cyan>)</font>+    <u><font color=Green>where</font></u> debug <font color=Cyan>(</font>s<b><font color=Red>:</font></b>t<font color=Cyan>)</font> c <font color=Red>=</font> Nothing+       <font color=Blue>-- debug (s:t) c = error ("HsColour: getConid failed: "++show s</font>+       <font color=Blue>--                       ++"\n  in the context of: "++c)</font>++<font color=Blue>-- jump past possible class context</font>+<a name="context"></a>context stream<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Keyglyph<font color=Cyan>,</font><font color=Magenta>"="</font><font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>=</font> stream+context stream<font color=Red>@</font><font color=Cyan>(</font><font color=Cyan>(</font>Keyglyph<font color=Cyan>,</font><font color=Magenta>"=&gt;"</font><font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>=</font> stream+context <font color=Cyan>(</font><u><font color=Green>_</font></u><b><font color=Red>:</font></b>stream<font color=Cyan>)</font> <font color=Red>=</font> context stream++<font color=Blue>-- simple implementation of a string lookup table.</font>+<font color=Blue>-- replace this with something more sophisticated if needed.</font>+<a name="ST"></a><u><font color=Green>type</font></u> ST <font color=Red>=</font> <font color=Red>[</font>String<font color=Red>]</font>++emptyST <font color=Red>::</font> ST+<a name="emptyST"></a>emptyST <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>++insertST <font color=Red>::</font> String <font color=Red>-&gt;</font> ST <font color=Red>-&gt;</font> ST+<a name="insertST"></a>insertST k st <font color=Red>=</font> insert k st++inST <font color=Red>::</font> String <font color=Red>-&gt;</font> ST <font color=Red>-&gt;</font> Bool+<a name="inST"></a>inST k st <font color=Red>=</font> k <font color=Cyan>`elem`</font> st+</pre>
+ docs/hscolour/Language/Haskell/HsColour/CSS.html view
@@ -0,0 +1,66 @@+<pre><font color=Blue>-- | Formats Haskell source code as HTML with CSS.</font>+<u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>CSS <font color=Cyan>(</font>hscolour<font color=Cyan>,</font> hscolourFragment<font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Anchors+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Classify <u><font color=Green>as</font></u> Classify+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>HTML <font color=Cyan>(</font>renderAnchors<font color=Cyan>,</font> renderComment<font color=Cyan>,</font> escape<font color=Cyan>)</font>++<font color=Blue>-- | Formats Haskell source code as a complete HTML document with CSS.</font>+hscolour <font color=Red>::</font> Bool   <font color=Blue>-- ^ Whether to include anchors</font>+         <font color=Red>-&gt;</font> String <font color=Blue>-- ^ Haskell source code.</font>+         <font color=Red>-&gt;</font> String <font color=Blue>-- ^ An HTML document containing the coloured </font>+                   <font color=Blue>--   Haskell source code.</font>+<a name="hscolour"></a>hscolour anchor <font color=Red>=</font> top'n'tail <font color=Cyan>.</font> hscolourFragment anchor++<font color=Blue>-- | Formats Haskell source code as an HTML fragment with CSS.</font>+<font color=Blue>--   No stylesheet link is included in the output.</font>+hscolourFragment <font color=Red>::</font> Bool   <font color=Blue>-- ^ Whether to include anchors</font>+                 <font color=Red>-&gt;</font> String <font color=Blue>-- ^ Haskell source code.</font>+                 <font color=Red>-&gt;</font> String <font color=Blue>-- ^ An HTML fragment containing the coloured </font>+                           <font color=Blue>--   Haskell source code.</font>+<a name="hscolourFragment"></a>hscolourFragment anchor <font color=Red>=</font> +    pre <font color=Cyan>.</font> <font color=Cyan>(</font><u><font color=Green>if</font></u> anchor +           <u><font color=Green>then</font></u> concatMap <font color=Cyan>(</font>renderAnchors renderToken<font color=Cyan>)</font> <font color=Cyan>.</font> insertAnchors+           <u><font color=Green>else</font></u> concatMap renderToken<font color=Cyan>)</font> <font color=Cyan>.</font> tokenise++top'n'tail <font color=Red>::</font> String <font color=Red>-&gt;</font> String+<a name="top'n'tail"></a>top'n'tail  <font color=Red>=</font> <font color=Cyan>(</font>cssPrefix<font color=Cyan>++</font><font color=Cyan>)</font> <font color=Cyan>.</font> <font color=Cyan>(</font><font color=Cyan>++</font>cssSuffix<font color=Cyan>)</font>++pre <font color=Red>::</font> String <font color=Red>-&gt;</font> String+<a name="pre"></a>pre <font color=Red>=</font> <font color=Cyan>(</font><font color=Magenta>"&lt;pre&gt;"</font><font color=Cyan>++</font><font color=Cyan>)</font> <font color=Cyan>.</font> <font color=Cyan>(</font><font color=Cyan>++</font><font color=Magenta>"&lt;/pre&gt;"</font><font color=Cyan>)</font>++renderToken <font color=Red>::</font> <font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font> <font color=Red>-&gt;</font> String+<a name="renderToken"></a>renderToken <font color=Cyan>(</font>Space<font color=Cyan>,</font>text<font color=Cyan>)</font> <font color=Red>=</font> text+renderToken <font color=Cyan>(</font>cls<font color=Cyan>,</font>text<font color=Cyan>)</font>   <font color=Red>=</font> <font color=Magenta>"&lt;span class='"</font> <font color=Cyan>++</font> cssClass cls <font color=Cyan>++</font> <font color=Magenta>"'&gt;"</font> <font color=Cyan>++</font>+                           <font color=Cyan>(</font><u><font color=Green>if</font></u> cls <font color=Cyan>==</font> Comment <u><font color=Green>then</font></u> renderComment text <u><font color=Green>else</font></u> escape text<font color=Cyan>)</font> <font color=Cyan>++</font>+                           <font color=Magenta>"&lt;/span&gt;"</font>++<a name="cssClass"></a>cssClass Keyword  <font color=Red>=</font> <font color=Magenta>"keyword"</font>+cssClass Keyglyph <font color=Red>=</font> <font color=Magenta>"keyglyph"</font>+cssClass Layout   <font color=Red>=</font> <font color=Magenta>"layout"</font>+cssClass Comment  <font color=Red>=</font> <font color=Magenta>"comment"</font>+cssClass Conid    <font color=Red>=</font> <font color=Magenta>"conid"</font>+cssClass Varid    <font color=Red>=</font> <font color=Magenta>"varid"</font>+cssClass Conop    <font color=Red>=</font> <font color=Magenta>"conop"</font>+cssClass Varop    <font color=Red>=</font> <font color=Magenta>"varop"</font>+cssClass String   <font color=Red>=</font> <font color=Magenta>"str"</font>+cssClass Char     <font color=Red>=</font> <font color=Magenta>"chr"</font>+cssClass Number   <font color=Red>=</font> <font color=Magenta>"num"</font>+cssClass Error    <font color=Red>=</font> <font color=Magenta>"sel"</font>++<a name="cssPrefix"></a>cssPrefix <font color=Red>=</font> unlines+    <font color=Red>[</font><font color=Magenta>"&lt;!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\"&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;html&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;head&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ --&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;title&gt;Haskell Code by HsColour&lt;/title&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;link type='text/css' rel='stylesheet' href='hscolour.css' /&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;/head&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;body&gt;"</font>+    <font color=Red>]</font>+    +<a name="cssSuffix"></a>cssSuffix <font color=Red>=</font> unlines+    <font color=Red>[</font><font color=Magenta>"&lt;/body&gt;"</font>+    <font color=Cyan>,</font><font color=Magenta>"&lt;/html&gt;"</font>+    <font color=Red>]</font>+</pre>
+ docs/hscolour/Language/Haskell/HsColour/Classify.html view
@@ -0,0 +1,100 @@+<pre><u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Classify+  <font color=Cyan>(</font> TokenType<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font>+  <font color=Cyan>,</font> tokenise+  <font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Char+<u><font color=Green>import</font></u> List++<font color=Blue>-- Lex Haskell source code into an annotated token stream, without</font>+<font color=Blue>-- discarding any characters or layout.</font>+tokenise <font color=Red>::</font> String <font color=Red>-&gt;</font> <font color=Red>[</font><font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font><font color=Red>]</font>+<a name="tokenise"></a>tokenise <font color=Red>=</font> map <font color=Cyan>(</font><font color=Red>\</font>s<font color=Red>-&gt;</font> <font color=Cyan>(</font>classify s<font color=Cyan>,</font>s<font color=Cyan>)</font><font color=Cyan>)</font> <font color=Cyan>.</font> glue <font color=Cyan>.</font> chunk++<font color=Blue>-- Basic Haskell lexing, except we keep whitespace.</font>+chunk <font color=Red>::</font> String <font color=Red>-&gt;</font> <font color=Red>[</font>String<font color=Red>]</font>+<a name="chunk"></a>chunk <font color=Red>[</font><font color=Red>]</font>    <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>+chunk <font color=Cyan>(</font><font color=Magenta>'\r'</font><b><font color=Red>:</font></b>s<font color=Cyan>)</font> <font color=Red>=</font> chunk s <font color=Blue>-- get rid of DOS newline stuff</font>+chunk <font color=Cyan>(</font><font color=Magenta>'\n'</font><b><font color=Red>:</font></b>s<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>"\n"</font><b><font color=Red>:</font></b> chunk s+chunk <font color=Cyan>(</font>c<b><font color=Red>:</font></b>s<font color=Cyan>)</font> <font color=Red>|</font> isLinearSpace c+            <font color=Red>=</font> <font color=Cyan>(</font>c<b><font color=Red>:</font></b>ss<font color=Cyan>)</font><b><font color=Red>:</font></b> chunk rest <u><font color=Green>where</font></u> <font color=Cyan>(</font>ss<font color=Cyan>,</font>rest<font color=Cyan>)</font> <font color=Red>=</font> span isLinearSpace s+chunk <font color=Cyan>(</font><font color=Magenta>'{'</font><b><font color=Red>:</font></b><font color=Magenta>'-'</font><b><font color=Red>:</font></b>s<font color=Cyan>)</font> <font color=Red>=</font> <u><font color=Green>let</font></u> <font color=Cyan>(</font>com<font color=Cyan>,</font>s'<font color=Cyan>)</font> <font color=Red>=</font> nestcomment <font color=Magenta>0</font> s+                    <u><font color=Green>in</font></u> <font color=Cyan>(</font><font color=Magenta>'{'</font><b><font color=Red>:</font></b><font color=Magenta>'-'</font><b><font color=Red>:</font></b>com<font color=Cyan>)</font> <b><font color=Red>:</font></b> chunk s'+chunk s <font color=Red>=</font> <u><font color=Green>case</font></u> Prelude<font color=Cyan>.</font>lex s <u><font color=Green>of</font></u>+              <font color=Red>[</font><font color=Red>]</font>             <font color=Red>-&gt;</font> <font color=Red>[</font>head s<font color=Red>]</font><b><font color=Red>:</font></b> chunk <font color=Cyan>(</font>tail s<font color=Cyan>)</font> <font color=Blue>-- e.g. inside comment</font>+              <font color=Cyan>(</font><font color=Cyan>(</font>tok<font color=Red>@</font><font color=Cyan>(</font><font color=Magenta>'-'</font><b><font color=Red>:</font></b><font color=Magenta>'-'</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font><font color=Cyan>,</font>rest<font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font>+                  <font color=Red>|</font> all <font color=Cyan>(</font><font color=Cyan>==</font><font color=Magenta>'-'</font><font color=Cyan>)</font> tok <font color=Red>-&gt;</font> <font color=Cyan>(</font>tok<font color=Cyan>++</font>com<font color=Cyan>)</font><b><font color=Red>:</font></b> chunk s'+                                       <u><font color=Green>where</font></u> <font color=Cyan>(</font>com<font color=Cyan>,</font>s'<font color=Cyan>)</font> <font color=Red>=</font> eolcomment rest+              <font color=Cyan>(</font><font color=Cyan>(</font>tok<font color=Cyan>,</font>rest<font color=Cyan>)</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>-&gt;</font> tok<b><font color=Red>:</font></b> chunk rest++<a name="isLinearSpace"></a>isLinearSpace c <font color=Red>=</font> c <font color=Cyan>`elem`</font> <font color=Magenta>" \t"</font> <font color=Blue>-- " \t\xa0"</font>++<font color=Blue>-- Glue sequences of tokens into more useful blobs</font>+<font color=Blue>--glue (q:".":n:rest) | Char.isUpper (head q)	-- qualified names</font>+<font color=Blue>--                    = glue ((q++"."++n): rest)</font>+<a name="glue"></a>glue <font color=Cyan>(</font><font color=Magenta>"`"</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>=</font>				<font color=Blue>-- `varid` -&gt; varop</font>+  <u><font color=Green>case</font></u> glue rest <u><font color=Green>of</font></u>+    <font color=Cyan>(</font>qn<b><font color=Red>:</font></b><font color=Magenta>"`"</font><b><font color=Red>:</font></b>rest<font color=Cyan>)</font> <font color=Red>-&gt;</font> <font color=Cyan>(</font><font color=Magenta>"`"</font><font color=Cyan>++</font>qn<font color=Cyan>++</font><font color=Magenta>"`"</font><font color=Cyan>)</font><b><font color=Red>:</font></b> glue rest+    <u><font color=Green>_</font></u>             <font color=Red>-&gt;</font> <font color=Cyan>(</font><font color=Magenta>"`"</font><b><font color=Red>:</font></b> rest<font color=Cyan>)</font>+glue <font color=Cyan>(</font>s<b><font color=Red>:</font></b>ss<font color=Cyan>)</font>       <font color=Red>|</font> all <font color=Cyan>(</font><font color=Cyan>==</font><font color=Magenta>'-'</font><font color=Cyan>)</font> s <font color=Cyan>&amp;&amp;</font> length s <font color=Cyan>&gt;=</font><font color=Magenta>2</font>	<font color=Blue>-- eol comment</font>+                  <font color=Red>=</font> <font color=Cyan>(</font>s<font color=Cyan>++</font>concat c<font color=Cyan>)</font><b><font color=Red>:</font></b> glue rest+                  <u><font color=Green>where</font></u> <font color=Cyan>(</font>c<font color=Cyan>,</font>rest<font color=Cyan>)</font> <font color=Red>=</font> break <font color=Cyan>(</font><font color=Magenta>'\n'</font><font color=Cyan>`elem`</font><font color=Cyan>)</font> ss+<font color=Blue>--glue ("{":"-":ss)  = ("{-"++c): glue rest	-- nested comment</font>+<font color=Blue>--                  where (c,rest) = nestcomment 0 ss</font>+glue <font color=Cyan>(</font>s<b><font color=Red>:</font></b>ss<font color=Cyan>)</font>       <font color=Red>=</font> s<b><font color=Red>:</font></b> glue ss+glue <font color=Red>[</font><font color=Red>]</font>           <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>++<font color=Blue>-- Deal with comments.</font>+nestcomment <font color=Red>::</font> Int <font color=Red>-&gt;</font> String <font color=Red>-&gt;</font> <font color=Cyan>(</font>String<font color=Cyan>,</font>String<font color=Cyan>)</font>+<a name="nestcomment"></a>nestcomment n <font color=Cyan>(</font><font color=Magenta>'{'</font><b><font color=Red>:</font></b><font color=Magenta>'-'</font><b><font color=Red>:</font></b>ss<font color=Cyan>)</font> <font color=Red>|</font> n<font color=Cyan>&gt;=</font><font color=Magenta>0</font> <font color=Red>=</font> <font color=Cyan>(</font><font color=Cyan>(</font><font color=Magenta>"{-"</font><font color=Cyan>++</font>cs<font color=Cyan>)</font><font color=Cyan>,</font>rm<font color=Cyan>)</font>+                                  <u><font color=Green>where</font></u> <font color=Cyan>(</font>cs<font color=Cyan>,</font>rm<font color=Cyan>)</font> <font color=Red>=</font> nestcomment <font color=Cyan>(</font>n<font color=Cyan>+</font><font color=Magenta>1</font><font color=Cyan>)</font> ss+nestcomment n <font color=Cyan>(</font><font color=Magenta>'-'</font><b><font color=Red>:</font></b><font color=Magenta>'}'</font><b><font color=Red>:</font></b>ss<font color=Cyan>)</font> <font color=Red>|</font> n<font color=Cyan>&gt;</font><font color=Magenta>0</font>  <font color=Red>=</font> <font color=Cyan>(</font><font color=Cyan>(</font><font color=Magenta>"-}"</font><font color=Cyan>++</font>cs<font color=Cyan>)</font><font color=Cyan>,</font>rm<font color=Cyan>)</font>+                                  <u><font color=Green>where</font></u> <font color=Cyan>(</font>cs<font color=Cyan>,</font>rm<font color=Cyan>)</font> <font color=Red>=</font> nestcomment <font color=Cyan>(</font>n<font color=Blue>-</font><font color=Magenta>1</font><font color=Cyan>)</font> ss+nestcomment n <font color=Cyan>(</font><font color=Magenta>'-'</font><b><font color=Red>:</font></b><font color=Magenta>'}'</font><b><font color=Red>:</font></b>ss<font color=Cyan>)</font> <font color=Red>|</font> n<font color=Cyan>==</font><font color=Magenta>0</font> <font color=Red>=</font> <font color=Cyan>(</font><font color=Magenta>"-}"</font><font color=Cyan>,</font>ss<font color=Cyan>)</font>+nestcomment n <font color=Cyan>(</font>s<b><font color=Red>:</font></b>ss<font color=Cyan>)</font>       <font color=Red>|</font> n<font color=Cyan>&gt;=</font><font color=Magenta>0</font> <font color=Red>=</font> <font color=Cyan>(</font><font color=Cyan>(</font>s<b><font color=Red>:</font></b>cs<font color=Cyan>)</font><font color=Cyan>,</font>rm<font color=Cyan>)</font>+                                  <u><font color=Green>where</font></u> <font color=Cyan>(</font>cs<font color=Cyan>,</font>rm<font color=Cyan>)</font> <font color=Red>=</font> nestcomment n ss+nestcomment n <font color=Red>[</font><font color=Red>]</font> <font color=Red>=</font> <font color=Cyan>(</font><font color=Red>[</font><font color=Red>]</font><font color=Cyan>,</font><font color=Red>[</font><font color=Red>]</font><font color=Cyan>)</font>++eolcomment <font color=Red>::</font> String <font color=Red>-&gt;</font> <font color=Cyan>(</font>String<font color=Cyan>,</font>String<font color=Cyan>)</font>+<a name="eolcomment"></a>eolcomment s<font color=Red>@</font><font color=Cyan>(</font><font color=Magenta>'\n'</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>=</font> <font color=Cyan>(</font><font color=Red>[</font><font color=Red>]</font><font color=Cyan>,</font> s<font color=Cyan>)</font>+eolcomment <font color=Cyan>(</font>c<b><font color=Red>:</font></b>s<font color=Cyan>)</font>      <font color=Red>=</font> <font color=Cyan>(</font>c<b><font color=Red>:</font></b>cs<font color=Cyan>,</font> s'<font color=Cyan>)</font> <u><font color=Green>where</font></u> <font color=Cyan>(</font>cs<font color=Cyan>,</font>s'<font color=Cyan>)</font> <font color=Red>=</font> eolcomment s+eolcomment <font color=Red>[</font><font color=Red>]</font>         <font color=Red>=</font> <font color=Cyan>(</font><font color=Red>[</font><font color=Red>]</font><font color=Cyan>,</font><font color=Red>[</font><font color=Red>]</font><font color=Cyan>)</font>++<font color=Blue>-- Classify tokens</font>+<a name="TokenType"></a><u><font color=Green>data</font></u> TokenType <font color=Red>=</font>+  Space <font color=Red>|</font> Keyword <font color=Red>|</font> Keyglyph <font color=Red>|</font> Layout <font color=Red>|</font> Comment <font color=Red>|</font> Conid <font color=Red>|</font> Varid <font color=Red>|</font>+  Conop <font color=Red>|</font> Varop   <font color=Red>|</font> String   <font color=Red>|</font> Char   <font color=Red>|</font> Number  <font color=Red>|</font> Error+  <u><font color=Green>deriving</font></u> <font color=Cyan>(</font>Eq<font color=Cyan>,</font>Show<font color=Cyan>)</font>++classify <font color=Red>::</font> String <font color=Red>-&gt;</font> TokenType+<a name="classify"></a>classify s<font color=Red>@</font><font color=Cyan>(</font>h<b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font>+    <font color=Red>|</font> isSpace h              <font color=Red>=</font> Space+    <font color=Red>|</font> all <font color=Cyan>(</font><font color=Cyan>==</font><font color=Magenta>'-'</font><font color=Cyan>)</font> s          <font color=Red>=</font> Comment+    <font color=Red>|</font> <font color=Magenta>"--"</font> <font color=Cyan>`isPrefixOf`</font> s+      <font color=Cyan>&amp;&amp;</font> any isSpace s       <font color=Red>=</font> Comment		<font color=Blue>-- not fully correct</font>+    <font color=Red>|</font> <font color=Magenta>"{-"</font> <font color=Cyan>`isPrefixOf`</font> s    <font color=Red>=</font> Comment+    <font color=Red>|</font> s <font color=Cyan>`elem`</font> keywords      <font color=Red>=</font> Keyword+    <font color=Red>|</font> s <font color=Cyan>`elem`</font> keyglyphs     <font color=Red>=</font> Keyglyph+    <font color=Red>|</font> s <font color=Cyan>`elem`</font> layoutchars   <font color=Red>=</font> Layout+    <font color=Red>|</font> isUpper h              <font color=Red>=</font> Conid+    <font color=Red>|</font> isLower h              <font color=Red>=</font> Varid+    <font color=Red>|</font> h <font color=Cyan>`elem`</font> symbols       <font color=Red>=</font> Varop+    <font color=Red>|</font> h<font color=Cyan>==</font><font color=Magenta>':'</font>                 <font color=Red>=</font> Conop+    <font color=Red>|</font> h<font color=Cyan>==</font><font color=Magenta>'`'</font>                 <font color=Red>=</font> Varop+    <font color=Red>|</font> h<font color=Cyan>==</font><font color=Magenta>'"'</font>                 <font color=Red>=</font> String+    <font color=Red>|</font> h<font color=Cyan>==</font><font color=Magenta>'\''</font>                <font color=Red>=</font> Char+    <font color=Red>|</font> isDigit h              <font color=Red>=</font> Number+    <font color=Red>|</font> otherwise              <font color=Red>=</font> Error++<font color=Blue>-- Haskell keywords</font>+<a name="keywords"></a>keywords <font color=Red>=</font>+  <font color=Red>[</font><font color=Magenta>"case"</font><font color=Cyan>,</font><font color=Magenta>"class"</font><font color=Cyan>,</font><font color=Magenta>"data"</font><font color=Cyan>,</font><font color=Magenta>"default"</font><font color=Cyan>,</font><font color=Magenta>"deriving"</font><font color=Cyan>,</font><font color=Magenta>"do"</font><font color=Cyan>,</font><font color=Magenta>"else"</font>+  <font color=Cyan>,</font><font color=Magenta>"if"</font><font color=Cyan>,</font><font color=Magenta>"import"</font><font color=Cyan>,</font><font color=Magenta>"in"</font><font color=Cyan>,</font><font color=Magenta>"infix"</font><font color=Cyan>,</font><font color=Magenta>"infixl"</font><font color=Cyan>,</font><font color=Magenta>"infixr"</font><font color=Cyan>,</font><font color=Magenta>"instance"</font><font color=Cyan>,</font><font color=Magenta>"let"</font><font color=Cyan>,</font><font color=Magenta>"module"</font>+  <font color=Cyan>,</font><font color=Magenta>"newtype"</font><font color=Cyan>,</font><font color=Magenta>"of"</font><font color=Cyan>,</font><font color=Magenta>"then"</font><font color=Cyan>,</font><font color=Magenta>"type"</font><font color=Cyan>,</font><font color=Magenta>"where"</font><font color=Cyan>,</font><font color=Magenta>"_"</font><font color=Cyan>,</font><font color=Magenta>"foreign"</font><font color=Cyan>,</font><font color=Magenta>"ccall"</font><font color=Cyan>,</font><font color=Magenta>"as"</font><font color=Red>]</font>+<a name="keyglyphs"></a>keyglyphs <font color=Red>=</font>+  <font color=Red>[</font><font color=Magenta>".."</font><font color=Cyan>,</font><font color=Magenta>"::"</font><font color=Cyan>,</font><font color=Magenta>"="</font><font color=Cyan>,</font><font color=Magenta>"\\"</font><font color=Cyan>,</font><font color=Magenta>"|"</font><font color=Cyan>,</font><font color=Magenta>"&lt;-"</font><font color=Cyan>,</font><font color=Magenta>"-&gt;"</font><font color=Cyan>,</font><font color=Magenta>"@"</font><font color=Cyan>,</font><font color=Magenta>"~"</font><font color=Cyan>,</font><font color=Magenta>"=&gt;"</font><font color=Cyan>,</font><font color=Magenta>"["</font><font color=Cyan>,</font><font color=Magenta>"]"</font><font color=Red>]</font>+<a name="layoutchars"></a>layoutchars <font color=Red>=</font>+  map <font color=Cyan>(</font><b><font color=Red>:</font></b><font color=Red>[</font><font color=Red>]</font><font color=Cyan>)</font> <font color=Magenta>";{}(),"</font>+<a name="symbols"></a>symbols <font color=Red>=</font>+  <font color=Magenta>"!#$%&amp;*+./&lt;=&gt;?@\\^|-~"</font>+</pre>
+ docs/hscolour/Language/Haskell/HsColour/ColourHighlight.html view
@@ -0,0 +1,21 @@+<pre><u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>ColourHighlight+  <font color=Cyan>(</font> Colour<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font>+  <font color=Cyan>,</font> Highlight<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font>+  <font color=Cyan>)</font> <u><font color=Green>where</font></u>++<a name="Colour"></a><u><font color=Green>data</font></u> Colour <font color=Red>=</font> Black <font color=Red>|</font> Red <font color=Red>|</font> Green <font color=Red>|</font> Yellow <font color=Red>|</font> Blue <font color=Red>|</font> Magenta <font color=Red>|</font> Cyan <font color=Red>|</font> White+  <u><font color=Green>deriving</font></u> <font color=Cyan>(</font>Eq<font color=Cyan>,</font>Show<font color=Cyan>,</font>Read<font color=Cyan>,</font>Enum<font color=Cyan>)</font>++<a name="Highlight"></a><u><font color=Green>data</font></u> Highlight <font color=Red>=</font>+    Normal+  <font color=Red>|</font> Bold+  <font color=Red>|</font> Dim+  <font color=Red>|</font> Underscore+  <font color=Red>|</font> Blink+  <font color=Red>|</font> ReverseVideo+  <font color=Red>|</font> Concealed+  <font color=Red>|</font> Foreground Colour+  <font color=Red>|</font> Background Colour+  <u><font color=Green>deriving</font></u> <font color=Cyan>(</font>Eq<font color=Cyan>,</font>Show<font color=Cyan>,</font>Read<font color=Cyan>)</font>++</pre>
+ docs/hscolour/Language/Haskell/HsColour/Colourise.html view
@@ -0,0 +1,65 @@+<pre><u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Colourise+  <font color=Cyan>(</font> <u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>ColourHighlight+  <font color=Cyan>,</font> ColourPrefs<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font>+  <font color=Cyan>,</font> readColourPrefs+  <font color=Cyan>,</font> colourise+  <font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>ColourHighlight+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Classify <font color=Cyan>(</font>TokenType<font color=Cyan>(</font><font color=Red>..</font><font color=Cyan>)</font><font color=Cyan>)</font>++<u><font color=Green>import</font></u> System <font color=Cyan>(</font>getEnv<font color=Cyan>)</font>+<u><font color=Green>import</font></u> Char+<u><font color=Green>import</font></u> List++<font color=Blue>-- | Colour preferences.</font>+<a name="ColourPrefs"></a><u><font color=Green>data</font></u> ColourPrefs <font color=Red>=</font> ColourPrefs+  <font color=Cyan>{</font> keyword<font color=Cyan>,</font> keyglyph<font color=Cyan>,</font> layout<font color=Cyan>,</font> comment+  <font color=Cyan>,</font> conid<font color=Cyan>,</font> varid<font color=Cyan>,</font> conop<font color=Cyan>,</font> varop+  <font color=Cyan>,</font> string<font color=Cyan>,</font> char<font color=Cyan>,</font> number+  <font color=Cyan>,</font> selection<font color=Cyan>,</font> variantselection <font color=Red>::</font> <font color=Red>[</font>Highlight<font color=Red>]</font>+  <font color=Cyan>}</font> <u><font color=Green>deriving</font></u> <font color=Cyan>(</font>Eq<font color=Cyan>,</font>Show<font color=Cyan>,</font>Read<font color=Cyan>)</font>++<a name="defaultColourPrefs"></a>defaultColourPrefs <font color=Red>=</font> ColourPrefs+  <font color=Cyan>{</font> keyword  <font color=Red>=</font> <font color=Red>[</font>Foreground Green<font color=Cyan>,</font>Underscore<font color=Red>]</font>+  <font color=Cyan>,</font> keyglyph <font color=Red>=</font> <font color=Red>[</font>Foreground Red<font color=Red>]</font>+  <font color=Cyan>,</font> layout   <font color=Red>=</font> <font color=Red>[</font>Foreground Cyan<font color=Red>]</font>+  <font color=Cyan>,</font> comment  <font color=Red>=</font> <font color=Red>[</font>Foreground Blue<font color=Red>]</font>+  <font color=Cyan>,</font> conid    <font color=Red>=</font> <font color=Red>[</font>Normal<font color=Red>]</font>+  <font color=Cyan>,</font> varid    <font color=Red>=</font> <font color=Red>[</font>Normal<font color=Red>]</font>+  <font color=Cyan>,</font> conop    <font color=Red>=</font> <font color=Red>[</font>Foreground Red<font color=Cyan>,</font>Bold<font color=Red>]</font>+  <font color=Cyan>,</font> varop    <font color=Red>=</font> <font color=Red>[</font>Foreground Cyan<font color=Red>]</font>+  <font color=Cyan>,</font> string   <font color=Red>=</font> <font color=Red>[</font>Foreground Magenta<font color=Red>]</font>+  <font color=Cyan>,</font> char     <font color=Red>=</font> <font color=Red>[</font>Foreground Magenta<font color=Red>]</font>+  <font color=Cyan>,</font> number   <font color=Red>=</font> <font color=Red>[</font>Foreground Magenta<font color=Red>]</font>+  <font color=Cyan>,</font> selection <font color=Red>=</font> <font color=Red>[</font>Bold<font color=Cyan>,</font> Foreground Magenta<font color=Red>]</font>+  <font color=Cyan>,</font> variantselection <font color=Red>=</font> <font color=Red>[</font>Dim<font color=Cyan>,</font> Foreground Red<font color=Cyan>,</font> Underscore<font color=Red>]</font>+  <font color=Cyan>}</font>++readColourPrefs <font color=Red>::</font> IO ColourPrefs+<a name="readColourPrefs"></a>readColourPrefs <font color=Red>=</font> catch+  <font color=Cyan>(</font><u><font color=Green>do</font></u> val <font color=Red>&lt;-</font> readFile <font color=Magenta>".hscolour"</font>+      return <font color=Cyan>(</font>read val<font color=Cyan>)</font><font color=Cyan>)</font>+  <font color=Cyan>(</font><font color=Red>\</font>e<font color=Red>-&gt;</font> catch+    <font color=Cyan>(</font><u><font color=Green>do</font></u> home <font color=Red>&lt;-</font> getEnv <font color=Magenta>"HOME"</font>+        val <font color=Red>&lt;-</font> readFile <font color=Cyan>(</font>home<font color=Cyan>++</font><font color=Magenta>"/.hscolour"</font><font color=Cyan>)</font>+        return <font color=Cyan>(</font>read val<font color=Cyan>)</font><font color=Cyan>)</font>+    <font color=Cyan>(</font><font color=Red>\</font>e<font color=Red>-&gt;</font> return defaultColourPrefs<font color=Cyan>)</font><font color=Cyan>)</font>++<font color=Blue>-- Convert classification to colour highlights.</font>+colourise <font color=Red>::</font> ColourPrefs <font color=Red>-&gt;</font> TokenType <font color=Red>-&gt;</font> <font color=Red>[</font>Highlight<font color=Red>]</font>+<a name="colourise"></a>colourise pref Space    <font color=Red>=</font> <font color=Red>[</font>Normal<font color=Red>]</font>+colourise pref Comment  <font color=Red>=</font> comment pref+colourise pref Keyword  <font color=Red>=</font> keyword pref+colourise pref Keyglyph <font color=Red>=</font> keyglyph pref+colourise pref Layout   <font color=Red>=</font> layout pref+colourise pref Conid    <font color=Red>=</font> conid pref+colourise pref Varid    <font color=Red>=</font> varid pref+colourise pref Conop    <font color=Red>=</font> conop pref+colourise pref Varop    <font color=Red>=</font> varop pref+colourise pref String   <font color=Red>=</font> string pref+colourise pref Char     <font color=Red>=</font> char pref+colourise pref Number   <font color=Red>=</font> number pref+colourise pref Error    <font color=Red>=</font> selection pref++</pre>
+ docs/hscolour/Language/Haskell/HsColour/HTML.html view
@@ -0,0 +1,69 @@+<pre><font color=Blue>-- | Formats Haskell source code using HTML with font tags.</font>+<u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>HTML +    <font color=Cyan>(</font>hscolour<font color=Cyan>,</font> +     <font color=Blue>-- * Internals</font>+     renderAnchors<font color=Cyan>,</font> renderComment<font color=Cyan>,</font> escape<font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Anchors+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Classify <u><font color=Green>as</font></u> Classify+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Colourise++<u><font color=Green>import</font></u> Data<font color=Cyan>.</font>Char<font color=Cyan>(</font>isAlphaNum<font color=Cyan>)</font>+++<font color=Blue>-- | Formats Haskell source code using HTML with font tags.</font>+hscolour <font color=Red>::</font> ColourPrefs <font color=Blue>-- ^ Colour preferences.</font>+         <font color=Red>-&gt;</font> Bool        <font color=Blue>-- ^ Whether to include anchors</font>+         <font color=Red>-&gt;</font> String      <font color=Blue>-- ^ Haskell source code.</font>+         <font color=Red>-&gt;</font> String      <font color=Blue>-- ^ Coloured Haskell source code.</font>+<a name="hscolour"></a>hscolour pref anchor <font color=Red>=</font> +    top'n'tail <font color=Cyan>.</font> <font color=Cyan>(</font><u><font color=Green>if</font></u> anchor <u><font color=Green>then</font></u> concatMap <font color=Cyan>(</font>renderAnchors <font color=Cyan>(</font>renderToken pref<font color=Cyan>)</font><font color=Cyan>)</font> +                                   <font color=Cyan>.</font> insertAnchors+                            <u><font color=Green>else</font></u> concatMap <font color=Cyan>(</font>renderToken pref<font color=Cyan>)</font><font color=Cyan>)</font> <font color=Cyan>.</font> tokenise++top'n'tail <font color=Red>::</font> String <font color=Red>-&gt;</font> String+<a name="top'n'tail"></a>top'n'tail <font color=Red>=</font> <font color=Cyan>(</font><font color=Magenta>"&lt;pre&gt;"</font><font color=Cyan>++</font><font color=Cyan>)</font> <font color=Cyan>.</font> <font color=Cyan>(</font><font color=Cyan>++</font><font color=Magenta>"&lt;/pre&gt;"</font><font color=Cyan>)</font>++renderToken <font color=Red>::</font> ColourPrefs <font color=Red>-&gt;</font> <font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font> <font color=Red>-&gt;</font> String+<a name="renderToken"></a>renderToken pref <font color=Cyan>(</font>t<font color=Cyan>,</font>s<font color=Cyan>)</font> <font color=Red>=</font> fontify <font color=Cyan>(</font>colourise pref t<font color=Cyan>)</font>+                         <font color=Cyan>(</font><u><font color=Green>if</font></u> t <font color=Cyan>==</font> Comment <u><font color=Green>then</font></u> renderComment s <u><font color=Green>else</font></u> escape s<font color=Cyan>)</font>++renderAnchors <font color=Red>::</font> <font color=Cyan>(</font><font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font><font color=Red>-&gt;</font>String<font color=Cyan>)</font>+                 <font color=Red>-&gt;</font> Either String <font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font> <font color=Red>-&gt;</font> String+<a name="renderAnchors"></a>renderAnchors <u><font color=Green>_</font></u>      <font color=Cyan>(</font>Left v<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>"&lt;a name=\""</font><font color=Cyan>++</font>v<font color=Cyan>++</font><font color=Magenta>"\"&gt;&lt;/a&gt;"</font>+renderAnchors render <font color=Cyan>(</font>Right r<font color=Cyan>)</font> <font color=Red>=</font> render r++<font color=Blue>-- if there are http://links/ in a comment, turn them into</font>+<font color=Blue>-- hyperlinks</font>+renderComment <font color=Red>::</font> String <font color=Red>-&gt;</font> String+<a name="renderComment"></a>renderComment xs<font color=Red>@</font><font color=Cyan>(</font><font color=Magenta>'h'</font><b><font color=Red>:</font></b><font color=Magenta>'t'</font><b><font color=Red>:</font></b><font color=Magenta>'t'</font><b><font color=Red>:</font></b><font color=Magenta>'p'</font><b><font color=Red>:</font></b><font color=Magenta>':'</font><b><font color=Red>:</font></b><font color=Magenta>'/'</font><b><font color=Red>:</font></b><font color=Magenta>'/'</font><b><font color=Red>:</font></b><u><font color=Green>_</font></u><font color=Cyan>)</font> <font color=Red>=</font>+        renderLink a <font color=Cyan>++</font> renderComment b+    <u><font color=Green>where</font></u>+        <font color=Blue>-- see http://www.gbiv.com/protocols/uri/rfc/rfc3986.html#characters</font>+        isUrlChar x <font color=Red>=</font> isAlphaNum x <font color=Cyan>||</font> x <font color=Cyan>`elem`</font> <font color=Magenta>":/?#[]@!$&amp;'()*+,;=-._~%"</font>+        <font color=Cyan>(</font>a<font color=Cyan>,</font>b<font color=Cyan>)</font> <font color=Red>=</font> span isUrlChar xs+        renderLink link <font color=Red>=</font> <font color=Magenta>"&lt;a href=\""</font> <font color=Cyan>++</font> link <font color=Cyan>++</font> <font color=Magenta>"\"&gt;"</font> <font color=Cyan>++</font> escape link <font color=Cyan>++</font> <font color=Magenta>"&lt;/a&gt;"</font>+        +renderComment <font color=Cyan>(</font>x<b><font color=Red>:</font></b>xs<font color=Cyan>)</font> <font color=Red>=</font> escape <font color=Red>[</font>x<font color=Red>]</font> <font color=Cyan>++</font> renderComment xs+renderComment <font color=Red>[</font><font color=Red>]</font> <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>++<font color=Blue>-- Html stuff</font>+<a name="fontify"></a>fontify <font color=Red>[</font><font color=Red>]</font> s     <font color=Red>=</font> s+fontify <font color=Cyan>(</font>h<b><font color=Red>:</font></b>hs<font color=Cyan>)</font> s <font color=Red>=</font> font h <font color=Cyan>(</font>fontify hs s<font color=Cyan>)</font>++<a name="font"></a>font Normal         s <font color=Red>=</font> s+font Bold           s <font color=Red>=</font> <font color=Magenta>"&lt;b&gt;"</font><font color=Cyan>++</font>s<font color=Cyan>++</font><font color=Magenta>"&lt;/b&gt;"</font>+font Dim            s <font color=Red>=</font> <font color=Magenta>"&lt;em&gt;"</font><font color=Cyan>++</font>s<font color=Cyan>++</font><font color=Magenta>"&lt;/em&gt;"</font>+font Underscore     s <font color=Red>=</font> <font color=Magenta>"&lt;u&gt;"</font><font color=Cyan>++</font>s<font color=Cyan>++</font><font color=Magenta>"&lt;/u&gt;"</font>+font Blink          s <font color=Red>=</font> <font color=Magenta>"&lt;blink&gt;"</font><font color=Cyan>++</font>s<font color=Cyan>++</font><font color=Magenta>"&lt;/blink&gt;"</font>+font ReverseVideo   s <font color=Red>=</font> s+font Concealed      s <font color=Red>=</font> s+font <font color=Cyan>(</font>Foreground c<font color=Cyan>)</font> s <font color=Red>=</font> <font color=Magenta>"&lt;font color="</font><font color=Cyan>++</font>show c<font color=Cyan>++</font><font color=Magenta>"&gt;"</font><font color=Cyan>++</font>s<font color=Cyan>++</font><font color=Magenta>"&lt;/font&gt;"</font>+font <font color=Cyan>(</font>Background c<font color=Cyan>)</font> s <font color=Red>=</font> <font color=Magenta>"&lt;font bgcolor="</font><font color=Cyan>++</font>show c<font color=Cyan>++</font><font color=Magenta>"&gt;"</font><font color=Cyan>++</font>s<font color=Cyan>++</font><font color=Magenta>"&lt;/font&gt;"</font>++<a name="escape"></a>escape <font color=Cyan>(</font><font color=Magenta>'&lt;'</font><b><font color=Red>:</font></b>cs<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>"&amp;lt;"</font><font color=Cyan>++</font>escape cs+escape <font color=Cyan>(</font><font color=Magenta>'&gt;'</font><b><font color=Red>:</font></b>cs<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>"&amp;gt;"</font><font color=Cyan>++</font>escape cs+escape <font color=Cyan>(</font><font color=Magenta>'&amp;'</font><b><font color=Red>:</font></b>cs<font color=Cyan>)</font> <font color=Red>=</font> <font color=Magenta>"&amp;amp;"</font><font color=Cyan>++</font>escape cs+escape <font color=Cyan>(</font>c<b><font color=Red>:</font></b>cs<font color=Cyan>)</font>   <font color=Red>=</font> c<b><font color=Red>:</font></b> escape cs+escape <font color=Red>[</font><font color=Red>]</font>       <font color=Red>=</font> <font color=Red>[</font><font color=Red>]</font>+</pre>
+ docs/hscolour/Language/Haskell/HsColour/TTY.html view
@@ -0,0 +1,16 @@+<pre><font color=Blue>-- | Highlights Haskell code with ANSI terminal codes.</font>+<u><font color=Green>module</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>TTY <font color=Cyan>(</font>hscolour<font color=Cyan>)</font> <u><font color=Green>where</font></u>++<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>ANSI <u><font color=Green>as</font></u> ANSI+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Classify+<u><font color=Green>import</font></u> Language<font color=Cyan>.</font>Haskell<font color=Cyan>.</font>HsColour<font color=Cyan>.</font>Colourise++<font color=Blue>-- | Highlights Haskell code with ANSI terminal codes.</font>+hscolour <font color=Red>::</font> ColourPrefs <font color=Blue>-- ^ Colour preferences.</font>+         <font color=Red>-&gt;</font> String      <font color=Blue>-- ^ Haskell source code.</font>+         <font color=Red>-&gt;</font> String      <font color=Blue>-- ^ Coloured Haskell source code.</font>+<a name="hscolour"></a>hscolour pref <font color=Red>=</font> concatMap <font color=Cyan>(</font>renderToken pref<font color=Cyan>)</font> <font color=Cyan>.</font> tokenise++renderToken <font color=Red>::</font> ColourPrefs <font color=Red>-&gt;</font> <font color=Cyan>(</font>TokenType<font color=Cyan>,</font>String<font color=Cyan>)</font> <font color=Red>-&gt;</font> String+<a name="renderToken"></a>renderToken pref <font color=Cyan>(</font>t<font color=Cyan>,</font>s<font color=Cyan>)</font> <font color=Red>=</font> ANSI<font color=Cyan>.</font>highlight <font color=Cyan>(</font>colourise pref t<font color=Cyan>)</font> s+</pre>
+ docs/hscolour/doc-index-B.html view
@@ -0,0 +1,184 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (B)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Background</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ABackground"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ABackground"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Black</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ABlack"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ABlack"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Blink</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ABlink"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ABlink"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Blue</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ABlue"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ABlue"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Bold</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ABold"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ABold"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-C.html view
@@ -0,0 +1,364 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (C)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>CSS</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour.html#v%3ACSS"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Char</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AChar"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Colour</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AColour"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AColour"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry" COLSPAN="2"+>ColourPrefs</TD+></TR+><TR+><TD CLASS="indexannot"+>1 (Type/Class)</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#t%3AColourPrefs"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#t%3AColourPrefs"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexannot"+>2 (Data Constructor)</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3AColourPrefs"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3AColourPrefs"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Comment</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AComment"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Concealed</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AConcealed"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AConcealed"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Conid</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AConid"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Conop</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AConop"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Cyan</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ACyan"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ACyan"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>char</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Achar"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Achar"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>clearDown</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AclearDown"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>clearUp</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AclearUp"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>clearbol</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3Aclearbol"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>cleareol</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3Acleareol"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>clearline</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3Aclearline"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>cls</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3Acls"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>colourCycle</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AcolourCycle"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>colourise</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Acolourise"+>Language.Haskell.HsColour.Colourise</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>comment</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Acomment"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Acomment"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>conid</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Aconid"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Aconid"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>conop</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Aconop"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Aconop"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>cursorDown</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AcursorDown"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>cursorLeft</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AcursorLeft"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>cursorRight</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AcursorRight"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>cursorUp</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AcursorUp"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-D.html view
@@ -0,0 +1,144 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (D)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Dim</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ADim"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ADim"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-E.html view
@@ -0,0 +1,158 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (E)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Error</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AError"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>enableScrollRegion</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AenableScrollRegion"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>escape</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-HTML.html#v%3Aescape"+>Language.Haskell.HsColour.HTML</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-F.html view
@@ -0,0 +1,144 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (F)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Foreground</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AForeground"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AForeground"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-G.html view
@@ -0,0 +1,152 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (G)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Green</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AGreen"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AGreen"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>goto</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3Agoto"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-H.html view
@@ -0,0 +1,220 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (H)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>HTML</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour.html#v%3AHTML"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Highlight</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#t%3AHighlight"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#t%3AHighlight"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>highlight</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3Ahighlight"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>highlightOff</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AhighlightOff"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>highlightOn</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AhighlightOn"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry" COLSPAN="2"+>hscolour</TD+></TR+><TR+><TD CLASS="indexannot"+>1 (Function)</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour.html#v%3Ahscolour"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexannot"+>2 (Function)</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-CSS.html#v%3Ahscolour"+>Language.Haskell.HsColour.CSS</A+></TD+></TR+><TR+><TD CLASS="indexannot"+>3 (Function)</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-HTML.html#v%3Ahscolour"+>Language.Haskell.HsColour.HTML</A+></TD+></TR+><TR+><TD CLASS="indexannot"+>4 (Function)</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-TTY.html#v%3Ahscolour"+>Language.Haskell.HsColour.TTY</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>hscolourFragment</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-CSS.html#v%3AhscolourFragment"+>Language.Haskell.HsColour.CSS</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-I.html view
@@ -0,0 +1,142 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (I)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>insertAnchors</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Anchors.html#v%3AinsertAnchors"+>Language.Haskell.HsColour.Anchors</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-K.html view
@@ -0,0 +1,170 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (K)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Keyglyph</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AKeyglyph"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Keyword</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AKeyword"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>keyglyph</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Akeyglyph"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Akeyglyph"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>keyword</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Akeyword"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Akeyword"+>Language.Haskell.HsColour</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-L.html view
@@ -0,0 +1,168 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (L)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>LaTeX</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour.html#v%3ALaTeX"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Layout</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3ALayout"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>layout</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Alayout"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Alayout"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>lineWrap</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AlineWrap"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-M.html view
@@ -0,0 +1,144 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (M)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Magenta</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AMagenta"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AMagenta"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-N.html view
@@ -0,0 +1,162 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (N)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Normal</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ANormal"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ANormal"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Number</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3ANumber"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>number</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Anumber"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Anumber"+>Language.Haskell.HsColour</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-O.html view
@@ -0,0 +1,142 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (O)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Output</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour.html#t%3AOutput"+>Language.Haskell.HsColour</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-R.html view
@@ -0,0 +1,186 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (R)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Red</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3ARed"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3ARed"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>ReverseVideo</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AReverseVideo"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AReverseVideo"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>readColourPrefs</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3AreadColourPrefs"+>Language.Haskell.HsColour.Colourise</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>renderAnchors</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-HTML.html#v%3ArenderAnchors"+>Language.Haskell.HsColour.HTML</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>renderComment</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-HTML.html#v%3ArenderComment"+>Language.Haskell.HsColour.HTML</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>restorePosition</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3ArestorePosition"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-S.html view
@@ -0,0 +1,194 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (S)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Space</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3ASpace"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>String</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AString"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>savePosition</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AsavePosition"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>scrollDown</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AscrollDown"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>scrollUp</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ANSI.html#v%3AscrollUp"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>selection</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Aselection"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Aselection"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>string</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Astring"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Astring"+>Language.Haskell.HsColour</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-T.html view
@@ -0,0 +1,158 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (T)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>TTY</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour.html#v%3ATTY"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>TokenType</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#t%3ATokenType"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>tokenise</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3Atokenise"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-U.html view
@@ -0,0 +1,144 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (U)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Underscore</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AUnderscore"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AUnderscore"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-V.html view
@@ -0,0 +1,180 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (V)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Varid</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AVarid"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>Varop</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Classify.html#v%3AVarop"+>Language.Haskell.HsColour.Classify</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>variantselection</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Avariantselection"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Avariantselection"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>varid</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Avarid"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Avarid"+>Language.Haskell.HsColour</A+></TD+></TR+><TR+><TD CLASS="indexentry"+>varop</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-Colourise.html#v%3Avarop"+>Language.Haskell.HsColour.Colourise</A+>, <A HREF="Language-Haskell-HsColour.html#v%3Avarop"+>Language.Haskell.HsColour</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-W.html view
@@ -0,0 +1,144 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (W)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>White</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AWhite"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AWhite"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index-Y.html view
@@ -0,0 +1,144 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index (Y)</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD CLASS="indexentry"+>Yellow</TD+><TD CLASS="indexlinks"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html#v%3AYellow"+>Language.Haskell.HsColour.ColourHighlight</A+>, Language.Haskell.HsColour.Colourise, <A HREF="Language-Haskell-HsColour-ANSI.html#v%3AYellow"+>Language.Haskell.HsColour.ANSI</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/doc-index.html view
@@ -0,0 +1,128 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour (Index)</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Index</TD+></TR+><TR+><TD+><TABLE CELLPADDING="0" CELLSPACING="5"+><TR+><TD+><A HREF="doc-index-B.html"+>B</A+></TD+><TD+><A HREF="doc-index-C.html"+>C</A+></TD+><TD+><A HREF="doc-index-D.html"+>D</A+></TD+><TD+><A HREF="doc-index-E.html"+>E</A+></TD+><TD+><A HREF="doc-index-F.html"+>F</A+></TD+><TD+><A HREF="doc-index-G.html"+>G</A+></TD+><TD+><A HREF="doc-index-H.html"+>H</A+></TD+><TD+><A HREF="doc-index-I.html"+>I</A+></TD+><TD+><A HREF="doc-index-K.html"+>K</A+></TD+><TD+><A HREF="doc-index-L.html"+>L</A+></TD+><TD+><A HREF="doc-index-M.html"+>M</A+></TD+><TD+><A HREF="doc-index-N.html"+>N</A+></TD+><TD+><A HREF="doc-index-O.html"+>O</A+></TD+><TD+><A HREF="doc-index-R.html"+>R</A+></TD+><TD+><A HREF="doc-index-S.html"+>S</A+></TD+><TD+><A HREF="doc-index-T.html"+>T</A+></TD+><TD+><A HREF="doc-index-U.html"+>U</A+></TD+><TD+><A HREF="doc-index-V.html"+>V</A+></TD+><TD+><A HREF="doc-index-W.html"+>W</A+></TD+><TD+><A HREF="doc-index-Y.html"+>Y</A+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/haddock.css view
@@ -0,0 +1,260 @@+/* -------- Global things --------- */++BODY { +  background-color: #ffffff;+  color: #000000;+  font-family: sans-serif;+  } ++A:link    { color: #0000e0; text-decoration: none }+A:visited { color: #0000a0; text-decoration: none }+A:hover   { background-color: #e0e0ff; text-decoration: none }++TABLE.vanilla {+  width: 100%;+  border-width: 0px;+  /* I can't seem to specify cellspacing or cellpadding properly using CSS... */+}++TABLE.vanilla2 {+  border-width: 0px;+}++/* <TT> font is a little too small in MSIE */+TT  { font-size: 100%; }+PRE { font-size: 100%; }++LI P { margin: 0pt } ++TD {+  border-width: 0px;+}++TABLE.narrow {+  border-width: 0px;+}++TD.s8  {  height: 8px;  }+TD.s15 {  height: 15px; }++SPAN.keyword { text-decoration: underline; }++/* Resize the buttom image to match the text size */+IMG.coll { width : 0.75em; height: 0.75em; margin-bottom: 0; margin-right: 0.5em }++/* --------- Contents page ---------- */++DIV.node {+  padding-left: 3em;+}++DIV.cnode {+  padding-left: 1.75em;+}++SPAN.pkg {+  position: absolute;+  left: 50em;+}++/* --------- Documentation elements ---------- */++TD.children {+  padding-left: 25px;+  }++TD.synopsis {+  padding: 2px;+  background-color: #f0f0f0;+  font-family: monospace+ }++TD.decl { +  padding: 2px;+  background-color: #f0f0f0; +  font-family: monospace;+  vertical-align: top;+  }++TD.topdecl {+  padding: 2px;+  background-color: #f0f0f0;+  font-family: monospace;+  vertical-align: top;+}++TABLE.declbar {+  border-spacing: 0px;+ }++TD.declname {+  width: 100%;+ }++TD.declbut {+  padding-left: 5px;+  padding-right: 5px;+  border-left-width: 1px;+  border-left-color: #000099;+  border-left-style: solid;+  white-space: nowrap;+  font-size: small;+ }++/* +  arg is just like decl, except that wrapping is not allowed.  It is+  used for function and constructor arguments which have a text box+  to the right, where if wrapping is allowed the text box squashes up+  the declaration by wrapping it.+*/+TD.arg { +  padding: 2px;+  background-color: #f0f0f0; +  font-family: monospace;+  vertical-align: top;+  white-space: nowrap;+  }++TD.recfield { padding-left: 20px }++TD.doc  { +  padding-top: 2px;+  padding-left: 10px;+  }++TD.ndoc  { +  padding: 2px;+  }++TD.rdoc  { +  padding: 2px;+  padding-left: 10px;+  width: 100%;+  }++TD.body  { +  padding-left: 10px+  }++TD.pkg {+  width: 100%;+  padding-left: 10px+}++TD.indexentry {+  vertical-align: top;+  padding-right: 10px+  }++TD.indexannot {+  vertical-align: top;+  padding-left: 20px;+  white-space: nowrap+  }++TD.indexlinks {+  width: 100%+  }++/* ------- Section Headings ------- */++TD.section1 {+  padding-top: 15px;+  font-weight: bold;+  font-size: 150%+  }++TD.section2 {+  padding-top: 10px;+  font-weight: bold;+  font-size: 130%+  }++TD.section3 {+  padding-top: 5px;+  font-weight: bold;+  font-size: 110%+  }++TD.section4 {+  font-weight: bold;+  font-size: 100%+  }++/* -------------- The title bar at the top of the page */++TD.infohead {+  color: #ffffff;+  font-weight: bold;+  padding-right: 10px;+  text-align: left;+}++TD.infoval {+  color: #ffffff;+  padding-right: 10px;+  text-align: left;+}++TD.topbar {+  background-color: #000099;+  padding: 5px;+}++TD.title {+  color: #ffffff;+  padding-left: 10px;+  width: 100%+  }++TD.topbut {+  padding-left: 5px;+  padding-right: 5px;+  border-left-width: 1px;+  border-left-color: #ffffff;+  border-left-style: solid;+  white-space: nowrap;+  }++TD.topbut A:link {+  color: #ffffff+  }++TD.topbut A:visited {+  color: #ffff00+  }++TD.topbut A:hover {+  background-color: #6060ff;+  }++TD.topbut:hover {+  background-color: #6060ff+  }++TD.modulebar { +  background-color: #0077dd;+  padding: 5px;+  border-top-width: 1px;+  border-top-color: #ffffff;+  border-top-style: solid;+  }++/* --------- The page footer --------- */++TD.botbar {+  background-color: #000099;+  color: #ffffff;+  padding: 5px+  }+TD.botbar A:link {+  color: #ffffff;+  text-decoration: underline+  }+TD.botbar A:visited {+  color: #ffff00+  }+TD.botbar A:hover {+  background-color: #6060ff+  }+
+ docs/hscolour/haddock.js view
@@ -0,0 +1,15 @@+// Haddock JavaScript utilities+function toggle(button,id)+{+   var n = document.getElementById(id).style;+   if (n.display == "none")+   {+	button.src = "minus.gif";+	n.display = "block";+   }+   else+   {+	button.src = "plus.gif";+	n.display = "none";+   }+}
+ docs/hscolour/haskell_icon.gif view

binary file changed (absent → 911 bytes)

+ docs/hscolour/index.html view
@@ -0,0 +1,185 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>hscolour</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hscolour</TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="section1"+>Modules</TD+></TR+><TR+><TD+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0"+><TR+><TD STYLE="width: 50em"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:0')" ALT="show/hide"+>Language</TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:0" STYLE="display:block;"+><TR+><TD STYLE="width: 48em"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:1')" ALT="show/hide"+>Haskell</TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:1" STYLE="display:block;"+><TR+><TD STYLE="width: 46em"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:2')" ALT="show/hide"+><A HREF="Language-Haskell-HsColour.html"+>Language.Haskell.HsColour</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:2" STYLE="display:block;"+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-ANSI.html"+>Language.Haskell.HsColour.ANSI</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-Anchors.html"+>Language.Haskell.HsColour.Anchors</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-CSS.html"+>Language.Haskell.HsColour.CSS</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-Classify.html"+>Language.Haskell.HsColour.Classify</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-ColourHighlight.html"+>Language.Haskell.HsColour.ColourHighlight</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-Colourise.html"+>Language.Haskell.HsColour.Colourise</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-HTML.html"+>Language.Haskell.HsColour.HTML</A+></TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Language-Haskell-HsColour-TTY.html"+>Language.Haskell.HsColour.TTY</A+></TD+><TD+></TD+><TD+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 0.8</TD+></TR+></TABLE+></BODY+></HTML+>
+ docs/hscolour/minus.gif view

binary file changed (absent → 56 bytes)

+ docs/hscolour/plus.gif view

binary file changed (absent → 59 bytes)

+ hscolour.cabal view
@@ -0,0 +1,30 @@+Name: hscolour+Version: 1.6+Copyright: Malcolm Wallace, University of York, 2003-2005, Bjorn Bringert 2006+Maintainer: Malcolm Wallace+Author: Malcolm Wallace+Homepage: http://www.cs.york.ac.uk/fp/darcs/hscolour/+License: GPL+License-file: LICENCE-GPL+Build-depends: haskell98, base+Extensions: +Synopsis: Colourise Haskell code.+Description:+  hscolour is a small Haskell script to colourise Haskell code. It currently+  has four output formats: +  ANSI terminal codes, HTML with <font> tags, HTML with CSS, and LaTeX.+Exposed-Modules: +  Language.Haskell.HsColour,+  Language.Haskell.HsColour.ANSI,+  Language.Haskell.HsColour.Anchors,+  Language.Haskell.HsColour.Classify,+  Language.Haskell.HsColour.ColourHighlight,+  Language.Haskell.HsColour.Colourise,+  Language.Haskell.HsColour.TTY,+  Language.Haskell.HsColour.HTML,+  Language.Haskell.HsColour.LaTeX,+  Language.Haskell.HsColour.CSS+ghc-options: -O2 -W++Executable: HsColour+Main-is: HsColour.hs
+ hscolour.css view
@@ -0,0 +1,5 @@++.keyglyph, .layout {color: red;}+.keyword {color: blue;}+.comment, .comment a {color: green;}+.str, .chr {color: teal;}
+ index.html view
@@ -0,0 +1,184 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">+<html><head><title>hscolour</title></head>+<body bgcolor="#ffffff">+<table><tr><td width=700>++<center>+  <h1>hscolour</h1>+</center>+<hr>++<p>+<b>hscolour</b> is a small Haskell script to colourise Haskell code.+It currently has four output formats: ANSI terminal codes, HTML with+&lt;font&gt; tags, HTML with CSS, and LaTeX.++<h2>Example</h2>+<p>+Here's a little example of the HTML output:<br>+<pre>    <u><font color=Green>module</font></u> Main <font color=Cyan>(</font>main<font color=Cyan>)</font> <u><font color=Green>where</font></u>+    <u><font color=Green>import</font></u> Prelude +    +    <font color=Blue>-- The notorious nfib "benchmark", but using Doubles.</font>+    main <font color=Red>=</font> print <font color=Cyan>(</font>nfib <font color=Magenta>30</font><font color=Cyan>)</font>+    +    nfib <font color=Red>::</font> Double <font color=Red>-&gt;</font> Double+    nfib n <font color=Red>=</font> <u><font color=Green>if</font></u> n <font color=Cyan>&lt;=</font> <font color=Magenta>1</font>+             <u><font color=Green>then</font></u> <font color=Magenta>1</font>+             <u><font color=Green>else</font></u> nfib <font color=Cyan>(</font>n<font color=Cyan>`subtract`</font><font color=Magenta>1</font><font color=Cyan>)</font> <font color=Cyan>+</font> nfib <font color=Cyan>(</font>n<font color=Cyan>`subtract`</font><font color=Magenta>2</font><font color=Cyan>)</font> <font color=Cyan>+</font> <font color=Magenta>1</font>+</pre>++<h2>Download</h2>+<p>+<ul>+<li> Download a tarfile package from:+     <a href="ftp://ftp.cs.york.ac.uk/pub/haskell/contrib/">+     ftp://ftp.cs.york.ac.uk/pub/haskell/contrib/</a>+<li> Or use the <a href="http://darcs.net/">darcs</a> repository at<br>+       <tt>darcs get http://www.cs.york.ac.uk/fp/darcs/hscolour</tt>+<li> Sources and history are browsable on-line through+     <a href="http://www.cs.york.ac.uk/fp/darcs/">darcsweb</a>.+<li> A Windows binary is available at+     <a href="ftp://ftp.cs.york.ac.uk/pub/haskell/contrib/hscolour-1.3-win.zip">+     ftp://ftp.cs.york.ac.uk/pub/haskell/contrib/hscolour-1.3-win.zip</a>+</ul>++<h2>Build</h2>+<p>+Just use one of the standard ways of building a Haskell program:+<ul>+<li><tt>hmake HsColour</tt>+<li><tt>ghc --make HsColour</tt>+<li><tt>runhugs HsColour</tt>+</ul>++<h2>Use</h2>+<p>+<ul>+<li><tt>HsColour [ -tty | -html | -css | -latex | -anchorHTML | -anchorCSS ] [file.hs]</tt>+</ul>+<p>+You can colourise a Haskell source file for either ANSI terminal codes+(option -tty), or HTML with font tags (option -html), or HTML output+with CSS (option -css), or for LaTeX.  The default is for terminal output.+<p>+If no file argument is given, it reads standard input.  Output is+always written to standard output.+<p>+HsColour can add named anchors (options -anchorHTML or -anchorCSS) to+top-level definitions in the source file (functions, datatypes,+classes).  This enables you to make links to a specific location in the+generated file with the standard <tt>file.html#anchor</tt> notation+(e.g. from <a href="http://haskell.org/haddock">haddock</a>-generated+library documentation).  <a href="#haddock">See below for details.</a>+++<h2>Configuration of colours</h2>+<p>+If you use either -html, -tty, or -latex, you can configure the colours for+different lexical entities by editing a configuration file called+<tt>.hscolour</tt> in the current directory.+(An <a href=".hscolour">example</a> is included in the distribution.)+For CSS output, it is sufficient to edit the+<a href="hscolour.css"><tt>hscolour.css</tt></a> file, also in+the distribution.++<p>+The <tt>.hscolour</tt> file format is a simple Haskell value of type+ColourPrefs, constructed using named fields, as follows:++<pre>  <u><font color=Green>data</font></u> ColourPrefs <font color=Red>=</font> ColourPrefs+    <font color=Cyan>{</font> keyword<font color=Cyan>,</font> keyglyph<font color=Cyan>,</font> layout<font color=Cyan>,</font> comment+    <font color=Cyan>,</font> conid<font color=Cyan>,</font> varid<font color=Cyan>,</font> conop<font color=Cyan>,</font> varop+    <font color=Cyan>,</font> string<font color=Cyan>,</font> char<font color=Cyan>,</font> number+    <font color=Cyan>,</font> selection<font color=Cyan>,</font> variantselection <font color=Red>::</font> <font color=Red>[</font>Highlight<font color=Red>]</font>+    <font color=Cyan>}</font>++  <u><font color=Green>data</font></u> Colour <font color=Red>=</font> Black <font color=Red>|</font> Red <font color=Red>|</font> Green <font color=Red>|</font> Yellow <font color=Red>|</font> Blue <font color=Red>|</font> Magenta <font color=Red>|</font> Cyan <font color=Red>|</font> White++  <u><font color=Green>data</font></u> Highlight <font color=Red>=</font>+      Normal+    <font color=Red>|</font> Bold+    <font color=Red>|</font> Dim+    <font color=Red>|</font> Underscore+    <font color=Red>|</font> Blink+    <font color=Red>|</font> ReverseVideo+    <font color=Red>|</font> Concealed+    <font color=Red>|</font> Foreground Colour+    <font color=Red>|</font> Background Colour+</pre>++<p>+<h2>Use it as a library</h2>+If you want to incorporate hscolour-like functionality into your own+Haskell program, it is now (from 1.4) also available as a library,+thanks to Bj&ouml;rn Bringert.  The library is Cabal-ised, so just do+the usual thing to install it as a package:+<ul>+<li><tt>runhaskell Setup.hs configure</tt>+<li><tt>runhaskell Setup.hs build</tt>+<li><tt>runhaskell Setup.hs install</tt>+</ul>+There is+<a href="docs/hscolour/index.html">haddock documentation of the API</a>.++<p>+<a name="haddock"></a>+<h2>Using HsColour with Haddock</h2>+Let's say you want to generate some pretty-coloured HTML versions of+your source files, at the same time as you are generating library+documentation using <a href="http://haskell.org/haddock">Haddock</a>.+Haddock (1.8 onwards, currently only available in darcs) has options+to link the API docs to the source code itself.  Here is a quick summary+of the shell commands to use:+<pre>+for file in $(SRCS)+do HsColour -anchorHTML $file &gt;docs/`dirname $file'/`basename $file .hs`.html+done+haddock --html --title="My Library" --odir=docs   $(SRCS) \+    --source-module="src/%{MODULE/.//}.html" \+    --source-entity="src/%{MODULE/.//}.html#%{NAME}"+</pre>++<p>+<h2>Copyright and licence</h2>+<b>hscolour</b> is &copy; Malcolm Wallace 2003-2006.  It is distributed+under the Gnu GPL, which can be found in the file+<a href="LICENCE-GPL">LICENCE-GPL</a>.++<h2>Shortcomings</h2>+<p>+HsColour is not yet able to add anchors to class methods, nor to+<em>foreign</em> decls.++<h2>Alternatives</h2>+<p>+The <a href="http://www.cse.ogi.edu/~hallgren/Programatica/tools/pfe.cgi">+Programatica</a> project has a more sophisticated HTML+syntax-highlighter.  It hyperlinks every usage of an identifier to its+definition, which is highly useful for browsing large amounts of code.+However, it is a more heavyweight solution as well - requiring the+entire front-end of a compiler not only to parse the Haskell code, but+to chase all its module dependencies as well.  As a consequence, you need+source access to every definition used in your program, including the+Prelude and all library packages...++<h2>History</h2>+<p>+<dl>+<dt>1.6</dt><dd> added -latex output mode</dd>+<dt>1.5</dt><dd> move generated HTML anchors to before comments/typesigs</dd>+<dt>1.4</dt><dd> made available as a Cabal-ised library</dd>+<dt>1.3</dt><dd> added HTML and CSS anchors</dd>+<dt>1.2</dt><dd> added CSS output mode (from Neil Mitchell)</dd>+<dt>1.1</dt><dd> fixed compatibility with ghc-6.4</dd>+<dt>1.0</dt><dd> first release</dd>+</dl>++<p>+This page last modified: 21st December 2006<br>+Malcolm Wallace<br>++</td></tr></table>+</body></html>+