詳しく見る

Pythonドキュメント用reStructuredText

MarkdownをSphinxおよびPythonプロジェクト用RSTに変換

RSTに変換

reStructuredText(RST)はSphinxを使用するPythonプロジェクトの標準ドキュメントフォーマットです。Markdownは執筆には優れていますが、RSTは技術ドキュメントのための強力な機能を提供します。MarkdownをRSTに変換することで、Markdownで素早く書き、既存のPythonドキュメントワークフローに統合できます。

なぜRSTに変換?

  • Sphinxとの互換性 - RSTはSphinxのネイティブフォーマット
  • Pythonエコシステム - ほとんどのPythonドキュメントがRSTを使用
  • クロスリファレンス - RSTはドキュメント間の堅牢なリンクをサポート
  • 拡張機能 - Sphinxの強力な拡張エコシステムにアクセス
  • Read the Docs - RTDホスティングとの直接統合

仕組み

MarkdownをRSTに変換すると、適切なRST構文が得られます:

Introduction
============

This is a paragraph with **bold** and *italic* text.

* First item
* Second item

Code Example
------------

.. code-block:: python

   def greet(name):
       return f"Hello, {name}!"

MarkdownからRSTへのマッピング

MarkdownRST出力
# Heading=====の下線付き
## Subheading-----の下線付き
**bold****bold**
*italic**italic*
`code```code``
[text](url)`text <url>`_
コードブロック.. code-block::

SphinxでRSTを使う

基本ワークフロー

  1. 速さのためにMarkdownでコンテンツを執筆
  2. Markdown2ANYを使ってRSTに変換
  3. RST固有の機能(ディレクティブ、クロスリファレンス)を追加
  4. Sphinxでビルド:sphinx-build -b html source/ build/

RST機能の追加

変換後、Sphinxディレクティブでrst を拡張:

.. note::
   This is a note admonition.

.. warning::
   This is a warning.

.. seealso::
   :doc:`other-document`

一般的な活用例

APIドキュメント

READMEファイルやガイドをRSTに変換して、autodocで生成されたAPIリファレンスと統合。

チュートリアル

Markdownでチュートリアルを書き、RSTに変換し、APIドキュメントへのクロスリファレンスを追加。

コントリビューションガイド

プロジェクトの他のドキュメントのフォーマットと一致するコントリビュータードキュメントを作成。

RST固有の機能

変換後、Markdownがサポートしていないrst機能を追加できます:

  • 注意喚起 - Note、Warning、Tip、Dangerボックス
  • クロスリファレンス - ドキュメントとセクション間のリンク
  • ロール - :func::class:などのセマンティックマークアップ
  • ディレクティブ - カスタムコンテンツブロック
  • Toctree - ドキュメント階層

関連ガイド

Pythonドキュメント用reStructuredText | Markdown2ANY | Markdown2ANY