diff --git a/ParseSyntaxFiles.hs b/ParseSyntaxFiles.hs
--- a/ParseSyntaxFiles.hs
+++ b/ParseSyntaxFiles.hs
@@ -501,8 +501,15 @@
                                                                 else Just (read column)
                                     , parserDynamic = vBool False dynamic
                                     , parserString = if tildeRegex then drop 1 str else str
-                                    , parserChar = if length char0 == 1 then head char0 else '*'
-                                    , parserChar1 = if length char1 == 1 then head char1 else '*'
+                                    -- Note, some xml files have "\\" for a backslash,
+                                    -- others have "\".  Not sure what the rules are, but
+                                    -- this covers both bases:
+                                    , parserChar = case char0 of
+                                                         [c] -> c
+                                                         _   -> read $ "'" ++ char0 ++ "'"
+                                    , parserChar1 = case char1 of
+                                                         [c] -> c
+                                                         _   -> read $ "'" ++ char1 ++ "'"
                                     , parserChildren = children }
 
 getKeywordAttrs :: IOSArrow XmlTree [SyntaxKeywordAttr]
diff --git a/Text/Highlighting/Kate/Syntax/Bash.hs b/Text/Highlighting/Kate/Syntax/Bash.hs
--- a/Text/Highlighting/Kate/Syntax/Bash.hs
+++ b/Text/Highlighting/Kate/Syntax/Bash.hs
@@ -326,9 +326,9 @@
    (currentContext >>= \x -> guard (x == ("Bash","FindOthers")) >> pDefault >>= withAttribute (fromMaybe NormalTok $ lookup ("Bash","FindOthers") defaultAttributes)))
 
 parseRules ("Bash","FindStrings") =
-  (((pDetect2Chars False '*' '\'' >>= withAttribute DataTypeTok))
+  (((pDetect2Chars False '\\' '\'' >>= withAttribute DataTypeTok))
    <|>
-   ((pDetect2Chars False '*' '"' >>= withAttribute DataTypeTok))
+   ((pDetect2Chars False '\\' '"' >>= withAttribute DataTypeTok))
    <|>
    ((pDetectChar False '\'' >>= withAttribute StringTok) >>~ pushContext ("Bash","StringSQ"))
    <|>
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,10 @@
+highlighting-kate 0.5.3.2 (07 Sep 2012)
+
+  * Fixed handling of backslash in bash highlighting.
+    Sometimes "\\" is used for backslash in the
+    syntax definitions (as in bash), other times "\".
+    We now handle both cases.
+
 highlighting-kate 0.5.3.1 (07 Sep 2012)
 
   * More changes to properly handle includes.  This
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.5.3.1
+Version:             0.5.3.2
 Cabal-Version:       >= 1.6
 Build-Type:          Simple
 Category:            Text
