我明白 quoteState.buffer 获取用户在引用时高亮显示的 Markdown 文本,并且是传递给 quote-share-buttons-before 插件出口(通过 this.args.data.quoteState.buffer 访问)的内容之一。如何获取用户高亮显示的原始、未解析的文本,在它被转换为 Markdown 之前?是否可以“反 Markdown”帖子?这是否可能?
文件:
谢谢。
测试:
- 这个项目符号不是星号,而是加号
我明白 quoteState.buffer 获取用户在引用时高亮显示的 Markdown 文本,并且是传递给 quote-share-buttons-before 插件出口(通过 this.args.data.quoteState.buffer 访问)的内容之一。如何获取用户高亮显示的原始、未解析的文本,在它被转换为 Markdown 之前?是否可以“反 Markdown”帖子?这是否可能?
文件:
谢谢。
测试:
我想到的一个变通方法是将原始帖子转换为 Markdown(具体怎么转,我还不确定),然后查看转换后文本中选区的开始和结束索引,再用这个索引从原始文本中提取该部分。问题在于,我需要假设没有字符发生变化,即 Markdown 字符 1:1 替换。
您看过快速编辑和复制引用是如何处理这种情况的吗?您在那里选择的文本会怎么样?
在这种情况下,复制引用会将项目符号转换为引用中的 *,而我实际上使用的是 +。我正在寻找一种方法来获取加号而不是星号。
是的,这非常困难,难度等级可能为 20。
当你从选区获取内容时,我们得到的是纯 HTML
<ul>
<li>一些文本</li>
</ul>
这里没有关于 * 与 + 的信息
为了增加复杂性,如果你只从长列表中选择几项,你会得到:
<li>一些文本</li>
<li>其他一些文本</li>
这甚至没有给你 ul 与 ol
我们处理引用的方式是:
HTML → Markdown
这是一个有损且易出错的过程。我们有一堆解决方法来在转换前清理 HTML。
更改为:
HTML → 原始 Markdown,这将需要一个 HTML 行/列 → Markdown 的反向映射。目前 markdown.it 不支持此功能。
哎呀,那将是一项相当艰巨的任务。好吧,但还是谢谢你的解释!
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.