aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Shared.hs
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2019-09-19 18:08:49 -0700
committerJohn MacFarlane <jgm@berkeley.edu>2019-09-19 18:17:23 -0700
commit8408e584742ae5e3c6e3d752501992fe604ab7c5 (patch)
tree97164952af32bad0364117db386bd53f3eb1507a /src/Text/Pandoc/Shared.hs
parent5a85789185eac1e9753c1090c89e065f28be2392 (diff)
downloadpandoc-8408e584742ae5e3c6e3d752501992fe604ab7c5.tar.gz
EPUB writer: improve splitting into chapters.
+ Use makeSection from T.P.Shared. This deals better with embedded divs. (Closes #5761.) + Remove chapter-title class from chapter h1, for now. (Reverts one change made earlier; we may revisit this in light of #5749.) + Avoid issuing warning multiple times when title not set (see #5760).
Diffstat (limited to 'src/Text/Pandoc/Shared.hs')
-rw-r--r--src/Text/Pandoc/Shared.hs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/Text/Pandoc/Shared.hs b/src/Text/Pandoc/Shared.hs
index e169ccb82..7c8a2e2a8 100644
--- a/src/Text/Pandoc/Shared.hs
+++ b/src/Text/Pandoc/Shared.hs
@@ -510,9 +510,12 @@ makeSections numbering mbBaseLevel bs =
S.modify $ \(_, ln) -> (mbLevel, ln)
rest' <- go rest
let divattr = (ident, ["section"], [])
- let attr = ("",classes,kvs ++
- [("number", intercalate "." (map show newnum))
- | numbering])
+ let attr = ("",classes,
+ -- don't touch number if already present
+ case lookup "number" kvs of
+ Nothing | numbering ->
+ ("number", intercalate "." (map show newnum)) : kvs
+ _ -> kvs)
return $
Div divattr (Header level' attr title' : sectionContents') : rest'
go (Div (dident,dclasses,dkvs)