Sphinx クイックスタートテンプレート¶
この記事は、「ドキュメントを書いて LLVM のドキュメントに追加したい」という状態の人が、できるだけ早く、無駄なくドキュメントを書き始めることができるようにすることを目的としています。
概要¶
LLVM ドキュメントは、マークダウンに似たマークアップ構文であるreStructuredTextで記述されています(ただし、はるかに強力です)。LLVM ドキュメントサイト自体は、もともと Python ドキュメント用に書かれたドキュメントジェネレーターであるSphinxを使用しています。
このテンプレートの使い方¶
この記事はdocs/SphinxQuickstartTemplate.rst
にあります。これをテンプレートとして使用するには、コピーを作成し、テキストエディターで開いてください。次に、ドキュメントを記述し、新しい記事を llvm-commits に送信してレビューしてもらいます。
この記事の reStructuredText ソースファイルを表示するには、右側のサイドバーにあるソースを表示をクリックしてください。
セクションの例¶
記事には、1 つ以上のセクション(つまり、見出し)を含めることができます。セクション(上記のセクションの例
など)は、ドキュメントの構造を与えるのに役立ちます。このドキュメントで使用されているのと同じ種類のアドーンメント(例:======
対------
)を使用してください。アドーンメントは、その上のテキストと同じ長さである必要があります。Vim ユーザーの場合、yypVr=
のバリエーションが便利かもしれません。
ネストされたサブセクションの例¶
サブセクションは、他のサブセクションの下にネストすることもできます。セクションの詳細については、Sphinx のreStructuredText Primerを参照してください。
テキストの書式設定¶
テキストは強調、太字、または等幅
にできます。
新しい段落を作成するには、単に空白行を挿入します。
リンク¶
リンクをこのようにフォーマットできます。より洗練された構文を使用すると、.. _`リンク テキスト`: <URL>
ブロックをドキュメントのほぼどこにでも配置できます。これは、特に長い URL にリンクする場合に役立ちます。
リスト¶
reStructuredText を使用すると、順序付きリストを作成できます…
#.
で始まるリストは、自動的に番号が付けられます。これは 2 番目のリスト要素です。
インデントを使用して、ネストされたリストを作成します。
…だけでなく、順序なしリストも作成できます。
項目。
より深い項目。
その他の項目。
コードブロック¶
このようなコードブロックを作成できます
int main() {
return 0;
}
シェルセッションの場合は、console
コードブロックを使用します(一部の既存のドキュメントではbash
を使用します)
$ echo "Goodbye cruel world!"
$ rm -rf /
LLVM IR を表示する必要がある場合は、llvm
コードブロックを使用します。
define i32 @test1() {
entry:
ret i32 0
}
必要な可能性のあるその他の一般的なコードブロックには、c
、objc
、make
、およびcmake
があります。それ以上のものが必要な場合は、サポートされているコードブロックの完全なリストを参照してください。
ただし、意味のあるコンテンツを追加できる場合は、構文の強調表示に時間を費やさないでください。迷った場合は、次のように構文の強調表示なしで整形済みテキストを表示します
.
+:.
..:: ::
.++:+:: ::+:.:.
.:+ :
::.::..:: .+.
..:+ :: :
......+:. ..
:++. .. :
.+:::+:: :
.. . .+ ::
+.: .::+.
...+. .: .
.++:..
...
ドキュメントの生成¶
HTML ドキュメントをソースからローカルで生成して、どのように表示されるかを確認できます。通常のビルドツールに加えて、Sphinxと必要な拡張機能を、llvm-project
チェックアウト内の次のコマンドを使用してインストールする必要があります
pip install --user -r ./llvm/docs/requirements.txt
次に、cmake を実行して、llvm-project
チェックアウト内でドキュメントをビルドします
mkdir build
cd build
cmake -DLLVM_ENABLE_SPHINX=On ../llvm
cmake --build . --target docs-llvm-html
すでに Cmake ビルドが設定されていて、それを再利用したい場合は、CMake 変数LLVM_ENABLE_SPHINX=On
を設定するだけです。
その後、生成されたドキュメントはbuild/docs/html
フォルダーにあります。