【Typst】Quartoで論文を書く【PDF】

LaTeXからTypstに乗り換えてみませんか?

Typst
Quarto
R
公開

2025年10月21日

はじめに

以前TinyTeXを使ってRStudio×Quartoで論文を書く方法についてご紹介しました。

しかし、TinyTeXを使った方法はいくらTiny(軽量)とはいえLaTeX特有のエラーが発生することもあり、論文を書くとなると、どうせなら細かい設定をするためにローカルのTeXやOverleafで書くことが多いのではないかと思います1

そこで今回は、LaTeXも代わりうる新しい組版システムであるTypstを使ってQuartoで論文を書く方法をご紹介します。

また、英語論文のバージョンではありますが、Quarto拡張機能を作成し経済学論文のテンプレートも用意しましたので、併せてご紹介します。

Rの出力をシームレスにTypstに組み込むことが可能ですので、R(Python)ユーザーの方はぜひご活用ください。

Typstとは?

Typstは、新しいマークアップベースの組版システムで、オープンソースで提供されています。

基本的にはLaTeXと同様に、学術論文に適した高品質なPDFを生成することができますが、TypstにはLaTeXに比べていくつかの利点があります。

  • シンプルな文法: Typstの文法はLaTeXに比べて直感的で、学びやすいという特徴があります。
  • リアルタイムプレビュー: Typstの公式オンラインエディタはリアルタイムプレビュー機能を備えており、編集内容が即座に反映されるため、効率的に文書を作成できます。
    ※ただし、Quarto上ではリアルタイムプレビューは利用できません。
  • 高速なコンパイル: Typstは非常に高速なコンパイルを実現しており、LaTeXの数倍の速度でPDFを生成できます。

TypstにはOverleafのような公式オンラインエディタが提供されており、柔軟に文書を編集できます。ただし、Typst独自の記法を学ぶ必要があります。

一方で、Quartoを介してTypstを利用することで、Markdownベースの記述を保ちながらTypstの利点を活かすことが可能です。

繰り返しになりますが、特筆すべきはそのコンパイル速度です。LaTeXのコンパイル時間にストレスを感じている方は、Typstの速さにきっと驚くでしょう(ガチ)。🚀

QuartoでTypstを使う方法

デフォルトの設定でよければ、以下のようにYAMLヘッダーを設定するだけでTypstを利用できます。

---
title: "ドキュメントのタイトル"
author: "著者名"
date: 2025-10-21
format: typst
---

課題のレポートであればこれで十分なドキュメントを生成できるはずです。{tinytex}のようなパッケージのインストールも不要です。

Quarto拡張機能を使う

冒頭にも書きました通り、英語論文用のテンプレートであるQuarto拡張機能を作成しました。作成に当たっては、自分が修士論文をQuartoで書こうとしたときに対応できず挫折した部分をなるべく補うように努めました。

対応環境

はじめに拡張機能を使うための対応環境について説明します。

  • Quarto 1.8以上

Rを使っていればQuartoはデフォルトで使えるのですが、現在はバージョンが1.8にはなっていないと思います。 その場合は、Quartoの公式サイトから1.8以上をインストールしてください2

また、RStudioあるいはPositronの環境を想定しています。

拡張機能のインストール

拡張機能は以下のコマンドでインストールできます。作業フォルダを開いた状態で実行してください。

ターミナル
quarto install extension yo5uke/econ-a4

実行するとYse/Noの確認が求められますので、Yを入力して進めてください。最後の「? View documentation using default browser? (Y/n)」はnでもよいのですが、ドキュメントが見れますのでYから使い方を確認してください。

拡張機能の利用

拡張機能を利用するには、YAMLヘッダーのformatフィールドを以下のように設定します。

format:
  econ-a4-typst: default

これで、経済学論文用のA4サイズのTypstテンプレートが利用できます。

使い方はGitHubリポジトリのREADMEにも記載していますので、そちらもご覧ください。

サンプルコード

以下は、拡張機能を利用したサンプルコードです。

---
title: "Writing Papers with Quarto and Typst"
author: 
  - name: Your Name
    affiliation: Your Affiliation
    email: your-address@example.com
date: 2025-10-21
date-format: long
abstract: |
  This is a sample abstract.
keywords: [Quarto, Typst, Academic Writing, PDF Generation]
format:
  econ-a4-typst:
    toc: true
    number-sections: true
---

## Introduction

@notsu_indirect_2025

This is a sample introduction text.

## Insert Figures

```{r}
#| echo: false

library(ggplot2)

# Create a simple plot
ggplot(mtcars, aes(x = wt, y = mpg)) +
  geom_point() +
  labs(
    title = "Scatter plot of MPG vs Weight",
    x = "Weight (1000 lbs)",
    y = "Miles per Gallon"
  )
```

## Insert Tables

```{r}
#| echo: false

library(knitr)

# Create a simple table
kable(head(mtcars), caption = "Table 1: Sample of mtcars dataset")
```

```{=typst}
#bibliography("references.bib")
```

少しダミーテキストで文量を増やしていますが、出力結果はこちらからご確認ください。

参考文献のセクションについては現状Typstチャンク内で指定する必要がありますので、例のように記述してください。見出しも自動で生成されます。

もちろんRコードを使って図や表を挿入することも可能です。分析の結果を出力することなく挿入できるため、論文作成が非常に楽になります(もちろんレポートも!)。

今後の展望

今回は英語論文用のテンプレートを作成しましたが、今後は日本語でも使えるテンプレートを作成したいと考えています。

やはり海外誌に出すような細かい設定を行う論文はQuartoを介さずTypstやLaTeXで書くことが多いと思いますが、学位論文はこの拡張機能で十分対応できるようになればと考えています(とはいえ将来は細かい設定も詰めたい…!)。

テンプレートの限界についてはREADMEにも記載していますので、ご覧ください。

おわりに

今回はQuartoの記述方法自体はほぼ説明しませんでしたが、Typst(&作成したテンプレート)を使うことで、MarkdownベースでTypstの利点を享受できるということをお伝えできたかと思います。

ぜひTypstを使って快適な論文執筆ライフを送りましょう!🚀

  1. かくいう僕も修士論文はローカルのTeXを使って書きました。↩︎

  2. 2025/10/21時点では1.8.5ですので、表示されているものをインストールすればOKです。↩︎