diff options
Diffstat (limited to 'src/Text/Pandoc/Writers/LaTeX.hs')
-rw-r--r-- | src/Text/Pandoc/Writers/LaTeX.hs | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs index 3657f3464..d9c9e3621 100644 --- a/src/Text/Pandoc/Writers/LaTeX.hs +++ b/src/Text/Pandoc/Writers/LaTeX.hs @@ -89,9 +89,9 @@ writeLaTeX options document = stUrl = False, stGraphics = False, stLHS = False, stBook = (case writerTopLevelDivision options of - Just Part -> True - Just Chapter -> True - _ -> False), + TopLevelPart -> True + TopLevelChapter -> True + _ -> False), stCsquotes = False, stHighlighting = False, stIncremental = writerIncremental options, stInternalLinks = [], stUsesEuro = False } @@ -763,15 +763,18 @@ sectionHeader unnumbered ident level lst = do <> braces (text plain)) book <- gets stBook opts <- gets stOptions - let topLevelDivision = fromMaybe (if book then Chapter else Section) - (writerTopLevelDivision opts) - let level' = if writerBeamer opts && topLevelDivision < Section + let topLevelDivision = if book && writerTopLevelDivision opts == TopLevelDefault + then TopLevelChapter + else writerTopLevelDivision opts + let level' = if writerBeamer opts && + topLevelDivision `elem` [TopLevelPart, TopLevelChapter] -- beamer has parts but no chapters then if level == 1 then -1 else level - 1 else case topLevelDivision of - Part -> level - 2 - Chapter -> level - 1 - Section -> level + TopLevelPart -> level - 2 + TopLevelChapter -> level - 1 + TopLevelSection -> level + TopLevelDefault -> level let sectionType = case level' of -1 -> "part" 0 -> "chapter" |