diff options
| author | Gregor Kleen <gkleen@yggdrasil.li> | 2015-10-18 00:13:32 +0200 |
|---|---|---|
| committer | Gregor Kleen <gkleen@yggdrasil.li> | 2015-10-18 00:13:32 +0200 |
| commit | f9edf473fe3cc6c2dc0bf5d2829c2287baa1a0a6 (patch) | |
| tree | 8711caffd49f24ee8136523e0aefc76e37d8666a /bbcode | |
| parent | 6db9326c348f54cd25f399ad1e472b20cb7771c0 (diff) | |
| download | thermoprint-f9edf473fe3cc6c2dc0bf5d2829c2287baa1a0a6.tar thermoprint-f9edf473fe3cc6c2dc0bf5d2829c2287baa1a0a6.tar.gz thermoprint-f9edf473fe3cc6c2dc0bf5d2829c2287baa1a0a6.tar.bz2 thermoprint-f9edf473fe3cc6c2dc0bf5d2829c2287baa1a0a6.tar.xz thermoprint-f9edf473fe3cc6c2dc0bf5d2829c2287baa1a0a6.zip | |
Revert "Added massaging to make sure blocks are not followed by extraneous whitespace"
This reverts commit 6db9326c348f54cd25f399ad1e472b20cb7771c0.
Diffstat (limited to 'bbcode')
| -rw-r--r-- | bbcode/src/BBCode.hs | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/bbcode/src/BBCode.hs b/bbcode/src/BBCode.hs index 118aed7..3071db6 100644 --- a/bbcode/src/BBCode.hs +++ b/bbcode/src/BBCode.hs | |||
| @@ -55,20 +55,7 @@ make' (Cooked c) = c | |||
| 55 | make' (Raw _) = error "Cannot transform block containing raw data to bbcode" | 55 | make' (Raw _) = error "Cannot transform block containing raw data to bbcode" |
| 56 | 56 | ||
| 57 | parse :: String -> Either String (Block String) | 57 | parse :: String -> Either String (Block String) |
| 58 | parse input = (remerge . massage . blockify <$> (tokenize input >>= treeify)) >>= semantics | 58 | parse input = (remerge . blockify <$> (tokenize input >>= treeify)) >>= semantics |
| 59 | |||
| 60 | massage :: [Decorated String] -> [Decorated String] | ||
| 61 | massage [] = [] | ||
| 62 | massage (x@(Decorated _ tags) : x'@(Decorated wSpace []) : xs) | ||
| 63 | | any $ map isSpace wSpace | ||
| 64 | , any $ map isBlock tags = (x:Decorated (massage' wSpace) []:xs) | ||
| 65 | | otherwise = x : massage (x':xs) | ||
| 66 | where | ||
| 67 | massage' [] = [] | ||
| 68 | massage' l@(x:xs) | ||
| 69 | | isSpace x = massage' xs | ||
| 70 | | otherwise = l | ||
| 71 | massage (x:xs) = x : massage xs | ||
| 72 | 59 | ||
| 73 | blockify :: ContentForest -> [Decorated String] | 60 | blockify :: ContentForest -> [Decorated String] |
| 74 | blockify = map sortDeco . concat . map (blockify' []) | 61 | blockify = map sortDeco . concat . map (blockify' []) |
