pandoc-crossref
概要
- Figure や Table、セクションの番号管理や引用をするPandoc フィルタ
インストール
- [Releases · lierdakil/pandoc\-crossref · GitHub](https://github.com/lierdakil/pandoc-crossref/releases) からダウンロードして、バイナリファイルを適切な場所に置く。
- パスを通すか、パスの通ったディレクトリに配置する。
使用方法
変換
- Pandoc の
–filter
で、pandoc-crossref を指定して、文書を変換する。
$ pandoc --filter pandoc-crossref INPUT.md -o OUTPUT.docx
markdown での使い方
- Figure (単体)
- 定義
![CAPTION](PATH){#fig:LABEL}
CAPTION
: Figure のキャプション- キャプションはデフォルトで、「Figure NUMBER: CAPTION」のように表示される。
NUMBER
は文章中で定義された通し番号が自動的に割り振られる。- Figure を 「Fig. NUMBER CAPTION」にしたり、「Figure NUMBER. CAPTION」にしたい場合は、後述の設定で調整する。
PATH
: Figure に用いる画像のパスLABEL
: 文章内で呼び出す際の名前
- 呼び出し
[@fig:LABEL]
- 上記の表記はデフォルトで、「Fig. NUMBER」と表示される。
- 複数の Figure を指定する場合は、セミコロンで区切る (例:
[@fig:A;@fig:B;@fig:C]
)。- 複数の Figure が指定された場合、「Figs. 1-3」のように Fig が複数形に、通し番号が範囲表記だったり、2 つの場合は and で繋げられたりする。
- 「Figs.」を「Figures」などにしたい場合は、後述の設定で調整する。
- 通し番号のみ (番号に続くアルファベットも含む) を呼び出したい場合は、@ の前に - を付ける (例:
[-@fig:LABEL]
→ 1a)。 - 一時的に接頭辞 (Fig. など) を変えたい場合は、代わりの接頭辞の後に
@
以降を指定する (例:[Prefix @fig:LABEL]
→ Prefix 1)
- Figure (複数)
- 同じ通し番号の複数の Figure で、内部で a、b、c、… のように区別される Figure の場合。
- 定義
::: {#fig:LABEL} ![](PATH_A){#fig:LABEL_A} ![](PATH_B){#fig:LABEL_B} CAPTION :::
LABEL
: 文章内で呼び出す際の Figure 全体の名前PATH_A
,PATH_B
: Figure に使用する画像のパスLABEL_A
,LABEL_B
: 文章内で呼び出す際の個別の名前CAPTION
: Figure 全体のキャプション- ここでは A と B ののみを例として挙げているが、PATH と LABEL の組み合わせを、スペースで区切って追加していく。
- 1 枚の画像内に複数の画像が入っている場合は、2 つ目以降の LABEL 欄に
width=0%
を加えて対応できる (例:![](PATH_B){#fig:LABEL_B width=0%}
)。
- 呼び出し
[@fig:LABEL]
- LABEL は LABEL でも良いし、各画像に付けられた LABEL (
LABEL_A
やLABEL_B
) でも良い。 - 各画像の LABEL の場合、定義した順に a、b、c、… が Figure の通し番号の後に付く (例: Fig. 1b)。
- 複数の Figure を指定する場合は、セミコロンで区切る (例:
[@fig:LABEL_A;@fig:LABEL_B]
→ Figs. 1a and 1b)。- 複数の Figure が指定された場合、「Figs. 1a, 1b and 1c」のように Fig が複数形になり、各項目がコンマと and で繋げられる。
- Table
- 定義
| HEADER1 | HEADER2 | HEADER3 | | :-----: | :-----: | :-----: | | VAL1 | VAL2 | VAL3 | | VAL4 | VAL5 | VAL6 | : CAPTION {#tbl:LABEL}
CAPTION
: Table のキャプション- キャプションはデフォルトで、「Table NUMBER: CAPTION」のように表示される。
- 呼び出し
[@tbl:LABEL]
- 上記の表記はデフォルトで、「tbl. NUMBER」と表示される。
- tbl. を 「Table NUMBER. CAPTION」にしたい場合は、後述の設定で調整する。
- その他の挙動 (接頭辞の取り扱いなど) は Figure と同じ。
- 設定
- 設定はヘッダに YAML 形式で記述する (あるいは引数等で YAML ファイルを与える)。
--- figureTitle: "Figure" figPrefix: - "Figure" - "Figures" figureTemplate: "**$$figureTitle$$ $$i$$$$titleDelim$$** $$t$$" tableTitle: "Table" tblPrefix: - "Table" - "Tables" tableTemplate: "**$$tableTitle$$ $$i$$$$titleDelim$$** $$t$$" titleDelim: "." subfigureTemplate: "**$$figureTitle$$ $$i$$$$titleDelim$$** $$t$$" subfigureRefIndexTemplate: "$$i$$$$suf$$$$s$$" tblPrefixTemplate: "$$p$$ $$i$$" lastDelim: " and " pairDelim: " and " refIndexTemplate: "$$i$$$$suf$$" ---
- Figure
- 画像の下のキャプションは、「Figure NUMBER.」のみ太字で表示され、以降のキャプションは通常の文字で表示される。
- 呼び出しは、Figure で表示される。
- Table
- 表の上のキャプションは、「Table NUMBER.」のみ太字で表示され、以降のキャプションは通常の文字で表示される。
- 呼び出しは、Table で表示される。