From a312d2a8aec49343ec9e8353098a2142a7c7851f Mon Sep 17 00:00:00 2001 From: Nathan Gass Date: Wed, 15 Dec 2010 13:50:21 +0100 Subject: Use top-level header at end as bibliography title for natbib and biblatex output. --- src/Text/Pandoc/Writers/LaTeX.hs | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'src/Text') diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs index ca7446994..1afc55f4a 100644 --- a/src/Text/Pandoc/Writers/LaTeX.hs +++ b/src/Text/Pandoc/Writers/LaTeX.hs @@ -74,15 +74,23 @@ pandocToLaTeX options (Pandoc (Meta title authors date) blocks) = do titletext <- liftM render $ inlineListToLaTeX title authorsText <- mapM (liftM render . inlineListToLaTeX) authors dateText <- liftM render $ inlineListToLaTeX date - body <- blockListToLaTeX blocks + let (blocks', lastHeader) = if writerCiteMethod options == Citeproc then + (blocks, []) + else case last blocks of + Header 1 il -> (init blocks, il) + _ -> (blocks, []) + body <- blockListToLaTeX blocks' + biblioTitle <- liftM render $ inlineListToLaTeX lastHeader let main = render body st <- get - let biblio = intercalate "," $ map dropExtension $ writerBiblioFiles options + let biblioFiles = intercalate "," $ map dropExtension $ writerBiblioFiles options citecontext = case writerCiteMethod options of - Natbib -> [ ("biblio", biblio) + Natbib -> [ ("biblio-files", biblioFiles) + , ("biblio-title", biblioTitle) , ("natbib", "yes") ] - Biblatex -> [ ("biblio", biblio) + Biblatex -> [ ("biblio-files", biblioFiles) + , ("biblio-title", biblioTitle) , ("biblatex", "yes") ] _ -> [] @@ -102,6 +110,7 @@ pandocToLaTeX options (Pandoc (Meta title authors date) blocks) = do [ ("numbersections", "yes") | writerNumberSections options ] ++ [ ("lhs", "yes") | stLHS st ] ++ [ ("graphics", "yes") | stGraphics st ] ++ + [ ("book-class", "yes") | stBook st] ++ citecontext return $ if writerStandalone options then renderTemplate context template -- cgit v1.2.3