跳转到主要内容

Wagtail StreamField 块,用于渲染数学方程

项目描述

wagtail-polymath

License: BSD-3-Clause Ruff PyPI version Build status

链接

wagtail-polymath 允许您在 Wagtail 内容中使用标记来编写方程式,并以美观的方式渲染它们。

wagtail-polymath 提供了一个 MathBlock,您可以在此处使用标记(TeX、MathML、ASCIIMath)编写方程式,并用 MathJax 进行渲染。它具有实时预览功能

MathBlock 使用 MathJax 进行渲染,因此在前端几乎不需要做什么。只需简单地包含 MathJax JS 并像其他任何 streamfield 纯文本块一样渲染原始的 MathBlock 内容即可。

wagtail-polymath 还包括一个模板标签,可以为您从 CDN 中包含 MathJax JS。默认情况下,MathJax 被配置为接受所有已识别的标记(TeX、MathML、ASCIIMath),并将它们渲染为 HTML。要更改配置,您可以向模板标签传递所需的配置命令。有关可能的配置,请参阅 MathJax 文档

有关使用标记语言的帮助,请参阅相关的 MathJax 文档(例如 https://docs.mathjax.org/en/v2.7-latest/tex.html)和特定标记语言的文档(例如 https://wikibooks.cn/wiki/LaTeX

快速入门

安装 wagtailmath

pip install wagtailmath

将其添加到您的 INSTALLED_APPS

# settings.py

INSTALLED_APPS = (
    # ...
    "wagtailmath",
    # ...
)

在您的 StreamField 内容中使用 MathBlock

from wagtailmath.blocks import MathBlock

class MyPage(Page):
    body = StreamField([
        ('heading', blocks.CharBlock(classname="full title")),
        ('paragraph', blocks.RichTextBlock()),
        ('equation', MathBlock())
    ])

在您的前端模板中使用 mathjax 模板标签来加载 MathJax 库

{% load wagtailmath %}
...

<script src="{% mathjax %}"></script>

贡献

欢迎所有贡献!请参阅 CONTRIBUTING.md

支持的版本

  • Python 3.8, 3.9, 3.10, 3.11, 3.12
  • Django 4.2, 5.0
  • Wagtail 5.2 (LTS), 6.0, 6.1

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

wagtailmath-1.3.0.tar.gz (9.6 kB 查看哈希值)

上传时间

构建分布

wagtailmath-1.3.0-py3-none-any.whl (9.0 kB 查看哈希值)

上传时间 Python 3

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面