import markdown markdown.markdown(some_text, extensions=['footnotes'])
some_text
- разметка Markdown,extensions
- список расширений модуля.Расширение markdown.extensions.footnotes
добавляет синтаксис для определения сносок в документах Markdown. Синтаксис сносок этого расширения модуля markdown
следует общепринятому синтаксису сообщества Markdown в целом.
Например:
Footnotes[^1] have a label[^@#$%] and the footnote's content. [^1]: This is a footnote content. [^@#$%]: A footnote on the label: "@#$%".
Метка сноски должна начинаться с символа вставки ^
и может содержать любой встроенный текст (включая пробелы) между квадратными скобками []
.
Содержание сноски должно начинаться с метки, за которой следует двоеточие и хотя бы один пробел. Метка, используемая для определения содержимого, должна точно соответствовать метке, используемой в теле (включая регистр букв и пробелы). Расшифровка значения сноски следует за меткой либо в той же строке, либо в следующей строке. Контент может содержать несколько строк, абзацев, блоков кода, цитат и почти любой другой синтаксис Markdown. Дополнительные строки должны иметь отступ на один уровень (четыре пробела или одна табуляция).
При работе с несколькими блоками может быть полезно начинать контент на отдельной строке от метки, которая определяет контент. Таким образом, весь блок имеет последовательный отступ, и любые ошибки легче распознаются автором.
[^1]: The first paragraph of the definition. Paragraph two of the definition. > A blockquote with > multiple lines. a code block A final paragraph.
Для настройки вывода доступны следующие параметры:
PLACE_MARKER
: текстовая строка, используемая для обозначения позиции, в которой отображаются сноски. По умолчанию ///Сноски здесь///
. Если текст маркера места не найден в документе, то определения сносок помещаются в конец итогового документа HTML.UNIQUE_IDS
: следует ли избегать конфликтов между несколькими вызовами метода Markdown.reset()
. По умолчанию False
.BACKLINK_TEXT
: текстовая строка, которая связывает определение сноски с положением в документе. По умолчанию ↩
.BACKLINK_TITLE
: текстовая строка для атрибута HTML title
ссылки определения сноски. %d
будет заменен номером сноски. По умолчанию вернуться к сноске %d
в тексте.SEPARATOR
: текстовая строка, используемая для установки разделителя сносок. По умолчанию :
.import markdown text = """ Footnotes[^1] have a label[^@#$%] and the footnote's content. [^1]: This is a footnote content. [^@#$%]: A footnote on the label: "@#$%". """ html = markdown.markdown(text, extensions=['footnotes']) print(html) # <p>Footnotes<sup id="fnref:1"><a class="footnote-ref" href="#fn:1">1</a></sup> # have a label<sup id="fnref:@#$%"><a class="footnote-ref" href="#fn:@#$%">2</a></sup> # and the footnote's content.</p> # <div class="footnote"> # <hr /> # <ol> # <li id="fn:1"> # <p>This is a footnote content.  # <a class="footnote-backref" href="#fnref:1" title="Jump back to footnote 1 in the text"> # ↩</a> # </p> # </li> # <li id="fn:@#$%"> # <p>A footnote on the label: "@#$%".  # <a class="footnote-backref" href="#fnref:@#$%" title="Jump back to footnote 2 in the text"> # ↩</a> # </p> # </li> # </ol> # </div>