有谁知道一个有效的 Python GFM 实现?
目前我正在使用javascript 渲染器。它可以工作,但实际的 Python 渲染器将是完成这项工作的正确工具。(FS 是一个 Django 应用程序)
相关代码--> https://github.com/freedomsponsors/www.freedomsponsors.org/blob/master/djangoproject/core/models.py (见IssueComment.toHTML)
语法高亮是一个优点。
有谁知道一个有效的 Python GFM 实现?
目前我正在使用javascript 渲染器。它可以工作,但实际的 Python 渲染器将是完成这项工作的正确工具。(FS 是一个 Django 应用程序)
相关代码--> https://github.com/freedomsponsors/www.freedomsponsors.org/blob/master/djangoproject/core/models.py (见IssueComment.toHTML)
语法高亮是一个优点。
GitHub 使用Redcarpet,它实际上是 github 为Sundown构建的 Ruby 绑定。
在 Python 中有一个名为Misaka的 Sundown 绑定。如果你想要更接近 github 使用的渲染器,但在 python 中,你可以从那里开始。
对于代码突出显示,您可以将Pygments 与 Misaka 一起使用。
Python-Markdown加上py-gfm似乎运行良好。它的好处是在 Python 生态系统中有些标准化 - 有几个 Python-Markdown 扩展可用,然后可以在 Python-Markdown 之上构建其他包,如django_markdown并从其扩展中受益。
如果对其他人有帮助,我只想要 Github 防护代码语法,例如
```python
def hello():
print('this should be rendered properly')
```
Python Markdown实际上附带了一个扩展来执行此操作,该扩展已经称为Fenced Code Blocks,它运行良好。
你只是这样称呼它:
page_content = markdown.markdown(source, extensions=[FencedCodeExtension()])
Python 有自己的标记语言,与 Markdown 非常相似:http: //docutils.sourceforge.net/rst.html
握把也很酷,可以完成工作。