はい、できます。カスタムディレクティブをSphinxに追加する必要があります。以下で(conf.py
へ次のようなmydirectives.py
)Pythonモジュールを作成します。
import os
import os.path
import re
import subprocess
import docutils.core
import docutils.nodes
import docutils.parsers.rst
class AbstractDirective(docutils.parsers.rst.Directive):
has_content = True
required_arguments = 0
optional_arguments = 0
option_spec = {}
final_argument_whitespace = False
node_class = docutils.nodes.container
def run(self):
self.assert_has_content()
text = '\n'.join(self.content)
admonition_node = self.node_class(rawsource=text)
self.state.nested_parse(self.content, self.content_offset,
admonition_node)
admonition_node.set_class("abstract")
return [admonition_node]
def setup(app):
app.add_directive('abstract', AbstractDirective)
にもタイトルを追加するにはいくつかの方法が存在しなければなりません。おそらく タイトルノードを自分で追加する必要があります。ドキュメントはそこに欠けている、 source for admonitions をよく見るとあなたはdocutilsのための気持ちを得るでしょう。
カスタムテキストノードでは、独自のノートディレクティブを作成することができます。
ありがとうございました。私は時間があるとすぐにそれを見ていきます –