我正在尝试做的事情:
我正在为课程创建在线笔记。我正在使用 Spinx (reStructuredText)。我真的想用自定义的着色方案创建一些编号的警告(例如,蓝色用于定义,绿色用于定理,橙色用于示例等)。我希望能够计算出这样的东西:
Chapter
=======
.. definition:: My name of choice
My definition here.
它会呈现一个编号的、自定义颜色的警告,比如:
编号将根据警告所在的章节/子章/子子章进行测量,并且(最好)继续针对其他类型的自定义警告进行编号。因此,如果我在第 3.2.1 章中先有一个定义,然后有一个定理,我会得到“3.2.1.1 定义:我选择的名称”,然后是“3.2.1.2 定理:我选择的名称”。
注:
我已经用谷歌搜索了我能想到的一切,但没有结果。我尝试了编号块扩展,但它并不真正适合我的需要。我尝试按照自定义警告的说明(虽然没有编号)创建一个
custom.css
将 def setup(app): app.add_stylesheet('custom.css')
添加到我的 conf.py
文件中(如here所述),但我无法让它工作。我变得非常绝望。
您可以制作自定义元素。
|Red-boxts| My Word |boxs| Bla Bla Bla |boxe|
|Green-boxts| My Word |boxs| Bla Bla Bla |boxe|
|Orange-boxts| My Word |boxs| Bla Bla Bla |boxe|
.. |Red-boxts| raw:: html
<div style="background-color: red; width: 100%; padding: 5px;">
<h1>
.. |Green-boxts| raw:: html
<div style="background-color: green; width: 100%; padding: 5px;">
<h1>
.. |Orange-boxts| raw:: html
<div style="background-color: orange; width: 100%; padding: 5px;">
<h1>
.. |boxs| raw:: html
</h1><p>
.. |boxe| raw:: html
</p></div>
应该显示:
您可以使用通用“admonition”指令和自定义 CSS 的 :class: 选项。
.. admonition:: My name of choice
:class: definition
My definition here
允许定义标题的样式,例如
.admonition.definition > .admonition-title {
background-color: lightblue;
}
“任意复杂”的编号可以通过 CSS 计数器定义。 (缺点是这些数字不容易参考。)