kkAyatakaのメモ帳。

誰かの役に立つかもしれない備忘録。

sphinxcontrib-xlsxtableに行・列指定オプションを追加

  • 使用する / 使用しない、行 / 列を指定するオプションを追加
  • v1.0.0としてリリース

Excelファイルから表を作るSphinx拡張について、v1.0.0としてリリースしました。 が、足りない機能があるような無いような...(まあ、必要性がはっきりしたら追加すれば...)

使用する行 / 列と使用しない行 / 列の指定

include-rowsexclude-rowsinclude-columnsexclude-columnsを使って、指定できるようにしました。

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :include-rows: 1-2 4 8
   :exclude-rows: 3 5-7
.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :include-columns: A-B 4
   :exclude-columns: C 5-6

矩形範囲指定のオプションは実装していませんが、オプションの組み合わせで同等のことはできます。

.. B2-D3の範囲

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :include-rows: 2-3
   :include-columns: B-D

表の分割表示を想定

Excelを表として取り込むときに分割して取り込むのを想定していました。 可読性もですが、特にPDF化を想定した場合、ページに収める細工が必要そうで。

.. xlsx-table:: 表1
   :file: path/to/xlsx/file.xlsx
   :include-columns: A-G

.. xlsx-table:: 表2
   :file: path/to/xlsx/file.xlsx
   :include-columns: H-N

また、既存のExcelファイルをSphinx化するときに都合よく取り出したり。 メタデータも同時に記載されている場合に、メタデータとデータの表を分けるとかはありかと。

includeかexcludeか

include指定は明示的ですが、Excelファイルを更新しても、自動更新されなくなります。 逆にexcludeはExcelファイルにしたがって更新されますが、表示が崩れるとも言えます。 用途に合わせた指定が必要です。

リンク