git.iko.soy/typeable/pandoc
on master help sign in
Markdown writer: Use setext headers for levels 1-2.
commitce40d0d0c2a69e6e8fc000099255bf73698c33bb authorJohn MacFarlane <fiddlosopher@gmail.com> dateThu 24 Nov 2011, 11:14 (15 years ago) parent1b6d0f2
1 file changed+9−11
src/Text/Pandoc/Writers/Markdown.hs+9−11
src/Text/Pandoc/Writers/Markdown.hs+9−11
@@ -233,17 +233,15 @@ blockToMarkdown _ HorizontalRule =
233233blockToMarkdown opts (Header level inlines) = do
234234 contents <- inlineListToMarkdown opts inlines
235235 st <- get
236− -- use setext style headers if in literate haskell mode.
237− -- ghc interprets '#' characters in column 1 as line number specifiers.
238− if writerLiterateHaskell opts || stPlain st
239− then let len = offset contents
240− in return $ contents <> cr <>
241− (case level of
242− 1 -> text $ replicate len '='
243− 2 -> text $ replicate len '-'
244− _ -> empty) <> blankline
245− else return $
246− text ((replicate level '#') ++ " ") <> contents <> blankline
236+ return $ case level of
237+ 1 -> contents <> cr <> text (replicate (offset contents) '=') <>
238+ blankline
239+ 2 -> contents <> cr <> text (replicate (offset contents) '-') <>
240+ blankline
241+ -- ghc interprets '#' characters in column 1 as linenum specifiers.
242+ _ | stPlain st || writerLiterateHaskell opts ->
243+ contents <> blankline
244+ _ -> text (replicate level '#') <> space <> contents <> blankline
247245blockToMarkdown opts (CodeBlock (_,classes,_) str)
248246 | "haskell" `elem` classes && "literate" `elem` classes &&
249247 writerLiterateHaskell opts =