logseq/mldoc

Support Inline_raw_html

tiensonqin opened this issue · 3 comments

Example of the issue: the block <b>foo</b> bar <b>baz</b> wub. is translated as

<div class="block-body">
  <div class="raw_html"><b>foo</b></div>
  <div class="is-paragraph"> bar <span><b>baz</b></span> wub.</div>
</div>

which renders as
image


Starting the line with normal text renders as expected: Hello <b>from</b> a <b>beautiful</b> world! is translated as

<span><span class="inline">
Hello <span><b>from</b></span> a <span><b>beautiful</b></span> world!
</span></span>

which renders as
image

I have found the same problem while trying to use multiple ruby tags in a paragraph. I have to manually enclose the whole paragraph in <span> tags so it doesn't break the phrase.

To replicate it, just use a <b> mid-sentence:

<b>Hello</b> Wor<b>ld!</b>

Which renders as:
image

If you add a space before the second <b> tag, it works, but it shows a space mid-word.

Running into this same or related bug i believe— i had non-<abbr title="Software as a Service">SaaS</abbr> and expected it to render as non-SaaS with the latter part doing the accronym dotted-line hover as Discourse does here and i did not even think to try it without the dash touching the angle bracket— writing a whole forum post about how Logseq does not support inline HTML at all 🤦

To be clear in the example i am sharing there is no problem with an unexpected linebreak but only with the HTML not being processed.