From 8a47acdc5a9c68751b491c03d6b811040dbb2372 Mon Sep 17 00:00:00 2001 From: Gustav Eek Date: Mon, 1 Jun 2020 22:52:37 +0200 Subject: Tracker. Emphasis issue completed with plenty of notes --- tracker/attribute-emphases.mdnw | 107 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/tracker/attribute-emphases.mdnw b/tracker/attribute-emphases.mdnw index 363af21..832843e 100644 --- a/tracker/attribute-emphases.mdnw +++ b/tracker/attribute-emphases.mdnw @@ -9,3 +9,110 @@ Meta listings does not support emphases and similar in e.g. titles: At least those elements should *not* be dropped. Instead formatting can at the least be ignored or better taken into account some how. + +This is a more full example: + +``` +--- +title: Here some *emphases* and **strong** +abstract: | + Cover _emphasis_ and __strong__ and ~~stroken out~~ and sub- and + superscript e.g. H~2~O and 2^10^ and some `verbatim`. If all that, + than nice. Then alao a [link](/url) and +--- +``` + +# Implementation notes + +Details important for implementation: + + Blocks + + : *MetaBlocks*, *MetaInline* and *Plain* -- Containers for word + sequences. Operate on the element again recursively. + + Space + + : *Space* and *SoftBreak* -- A space. Add space. + + String + + : *Str* -- A word. Add the word. + + + Unknown + + : *MetaString* -- Have not seen + + Qualifiers + + : *Emph*, *Strong*, *Strikeout*, *Code*, *Subscript* and + *Superscript* -- Formatting, but also containers for words. Do the + same as for blocks. + + Special + + : *Link*, *RawInline* -- Need special treatment. + +The internal Pandoc JSON: + +``` +{"blocks":[],"pandoc-api-version":[1,17,5,1],"meta":{"abstract":{"t":"MetaBlocks","c":[{"t":"Plain","c":[{"t":"Str","c":"Cover"},{"t":"Space"},{"t":"Emph","c":[{"t":"Str","c":"emphasis"}]},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"Strong","c":[{"t":"Str","c":"strong"}]},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"Strikeout","c":[{"t":"Str","c":"stroken"},{"t":"Space"},{"t":"Str","c":"out"}]},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"Str","c":"sub-"},{"t":"Space"},{"t":"Str","c":"and"},{"t":"SoftBreak"},{"t":"Str","c":"superscript"},{"t":"Space"},{"t":"Str","c":"e.g. H"},{"t":"Subscript","c":[{"t":"Str","c":"2"}]},{"t":"Str","c":"O"},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"Str","c":"2"},{"t":"Superscript","c":[{"t":"Str","c":"10"}]},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"Str","c":"some"},{"t":"Space"},{"t":"Code","c":[["",[],[]],"verbatim"]},{"t":"Str","c":"."},{"t":"Space"},{"t":"Str","c":"If"},{"t":"Space"},{"t":"Str","c":"all"},{"t":"Space"},{"t":"Str","c":"that,"},{"t":"SoftBreak"},{"t":"Str","c":"than"},{"t":"Space"},{"t":"Str","c":"nice."},{"t":"Space"},{"t":"Str","c":"Then"},{"t":"Space"},{"t":"Str","c":"alao"},{"t":"Space"},{"t":"Str","c":"a"},{"t":"Space"},{"t":"Link","c":[["",[],[]],[{"t":"Str","c":"link"}],["/url",""]]},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"RawInline","c":["html",""]}]}]},"title":{"t":"MetaInlines","c":[{"t":"Str","c":"Here"},{"t":"Space"},{"t":"Str","c":"some"},{"t":"Space"},{"t":"Emph","c":[{"t":"Str","c":"emphases"}]},{"t":"Space"},{"t":"Str","c":"and"},{"t":"Space"},{"t":"Strong","c":[{"t":"Str","c":"strong"}]}]}}} +``` + +and snippet: + + +``` +{ + "meta": { + "title": { + "t": "MetaInlines", + "c": [ + { + "t": "Str", + "c": "Here" + }, + { + "t": "Space" + }, + { + "t": "Str", + "c": "some" + }, + { + "t": "Space" + }, + { + "t": "Emph", + "c": [ + { + "t": "Str", + "c": "emphases" + } + ] + }, + { + "t": "Space" + }, + { + "t": "Str", + "c": "and" + }, + { + "t": "Space" + }, + { + "t": "Strong", + "c": [ + { + "t": "Str", + "c": "strong" + } + ] + } + ] + } + } +} +``` -- cgit v1.2.3