summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2022-01-20 19:09:44 -0800
committerJohn MacFarlane <jgm@berkeley.edu>2022-01-20 19:09:44 -0800
commit52b78b10c81e99926d560bc383938006be3b0458 (patch)
tree8762a68029fde883f49676b2c534be2526d7dde2 /src
parent6361d43e539364bd692ab006bebc34b4d451d9e0 (diff)
Avoid putting a frame around speaker notes in beamer.
If speaker notes (a Div with class 'notes') occur right after a section heading, but above slide level, the resulting `\note{..}` caommand should not be wrapped in a frame, as that will cause a spurious blank slide. Closes #7857.
Diffstat (limited to 'src')
-rw-r--r--src/Text/Pandoc/Writers/LaTeX.hs11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs
index e16fcf13f..9f342f61f 100644
--- a/src/Text/Pandoc/Writers/LaTeX.hs
+++ b/src/Text/Pandoc/Writers/LaTeX.hs
@@ -235,10 +235,13 @@ elementToBeamer slideLevel (Div (ident,"section":dclasses,dkvs)
isSlide _ = False
let (titleBs, slideBs) = break isSlide ys
return $
- if null titleBs
- then Div (ident,"section":dclasses,dkvs) xs
- else Div (ident,"section":dclasses,dkvs)
- (h : Div ("","slide":dclasses,dkvs) (h:titleBs) : slideBs)
+ case titleBs of
+ [] -> Div (ident,"section":dclasses,dkvs) xs
+ [Div (_,"notes":_,_) _] -> -- see #7857, don't create frame
+ -- just for speaker notes after section heading
+ Div (ident,"section":dclasses,dkvs) xs
+ _ -> Div (ident,"section":dclasses,dkvs)
+ (h : Div ("","slide":dclasses,dkvs) (h:titleBs) : slideBs)
| otherwise
= return $ Div (ident,"slide":dclasses,dkvs) xs
elementToBeamer _ x = return x