1  Quarto の使い方

1.1 Quarto とは

Quartoはプログラミングコードを含んだレポートやスライドを作成するためのツールです. これによって, 研究者が再現可能なドキュメントを簡単に作成できるようになっています. Quartoは, .qmd という拡張子のファイルにあるコードを実行し, Markdown (.md) 形式のドキュメントを生成します. さらに, pandoc というツールを使って, HTMLやPDF, Microsoft Word, Typstなどの様々な形式に変換することができます.

1.2 Markdown 記法

コードの実行については後の章で説明しますが, まずはMarkdown記法について簡単に説明します.

Heading (見出し)

Input

# Heading 1

## Heading 2

### Heading 3

Output

Heading 1

Heading 2

Heading 3

# の個数で見出しのレベルが決まります. HTMLのルールとして, h1 はそのページのタイトルに使うことが推奨されているため, 通常は h2 以降を見出しとして使います. Quartoの場合は, 後に紹介するYAMLフロントマターで指定したタイトルが h1 として扱われるため, 基本的には h2 以降を使ってください.1

改行とパラグラフ

アカデミックな文章では, 改行は段落の区切りを意味します. Markdownでは, パラグラフを明示的に区切るために, 空行を入れる必要があります. 逆に, markdown上で改行しているだけでは, 出力上では改行されません.

Input

吾輩は猫である.
名前はまだない.

どこで生れたかとんと見当がつかぬ.

Output

吾輩は猫である. 名前はまだない.

どこで生れたかとんと見当がつかぬ.

強調

Markdownでは必要最小限の以下の三つの装飾が用意されています.

Input

**太字** か __太字__ と書きます.

*斜体* か _斜体_ と書きます.

***太字かつ斜体*** か ___太字かつ斜体___

~~打ち消し線~~ はあまり使いません.

Output

太字太字 と書きます.

斜体斜体 と書きます.

太字かつ斜体太字かつ斜体

打ち消し線 はあまり使いません.

リンク

Input

[Google](https://google.com) へのリンク

Output

Google へのリンク

箇条書き

番号付きでないものは -* を使って箇条書きにできます. ネストも可能です.

Input

- 項目1
- 項目2
    - 項目2.1
    - 項目2.2
- 項目3

Output

  • 項目1
  • 項目2
    • 項目2.1
    • 項目2.2
  • 項目3

番号つきのものは, 数字を使います. なお, 全ての行で 1. と書いても, 出力上では正しい番号になります.

Input

1. 項目1
1. 項目2
    1. 項目2.1
    1. 項目2.2
1. 項目3

Output

  1. 項目1
  2. 項目2
    1. 項目2.1
    2. 項目2.2
  3. 項目3

図の挿入

Input

![図のタイトル](path/to/image.png)

Output

図のタイトル

図のタイトル

ここでパスという概念が重要になります. Quartoでは, ドキュメントのルートディレクトリを基準にして画像ファイルを指定します. 基本的には, .qmd ファイルと同じ階層に img というフォルダを作り, そこに画像ファイルを入れるのが一般的です. 例えば, report.qmd と同じ階層に img/hokusai_kanagawa.jpg というファイルがある場合は, ![図のタイトル](img/hokusai_kanagawa.jpg) と書くことで画像を挿入できます.

表の挿入

Input

| Default | Left | Right | Center |
|---------|:-----|------:|:------:|
| 12      | 12   |    12 |   12   |
| 123     | 123  |   123 |  123   |

: 表のタイトル

Output

表のタイトル
Default Left Right Center
12 12 12 12
123 123 123 123

Markdownでは, |- を使って表を作ることができます. さらに, : を使うことで, 列の位置を指定することもできます. デフォルトでは, 列は全て左寄せになりますが, :--- と書くと左寄せ, ---: と書くと右寄せ, :---: と書くと中央寄せになります. GUIツールで表を作ってmarkdwon形式でエクスポートするサービスとして, Tables Generator などがあります.

1.3 \(\LaTeX\) Math 記法

Markdownでは \(\LaTeX\) という組版ソフトの数式記法を使って数式を表現することができます. 数式は, $...$ で囲むとインライン数式, $$...$$ で囲むとブロック数式 (改行して中央揃え) になります.

Input

$e^{i\pi} + 1 = 0$ は最も美しい数式だ.

Output

\(e^{i\pi} + 1 = 0\) は最も美しい数式だ.

ラマヌジャンの円周率公式は次の通り:

$$
\frac{1}{\pi}=\frac{2 \sqrt{2}}{99^2}
\sum_{n=0}^{\infty} \frac{(4 n)!}{(n!)^4}
\frac{26390 n+1103}{396^{4 n}}
$$

ラマヌジャンの円周率公式は次の通り:

\[ \frac{1}{\pi}=\frac{2 \sqrt{2}}{99^2} \sum_{n=0}^{\infty} \frac{(4 n)!}{(n!)^4} \frac{26390 n+1103}{396^{4 n}} \]

1.4 Quarto 記法

ここからは Quarto独自の記法についての説明です. 引用と文献情報については Chapter 2 で説明します.

Front Matter

---
title: タイトル
author: 著者名
date: 2026-04-01
format: typst
---

ここから本文

Quartoのドキュメントでは, 冒頭に --- で囲まれたYAML形式のフロントマターを置くことができます. ここには, ドキュメントのタイトルや著者名, 日付などのメタデータを記述することができます. また, format というフィールドで, 出力形式を指定することもできます. 例えば, format: typst と書くと, Typst形式で出力されるようになります.

相互参照 (Cross Reference)

スライドでは必須ではありませんが, レポートなどを書く場合は, 図表番号や節番号を自動で管理できると便利です. Quartoでは, fig-xxxx, tbl-xxx, sec-xxx などの特別なラベルを貼ることで, それらの番号を自動で管理することができます.

![神奈川沖浪裏](img/hokusai_kanagawa.jpg){#fig-kanagawa}

@fig-kanagawa は葛飾北斎の有名な浮世絵である.
Figure 1.1: 神奈川沖浪裏

Figure 1.1 は葛飾北斎の有名な浮世絵である.

| fruit  | price  |
|--------|--------|
| apple  | 2.05   |
| pear   | 1.37   |
| orange | 3.09   |

: Fruit prices {#tbl-fruit}

@tbl-fruit は果物の値段を表している.
Table 1.1: Fruit prices
fruit price
apple 2.05
pear 1.37
orange 3.09

Table 1.1 は果物の値段を表している.

基本的には, 特別な prefix (fig-, tbl-, sec- など) をつけたラベルを {#label} という形式で指定し, 本文中では @label と書くことで, その要素の番号を自動で参照することができます. その他の要素 (式や命題など) も同様の方法で参照できるので Quartoのドキュメント を参照してください.

1.5 演習

Tip演習: はじめてのQuarto
  1. 適当な場所に演習用のフォルダを作ってください (例: exercise).
  2. 01-exercise.qmd をダウンロードして, そのフォルダに入れてください.
  3. VSCodeで演習用のフォルダを開いて, 01-exercise.qmd をコンパイルしてみてください. うまくいけば, report.pdf というファイルが生成されるはずです.
  4. 01-exercise.qmd を開いて, 中に書かれている指示に従ってレポートを作成してください.

  1. 論文の場合は, h1 を節ごとに使うこともありますが, その場合はQuartoが##h1 に自動で変換するため, 基本的には ## 以降を見出しとして使うと覚えておくと良いでしょう.↩︎