一个高度可扩展的markdown解析器。
项目描述
𝓜𝓪𝓻𝓴𝓸
一个高度可扩展的markdown解析器。
Marko是一个纯Python markdown解析器,遵循CommonMark规范v0.31.2。它被设计为具有高度的可扩展性,详情请见扩展部分。
Marko需要Python 3.8或更高版本。
为什么选择Marko
在所有Python markdown解析器中,用户添加自定义功能通常很困难。此外,Python-Markdown和mistune都不符合CommonMark规范。这促使我开发了一个新的markdown解析器。
Marko符合复杂的CommonMark规范可能会影响其性能。但是,使用不遵守此规范的解析器可能会导致意外的渲染结果。根据基准测试结果,Marko比Python-Markdown慢三倍,但比Commonmark-py稍快,比mistune慢得多。如果您更重视性能而非规范兼容性,最好选择另一个解析器。
使用Marko
安装非常简单
$ pip install marko
使用方法
import marko
print(marko.convert(text))
Marko还提供了一个简单的CLI,例如,将文档渲染到HTML文件中
$ cat my_article.md | marko > my_article.html
扩展
使用扩展非常简单
from marko import Markdown
from marko.ext.footnote import make_extension
# Add footnote extension
markdown = Markdown(extensions=[make_extension()])
# Or you can just:
markdown = Markdown(extensions=['footnote'])
# Alternatively you can register an extension later
markdown.use(make_extension())
以下是一个使用Marko命令行版本扩展的示例
$ cat this_has_footnote.txt | marko -e footnote > hi_world.html
Marko附带4个扩展:'footnote', 'toc', 'pangu', 'codehilite'
。它们不在CommonMark规范中,但在其他markdown解析器中很常见。
Marko 还提供了一个 Git flavored markdown 解析器,可在 marko.ext.gfm.gfm
处找到。
请参阅 扩展 Marko 了解如何编写您自己的扩展。
许可证
Marko 在 MIT 许可证 下发布
变更日志
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。
源代码分发
marko-2.1.2.tar.gz (142.6 kB 查看哈希)
构建分发
marko-2.1.2-py3-none-any.whl (42.1 kB 查看哈希)