From b7bd1210b0a3f724f5e9f64878d4a74deae03b98 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Tue, 30 Dec 2025 12:11:46 -0700 Subject: MediaWiki: better handling of inline tags. ``, ``, ``, and `` now produce Code or Span elements with classes, which can be handled by multiple output formats, instead of simply being parsed as raw HTML tags. Closes #11299. --- src/Text/Pandoc/Readers/MediaWiki.hs | 4 ++++ test/command/11299.md | 24 +++++++++++++++++++++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/Text/Pandoc/Readers/MediaWiki.hs b/src/Text/Pandoc/Readers/MediaWiki.hs index d6e01d703..4c9518737 100644 --- a/src/Text/Pandoc/Readers/MediaWiki.hs +++ b/src/Text/Pandoc/Readers/MediaWiki.hs @@ -659,6 +659,10 @@ inlineTag = do TagOpen "del" _ -> B.strikeout <$> inlinesInTags "del" TagOpen "sub" _ -> B.subscript <$> inlinesInTags "sub" TagOpen "sup" _ -> B.superscript <$> inlinesInTags "sup" + TagOpen "var" _ -> B.codeWith ("",["variable"],[]) <$> textInTags "var" + TagOpen "samp" _ -> B.codeWith ("",["sample"],[]) <$> textInTags "samp" + TagOpen "kbd" _ -> B.spanWith ("",["kbd"],[]) <$> inlinesInTags "kbd" + TagOpen "mark" _ -> B.spanWith ("",["mark"],[]) <$> inlinesInTags "mark" TagOpen "code" _ -> encode <$> inlinesInTags "code" TagOpen "tt" _ -> do inTT <- mwInTT <$> getState diff --git a/test/command/11299.md b/test/command/11299.md index 3c7995cb2..b8da865a9 100644 --- a/test/command/11299.md +++ b/test/command/11299.md @@ -1,6 +1,28 @@ ``` % pandoc -f mediawiki -t native + +x + +x + +x + +This is ''highlighted'' ^D -[ Para [ Str "" ] ] +[ Para [ Str "" ] +, Para [ Code ( "" , [ "sample" ] , [] ) "x" ] +, Para [ Span ( "" , [ "kbd" ] , [] ) [ Str "x" ] ] +, Para [ Code ( "" , [ "variable" ] , [] ) "x" ] +, Para + [ Span + ( "" , [ "mark" ] , [] ) + [ Str "This" + , Space + , Str "is" + , Space + , Emph [ Str "highlighted" ] + ] + ] +] ``` -- cgit v1.2.3