Рубрики
Без рубрики

Обработка отметки в Python с использованием доступных реализаций Commonmark: Cmarkgfm, Paka.cmark и Mistletoe

Markdown – это «достаточно разметки», чтобы написать большинство документов, которые я пишу, и очень читабель для Hum … Tagged с Python, Markdown, Commonmark.

Markdown – это «достаточно разметки», чтобы написать большинство документов, которые я пишу, и очень читабель для людей. (В стороне: хорошо иметь чит -лист удобный во время печати!)

Я оценил усилия по стандартизации отметки группы, работающей над Commonmark спецификация К счастью, многие языки имеют множество Commonmark реализации , включая Python.

Вот три, которые я нашел ценным, с кратким описанием того, почему и когда вы можете использовать каждый.

cmarkgfm

Простые, быстрые, стабильные и работают в Windows, а также на Linux, Mac и других платформах. Он также поддерживает Github Flasticed Markdown Анкет Попробуйте это сначала; Это, вероятно, все, что вам нужно.

Paka.cmark

Этот быстрый, настраиваемый и обычно не работает в Windows. Содействующий активен и поддерживает проект обновлять. Используйте это, если вам нужно только для работы на Linux и Mac, и особенно если вам нужен доступ к низкоуровне к анализатору, для настройки.

омела

В отличие от других, перечисленных выше, омела написан в Pure Python, как и хороший кандидат на pypy Или, если вам нужна простота установки/конфигурации и не требует максимальной скорости.

Попробуйте их все!

import cmarkgfm
import paka.cmark
import mistletoe

MARKDOWN = "**Hello**, _World_"

print(cmarkgfm.markdown_to_html(MARKDOWN))
print(paka.cmark.to_html(MARKDOWN))
print(mistletoe.markdown(MARKDOWN))

Вот идея для реализации модуля-агрессии, которая будет успешной, если какое-либо из вышеперечисленного будет установлено:

try:
    from cmarkgfm import markdown_to_html as md_to_html
except ModuleNotFoundError:
    try:
        from paka.cmark import to_html as md_to_html
    except ModuleNotFoundError:
        from mistletoe import markdown as md_to_html

MARKDOWN = "**Hello**, _World_"

print(md_to_html(MARKDOWN))

Наслаждаться!

Оригинал: “https://dev.to/bowmanjd/processing-markdown-in-python-using-available-commonmark-implementations-cmarkgfm-paka-cmark-and-mistletoe-350a”