Typst je moderný systém na sadzbu správ, vedeckých článkov, poznámok a ďalších štruktúrovaných dokumentov. Podobne ako LaTeX vytvára uhladené PDF súbory z obyčajných textových súborov. Na rozdiel od LaTeXu má kompaktnú syntax, rýchle náhľady a skriptovací jazyk, ktorý pôsobí ako prirodzená súčasť dokumentu.
Namiesto toho, aby sme sa tú istú syntax učili cez množstvo malých príkladov, začneme jedným kompletným dokumentom. Potom sa zameriame na funkcie, vďaka ktorým je Typst obzvlášť užitočný: programovanie, načítanie dát zo súborov, automatické odkazy, natívnu grafiku, globálne štýlovanie a znovupoužiteľné moduly.
Začnime jedným kompletným dokumentom
Praktický úvodný príklad
Vytvorte súbor s názvom main.typ:
#set heading(numbering: "1.")
= My First Report
Typst combines readable markup with professional output.
== Highlights
- Clean headings and lists
- *Bold* and _italic_ text
- Inline math: $ a^2 + b^2 = c^2 $
#figure(
table(
columns: 2,
inset: 6pt,
stroke: rgb("#d1d5db"),
[*Tool*], [*Use case*],
[Typst], [Reports],
[Markdown], [Notes],
),
caption: [A small comparison table],
)Tento príklad už pokrýva základné prvky:
- nadpisy sa začínajú znakmi
=, - položky zoznamu sa začínajú znakom
-, - text možno štýlovať značkami
*bold*a_italic_, - matematika sa zapisuje medzi znaky
$, - funkcie ako
tableafigurevytvárajú bohatšie prvky dokumentu, - znak
#prepína zo značkovacieho jazyka do kódu Typstu.
Vyberte si spôsob, ako začať
- Použite webovú aplikáciu. Otvorte typst.app, vytvorte projekt a vložte úvodný príklad. Náhľad PDF sa bude aktualizovať počas písania.
- Nainštalujte kompilátor. Postupujte podľa oficiálnej stránky inštalácie a potom skompilujte
main.typz terminálu:
typst compile main.typPočas úprav použite režim sledovania, aby sa PDF automaticky znovu zostavovalo:
typst watch main.typVo Windowse je krátky inštalačný príkaz winget install typst. V macOS použite brew install typst.
Pridajte bibliografiu
Vytvorte works.bib:
@article{typst-paper,
author = {Taylor, Alex},
title = {A Modern Typesetting Workflow},
journal = {Document Systems Review},
year = {2026}
}Potom citujte záznam pomocou @typst-paper a pridajte vygenerovaný zoznam literatúry:
= Research Notes
Typst keeps citations and references together. @typst-paper
#bibliography("works.bib", style: "ieee")Typst podporuje aj svoj natívny bibliografický formát Hayagriva. Predvolene sa zobrazujú iba citované záznamy, takže zoznam literatúry zostáva synchronizovaný s dokumentom.
Čím je Typst odlišný
Dokumenty sú programovateľné
Typst obsahuje premenné, funkcie, cykly a podmienky. Môžete vytvoriť znovupoužiteľný vizuálny komponent a generovať obsah z dát bez toho, aby ste opustili dokument:
#let badge(name, score) = block(
fill: rgb("#eff6ff"),
stroke: rgb("#93c5fd"),
inset: 8pt,
radius: 4pt,
[*#name* - #score points],
)
#for (name, score) in (
("Ada", 92),
("Grace", 88),
("Linus", 84),
) [
#badge(name, score)
#v(4pt)
]Rovnaký prístup funguje pri opakovaných častiach správ, faktúrach, spätnej väzbe od študentov alebo pri akomkoľvek dokumente zostavenom zo štruktúrovaného obsahu.
Čítanie štruktúrovaných dát zo súborov
Dokumenty často závisia od externých dát. Typst dokáže priamo načítať súbory CSV, JSON, YAML, XML a obyčajné textové súbory. Vytvorte napríklad sales.csv:
January,128
February,164
March,193Potom ho vyrenderujte ako tabuľku:
#let sales = csv("sales.csv")
= Sales Report
#table(
columns: 2,
inset: 7pt,
stroke: rgb("#d1d5db"),
table.header([*Month*], [*Sales*]),
..sales.flatten(),
)Vďaka tomu zostáva obsah oddelený od prezentácie. Aktualizujte dátový súbor, znovu ho skompilujte a PDF sa automaticky prispôsobí.
Obrázky a odkazy zostávajú synchronizované
Typst za vás čísluje obrázky a rieši odkazy. Za obrázok pridajte označenie a odkazujte naň pomocou @label:
As shown in @revenue, figures get automatic numbers and references.
#figure(
rect(
width: 80%,
height: 24mm,
fill: gradient.linear(rgb("#dbeafe"), rgb("#bfdbfe")),
radius: 4pt,
align(center + horizon)[*Quarterly revenue*],
),
caption: [Revenue overview],
) <revenue>Rovnaký systém označení funguje aj pre sekcie, rovnice, tabuľky a ďalšie prvky dokumentu.
Vykresľovanie matematických funkcií
Balíky Typstu dokážu rozšíriť jazyk o špecializované nástroje. Pomocou simple-plot definujete matematickú funkciu a priamo vyrenderujete jej graf:
#import "@preview/simple-plot:0.3.0": plot
#let f(x) = calc.sin(x)
#figure(
plot(
xmin: -2 * calc.pi,
xmax: 2 * calc.pi,
ymin: -1.5,
ymax: 1.5,
width: 10,
height: 5,
show-grid: "major",
(fn: f, stroke: rgb("#2563eb") + 1.5pt, label: $f(x) = sin(x)$),
),
caption: [The function $f(x) = sin(x)$],
)Balík sa stará o osi, čiary mriežky, popisy a vzorkovanie. Zmeňte f, rozsahy alebo štýlovanie a vytvoríte ďalší graf.
Globálne štýlovanie sémantických prvkov
Pravidlá zobrazenia umožňujú prispôsobiť, ako sa určitý druh prvku vykreslí všade v dokumente:
#show heading: it => block(
fill: rgb("#eff6ff"),
stroke: rgb("#93c5fd"),
inset: 8pt,
radius: 4pt,
it,
)
= Styled Heading
Show rules let you style semantic elements consistently.Toto je jedna z najsilnejších myšlienok Typstu: obsah zostáva sémantický, zatiaľ čo pravidlá prezentácie zostávajú znovupoužiteľné.
Rozdelenie znovupoužiteľných komponentov do modulov
Keď dokument rastie, presuňte spoločné pomocné prvky do samostatných súborov. Vytvorte helpers.typ:
#let callout(body) = block(
fill: rgb("#ecfdf5"),
stroke: rgb("#6ee7b7"),
inset: 9pt,
radius: 4pt,
body,
)Importujte a použite pomocný prvok v main.typ:
#import "helpers.typ": callout
= Shared Components
#callout[
This component lives in another file and can be reused throughout the project.
]Moduly umožňujú prakticky zdieľať štýly, komponenty a šablóny dokumentov medzi viacerými súbormi.
Vytváranie prezentácií
Typst je užitočný aj pri technických prezentáciách. Snímky môžete vytvárať ručne alebo použiť balíky ako touying. Touying pridáva témy, snímky založené na nadpisoch, postupné odhaľovanie obsahu a poznámky pre rečníka, pričom stále ponecháva k dispozícii bežný značkovací jazyk Typstu, matematiku a nástroje na rozloženie.
#import "@preview/touying:0.7.3": *
#import themes.simple: *
#show: simple-theme.with(aspect-ratio: "16-9")
== Typst for technical talks
#grid(
columns: (1fr, 1fr),
gutter: 18pt,
[
*One source, many outputs*
- Reusable themes
- Mathematical notation: $ integral_0^1 x^2 dif x = 1 / 3 $
- Fast PDF export
#uncover("2-")[- Incremental reveals]
],
[
#image("workflow.jpg", width: 100%, height: 72mm, fit: "cover")
#v(6pt)
#text(size: 13pt, fill: rgb("#475569"))[
Code, data, documents, and slides in one reproducible workflow.
]
],
)
#speaker-note[
Mention that the final bullet is revealed after the first click.
]Pridajte ilustráciu ako workflow.jpg vedľa zdrojového súboru Typstu. Táto jediná snímka ukazuje hlavné stavebné prvky: tému, pomer strán 16:9, tvorbu snímok na základe nadpisov, stĺpce, umiestnenie a orezanie obrázka, matematiku, prekrytia pomocou #uncover a poznámky pre prezentujúceho. Typst Pro má aj vstavaný prezentačný režim so zobrazením pre rečníka, časovačom, indikátorom priebehu, nástrojmi ukazovateľa a kreslením. Oficiálna aplikácia však v prezentačnom režime momentálne nesprístupňuje poznámky pre rečníka, takže poznámky sú užitočné najmä v prezentačných pracovných postupoch kompatibilných s Touyingom.
Kam pokračovať ďalej
Keď sa s úvodným dokumentom oboznámite, najlepším miestom na ďalšie skúmanie je oficiálna referenčná dokumentácia:
- Skriptovanie pre premenné, funkcie, cykly a podmienky
- Načítanie dát pre súbory CSV, JSON, YAML, XML a obyčajné textové súbory
- Obrázky a odkazy pre automaticky synchronizované prvky dokumentu
- Bibliografie pre citácie a vygenerované zoznamy literatúry
- Vizualizácia pre natívne kresliace primitíva
- Moduly na organizáciu znovupoužiteľného kódu
- Prezentačný režim a
touyingpre technické snímky
Úprimné zhodnotenie
V čom je Typst silný
- Syntax je dostatočne čitateľná pre malé dokumenty, no zároveň dostatočne výkonná pre generované správy.
- Kompilácia a živé náhľady sú rýchle, čo spríjemňuje opakované úpravy.
- Matematika, obrázky, citácie, tabuľky a krížové odkazy spolu prirodzene fungujú.
- Skriptovanie, načítanie dát, moduly a balíky znižujú opakovanie pri rastúcich projektoch.
- Rovnaké zručnosti sa prenášajú z článkov a správ aj do technických prezentácií.
Kde je Typst slabší
- Ekosystém je mladší ako pri LaTeXu, takže špecializované šablóny a balíky sú menej vyspelé.
- Komunitné balíky môžu meniť svoje API. Pri serióznych projektoch pripínajte verzie balíkov, napríklad
touying:0.7.3. - Pracovné postupy zamerané primárne na PDF sú výborné pre kontrolovaný výstup, ale menej pohodlné, keď spolupracovníci očakávajú súbory Wordu, Google Docs alebo PowerPointu.
- Veľmi vlastné vizuálne rozloženia si stále vyžadujú čas venovaný učeniu modelu rozloženia v Typste.
- Prezentačné pracovné postupy sa zlepšujú, no zatiaľ nie sú také univerzálne ako špecializovaný softvér na tvorbu snímok.
Typst je najsilnejší vtedy, keď si ceníte reprodukovateľné zdrojové súbory, presný výstup, rýchlu spätnú väzbu a znovupoužiteľnú automatizáciu. Je menej presvedčivý vtedy, keď je hlavnou požiadavkou kompatibilita s kancelárskym balíkom alebo rozsiahlym existujúcim ekosystémom šablón LaTeXu.