From 5eaff399d5d6dc30b0d453eff42c4101674d75ab Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Thu, 24 Jan 2019 09:35:42 -0800 Subject: Prepend `jupyter_` to jupyter metadata keys. This avoids conflics with things like 'toc'. --- src/Text/Pandoc/Writers/Ipynb.hs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/Text/Pandoc/Writers') diff --git a/src/Text/Pandoc/Writers/Ipynb.hs b/src/Text/Pandoc/Writers/Ipynb.hs index c9d71e180..257edc613 100644 --- a/src/Text/Pandoc/Writers/Ipynb.hs +++ b/src/Text/Pandoc/Writers/Ipynb.hs @@ -38,6 +38,7 @@ import Prelude import Control.Monad.State import qualified Data.Map as M import Data.Maybe (catMaybes, fromMaybe) +import Data.List (isPrefixOf) import Text.Pandoc.Options import Text.Pandoc.Definition import Data.Ipynb as Ipynb @@ -78,6 +79,11 @@ pandocToNotebook opts (Pandoc meta blocks) = do let inlineWriter ils = T.stripEnd <$> writeMarkdown opts{ writerTemplate = Nothing } (Pandoc nullMeta [Plain ils]) metadata' <- metaToJSON' blockWriter inlineWriter $ + (Meta . + M.mapKeys (\k -> if "jupyter_" `isPrefixOf` k + then drop 8 k + else k) . + unMeta) $ B.deleteMeta "nbformat" $ B.deleteMeta "nbformat_minor" $ meta let metadata = case fromJSON metadata' of -- cgit v1.2.3