第6日目 Sphinxドキュメントを編集する その3
今日のご紹介するのは 表 (テーブル) の書き方です。
ディレクティブについて
- 今日からディレクティブという命令文のような物を使います。前に ..(ピリオド×2 半角スペース) 、 後に :: (セミコロン×2) を付けます。 例えば csv-table ディレクティブを使う際は .. csv-table:: のように記述します。
表について
- ちょっと残念ですがSphinxは表があまり得意ではありません それでも表は多用しますので、便利かな?と思われる方法についてご紹介します。
CSVテーブル
CSV(カンマ区切り)形式を利用して表を作る事ができます。
csv-table ディレクティブを使用します。
記述例:
.. csv-table:: :header-rows: 1 :widths: 2, 6 種別, タイトル サプリメント, グランド×クロス The Detonation サプリメント, ストレイライト 基本ルールブック, トーキョーN◎VA The Detonation クロニクル サプリメント, マーダーインク サプリメント, ナイトウォッチ サプリメント, ワールドオーダー サプリメント, アウターエッジ リプレイ, ビューティフルデイ リプレイ, ヴァニティ・エンジェル リプレイ, カウンターグロウ
このように表示されます。
種別
タイトル
サプリメント
グランド×クロス The Detonation
サプリメント
ストレイライト
基本ルールブック
トーキョーN◎VA The Detonation クロニクル
サプリメント
マーダーインク
サプリメント
ナイトウォッチ
サプリメント
ワールドオーダー
サプリメント
アウターエッジ
リプレイ
ビューティフルデイ
リプレイ
ヴァニティ・エンジェル
リプレイ
カウンターグロウ
:header-rows: オプションで表のヘッダを何行目にするかを指定できます。
:widths: オプションでカラムの長さを調整できます。
:file: オプションでファイルから読み込ませる事もできます。表の記述量が多い場合はCSVファイルを作成し読み込ませる事をお勧めします。
記述例:
.. csv-table:: :file: subdir/piyo.csv
リストテーブル
表にした際、横に並ぶカラムを縦に伸ばしていく記述方法です。1カラムが長くなってしまう時に非常に便利です。
list-table ディレクティブを使用します。
記述例:
.. list-table:: :header-rows: 1 :widths: 5,5 * - 都市名 - 読み方 * - オーサカM○●N - オーサカムーン * - トーキョーN◎VA - トーキョーノヴァ * - ホンコンHEAVEN - ホンコンヘブン * - キャンベラAXYZ - キャンベラアクシズ * - ミトラスE△EN - ミトラスエデン * - ゴーストEYEランド - ゴーストアイランド * - サーガSATANN - サーガサターン
このように表示されます。
都市名
読み方
オーサカM○●N
オーサカムーン
トーキョーN◎VA
トーキョーノヴァ
ホンコンHEAVEN
ホンコンヘブン
キャンベラAXYZ
キャンベラアクシズ
ミトラスE△EN
ミトラスエデン
ゴーストEYEランド
ゴーストアイランド
サーガSATANN
サーガサターン
オプションは header-rows と widths がリストテーブルと同様に使えます。
セルの中で改行する
| (パイプ) を使います。
記述例:
.. list-table:: :header-rows: 1 :widths: 5,5 * - マイナスナンバー - データ * - -1 - | ヒルコ | ミューテーション * - -7 - | アラシ | ブレイクスルー * - -9 - | カゲムシャ | チェンジ * - -18 - | アヤカシ | ディスアペア
このように表示されます。
マイナスナンバー
データ
-1
ヒルコミューテーション-7
アラシブレイクスルー-9
カゲムシャチェンジ-18
アヤカシディスアペア他のテーブルディレクトリでも同様の事ができます。
セルの中にリストを入れる
セルの中にリストを入れる事もできます。
記述例:
.. list-table:: :header-rows: 1 :widths: 5,5 * - 傾向 - 基本スタイル * - 攻撃系 - * バサラ * カブト * カタナ * カゲ * カブトワリ * - 支援系 - * ミストレス * マヤカシ * マネキン * タタラ * - 非物理攻撃系 - * カリスマ * クグツ * ニューロ
このように表示されます。
傾向
基本スタイル
攻撃系
- バサラ
- カブト
- カタナ
- カゲ
- カブトワリ
支援系
- ミストレス
- マヤカシ
- マネキン
- タタラ
非物理攻撃系
- カリスマ
- クグツ
- ニューロ
他のテーブルディレクトリでも同様の事ができます。
セルの結合について
可能ですが グリッドテーブル という面倒な記述をする必要があるのでお勧めしません。
記述例:
+--------------+-----------+------------------+ |OS | Client | +==============+===========+==================+ |Name |Plan9 | Yes | +--------------+-----------+ + |Name |Cho-KANJI | | +--------------+-----------+------------------+
このように表示されます。
OS
Client
Name
Plan9
Yes
Name
Cho-KANJI
明日も引き続き、よく使う記述をご紹介していきます。
※ このアドベントカレンダーについては このアドベントカレンダーについて を参照して下さい。
第5日目 Sphinxドキュメントを編集する その2
昨日は reStructuredText で記述されたサンプルをコピペし HTMLドキュメント を生成しましたね。 今日は、サンプルの中で使用した reStructuredText の記法をご紹介します。
インラインマークアップ(文字の修飾)
斜体にするには次のように * (アスタリスク) で囲みます。
- 文中に入れる場合は、前後に 半角スペース を入れて下さい。
記述例:
*index.rst* *UTF-8* *サクラエディタ* *メジャーなツール*
このように表示されます。
太字にするには ** (アスタリスク×2) で囲みます。
記述例:
**あふw** **Paper Plane xUI** **内骨格**
このように表示されます。
リテラルに(そのまま表示)するには `` (バッククォート×2) で囲みます。
記述例:
``C:\cygwin\bin\vim-nox.exe``
このように表示されます。
C:\cygwin\bin\vim-nox.exe
- Windowsのパス等、エスケープ文字を含む場合に使うといいでしょう。
タイトルリファレンス
書籍などの説明に使われる記法です。種別を : セミコロン で挟み、半角スペースを入れた後に名称を記述します。
記述例:
:ファイラ: あふw :エディタ: Vim :処理系: AutoHotKey :処理系: Python :シェル: nyaos
このように表示されます。
ファイラ: あふw エディタ: Vim 処理系: AutoHotKey 処理系: Python シェル: nyaos
番号無しリスト(箇条書き)
箇条書きにする為には * (アスタリスク) - (ハイフン) + (プラス) のいずれかを文頭に置きます。
記述例:
* TortoiseHg * TortoiseBzr - Cygwin - gow + xyzzy + Gvim
このように表示されます。
- TortoiseHg
- TortoiseBzr
- Cygwin
- gow
- xyzzy
- Gvim
入れ子にする事もできます。
記述例:
* TortoiseHg * TortoiseBzr * Cygwin * gow * xyzzy * Gvim
このように表示されます。
- TortoiseHg
- TortoiseBzr
- Cygwin
- gow
- xyzzy
- Gvim
インデントの半角スペースの数や、空行などにより表示が変化します。後日また説明します。
番号付きリスト(箇条書き)
番号付きのリストを使う事もできます。番号には 半角英数 が使えます。
記述例:
1. Python 2. Mercurial 3. Sphinx 4. Vim
このように表示されます。
- Python
- Mercurial
- Sphinx
- Vim
入れ子にする事もできます。
記述例:
A. Editor i. Vim ii. Emacs iii. SakuraEditor iv. ed B. Filer i. Afxw ii. mfiler4 iii. VimFiler C. Launcher i. CraftLaunch ii. HoeKey iii. Bluewind
このように表示されます。
- Editor
- Vim
- Emacs
- SakuraEditor
- ed
- Filer
- Afxw
- mfiler4
- VimFiler
- Launcher
- CraftLaunch
- HoeKey
- Bluewind
使用するThemeにより、表示は変わります。今回は全て数字になりましたがThemeによっては、アルファベットがそのまま表示されます。
セクション(ブロックの区切り)
- 下記記号をアンダーラインのように使う事によりセクションにする事ができます。
- #
- *
- =
- -
- ^
- ~
- “
記号を使った順にレベル分けされます。
記述例:
レベル2 ------- レベル3 ~~~~~~~ レベル4 """"""" レベル2 -------
次のように表示されます。