diff options
-rw-r--r-- | src/Text/Pandoc/Writers/FB2.hs | 12 | ||||
-rw-r--r-- | test/writer.fb2 | 20 |
2 files changed, 14 insertions, 18 deletions
diff --git a/src/Text/Pandoc/Writers/FB2.hs b/src/Text/Pandoc/Writers/FB2.hs index 0a8ae17bb..666b67e52 100644 --- a/src/Text/Pandoc/Writers/FB2.hs +++ b/src/Text/Pandoc/Writers/FB2.hs @@ -64,7 +64,6 @@ data FbRenderState = FbRenderState { footnotes :: [ (Int, String, [Content]) ] -- ^ #, ID, text , imagesToFetch :: [ (String, String) ] -- ^ filename, URL or path , parentListMarker :: String -- ^ list marker of the parent ordered list - , parentBulletLevel :: Int -- ^ nesting level of the unordered list , writerOptions :: WriterOptions } deriving (Show) @@ -73,7 +72,7 @@ type FBM m = StateT FbRenderState m newFB :: FbRenderState newFB = FbRenderState { footnotes = [], imagesToFetch = [] - , parentListMarker = "", parentBulletLevel = 0 + , parentListMarker = "" , writerOptions = def } data ImageMode = NormalImage | InlineImage deriving (Eq) @@ -347,15 +346,12 @@ blockToXml (OrderedList a bss) = do concat <$> zipWithM mkitem markers bss blockToXml (BulletList bss) = do state <- get - let level = parentBulletLevel state let pmrk = parentListMarker state - let prefix = replicate (length pmrk) ' ' - let bullets = ["\x2022", "\x25e6", "*", "\x2043", "\x2023"] - let mrk = prefix ++ bullets !! (level `mod` length bullets) + let mrk = pmrk ++ "•" let mkitem bs = do - modify (\s -> s { parentBulletLevel = level+1 }) + modify (\s -> s { parentListMarker = mrk ++ " "}) item <- cMapM blockToXml $ plainToPara $ indentBlocks (mrk ++ " ") bs - modify (\s -> s { parentBulletLevel = level }) -- restore bullet level + modify (\s -> s { parentListMarker = pmrk }) -- old parent marker return item cMapM mkitem bss blockToXml (DefinitionList defs) = diff --git a/test/writer.fb2 b/test/writer.fb2 index d25ce1f62..9b4645d50 100644 --- a/test/writer.fb2 +++ b/test/writer.fb2 @@ -261,23 +261,23 @@ <p>Nested</p> </title> <p>• Tab</p> -<p>◦ Tab</p> -<p>* Tab</p> +<p>• • Tab</p> +<p>• • • Tab</p> <p>Here’s another:</p> <p>1. First</p> <p>2. Second:</p> -<p> • Fee</p> -<p> • Fie</p> -<p> • Foe</p> +<p>2. • Fee</p> +<p>2. • Fie</p> +<p>2. • Foe</p> <p>3. Third</p> <p>Same thing but with paragraphs:</p> <p>1. First</p> <empty-line /> <p>2. Second:</p> <empty-line /> -<p> • Fee</p> -<p> • Fie</p> -<p> • Foe</p> +<p>2. • Fee</p> +<p>2. • Fie</p> +<p>2. • Foe</p> <p>3. Third</p> <empty-line /> </section> @@ -289,9 +289,9 @@ <empty-line /> <p>• this is a list item indented with spaces</p> <empty-line /> -<p>◦ this is an example list item indented with tabs</p> +<p>• • this is an example list item indented with tabs</p> <empty-line /> -<p>◦ this is an example list item indented with spaces</p> +<p>• • this is an example list item indented with spaces</p> <empty-line /> </section> <section> |