MEP29:文本灯标记#
状态#
讨论
分支和拉取请求#
目前没有,仅用于概念验证。
摘要#
该 MEP 建议为文本艺术家添加轻量级标记。
详细说明#
在文本注释中使用不同的尺寸/颜色/系列很困难,因为该
text
方法接受尺寸/颜色/系列/重量/等参数。用于整个文本。但是,例如,如果想要使用不同的颜色,则必须查看提供此类示例的图库:
Rainbow text
这个例子需要一个字符串列表和一个颜色列表,这使得使用起来很麻烦。另一种方法是使用一组受限的类似pango的标记并解释这个标记。
一些标记示例:
Hello <b>world!</b>`
Hello <span color="blue">world!</span>
实施#
markup_example.py中提供了概念证明,但目前仅处理水平方向。
改进#
此概念证明使用正则表达式来解析文本,但使用标准库中的 html.parser 可能会更好。
文本片段位置的计算可以从 OffsetFrom 类中受益。例如,参见使用带注释的复杂坐标中的第5 项
问题#
一个严重的问题是如何处理同时具有 LaTeX 和 HTML 类标签的文本。例如,考虑以下情况:
$<b>Bold$</b>
建议是互斥。
向后兼容性#
目前没有,因为它只是一个概念证明
替代方案#
正如@anntzer 所提议的,这也可以作为对数学文本的改进来实现。例如:
r"$\text{Hello \textbf{world}}$"
r"$\text{Hello \textcolor{blue}{world}}$"
r"$\text{Hello \textsf{\small world}}$"