22 人が閲覧(直近 30 日) 開発

Typst(タイプスト)とは?LaTeXとの違い・使い方・料金を初心者向けに解説

Typst(タイプスト)とは?LaTeXとの違い・使い方・料金を初心者向けに解説

Typst(タイプスト)は、Markdownに近い記法で論文・レポート・スライドのPDFを作れるマークアップ組版システムです。LaTeXの代替として作られ、コンパイラはRust製・Apache-2.0ライセンスで無料。ブラウザで動くWebエディタ「typst.app」もあります。この記事では、Typstの正体と読み方、LaTeXとの違い、始め方、数式・参考文献・図の書き方、LaTeXやMarkdownからの移行、日本語で使うときの設定、そして採用を見送るべき場面までを、最新の0.15.1で実際にコンパイルした例で説明します。

まとめ

Typstは「LaTeXほどの準備なしに、LaTeX並みの数式と組版をPDFで得る」ための道具です。判断に必要な要点は次のとおりです。

  • 読み方は「タイプスト」。ベルリン工科大学の2人の修士研究から生まれ、2023年3月にオープンソース化されました。
  • 2026年10月時点の最新は0.15.1(2026年7月17日公開)。1.0前なので、版が上がると書き方が変わることがあります。
  • LaTeXとの違いは、記法が短いこと、差分コンパイルでプレビューがほぼ即時に更新されること、エラーの場所と直し方が具体的に出ること。代わりにLaTeXのソースやパッケージはそのまま使えません。
  • 数式は \frac や \sqrt の代わりに a/b・sqrt(x) と書きます。参考文献はLaTeXの .bib ファイルをそのまま読み込めます。
  • 始め方は2つ。typst.appならインストール不要、ローカルなら brew install typst などでCLIを入れて typst watch で書きます。
  • 論文誌がLaTeXソースでの投稿を求める場合や、縦組みの書籍を作る場合は、LaTeXを選ぶ方が安全です。

Typstの正体:Rust製のマークアップ組版システム

Typstは、テキストファイル(拡張子 .typ)に本文と書式指定を書き、コンパイラでPDFなどに変換する「組版システム」です。WordのようなWYSIWYGではなく、LaTeXと同じくソースから文書を生成する方式で、見出し番号・目次・相互参照・参考文献・数式の番号付けを自動で処理します。

LaTeXとの設計上の違いの一つは、書式指定とスクリプトを統一した言語で記述できる点です。LaTeXはTeXのマクロの上にパッケージを積み重ねて機能を足してきましたが、Typstは変数・関数・条件分岐・ループを持つスクリプト言語を組み込んでおり、テンプレートも同じ言語で書きます。

読み方「タイプスト」と開発の経緯

Typstは「タイプスト」と読みます。typeset(組版する)を思わせる綴りで、カタカナ表記も「タイプスト」が定着しています。「typist」「typest」と綴りを間違えやすいので、検索するときは注意してください。

開発者はLaurenz MädjeとMartin Haugの2人です。GitHubのリポジトリは2019年9月に作成され、2人はそれぞれ2022年にベルリン工科大学(TU Berlin)へ、Typstの設計(プログラム可能なマークアップ言語)と高速化(インクリメンタルコンパイル)をテーマにした修士論文を提出しています。2023年3月21日にコンパイラがGitHubでオープンソースとして公開され、同年に2人が創業したTypst GmbHが開発と運営を担っています。コンパイラ本体はApache-2.0ライセンスで無料です。GitHubのスター数は2026年10月時点で5万6千を超えています。

現行版0.15.1と「1.0前」の意味

2026年10月24日時点のGitHubのリリース一覧で確認できる最新版は0.15.1(2026年7月17日)で、その前が0.15.0(2026年6月15日)、0.14.2(2025年12月12日)です。0.15.0では可変フォント(バリアブルフォント)に対応し、実験的なHTML出力で数式をそのまま出せるようになりました。

バージョンが1.0に届いていないことは、実務では「マイナー版の更新で書き方が変わりうる」という意味です。共同で使う文書では、typst --version で版を揃え、使うパッケージもバージョン付きで固定しておくと、他人の環境でだけ崩れる事故を防げます。

LaTeXとの違い:記法・速度・エラー・互換性

LaTeXから乗り換えるかどうかは、次の表の観点で判断できます。

観点 Typst LaTeX
太字 *太字* \textbf{太字}
見出し = 見出し \section{見出し}
書式の一括指定 #set と #show プリアンブルとパッケージ
コンパイル 差分コンパイル(ほぼ即時) 全体を再コンパイル
環境構築 単一バイナリ/Webアプリ TeX Live等(小規模構成も可能)
相互参照 1回のコンパイルで解決 複数回のコンパイルが必要な場合あり
参考文献 .bib をそのまま読める BibTeX/biber
ソース互換 LaTeXと非互換 既存資産が膨大

公式のGuide for LaTeX usersは、LaTeXのコンパイルが秒単位かかるのに対しTypstは通常ミリ秒単位で終わり、Webアプリでもコンパイラでも即時プレビューができると説明しています。速度の差は、前回の結果を再利用して変わった部分だけを組み直す設計(インクリメンタルコンパイル)から来ています。typst watch で監視している間は、保存のたびに変更箇所だけが再計算されます。

同じ文書をLaTeXとTypstで書き比べ

見出し番号・数式番号・相互参照を持つ短い文書をTypstで書くと、次のようになります。

#set text(lang: "ja", font: "Hiragino Mincho ProN")
#set heading(numbering: "1.1")
#set math.equation(numbering: "(1)")

= 目的
本稿では *Typst* の使い方を示す。@eq1 を参照。

$ E = m c^2 $ <eq1>

同じ内容をLaTeX(LuaLaTeX)で書くと、文書クラスとパッケージの宣言、\begin{document} が必要です。

\documentclass{ltjsarticle}
\usepackage{amsmath}
\begin{document}
\section{目的}
本稿では \textbf{Typst} の使い方を示す。式~\eqref{eq1} を参照。
\begin{equation}
  E = mc^2 \label{eq1}
\end{equation}
\end{document}

Typst版は lang: "ja" を指定しているので、参照 @eq1 は自動で「式 1」と日本語で出力されます。

エラーメッセージの具体性

上の例(ファイル名 main.typ)から3行目の #set math.equation(numbering: "(1)") を消してコンパイルすると、Typstは次のエラーを出して止まります。

error: cannot reference equation without numbering
  ┌─ main.typ:5:21
  │
5 │ 本稿では *Typst* の使い方を示す。@eq1 を参照。
  │                                  ^^^^
  │
  = hint: you can enable equation numbering with `#set math.equation(numbering: "1.")`

ファイル名・行・列と、直すための具体的なコードまで示されます。この例では、番号付けの不足という原因と、追加すべき設定をエラーメッセージから確認できます。

Typstの始め方:Webアプリとローカル環境

最初の1本を書くだけなら、インストール不要のtypst.appが手早く、手元のエディタやGitで管理したいならCLIを入れます。

typst.appの料金と無料でできる範囲

typst.appはブラウザだけで書けるWebエディタで、左にソース、右にプレビューが並び、入力したそばから結果が更新されます。料金プランは3つです。

プラン 料金(米ドル表示) ストレージ 1プロジェクトのファイル数
Typst Free $0 200MB 100まで
Typst Pro 月$7.99(年払いで14%引き) 2GB 1,000まで
Typst On-Premises 個別見積もり(5名から) 自社運用 –

2026年10月時点のtypst.appの料金ページでは、無料のTypst Freeでもプロジェクトの作成・編集、共同編集(共有)、Universeのパッケージとテンプレート、LaTeX・Word・Markdownなどからのファイル変換、コンパイルエラーの修正支援(Assists)が使えます。Proで増えるのは、コメントによるレビュー、非公開パッケージ、GitHub・GitLabとの同期(実験的機能)、ZoteroやMendeleyとの文献同期、スライドの発表モード、フォルダ整理などです。料金は国を選ぶと現地通貨で表示されるので、契約前に日本の価格を確認してください。個人で試す段階ならFreeで不足はありません。

CLIのインストールとcompile・watch

CLIは単一の実行ファイルで、TeX Liveのような大きな配布物は要りません。公式READMEのInstallationに載っている入れ方は次のとおりです。

# macOS
brew install typst
# Windows
winget install --id Typst.Typst
# Linux(Snap)
sudo snap install typst
# Rust環境がある場合
cargo install --locked typst-cli

Linuxでは、ディストリビューションごとのパッケージ(READMEはRepologyの一覧を案内)や、リリースページの配布バイナリを PATH の通った場所に置く方法もあります。READMEは「パッケージマネージャーの版は最新リリースより遅れることがある」と注記しているので、入れた直後に typst --version で版を確認してください。

入れたら typst compile main.typ でPDFを作ります。書いている間は typst watch main.typ を起動しておくと、保存するたびにPDFが更新されます。テンプレートから始めるときは typst init @preview/charged-ieee のようにUniverseのテンプレート名を渡すと、雛形一式がフォルダに展開されます。ほかに、使えるフォントを一覧する typst fonts、公式の配布バイナリを更新する typst update があります。Homebrewなどのパッケージマネージャーで導入した場合は、その更新機能を使います。

エディタ連携:VS CodeとTinymist

ローカルで書くなら、VS Codeの拡張機能「Tinymist」を入れます。コミュニティが開発するTypst用の言語サーバー(LSP)で、Visual Studio MarketplaceとOpen VSXで配布されており、補完・エラー表示・エディタ内プレビューを提供します。2026年10月16日にv0.15.10が公開されています。言語サーバーなのでNeovimなど他のLSP対応エディタからも使えます。Web版と同等の「書きながら見る」環境を手元で再現できます。

Typstの基本の書き方:マークアップ・set/showルール・数式・参考文献

Typstのソースは、Markdown風の「マークアップ」、# で始まる「コード」、$ で囲む「数式」の3つのモードで書きます。

見出し・太字・箇条書きのマークアップ

= 大見出し
== 中見出し

*太字* と _強調(斜体)_ と `インラインコード`

- 箇条書き
- もう1つ

+ 番号付きリスト
+ 2つめ

段落は空行で区切ります。

Markdownとの違いで間違えやすいのは、見出しが # でなく = であること、太字が ** でなく * 1つであること、番号付きリストが + であることの3点です。Typstでは # はコードを呼び出す記号として予約されています。

setルールとshowルールによる体裁の一括指定

文書全体の見た目は、要素ごとの既定値を変える #set と、要素の表示方法を差し替える #show で指定します。

#set page(paper: "a4", margin: 2cm)
#set text(lang: "ja", size: 10.5pt)
#set heading(numbering: "1.")

// レベル1の見出しだけ青にする
#show heading.where(level: 1): set text(fill: blue)
// 本文中の「Typst」を自動で太字にする
#show "Typst": strong

// 自作の関数で注記ボックスを作る
#let note(body) = block(fill: luma(235), inset: 8pt, radius: 4pt, body)
#note[ここは注記です。]

LaTeXでプリアンブルやパッケージが担っていた役割は、ほぼこの2つのルールと #let による関数定義で書けます。テンプレートも、これらをまとめた関数にすぎません。

数式・表・図と相互参照

数式は $ で囲みます。$ の直後と直前に空白を入れると別行立ての数式、入れなければ文中の数式です。

文中の式 $x = (-b plus.minus sqrt(b^2 - 4a c)) / (2a)$ です。

$ sum_(k=1)^n k = (n(n+1)) / 2 $

#figure(
  table(
    columns: 2,
    [項目], [値],
    [版], [0.15.1],
  ),
  caption: [表の例],
) <tab1>

@tab1 に版を示す。

<tab1> でラベルを付け、@tab1 で参照すると番号は自動で振られます。表は table、画像は image("図.png") を figure で包めば、キャプションと番号が付きます。

LaTeXの数式コマンドとの対応表(sqrt・sum・±など)

Typstの数式はバックスラッシュを使わず、記号名をそのまま書き、修飾は「.」でつなぎます。下付き・上付きの _ と ^ はLaTeXと同じですが、複数文字をまとめる括弧は {} でなく () です。よく使うものを、0.15.1で出力を確認した書き方で並べます。

表示 LaTeX Typst
分数 \frac{a}{b} a/b または frac(a, b)
平方根 \sqrt{x} sqrt(x)
3乗根 \sqrt[3]{x} root(3, x)
総和 \sum_{k=1}^{n} sum_(k=1)^n
積分 \int_0^\infty f(x)\,dx integral_0^infinity f(x) dif x
極限 \lim_{n \to \infty} lim_(n -> infinity)
± \pm plus.minus
掛け算の記号 \times・\cdot times・dot
≤・≠ \leq・\neq <=・!=
差集合 \setminus without
実数全体 \mathbb{R} RR
ギリシャ文字 \alpha alpha
行列 \begin{pmatrix} mat(1, 2; 3, 4)
数式中の文字 \text{if} "if"

注意したいのは、ab のように文字を続けると1つの名前として解釈され、unknown variable: ab というエラーになる点です。積のつもりなら a b と空白を入れます。上の例で 4a c と書いているのはこのためです。

手持ちのLaTeX数式を書き直す時間がないときは、Universeのmitex(0.2.7・Apache-2.0)でLaTeXの記法のまま埋め込めます。

#import "@preview/mitex:0.2.7": mitex, mi

#mitex(`\frac{-b \pm \sqrt{b^2-4ac}}{2a}`)
文中では #mi(`\sum_{k=1}^{n} k`) のように書けます。

移行の足がかりとしては便利ですが、Typstの記法に慣れたら書き直す方が、エラー表示や補完の恩恵を受けられます。

参考文献:.bibファイルの読み込みと引用スタイル

参考文献は #bibliography にファイルを渡し、本文から @キー で引用します。LaTeXで使っていた .bib ファイル(BibLaTeX形式)がそのまま読めるほか、Typst独自のYAML形式(Hayagriva)も使えます。

次の例は2つのファイルに分けて保存します。前半の文献データはrefs.bib、後半のTypstコードは同じフォルダのmain.typに保存してください。ファイル名を示すコメント行は保存する内容に含めません。

// refs.bib
@book{knuth1984,
  author    = {Knuth, Donald E.},
  title     = {The {\TeX}book},
  publisher = {Addison-Wesley},
  year      = {1984}
}

// main.typ
#set text(lang: "ja", font: "Hiragino Mincho ProN")
TeXの設計は @knuth1984 に詳しい。
#bibliography("refs.bib", style: "ieee")

0.15.1でコンパイルすると、本文に「[1]」、末尾に「参考文献」という見出しと「D. E. Knuth, The TeXbook. Addison-Wesley, 1984.」が出力されます。見出しが日本語になるのは lang: "ja" の効果です。引用スタイルはCitation Style Language(CSL)で定義され、公式ガイドによればコンパイラには80以上のスタイルが組み込まれています。style に "apa" や "chicago-author-date" を指定するほか、学会配布のCSLファイルも読み込めます。

日本語で書くときの設定と制約

日本語文書では、最初に言語とフォントを指定します。言語を指定しないと、参照や図表のキャプションが英語(Figure・Equation)になり、フォントを指定しないと和文が既定フォントに含まれないため代替フォントで表示されます。

#set text(lang: "ja", font: ("Hiragino Mincho ProN"), size: 10.5pt)
#set par(justify: true, first-line-indent: (amount: 1em, all: true))

フォント名は typst fonts で表示される名前をそのまま書きます。例のヒラギノ明朝はmacOSの標準フォントなので、Windowsでは「Yu Mincho」などに置き換えます。OSが違うメンバーと同じ組み上がりにしたいなら、源ノ明朝などの同一のフォントファイルをプロジェクトに同梱し、本文の #set text(font: ...) も同梱したフォントの名前に揃えたうえで、typst compile --font-path fonts main.typ のように読み込み先を指定します。段落の字下げは、all: true を付けないと見出し直後の最初の段落には効きません(欧文組版の慣習に合わせた既定値のため)。

制約もあります。0.15.1時点で縦書きは標準機能に含まれず、Universeのbasho(0.1.0)などのパッケージで組みます。ルビも専用の構文がなく、rubbyなどのパッケージで補います。縦書き・ルビ・均等割りなど和文組版の詳細はTypstの縦書き・ルビ・和文組版の設定とパッケージの使い方にまとめています。

パッケージとテンプレート:Typst Universe

機能の追加は、公式のパッケージ置き場「Typst Universe」から行います。インストール作業は不要で、ソースに1行書くと初回コンパイル時に自動でダウンロードされます。@preview/名前:版 と版まで書くのが決まりで、これが前述の「版を固定する」運用にそのままつながります。2026年10月24日時点の公式インデックスには1,702のパッケージが登録され、そのうち867がテンプレートです。スライドを作るtouyingやpolylux、IEEE形式の論文テンプレートcharged-ieeeなどがよく使われます。

図・フローチャート:cetz・fletcher・Mermaid

図を描くパッケージは、用途で選びます。LaTeXのTikZに当たる汎用の描画はcetz(0.5.3)、ノードと矢印の図式はfletcher(0.5.8)、Mermaid記法をそのまま使いたいならmmdr(0.2.2)です。fletcherで矢印付きのフローチャートを描くと次のようになります。

#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge

#diagram(
  node-stroke: 0.6pt,
  node((0, 0), [原稿]),
  edge("-|>"),
  node((1, 0), [typst compile]),
  edge("-|>"),
  node((2, 0), [PDF]),
)

同じ図をMermaid記法で書くなら、mmdrに文字列で渡します。0.15.1で、3つの箱が矢印でつながった図が出力されることを確認しました。

#import "@preview/mmdr:0.2.2": mermaid

#mermaid("flowchart LR
  A[原稿] --> B[typst compile] --> C[PDF]")

Mermaidの既存ソースは、mmdrが対応する構文の範囲で流用できます。ただし、内部で使うmermaid-rs-rendererはMermaid JSの全機能には対応していないため、移行時に描画結果を確認してください。Mermaid記法そのものの書き方はMermaid記法の使い方とLive Editorでの作図で解説しています。数式をラベルに入れたり、配置を細かく調整したりするなら、Typstの数式がそのまま使えるfletcherやcetzが向いています。

LaTeX・Markdownからの移行と取り込み

既存の原稿をTypstに移すときは、元がLaTeXかMarkdownかで手段が変わります。

LaTeX原稿の移行:Pandocとtypst.appの取り込み

LaTeXのソースを自動で完全に変換する方法はありません。記法とパッケージの体系が別物のため、文書単位で書き直すのが基本です。下書きを作るなら、公式ガイドが案内しているとおりPandocで変換できます。

pandoc main.tex -o main.typ

同じ変換はtypst.appにも組み込まれていて、.tex ファイルをアップロードするとプロジェクトとして取り込めます。いずれも、独自マクロや複雑なパッケージを使った原稿は手直しが必要です。数式だけを先に移すなら、前述のmitexで埋め込む手もあります。

Markdownとの違いとcmarkerでの取り込み

Markdownの基本構文には、ページ設定・数式番号・相互参照・参考文献の管理機能はありません。ただし、Pandocなどの拡張や変換ツールを組み合わせれば、引用・参考文献などを扱えます。Typstは記法こそMarkdownに似ていますが、ページレイアウトまで指定して印刷品質のPDFを出す組版システムです。

手元のMarkdownをTypstの体裁で組みたいだけなら、書き換えずにUniverseのcmarker(0.1.10)で読み込めます。CommonMarkをTypst内で変換するパッケージで、表紙や体裁はTypst側で作り、本文はMarkdownファイルのまま保守できます。

#import "@preview/cmarker:0.1.10"

#set text(lang: "ja", font: "Hiragino Mincho ProN")
#cmarker.render(read("README.md"))

Markdownから一度だけ変換して以後はTypstで書くなら、pandoc README.md -o README.typ でTypstのソースに変換できます。Markdownを起点にPDFやdocxを作る方法全般はPandocによるMarkdownからのPDF変換で扱っています。

出力形式:PDF/A・PDF/UA・PNG・SVG・HTML

typst compile の出力形式は、0.15.1のCLIヘルプで pdf・png・svg・html・bundle の5つです。PDFは --pdf-standard で規格を指定でき、長期保存用のPDF/A(a-2b など)や、アクセシビリティ規格のPDF/UA-1(ua-1)を指定できます。PDF/UA-1出力には文書タイトルや画像・数式の代替テキストなどが必要で、不足するとコンパイルエラーになります。ただし、コンパイラでは検査できない要件もあるため、文書の言語指定や意味に沿った見出し構造なども確認してください。

typst compile --pdf-standard a-2b main.typ report.pdf
typst compile main.typ "page-{p}.png" --ppi 150

HTML出力は実験的な扱いで、--features html を付けないとhtml export is only available when `--features html` is passed というエラーで止まり、付けても do not rely on this feature for production use cases という警告が出ます。Webページの生成を主目的にするなら、現時点ではTypstを選ぶ理由は薄いと考えてください。

Typstを選ぶべきでない場面

記法の軽さに惹かれて移行したものの戻ることになる典型は、次の3つです。

投稿先がLaTeXソースを求める。LaTeXのクラスファイルを配布し、ソース一式での投稿を求める学会や論文誌では、TypstのPDFは投稿形式を満たせません。なおarXivは「TeX/LaTeXから作ったPDFは原則として受け付けない」としていますが、TeX以外のツールで作ったPDFでの投稿は認めているため、Typstで書いた論文をPDFで投稿すること自体は可能です。

縦組みの書籍や伝統的な和文組版が必須。bashoで縦書きの本文は組めますが、脚注・目次・ルビ・禁則の細かな調整まで含めた縦組みの書籍は、pLaTeX/LuaLaTeX(luatex-ja)の蓄積に及びません。

文書を何年も同じ環境で再生成する。1.0前のため、数年後に新しい版で古いソースがそのまま通る保証はありません。規程集やマニュアルのように長く保守する文書では、使った版のCLIを保存しておく運用が必要です。

投稿形式や縦組みが必須なら、要件を満たすLaTeXやWordを選んでください。長期保守が必要な場合は、Typstの実行環境と依存ファイルを保存・再現できることを採用条件にします。逆に、社内レポート、講義資料、自分で体裁を決められる技術文書、Markdownでは表現しきれない数式入りのドキュメントは、Typstの利点がそのまま効く領域です。LaTeXそのものの仕組みや読み方はLaTeXとは?読み方とTeXとの違いで確認できます。

よくある質問

Typstの読み方は?

「タイプスト」と読みます。綴りは typist(タイピスト)ではなく typst で、i が入りません。

Typstは無料で使えますか?

無料です。コンパイラ(CLI)はApache-2.0ライセンスのオープンソースで、Webエディタのtypst.appもFreeプラン(200MB・1プロジェクト100ファイルまで)なら無料で使えます。GitHub同期やコメント機能が必要な場合だけ、有料のTypst Pro(月$7.99)を検討します。

TypstはLinuxでも使えますか?

使えます。sudo snap install typst のほか、各ディストリビューションのパッケージやリリースページの配布バイナリで入ります。Dockerなら docker run ghcr.io/typst/typst:latest --help でインストールせずに動かせます。

Typstで日本語の縦書きはできますか?

0.15.1時点では標準機能に縦書きはなく、Universeのbashoパッケージで組みます。横書きの日本語文書は #set text(lang: "ja", font: ...) で問題なく作れます。

TypstをJavaScriptやブラウザから使えますか?

コミュニティ製のtypst.tsを使うと、WebAssembly化したTypstのコンパイラをブラウザやNode.jsから呼び出せます。npmの @myriaddreamin/typst.ts(2026年10月時点で0.7.0)として配布されています。公式のパッケージではないので、版の追随は公式CLIより遅れることがあります。

関連記事

お気に入りに入れた記事の一覧

この記事は以下の記事からリンクされています

資料請求

今日のトレンド記事 直近 24 時間で、いつもより多く読まれている記事

  1. 2026.07.21 テックブログ Apache Tomcatの脆弱性一覧【2026年10月】最新版11.0.27・10.1.61・9.0.123とCVE-2026-59083ほかの影響確認・対応手順
  2. 2026.10.22 テックブログ Tomcatバージョン一覧とサポート期限【2026年10月】9.0系は2027年3月末で終了・9.1系と11.0系への移行判断
  3. 2026.10.21 テックブログ NEC委託先の不正アクセスとは|顧客システム暗号化・情報漏えいの経緯と委託元が点検する正規アカウント
  4. 2026.05.15 テックブログ scrcpyの最新版は5.0|ハードウェアデコード対応とインストール・使い方【2026年10月】
  5. 2026.10.21 テックブログ ふるさとチョイス不正アクセスで445万件流出:対象確認・パスワード変更と再開時期

RELATED POSTS 関連記事

目次