@@ -987,10 +987,19 @@ enquote starred mblang = do
987 then singleQuoted . langspan <$> withQuoteContext InSingleQuote tok
987 then singleQuoted . langspan <$> withQuoteContext InSingleQuote tok
988 else doubleQuoted . langspan <$> withQuoteContext InDoubleQuote tok
988 else doubleQuoted . langspan <$> withQuoteContext InDoubleQuote tok
990−blockquote :: PandocMonad m => LP m Blocks
990+blockquote :: PandocMonad m => Bool -> Maybe Text -> LP m Blocks
991−blockquote = do
991+blockquote citations mblang = do
992+ citePar <- if citations
994+ cs <- cites NormalCitation False
995+ return $ para (cite cs mempty)
997+ let lang = (T.unpack <$> mblang) >>= babelLangToBCP47
998+ let langdiv = case lang of
1000+ Just l -> divWith ("",[],[("lang", renderLang l)])
992 bs <- grouped block
1001 bs <- grouped block
993− return $ blockQuote bs
1002+ return $ blockQuote . langdiv $ (bs <> citePar)
995doAcronym :: PandocMonad m => String -> LP m Inlines
1004doAcronym :: PandocMonad m => String -> LP m Inlines
996doAcronym form = do
1005doAcronym form = do
@@ -2540,8 +2549,13 @@ blockCommands = M.fromList
2540 -- LaTeX colors
2549 -- LaTeX colors
2541 , ("textcolor", coloredBlock "color")
2550 , ("textcolor", coloredBlock "color")
2542 , ("colorbox", coloredBlock "background-color")
2551 , ("colorbox", coloredBlock "background-color")
2543− -- csquotse
2552+ -- csquotes
2544− , ("blockquote", blockquote)
2553+ , ("blockquote", blockquote False Nothing)
2554+ , ("blockcquote", blockquote True Nothing)
2555+ , ("foreignblockquote", braced >>= blockquote False . Just . untokenize)
2556+ , ("foreignblockcquote", braced >>= blockquote True . Just . untokenize)
2557+ , ("hyphenblockquote", braced >>= blockquote False . Just . untokenize)
2558+ , ("hyphenblockcquote", braced >>= blockquote True . Just . untokenize)
2545 -- include
2559 -- include
2546 , ("include", include "include")
2560 , ("include", include "include")
2547 , ("input", include "input")
2561 , ("input", include "input")