2012-08-13 53 views
17

有誰知道可用的Python GFM實現嗎?Python中的Github-Flavored-Markdown

當前我使用的是javascript renderer。 它的工作原理,但實際的Python渲染器將是該工作的正確工具。 (FS是一個Django應用程序)

我試着將thisthis結合起來。但結果並不好。

相關的代碼 - >https://github.com/freedomsponsors/www.freedomsponsors.org/blob/master/djangoproject/core/models.py (見IssueComment.toHTML)

語法高亮是一個加號。

回答

16

GitHub上使用Redcarpet這實在是一個Ruby具有約束力的github上爲Sundown建。

Python中的Sundown綁定名爲Misaka。如果你想要更接近渲染器github使用的東西,但在python中,你可能會從那裏開始。

要使代碼高亮顯示,您可以使用Pygments with Misaka

+0

不錯!我會檢查出來的。謝謝! – 2012-08-14 11:28:29

+0

的確,它只是起作用。謝謝(很快會有演示) – 2012-09-04 05:16:00

+1

[This](https://github.com/freedomsponsors/www.freedomsponsors.org/issues/4)是我如何使它工作的。 如果有人打算使用misaka,請小心[this](https://github.com/FSX/misaka/issues/25#issuecomment-8295218) – 2012-09-05 11:47:11

2

Grip也很酷,能夠完成任務。

6

Python-Markdownpy-gfm似乎很好。它具有在Python生態系統中有點標準化的好處 - 可以使用幾種Python-Markdown擴展,然後可以在Python-Markdown之上構建其他包,如django_markdown,並從其擴展中受益。

+0

作爲[py-gfm]的新維護者( https://github.com/zopieux/py-gfm),我會嘗試在未來版本中添加缺少的功能。 – zopieux 2016-03-04 21:19:08

1

如果對他人有幫助,我只想讓Github圍欄代碼的語法,例如

```python 
def hello(): 
    print('this should be rendered properly') 
``` 

Python Markdown實際上附帶的擴展,已經這樣做了名爲Fenced Code Blocks行之有效。

你只是把它就像這樣:

page_content = markdown.markdown(source, extensions=[FencedCodeExtension()])