logseq / mldoc

Another Emacs Org-mode and Markdown parser.
GNU Affero General Public License v3.0
231 stars 20 forks source link

Markdown: Unsupported parsing cases #133

Open stdword opened 1 year ago

stdword commented 1 year ago

Mldoc cannot parse following cases (but several of them successfully displays in Logseq). But it is required to be done with mldoc to use this parser in plugin development separately from Logseq.

case markdown parsed as
horizontal line ___ & --- & *** plain
headings ### h3 Heading plain
blockquotes > Blockquotes can also be nested... plain
numbered lists 1. Lorem ipsum dolor sit amet plain
unordered lists - Lorem ipsum dolor sit amet plain
code block ```js
var foo = bar()
``` | ["Code", "` js\nvar foo = bar()\n"],
["Plain", "`"],
inline code ```var foo = bar()``` | ["Code", "`var foo = bar()\n"],
["Plain", "`"],
table \| A \| B \| \n \| 1 \| 2 \| plain
inclusion url metadata not presented ![Logseq](https://logseq.com) | ["Link", {
"full_text": "![Logseq](https://logseq.com)",
"url": ["Complex",{"protocol": "https", "link": "logseq.com"}],
"label": [ ["Plain", "Logseq"] ],
"metadata": ""}]
reference by id ![Alt text][id]
With a reference later
[id]: https://dojocat.jpg "The Dojocat"
plain
inline footnote Inline footnote^[Text of inline footnote] definition. plain
footnotes with bug in id assignment Footnote link[^first]
[^first]: Footnote | ["Footnote_Reference",{"id": 1,"name": "first"}],
["Footnote_Reference",{"id": 2,"name": "first"}],
stdword commented 1 year ago

@tiensonqin Do you have plans on change anything in mldoc?

Bad3r commented 1 year ago

@stdword I think I have noticed logseq team moving functionality from mldoc into clj/cljs to be used in Logseq. Not sure if mldoc will be around in the future.

stdword commented 1 year ago

@Bad3r this is very sad. I guess then we need a Plugin API to render the block contents to HTML with the flavour of Logseq Markup.

Probably you can help me, at least merge this PR?

Bad3r commented 1 year ago

@Bad3r this is very sad. I guess then we need a Plugin API to render the block contents to HTML with the flavour of Logseq Markup.

Probably you can help me, at least merge this PR?

This is not confirmed only my guess. I would wait for someone from the Logseq team to respond. I, unfortunately, do not have other methods of contacting the team other than GitHub or discord; hopefully, they will get around to it soon.