From 73fe7c129e065bb5852def89a83bf8a6e474dc7e Mon Sep 17 00:00:00 2001 From: John MacFarlane <jgm@berkeley.edu> Date: Wed, 19 Jan 2022 10:20:15 -0800 Subject: [PATCH] Docx reader: add skeleton for parsing zotero ADDINs. So far this just adds a constructor for FieldInfo; we'll need to adjust the rest of the reader code to parse the JSON and do something with it. See #7840. --- src/Text/Pandoc/Readers/Docx/Fields.hs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Text/Pandoc/Readers/Docx/Fields.hs b/src/Text/Pandoc/Readers/Docx/Fields.hs index 5f090b6be..4d7bc3757 100644 --- a/src/Text/Pandoc/Readers/Docx/Fields.hs +++ b/src/Text/Pandoc/Readers/Docx/Fields.hs @@ -26,6 +26,7 @@ type Anchor = T.Text data FieldInfo = HyperlinkField URL -- The boolean indicates whether the field is a hyperlink. | PagerefField Anchor Bool + | ZoteroField T.Text | UnknownField deriving (Show) @@ -38,8 +39,21 @@ fieldInfo = <|> try ((uncurry PagerefField) <$> pageref) <|> + try (ZoteroField <$> zotero) + <|> return UnknownField +zotero :: Parser T.Text +zotero = do + spaces + string "ADDIN" + spaces + string "ZOTERO_ITEM" + spaces + string "CSL_CITATION" + spaces + getInput + escapedQuote :: Parser T.Text escapedQuote = string "\\\"" $> "\\\""