怎样把SegmentFault目前的语法格式无缝转换为标准的Markdown格式


SF社区目前用的语法是基于wiki和markdown衍生的,已经不止一个人跟我提过这个东西比较诡异了,我目前想在问题数还不是那么多的时候把这个问题解决掉。也就是换成完全标准的Markdown语法。它的语法解析完全没啥问题,网上都有很成熟的解析库。

但是如何把现在的语法格式转换成标准的markdown呢?希望大家能给出完整的解决方案


就是希望能有一个php实现的 class 或者 function ,输入现在的语法文字输出Markdown格式文字

markdown php segmentfault

mj1986 11 years, 11 months ago

关于这个,我记得我之前有提到过一个想法,就是通过元标记来辨别,类似于 vim 的 modeline。

从某个时间点开始,旧的内容头部统一添加类似 “!!syntax:sgwiki” 这样的标记用以区别旧的 wiki 语法,新的内容默认使用 markdown 撰写。当然,也可以支持更多的轻量的语法标记,不局限于 markdown,只要头部有相应的元标记即可。比如,“!!syntax:markdown” "!!syntax:multimarkdown" 等等。

十分不建议做自动的语法转换,这就好比用 RegEx 解析 HTML 一个道理,因为你永远也不可能考虑全部的情况,而且,最好保持用户的输入 intact,只提供兼容机制。这是最简单的方案。

tarxank answered 11 years, 11 months ago

Your Answer