标签 mediawiki 下的文章

如何将Markdown转换为MediaWiki


起因

虽然Markdown不是完美的标记语言, 或多或少有一些不足, 但是MediaWiki是真的难用! 所以如何将Markdown写好的文档转换为MediaWiki就变成了一个问题.

根据调研发现了Pandoc这样一个工具可以在任意两种文档之间进行转换, 具体支持哪些可以去官方的介绍界面去看, 当然我们只要知道它可以做到Markdown2MediaWiki的转换就好了.

这种转换经过测试, 基本上还可以, 就是代码块的转换上会有一点小问题, 不过这个会在后文给出正则表达式进行替换一下就好了.

使用方法

  1. 安装pandoc: https://pandoc.org/installing.html

    • WSL用户可以直接在WSL里使用包管理器安装源里的版本, 简单省事
  2. 打开终端(CMD)切换目录到源文件目录, 然后运行pandoc markdown.md -f markdown -t mediawiki -o mediawiki.wiki就可以完成文档的转换

    • Markdown的源文件是markdown.md, 输出文件是mediawiki.wiki, 当然可以自定义

一些问题

对代码块的处理有问题

pandonc默认是将```的代码块标记转换为HTML的<code>标签, 但是MediaWiki是不支持这个标签的, 因此需要将其转换为<pre>标签.

示例正则表达式如下:

Find: (</*)source([^>]*>)
Replace: \1pre\2

在Sublime下测试过没问题, 如果使用其正则表达式引擎特别是sed请自行测试修改.

总结

MediaWiki真的难用啊啊啊啊锕啊啊