@@ -142,8 +142,14 @@ literals = mkPattern' match
142 match _ = mzero
142 match _ = mzero
144 encodeChar :: Char -> String
144 encodeChar :: Char -> String
145− encodeChar '\r' = "\\r"
145+ encodeChar '\b' = "\\b"
146+ encodeChar '\t' = "\\t"
146 encodeChar '\n' = "\\n"
147 encodeChar '\n' = "\\n"
148+ encodeChar '\v' = "\\v"
149+ encodeChar '\f' = "\\f"
150+ encodeChar '\r' = "\\r"
151+ encodeChar '"' = "\\\""
152+ encodeChar '\\' = "\\\\"
147 encodeChar c | fromEnum c > 0xFFF = "\\u" ++ showHex (fromEnum c) ""
153 encodeChar c | fromEnum c > 0xFFF = "\\u" ++ showHex (fromEnum c) ""
148 encodeChar c | fromEnum c > 0xFF = "\\u0" ++ showHex (fromEnum c) ""
154 encodeChar c | fromEnum c > 0xFF = "\\u0" ++ showHex (fromEnum c) ""
149 encodeChar c = [c]
155 encodeChar c = [c]