LaTeX to Typst Translation Guide

SkillDocs & knowledge

Translates LaTeX documents (.tex) to Typst (.typ), focusing on article-class documents. Use when asked to convert, port, migrate, or translate LaTeX to Typst. Covers document structure, text formatting, page layout, math equations and symbols, figures, tables, TikZ-to-CeTZ diagrams, bibliography, cross-references, footnotes, and code blocks. Includes comprehensive symbol mapping tables.

Use LaTeX to Typst Translation Guide in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add LaTeX to Typst Translation Guide and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the LaTeX to Typst Translation Guide skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

LaTeX to Typst Translation GuideStart free

What this skill tells your AI

The instructions your AI receives, as published by brycewang-stanford/auto-empirical-research-skills in skills/22-christopherkenny-skills/skills/latex-to-typst/SKILL.md and read by ahel’s review.

A comprehensive reference for converting LaTeX article-class documents to Typst.

When to Use This Skill

  • User asks to convert, port, or translate a .tex file to .typ
  • User wants to know the Typst equivalent of a LaTeX command
  • User is migrating an academic paper or report from LaTeX to Typst
  • User needs help with specific LaTeX environments in Typst

Quick Navigation: Use What Reference

TaskReference File
Overall document structure, preamble → set rules01-document-structure.md
Bold, italic, fonts, font sizes, colors02-text-formatting.md
Margins, page size, columns, headers/footers03-page-layout.md
\section, \subsection, numbering04-headings-sections.md
itemize, enumerate, description05-lists.md
Math mode, equations, aligned, matrices, operators06-math.md
Symbol table: arrows, Greek, operators, sets, logic07-math-symbols.md
\includegraphics, figure environment, subfigures08-figures.md
tabular, booktabs, tabularx, multirow/multicolumn09-tables.md
BibTeX, biblatex, natbib → bibliography, cite10-bibliography.md
\label, \ref, \eqref, \autoref11-cross-references.md
TikZ → CeTZ diagrams12-diagrams-cetz.md
verbatim, lstlisting, minted; footnotes, links13-misc.md

Key Conceptual Differences

Preamble → set and show Rules

LaTeX uses a \documentclass{article} preamble with \usepackage calls. Typst replaces this with set rules (for properties) and show rules (for transformations), placed at the top of the document.

% LaTeX
\documentclass[12pt,a4paper]{article}
\usepackage[margin=1in]{geometry}
\usepackage{fontenc}
\setmainfont{Times New Roman}
// Typst equivalent
#set page(paper: "a4", margin: 1in)
#set text(font: "Times New Roman", size: 12pt)

No \begin/\end Environments

Most LaTeX environments have direct Typst function equivalents. For example:

LaTeXTypst
\begin{equation}...\end{equation}$ ... $ (block, with space)
\begin{figure}...\end{figure}#figure(...)
\begin{tabular}...\end{tabular}#table(...)
\begin{itemize}...\end{itemize}- item (markup)

Content vs. Code Mode

In Typst, # switches from markup mode into code mode. Inside #{ } blocks or function arguments, you write code. Markup is the default.

Units

LaTeXTypstNotes
ptptSame
ememSame
cmcmSame
mmmmSame
ininSame
\textwidth100% (relative to container)—
0.5\textwidth50%—

Minimal Article Template

% LaTeX article
\documentclass[12pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage{amsmath}
\title{My Paper}
\author{Jane Doe}
\date{\today}
\begin{document}
\maketitle
\begin{abstract}
This paper...
\end{abstract}
\section{Introduction}
Hello world.
\end{document}
// Typst equivalent
#set page(margin: 1in)
#set text(size: 12pt)

#align(center)[
  = My Paper
  Jane Doe \
  #datetime.today().display()
]

#set par(justify: true)

*Abstract.* This paper...

= Introduction

Hello world.

For a more polished article template with abstract box, see 01-document-structure.md.

Workflow for Full Document Conversion

  1. Convert preamble → #set page(), #set text(), #set par() (see 03-page-layout.md, 02-text-formatting.md)
  2. Convert sectioning → =, ==, === (see 04-headings-sections.md)
  3. Convert math → inline $...$, block $ ... $ (see 06-math.md, 07-math-symbols.md)
  4. Convert figures → #figure(image(...), caption: [...]) (see 08-figures.md)
  5. Convert tables → #table(...) or #figure(table(...), ...) (see 09-tables.md)
  6. Convert bibliography → #bibliography("refs.bib") + @key citations (see 10-bibliography.md)
  7. Convert TikZ → #canvas({...}) with CeTZ (see 12-diagrams-cetz.md)
  8. Fix cross-references → <label> + @label (see 11-cross-references.md)

Signals

GitHub stars
4k
Forks
531
Last commit
Sep 2026
Advanced
Item type
skill
Key
latex-to-typst
Source
github.com/brycewang-stanford/auto-empirical-research-skills