@@ -538,7 +538,7 @@ inNote ils =
538inlineCommand' :: PandocMonad m => LP m Inlines
538inlineCommand' :: PandocMonad m => LP m Inlines
539inlineCommand' = try $ do
539inlineCommand' = try $ do
540 Tok _ (CtrlSeq name) cmd <- anyControlSeq
540 Tok _ (CtrlSeq name) cmd <- anyControlSeq
541− guard $ name /= "begin" && name /= "end"
541+ guard $ name /= "begin" && name /= "end" && name /= "and"
542 star <- option "" ("*" <$ symbol '*' <* sp)
542 star <- option "" ("*" <$ symbol '*' <* sp)
543 overlay <- option "" overlaySpecification
543 overlay <- option "" overlaySpecification
544 let name' = name <> star <> overlay
544 let name' = name <> star <> overlay
@@ -1275,10 +1275,7 @@ addMeta field val = updateState $ \st ->
1275authors :: PandocMonad m => LP m ()
1275authors :: PandocMonad m => LP m ()
1276authors = try $ do
1276authors = try $ do
1278− let oneAuthor = mconcat <$>
1278+ let oneAuthor = blocksToInlines' . B.toList . mconcat <$> many1 block
1279− many1 (notFollowedBy' (controlSeq "and") >>
1280− (inline <|> mempty <$ blockCommand))
1281− -- skip e.g. \vspace{10pt}
1282 auths <- sepBy oneAuthor (controlSeq "and")
1279 auths <- sepBy oneAuthor (controlSeq "and")
1284 addMeta "author" (map trimInlines auths)
1281 addMeta "author" (map trimInlines auths)
@@ -1468,7 +1465,7 @@ section (ident, classes, kvs) lvl = do
1468blockCommand :: PandocMonad m => LP m Blocks
1465blockCommand :: PandocMonad m => LP m Blocks
1469blockCommand = try $ do
1466blockCommand = try $ do
1470 Tok _ (CtrlSeq name) txt <- anyControlSeq
1467 Tok _ (CtrlSeq name) txt <- anyControlSeq
1471− guard $ name /= "begin" && name /= "end"
1468+ guard $ name /= "begin" && name /= "end" && name /= "and"
1472 star <- option "" ("*" <$ symbol '*' <* sp)
1469 star <- option "" ("*" <$ symbol '*' <* sp)
1473 let name' = name <> star
1470 let name' = name <> star
1474 let names = ordNub [name', name]
1471 let names = ordNub [name', name]