Jquery/Javascript 解决方案,用于将 wiki 文本转换为 HTML,反之亦然

Jquery/Javascript solution for converting wiki-text to HTML and vice versa?

本文关键字:转换 文本 反之亦然 HTML wiki Javascript 解决方案 用于 Jquery      更新时间:2023-09-26

对于我的Web前端,我必须在我的系统中实现wiki语法的子集。我是否需要手动指定规则并重新发明轮子?是否有现有的javascript库或jquery插件可以帮助它?

例如,用户输入== Header == 因为例如,这需要转换为 medium 标头(假设在此上下文中将 medium 定义为如下所示的跨度)

<span class="mediumHeader" id = "Header">Header</span>

现在,当用户编辑上述文本时,我猜它将涉及替换

<span...> ... </span> ==...==

现在,对于我设计的每个系统,这将按照"我的规则"进行,并且几乎总是必须重新发明轮子。我可以使用一些东西来简化这个wiki到/来自Jquery/Javascript的HTML转换吗?我确定这是已知解决方案的问题。

我更愿意自定义什么是可接受的,什么是不可接受的,即我不把所有的东西都翻译成 wiki 语法(或 HTML)只是它的子集。我应该为我的申请推出自己的申请吗?

已经足够长了,你可能不需要这个,但是当我开始研究它时,你的是顶级的。

有几个javascript选项 - 你可能正在查看instaview(查看test/test.js),或者可能是Wiky.js(不太完整的文档)。

如果您不仅限于Javascript,请查看 http://www.mediawiki.org/wiki/Alternative_parsers 的MediaWiki解析器的详尽列表 - 许多用于C++,Java,Perl,ruby等的工具。这是关注新发展的链接。

在撰写本文时,Parsoid似乎是唯一一个双向翻译的。这也为维基百科上的可视化编辑器提供支持。但这不是包含在您的应用程序中的方便的客户端站点库,而是一个成熟的解析和转换服务器套件。维基媒体集群上的Parsoid生产版本可以在 http://parsoid-lb.eqiad.wikimedia.org/访问。

其他仅从

WikiText转换为HTML的JavaScript库(按受欢迎程度排序),是:

  • Wiky.js - 不支持完整的WikiText语法。(由tanin47,不要与Wiki混淆.js来自Requarks - 一个完全不同的项目)
  • wtf_wikipedia - 不是直接转换为 HTML,而是直接转换为 JSON,这导致了更强大的可能性(例如,信息框作为键值对)。这是最新的库,"它是instaview,txtwiki的组合,并使用Parsoid javascript解析器的跨语言数据。
  • InstagramView - 过去 2 年没有更新。

另请查看替代MediaWiki解析器的当前和完整列表。