sd的编辑器兼容html问题以及功能扩展

Viewed 2425

这是一个不算建议的建议。

我也是今晚回答一个关于markdown的问题时才开始留意到的,我从网络上的很多文档资料上看到markdown语法上是兼容html的,也就是比如你在md里面插入一个<table>标签的话是可以按照html的方式直接显示一个table的,同时在我随便找到的两个在线md编辑器上测试了一下(DillingerMaHua),这两个都基本能够兼容html标签(测试过<table><a>)。因此我又在sf的编辑器上做了测试,不过发现标签被过滤掉了,也就是比如你写的<xx>yy</yy>最后真正留下的只是yy

可能sf方面也考虑过这个问题,但同时又有了其他方面的考虑(比如安全性方面),因此就没在编辑器里面实现。所以我在想能不能有折中的方法,比如如果完全兼容html会带来安全问题的话能不能考虑一下完备的过滤手段,或者把常用的一些东西通过其他方式来,比如表格可以通过下面的语法来实现(来自https://github.com/trentm/python-markdown2/wiki/wiki-tables):

|| *Year* || *Temperature (low)* || *Temperature (high)* ||
|| 1900 || -10 || 25 ||
|| 1910 || -15 || 30 ||
|| 1920 || -10 || 32 ||

再比如对流程和序列图的支持,这两个方面我主要是通过Cmd Markdown得到的启发(具体的可以点开链接去感受一下)。

再说一下上面所提的这些功能题的必要性。在问答模块的话估计不是很必要(的确,在回答问题的时候需要做表格之类的情况很少,实在不行的话也可以通过图片的方式实现),但是,在文章模块方面还是有必要的(话说没有认真写过一篇文章的话我没资格说话),如果能加上去感觉会好很多,能够完全用纯文本进行写作会比截图上传让程序员感觉舒服。

可能这些都只是伪需求,这也是我一开头就说这个建议不算建议的缘故。

1 Answers

后台用白名单对标签做了过滤,table和a是支持的,可能有些属性会被干掉。

<table>
    <tbody><tr><td>td1</td><td>td2</td></tr></tbody>
</table>
<a href="http://sf.gg">sf.gg</a>
td1 td2

sf.gg

明白了,是table在编辑时预览无效而已,3Q

……强烈要求预览时能看到表格

这个必须有,放假前再上线一个版本