@@ -87,13 +87,16 @@ combineReducibles r s =
87 remaining' = conts' \\ shared
87 remaining' = conts' \\ shared
89 case null shared of
89 case null shared of
90− True -> case (not . null) rs && isSpace (last rs) of
90+ True -> case () of
91+ _ | (not . null) rs && isSpace (last rs) ->
91− True -> rebuild conts (init rs) ++ [last rs, s]
92+ rebuild conts (init rs) ++ [last rs, s]
93+ _ | (not . null) ss && isSpace (head ss) ->
94+ [r, head ss] ++ rebuild conts' (tail ss)
92− False -> [r,s]
95+ _ -> [r,s]
93− False -> rebuild
96+ False -> rebuild
95− reduceList $
98+ reduceList $
96− (rebuild remaining rs) ++ (rebuild remaining' ss)
99+ (rebuild remaining rs) ++ (rebuild remaining' ss)
98instance Reducible Inline where
101instance Reducible Inline where
99 s1@(Span (id1, classes1, kvs1) ils1) <++> s2@(Span (id2, classes2, kvs2) ils2) =
102 s1@(Span (id1, classes1, kvs1) ils1) <++> s2@(Span (id2, classes2, kvs2) ils2) =
@@ -177,5 +180,3 @@ rebuild :: [Container a] -> [a] -> [a]
177rebuild [] xs = xs
180rebuild [] xs = xs
178rebuild ((Container f) : cs) xs = rebuild cs $ [f xs]
181rebuild ((Container f) : cs) xs = rebuild cs $ [f xs]
179rebuild (NullContainer : cs) xs = rebuild cs $ xs
182rebuild (NullContainer : cs) xs = rebuild cs $ xs