WikiParser-Node 是一款由 Bhsd 开发的基于 Node.js 环境的离线维基文本语法解析器,可以解析几乎全部的维基语法并生成语法树(在线解析),还可以很方便地对语法树进行查询和修改,最后返回修改后的维基文本。
Mini (又名 WikiLint)
提供了 CLI,但仅保留了解析功能和语法错误分析功能,解析生成的语法树不能修改。这个版本被应用于 WikiParser Language Server VSCode 扩展。
兼容浏览器的版本,可用于代码高亮或是搭配 CodeMirror 和 Monaco 等编辑器作为语法分析插件。(使用实例展示)
请根据需要需要安装对应的版本(WikiParser-Node
或 WikiLint
),如:
npm i wikiparser-node
或
npm i wikilint
可以通过 CDN 下载代码,如:
<script src="//cdn.jsdelivr.net/npm/wikiparser-node@browser"></script>
或
<script src="//unpkg.com/wikiparser-node@browser"></script>
更多浏览器端可用的插件请查阅对应文档。
对于安装了 CodeMirror 扩展的 MediaWiki 站点,如不同语言版本的维基百科和其他由维基媒体基金会托管的站点,可以使用以下命令获取解析器配置:
npx getParserConfig <site> <script path> [force]
# 例如:
npx getParserConfig jawiki https://ja.wikipedia.org/w
生成的配置文件将保存在 config
目录下,然后就可以使用站点名称设置 Parser.config
。
// 例如:
Parser.config = 'jawiki';
请查阅 Wiki。
在一台个人的 MacBook Air 上对中文维基百科约 350 万篇条目的数据库转储文件(*.xml.bz2
)的一次完整扫描(解析和语法错误分析)需要约 3 小时。
请参阅英语版本。