ドメインAPI¶
-
class
sphinx.domains.
Domain
(env: BuildEnvironment)[ソース]¶ ドメインは、性質が類似したオブジェクトのセットの“オブジェクト”記述命令であり、それらへの参照の対応する役割を作成する。たとえば,Pythonモジュール,クラス,関数など,テンプレート言語要素,Sphinxロールやコマンドなどである.
各ドメインは、既存のオブジェクトおよびそれらをどのように参照するかに関する情報を格納するための別個の記憶空間を有する。 self.data 辞書でなければなりませんこれはまた、ドメインとは無関係にオブジェクトを参照または検索することを可能にするSphinx部分にオブジェクト情報を統一的に公開するいくつかの関数を実現しなければならない。
について self.data :すべてのオブジェクトおよび交差参照情報がBuildEnvironmentインスタンスに格納されているため, domain.data オブジェクトも格納されています env.domaindata 暗箱操作 domain.name それがそうです。構築プロセスが開始される前に、各アクティブドメインはインスタンス化され、環境オブジェクトが与えられる。 domaindata DICTは存在しない,あるいはその“version”キーワードがドメインクラス“”に等しい辞書でなければならない.“
data_version
属性です。そうでなければ OSError 酸化された環境を廃棄することになります-
add_object_type
(name: str, objtype: sphinx.domains.ObjType) → None[ソース]¶ オブジェクトタイプを追加します。
-
directive
(name: str) → Callable[ソース]¶ 登録された命令のフルネーム(‘domain:name’)を常に提供する命令アダプタクラスを返し、フォーマットは
self.name
それがそうです。
-
get_objects
() → Iterable[Tuple[str, str, str, str, str, int]][ソース]¶ 反復可能な“オブジェクト記述”を返します。
オブジェクト記述は、6つの項目を含むタプルである:
name
名称を完全に限定する。
dispname
/リンクを検索する際に表示する名前.
type
対象タイプ、キーワード
self.object_types
それがそうです。docname
その文書を見つけなければならない。
anchor
オブジェクトのアンカ名。
priority
対象がどれだけ“重要”であるか(検索結果中の位置を決定する).以下の選択肢の1つ:
1
デフォルト優先度(全文マッチングの前に置く).
0
オブジェクトは重要である(デフォルト優先度オブジェクトの前に置く).
2
対象は重要ではない(全文マッチングの後に置く).
-1
対象は検索に現れるべきではない.
-
get_type_name
(type: sphinx.domains.ObjType, primary: bool = False) → str[ソース]¶ ObjTypeのフルネームを返す.
-
merge_domaindata
(docnames: List[str], otherdata: Dict) → None[ソース]¶ 以下の内容に関するデータを統合する 文書名. 異なるドメインからのデータリスト(並列構築におけるサブフローから).
-
process_doc
(env: BuildEnvironment, docname: str, document: docutils.nodes.document) → None[ソース]¶ 環境で文書を読み取った後に処理を行う.
-
process_field_xref
(pnode: sphinx.addnodes.pending_xref) → None[ソース]¶ ドキュメントフィールドで作成された保留外部参照を処理する。たとえば,現在のスコープに関する情報を付加する.
-
resolve_any_xref
(env: BuildEnvironment, fromdocname: str, builder: Builder, target: str, node: sphinx.addnodes.pending_xref, contnode: docutils.nodes.Element) → List[Tuple[str, docutils.nodes.Element]][ソース]¶ 解析保留の_xref node 与えられた場合 目標 それがそうです。
“どんな”または似たような役割から引用することは、私たちがタイプを知らないということを意味する。そうでなければ、パラメータと
resolve_xref()
それがそうです。この方法はタプルリストを返さなければならない(空である場合がある
('domain:role', newnode)
どこですか'domain:role'
同じ参照を作成することができるロールの名前、例えば'py:func'
それがそうです。newnode
何だよ?resolve_xref()
戻ってきます。バージョン 1.3 で追加.
-
resolve_xref
(env: BuildEnvironment, fromdocname: str, builder: Builder, typ: str, target: str, node: sphinx.addnodes.pending_xref, contnode: docutils.nodes.Element) → docutils.nodes.Element[ソース]¶ 解析保留の_xref node 与えられた場合 typ そして 目標 それがそうです。
この方法は、外部参照ノードを置換するために新しいノードを返すべきであり、ノードは含まれる。 連絡ノード. これは交差引用のタグ内容である.
解像度が見つからない場合には、いかなる解像度も返すことができず、その後、外部参照ノードは、外部参照ノードに提供される。
missing-reference
イベントは、これが何の解決策も生じなければ、 連絡ノード. それがそうです。この方法はまた向上させることができます
sphinx.environment.NoUri
抑制しなければならないmissing-reference
発している事件。
-
role
(name: str) → Callable[[str, str, str, int, docutils.parsers.rst.states.Inliner, Dict[str, Any], List[str]], Tuple[List[docutils.nodes.Node], List[docutils.nodes.system_message]]][ソース]¶ ロールアダプタ関数を返し、この関数は、常に登録ロールのフルネーム(‘domain:name’)を第1のパラメータとする。
-
dangling_warnings
= {}¶ ロール名->参照が不足している場合は、警告メッセージが表示されます。
-
data
= None¶ データ値.
-
data_version
= 0¶ データバージョンはフォーマットが self.data 変化
-
directives
= {}¶ コマンド名->コマンドクラス
-
enumerable_nodes
= {}¶ NODE_CLASS->(enum_node_type,title_getter)
-
indices
= []¶ 索引サブクラスリスト
-
initial_data
= {}¶ 新しい環境のデータ価値
-
label
= ''¶ ドメインタグ:より長く、より記述的(メッセージのため)
-
name
= ''¶ ドメイン名:短くなければならないが,唯一でなければならない
-
object_types
= {}¶ タイプ(通常はコマンド)名->ObjTypeインスタンス
-
roles
= {}¶ ロール名->呼び出し可能なロール
-
-
class
sphinx.domains.
ObjType
(lname: str, *roles: Any, **attrs: Any)[ソース]¶ ObjTypeはドメインに記述可能なオブジェクトタイプの記述である.ドメインサブクラスのOBJECT_TYPE属性では、オブジェクトタイプ名がこのようなインスタンスにマッピングされる。
構造関数パラメータ:
Lname :タイプのローカル化された名前(ドメイン名を含まない)
役柄 :このタイプのオブジェクトのすべてのロールを引用することができる
属性 :Object Attributes--現在は“searchprio”しか知られておらず、全文検索インデックス中のオブジェクトの優先度を定義していますので、参照されたい
Domain.get_objects()
それがそうです。
-
class
sphinx.domains.
Index
(domain: sphinx.domains.Domain)[ソース]¶ インデックスは、ドメイン固有のインデックスの記述である。ドメインにインデックスを追加するには、サブクラスIndexは3つの名前属性をカバーします:
name ファイル名を生成するための識別子である。これはインデックスのハイパーリンク先にも用いられる.したがって,ユーザは利用することができる.
ref
キャラクタとドメイン名と文字列を組み合わせた文字列name
属性(例えば:ref:`py-modindex
`)localname 索引の節見出しです。
shortname インデックスの略称であり,HTML出力における関係欄に用いられる.関係欄のエントリを無効にするために空とすることができる。
1つの方法を提供しています
generate()
方法です。そして,インデックスクラスをドメインに追加する indices リストです。拡張モジュールは、既存ドメインにインデックスを追加することを使用することができるadd_index_to_domain()
それがそうです。バージョン 3.0 で変更: 索引ページは以下のようにドメイン名とインデックス名で参照することができる
ref
役。-
generate
(docnames: Optional[Iterable[str]] = None) → Tuple[List[Tuple[str, List[sphinx.domains.IndexEntry]]], bool][ソース]¶ インデックスのエントリを取得する。
もし
docnames
これらの文書名を参照するエントリに制限する.返り値は
(content, collapse)
:collapse
サブアイテムが折り畳みを開始すべきかどうかを決定するブール値である(折り畳みサブアイテムをサポートする出力フォーマットのため)。
content
:一連
(letter, entries)
メタグループ、その中でletter
決まった語を与える“見出し”ですentries
通常は最初の文字でentries
単一のエントリのシーケンスです。すべての項目は1つのシーケンスです[name, subtype, docname, anchor, extra, qualifier, descr]
それがそうです。このシーケンス中の項目は以下の意味を持つ:name
表示するインデックス項目の名前
subtype
サブ項に関するタイプ.以下の選択肢の1つ:
0
通常の項目です
1
帯項目の項目。
2
サブエントリです。
docname
文書名. エントリが存在する位置。
anchor
内部エントリのアンカー
docname
extra
エントリの追加情報。
qualifier
記述された限定子。
descr
項目の説明。
LaTeXのようないくつかの出力フォーマットは、限定子および説明を示さない。