Vanessa219 / vditor

♏ 一款浏览器端的 Markdown 编辑器,支持所见即所得(富文本)、即时渲染(类似 Typora)和分屏预览模式。An In-browser Markdown editor, support WYSIWYG (Rich Text), Instant Rendering (Typora-like) and Split View modes.
https://b3log.org/vditor
MIT License
8.25k stars 852 forks source link

自定义渲染器输出的HTML与内置渲染器不同 #1559

Closed justice2001 closed 6 months ago

justice2001 commented 7 months ago

编辑模式

描述问题

在新发布的功能:自定义渲染器中,自定义渲染器生成的 HTML 与内置渲染器生成格式不一致。例如我编写一个test的自定义渲染器,其生成的格式是这样的:

<pre><code class="language-test">12345\n</code></pre>

然而内置的渲染器生成的结果是:

<div class="language-mermaid">graph TD;     A--&gt;B;     A--&gt;C;     B--&gt;D;     C--&gt;D;\n</div>

期待的结果

建议自定义渲染器输出的HTML与内置渲染器的生成结果一致。

截屏或录像

版本信息

其他信息

之前魔改过这部分,发现好像渲染器输出的判断在lute中,似乎没有做拓展的设计,感觉不太好改。但我有一个思路,就是在 Vditor 生成 HTML 的部分后进行后处理,使用正则进行匹配,来将自定义渲染器的<pre><code class="language-test">修改为<div class="language-test">,不知道这样设计是否可行。

Vanessa219 commented 6 months ago

这个是默认的,需要渲染的内容需要自己填充。可参见 xxxRender.ts 文件