对 Markdown 的处理一般有三个阶段:解析,编译,渲染。
解析主要是针对 Markdown 内容,分析其内容结构,输出一系列内容单元。
编译是指从 Markdown 语法结构转换为另一种文档格式。
渲染是针对编译后的文档格式进行的,一般是各个平台、框架自己的工作了。
项目 | 功能 | 优势 | 劣势 | 依赖 | 描述 |
mity/md4c | 解析 | 解析快速 集成简单 Qt 官方使用 | C Markdown parser. Fast. SAX-like interface. Compliant to CommonMark specification. | ||
ali-rantakari/peg-markdown-highlight | 解析/编译 | 支持扩展实现渲染 | 语法兼容性(preg) | C library for Markdown syntax highlighting, using a recursive-descent parser. | |
Orc/discount | 解析/编译 | 还在持续维护 | Html | My C implementation of John Gruber's Markdown markup language | |
cloose/CuteMarkEd | 编译 | Html(Qt) | Discount 2.1.7 PEG Markdown Highlight | Qt Markdown Editor | |
commonmark/cmark | 解析/编译 | 中间AST HTML, groff man, LaTeX, CommonMark, or an XML | Html | ||
mekhontsev/imgui_md | 渲染 | 直接渲染 | 渲染问题还比较多 | MD4C |