diff options
author | Alexander Krotov <ilabdsf@gmail.com> | 2018-04-02 15:55:04 +0300 |
---|---|---|
committer | Alexander Krotov <ilabdsf@gmail.com> | 2018-04-02 15:58:37 +0300 |
commit | ca78d93b408c660ee1ab753e165d07acd864b5a7 (patch) | |
tree | 851bc3175a45f629f1d774e6be250eb96b3e1699 /src/Text/Pandoc/Readers/Muse.hs | |
parent | aca4137c4094ec921276bf50278dfc58db5634a3 (diff) | |
download | pandoc-ca78d93b408c660ee1ab753e165d07acd864b5a7.tar.gz |
Muse writer: place header IDs before header
See https://github.com/melmothx/text-amuse/issues/39
Diffstat (limited to 'src/Text/Pandoc/Readers/Muse.hs')
-rw-r--r-- | src/Text/Pandoc/Readers/Muse.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Readers/Muse.hs b/src/Text/Pandoc/Readers/Muse.hs index b43a53d60..9e2ec310d 100644 --- a/src/Text/Pandoc/Readers/Muse.hs +++ b/src/Text/Pandoc/Readers/Muse.hs @@ -363,12 +363,12 @@ separator = try $ do header :: PandocMonad m => MuseParser m (F Blocks) header = try $ do + anchorId <- option "" $ try (parseAnchor <* manyTill spaceChar eol) getPosition >>= \pos -> guard (sourceColumn pos == 1) level <- fmap length $ many1 $ char '*' guard $ level <= 5 spaceChar content <- trimInlinesF . mconcat <$> manyTill inline eol - anchorId <- option "" parseAnchor attr <- registerHeader (anchorId, [], []) (runF content def) return $ B.headerWith attr level <$> content @@ -781,12 +781,12 @@ parseAnchor = try $ do char '#' first <- letter rest <- many (letter <|> digit) - skipMany spaceChar <|> void newline return $ first:rest anchor :: PandocMonad m => MuseParser m (F Inlines) anchor = try $ do anchorId <- parseAnchor + skipMany spaceChar <|> void newline return $ return $ B.spanWith (anchorId, [], []) mempty footnote :: PandocMonad m => MuseParser m (F Inlines) |