markdown 是一款很是强大且语法简洁的标记语言。咱们**(特别是技术人员)**更加青睐它,用它来写文档、博客、文章等。html
有些平台,好比掘金、csdn,技术人员使用较多,因此他们的编辑器支持 markdown,而有的平台,例如微信、知乎,则对 markdown 用户不太友好。bash
某些工具能够将 markdown 解析成这些平台兼容的 html,好比 mdnice。微信
但对于已经发布的文章,而你又不是原文做者,你想转发或者借鉴一段时,排版问题也许又会让你挠头不已。要是有一款兼容各大平台的 html 的转换器该多好呀!markdown
基于此问题,咱们调研了一些 html 转 markdown 工具,实际用起来发现效果并不尽人意,因此咱们本身开发了 sitdown 。app
若是你只是想快速达成目的,能够直接进入咱们的 Demo 页。编辑器
将源 html 粘贴到左边的输入框中。 工具
选择 html 来源的平台。 oop
点击 transform。转换的 markdown 就生成在了右边的框中,并同时复制到了你的剪贴板。 ui
// Node var { Sitdown } = require('sitdown') var sitdown = new Sitdown() var markdown = sitdown.HTMLToMD('你的 html') 复制代码
// ES import { Sitdown } from 'sitdown/src.esm' var sitdown = new Sitdown() var markdown = sitdown.HTMLToMD('你的 html') 复制代码
若是想转换某个平台的 html,能够使用插件:spa
例如:
import { Sitdown } from 'sitdown/src.esm'; import { applyJuejinRule } from '@sitdown/juejin/src.esm'; let sitdown = new Sitdown({ keepFilter: ['style'], codeBlockStyle: 'fenced', bulletListMarker: '-', hr: '---', }); sitdown.use(applyJuejinRule); 复制代码
mdnice,是一款 markdown 转 html 的神器。markdown 通过它的转换,能够生成各类主题的微信 html 和知乎 html。
它直接集成了 sitdown:
本库也是借鉴了开源界的思想和某些代码库,在一些细节上还须要完善和改进。因此也是 MIT 协议,若是你们对 mdnice 相关项目有兴趣,欢迎提供 pr 贡献。