公共事業.

Sphinxはアプリケーションクラスと関数を提供して拡張を開発する.

コンポーネントの基底類

These base classes are useful to allow your extensions to obtain Sphinx components (e.g. Config, BuildEnvironment and so on) easily.

注釈

それらのサブクラスはSphinxに強く結合されているので、純粋docutilと一緒に動作できない可能性がある。

class sphinx.transforms.SphinxTransform(document, startnode=None)[ソース]

変換された基底類です

と比較する. docutils.transforms.Transform このクラスは、Sphinx APIへのアクセス可能性を改善する。

property app

はい。 Sphinx 物体です。

property config

はい。 Config 物体です。

property env

はい。 BuildEnvironment 物体です。

class sphinx.transforms.post_transforms.SphinxPostTransform(document, startnode=None)[ソース]

後期変換の基底類。

後期変換を呼び出して文書を修正して文書を再構築して出力する.これらは,参照,画像の変換,出力フォーマットごとの特殊な変換などを解析することができる.このクラスはこれらのPOST変換を実現するのに役立つ.

apply(**kwargs: Any)None[ソース]

上書きは,変換を文書木に適用する.

is_supported()bool[ソース]

この変換が現在のビルダで動作しているかどうかをチェックします。

run(**kwargs: Any)None[ソース]

後期変換の主な方法。

サブクラスはこの方法を書き換えるべきであり,そうではない. apply() それがそうです。

class sphinx.util.docutils.SphinxDirective(name, arguments, options, content, lineno, content_offset, block_text, state, state_machine)[ソース]

Sphinx命令の基本クラス。

このような種類はSphinx命令にブースタ方法を提供する.

注釈

このようなサブクラスはdocutilに適用されない可能性がある.このクラスはSphinxと密接に結合している。

get_source_info() → Tuple[str, int][ソース]

信号源と行番号を取得する。

set_source_info(node: docutils.nodes.Node)None[ソース]

信号源と行番号をノードに設定する.

property config

はい。 Config 物体です。

property env

はい。 BuildEnvironment 物体です。

class sphinx.util.docutils.SphinxRole[ソース]

Sphinx役の基底類。

このクラスはSphinxロールにブースタ方法を提供する.

注釈

このようなサブクラスはdocutilに適用されない可能性がある.このクラスはSphinxと密接に結合している。

property config

はい。 Config 物体です。

content = None

文字列リスト、カスタマイズのためのコマンド内容

property env

はい。 BuildEnvironment 物体です。

inliner = None

♪the docutils.parsers.rst.states.Inliner 物体です。

lineno = None

テキストから始まる行番号を説明する。

name = None

文書で実際に使用されているロール名.

options = None

カスタムのための命令オプション辞書

rawtext = None

解釈テキスト全体が入力された文字列を含む.

text = None

説明したテキストの内容。

class sphinx.util.docutils.ReferenceRole[ソース]

役割の基底類を引用する。

参考役はお受けできます link title <target> キャラクターのテキストスタイル。解析結果;リンクタイトルとターゲットは self.title そして self.target それがそうです。

disabled = False

ブール値は引用が無効になったことを表す。

has_explicit_title = None

ブール値は,役割に明確な肩書きがあるかどうかを表す.

target = None

テキストのリンク先を解釈する.

title = None

テキストのリンクタイトルを解釈する.

class sphinx.transforms.post_transforms.images.ImageConverter(*args: Any, **kwargs: Any)[ソース]

画像変換器の基本クラス。

画像変換器はDocutils変換モジュールである.これは、ビルダがサポートしていない画像ファイルを、ビルダに適したフォーマットに変換するために使用される。

例えば LaTeX builder 画像形式としてPDF、PNG、JPEGをサポートしています。しかし,SVG画像はサポートされていない.この場合、画像変換器を使用して、これらのサポートされていない画像を文書に埋め込むことができる。画像変換器の1つ; sphinx.ext.imgconverter Imagemagickを用いてSVG画像をPNGフォーマットに変換することができる。

カスタム画像変換器を作成するには3つのステップがある.

  1. …をさせる子類になる ImageConverter クラス

  2. Override conversion_rules, is_available() and convert()

  3. 以下のコマンドを使用して画像変換器をSphinxに登録する Sphinx.add_post_transform()

convert(_from: str, _to: str)bool[ソース]

画像ファイルを所望のフォーマットに変換する。

_from ソース画像ファイルの経路であり、 _to ターゲットファイルのパスです。

is_available()bool[ソース]

戻り画像変換器が利用可能かどうか。

available = None

コンバーターは使えますか。生成された1回目の呼び出し時にパディングする.結果は同じ過程で共有される.

課題

クラス変数なしで状態を格納しないように再構成すべきである.

conversion_rules = []

画像変換器がサポートする変換規則。これは、一対のソース画像フォーマット(MIMETYPE)および宛先Oneとして表される:

conversion_rules = [
    ('image/svg+xml', 'image/png'),
    ('image/gif', 'image/png'),
    ('application/pdf', 'image/png'),
]

ユーティリティ·コンポーネント

class sphinx.events.EventManager(app: Sphinx = None)[ソース]

スフィンクスの事件マネージャーです。

add(name: str)None[ソース]

カスタムSphinxイベントを登録します。

connect(name: str, callback: Callable, priority: int)int[ソース]

ハンドラを特定のイベントに接続する.

disconnect(listener_id: int)None[ソース]

ハンドラの接続を切断する.

emit(name: str, *args: Any, allowed_exceptions: Tuple[Type[Exception], ...] = ()) → List[ソース]

Sphinx事件を発した。

emit_firstresult(name: str, *args: Any, allowed_exceptions: Tuple[Type[Exception], ...] = ()) → Any[ソース]

Sphinxイベントが発行され、最初の結果が返されます。

これは最初の未返信ハンドラの結果を返す. None それがそうです。