@@ -1382,16 +1382,14 @@ pipeTableRow' = do
13821382 skipMany spaceChar
13831383 openPipe <- (True <$ char '|') <|> return False
13841384 let cell = mconcat <$>
1385− many (notFollowedBy (blankline <|> char '|') >> inline)
1386− first <- cell
1387− rest <- many $ sepPipe *> cell
1385+ many (notFollowedBy (blankline <|> oneOf "+|") >> inline)
1386+ cells <- cell `sepBy1` sepPipe
13881387 -- surrounding pipes needed for a one-column table:
1389− guard $ not (null rest && not openPipe)
1388+ guard $ not (length cells == 1 && not openPipe)
13901389 optional (char '|')
13911390 blankline
1392− let cells = sequence (first:rest)
13931391 return $ do
1394− cells' <- cells
1392+ cells' <- sequence cells
13951393 return $ map
13961394 (\ils ->
13971395 case trimInlines ils of