diff --git a/ParseSyntaxFiles.hs b/ParseSyntaxFiles.hs
--- a/ParseSyntaxFiles.hs
+++ b/ParseSyntaxFiles.hs
@@ -28,7 +28,8 @@
 import Data.Maybe
 import Data.Char (toUpper, toLower, isAlphaNum)
 import qualified Data.Map as Map
-import System.IO
+import Prelude hiding (writeFile, putStrLn)
+import System.IO.UTF8 (writeFile, putStrLn)
 import System.Directory
 import System.Environment
 import System.Exit
diff --git a/Text/Highlighting/Kate.hs b/Text/Highlighting/Kate.hs
--- a/Text/Highlighting/Kate.hs
+++ b/Text/Highlighting/Kate.hs
@@ -34,5 +34,7 @@
 import Text.Highlighting.Kate.Format ( formatAsXHtml, FormatOption (..), defaultHighlightingCss )
 import Text.Highlighting.Kate.Syntax ( highlightAs, languages, languagesByExtension )
 import Text.Highlighting.Kate.Definitions ( SourceLine, LabeledSource )
+import Data.Version (showVersion)
+import Paths_highlighting_kate (version)
 
-highlightingKateVersion = "0.2.5"
+highlightingKateVersion = showVersion version
diff --git a/Text/Highlighting/Kate/Syntax/D.hs b/Text/Highlighting/Kate/Syntax/D.hs
--- a/Text/Highlighting/Kate/Syntax/D.hs
+++ b/Text/Highlighting/Kate/Syntax/D.hs
diff --git a/Text/Highlighting/Kate/Syntax/Haskell.hs b/Text/Highlighting/Kate/Syntax/Haskell.hs
--- a/Text/Highlighting/Kate/Syntax/Haskell.hs
+++ b/Text/Highlighting/Kate/Syntax/Haskell.hs
@@ -81,7 +81,9 @@
 parseRules "normal" = 
   do (attr, result) <- (((pDetect2Chars False '{' '-' >>= withAttribute "Comment") >>~ pushContext "comment_multi_line")
                         <|>
-                        ((pDetect2Chars False '-' '-' >>= withAttribute "Comment") >>~ pushContext "comment_single_line")
+                        ((pRegExpr (compileRegex "--$") >>= withAttribute "Comment") >>~ pushContext "comment_single_line")
+                        <|>
+                        ((pRegExpr (compileRegex "--[ A-Za-z0-9\\-,;`].*$") >>= withAttribute "Comment") >>~ pushContext "comment_single_line")
                         <|>
                         ((pRegExpr (compileRegex "([A-Z][A-Za-z0-9]*\\.)+[A-Z][A-Za-z0-9]*") >>= withAttribute "Module Name"))
                         <|>
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,30 @@
+highlighting-kate 0.2.5.1 (29 Nov 2009)
+
+  * Modified ParseSyntaxFiles to use UTF8, since otherwise hscolour
+    compiled with GHC 6.12 will choke on the latin1 characters
+    in some of the comments giving the authors of the original
+    kate syntax files.  Thanks to Sergei Trofimovich for pointing
+    out the problem.
+
+  * Fixed regexp in single line comment detector so infix ops like -->
+    are not treated as comments.  (Thanks to Dmitri Golubovsky for
+	the patch, also contributed to kate upstream.)
+
+  * Use Cabal to get version instead of hardcoding it.
+
+highlighting-kate 0.2.5 (04 Jul 2009)
+
+  * Changed highlightAs to go by file extension if unambiguous.
+
+  * New Relaxngcompact syntax definition.
+
+  * Removed unused mkIdentifier in ParseSyntaxFiles.
+
+  * Moved 'capitalize' to ParseSyntaxFiles and fixed its defn.
+
+  * Removed list of supported languages from description.
+    Spell 50 as "fifty" in description.
+
 highlighting-kate 0.2.4 (15 Mar 2009)
 
   * Fixed bug in literate-haskell-xml. Also fixed now upstream.
diff --git a/highlighting-kate.cabal b/highlighting-kate.cabal
--- a/highlighting-kate.cabal
+++ b/highlighting-kate.cabal
@@ -1,5 +1,5 @@
 Name:                highlighting-kate
-Version:             0.2.5
+Version:             0.2.5.1
 Cabal-Version:       >= 1.2
 Build-Type:          Simple
 Category:            Text
@@ -162,6 +162,7 @@
                      Text.Highlighting.Kate.Syntax.Xslt
                      Text.Highlighting.Kate.Syntax.Yacc
   Other-Modules:     Text.Highlighting.Kate.Common
+                     Paths_highlighting_kate
   Ghc-Options:       -W
   Ghc-Prof-Options:  -auto-all
   -- the following line is needed to prevent gcc from consuming huge amounts of
diff --git a/xml/haskell.xml b/xml/haskell.xml
--- a/xml/haskell.xml
+++ b/xml/haskell.xml
@@ -330,8 +330,13 @@
 	<contexts>
 		<context attribute="Normal Text" lineEndContext="#stay" name="normal">
 			<Detect2Chars attribute="Comment" context="comment_multi_line" char="{" char1="-" />
+			<!--			
 			<Detect2Chars attribute="Comment" context="comment_single_line" char="-" char1="-" />
-            <RegExpr attribute="Module Name" context="#stay" String="([A-Z][A-Za-z0-9]*\.)+[A-Z][A-Za-z0-9]*"/> 
+			-->
+			<RegExpr attribute="Comment" context="comment_single_line" String="--$" />
+			<RegExpr attribute="Comment" context="comment_single_line" 
+				String="--[ A-Za-z0-9\-,;`].*$" />
+			<RegExpr attribute="Module Name" context="#stay" String="([A-Z][A-Za-z0-9]*\.)+[A-Z][A-Za-z0-9]*"/> 
             <keyword attribute="Keyword" context="#stay" String="keywords" />
 			<keyword attribute="Class" context="#stay" String="classes" />
 			<keyword attribute="Type Constructor" context="#stay" String="type constructors" />
@@ -384,7 +389,7 @@
 	</highlighting>
 	<general>
 		<comments>
-			<comment name="singleLine" start="--" />
+			<!---	<comment name="singleLine" start="-" /> -->
 			<comment name="multiLine" start="{-" end="-}" />
 		</comments>
 		<keywords casesensitive="1" />
