ツール:pandoc:pandoc-crossref

pandoc-crossref

  • Figure や Table、セクションの番号管理や引用をするPandoc フィルタ
  1. [Releases · lierdakil/pandoc\-crossref · GitHub](https://github.com/lierdakil/pandoc-crossref/releases) からダウンロードして、バイナリファイルを適切な場所に置く。
  2. パスを通すか、パスの通ったディレクトリに配置する。

変換

  • 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_ALABEL_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 で表示される。
  • ツール/pandoc/pandoc-crossref.txt
  • 最終更新: 2024/02/07 15:17
  • by mumeiyamibito