@@ -37,11 +37,17 @@ compressSeparators [] = []
3737compressSeparators str
3838 | isPrefixOf "\"" str = head str : retainConstants compressSeparators "\"" (drop 1 str)
3939 | isPrefixOf "'" str = head str : retainConstants compressSeparators "'" (drop 1 str)
40− | otherwise =
41− replaceAll "; *}" (const "}") $
42− replaceAll " *([{};]) *" (take 1 . dropWhile isSpace) $
43− replaceAll ";+" (const ";") str
44− where
40+ | isPrefixOf " " str = compressSeparators (drop 1 str)
41+ | isPrefixOf " {" str = compressSeparators (drop 1 str)
42+ | isPrefixOf " }" str = compressSeparators (drop 1 str)
43+ | isPrefixOf " ;" str = compressSeparators (drop 1 str)
44+ | isPrefixOf ";;" str = compressSeparators (drop 1 str)
45+ | isPrefixOf "{ " str = compressSeparators (head str : (drop 2 str))
46+ | isPrefixOf "} " str = compressSeparators (head str : (drop 2 str))
47+ | isPrefixOf "; " str = compressSeparators (head str : (drop 2 str))
48+ | isPrefixOf ";}" str = '}' : compressSeparators (drop 2 str)
49+ | otherwise = head str : compressSeparators (drop 1 str)
50+
4551
4652--------------------------------------------------------------------------------
4753-- | Compresses all whitespace.