Read the announcement blog post
View changelog with links into the documentation on typst.app/docs
Highlightsoutline
has a better out-of-the-box look and is more customizablecurve
function (that supersedes the path
function) provides a simpler and more flexible interface for creating Bézier curvesimage
function now supports raw pixel raster formats for generating images from within Typst$"a"$
) would be displayed in italicspdf.embed
function lets you embed arbitrary files in the exported PDFfirst-line-indent
.par
now only affect proper paragraphsfirst-line-indent
and hanging-indent
properties also only affect proper paragraphspar[..]
with body content that is not fully inline-level will result in a warningoutline.indent
outline
function was fully reworked to improve its out-of-the-box behavior (Breaking change)
auto
indentation mode now aligns numberings and titles outline-wide for a grid-like lookfill
parameter was moved from outline
to outline.entry
and can thus be configured through show-set rulesbody
and page
fields from outline entryindented
, prefix
, inner
, body
, and page
methods on outline entries to simplify writing of show rulespar.first-line-indent
for indenting all paragraphs instead of just consecutive onesform
parameter to ref
function. Setting the form to "page"
will produce a page reference instead of a textual one.document.description
field, which results in corresponding PDF and HTML metadataenum.reversed
parameterlink
function wraps around a container like a block, it will now generate only one link for the whole block instead of individual links for all the visible leaf elements. This significantly reduces PDF file sizes when combining link
and repeat
.link
function will now only strip one prefix (like mailto:
or tel:
) instead of multiplecurve
function that supersedes the path
function and provides a simpler and more flexible interface. The path
function is now deprecated.image
function now supports raw pixel raster formats. This can be used to generate images from within Typst without the need for encoding in an image exchange format.image.scaling
parameter for configuring how an image is scaled by PNG export and PDF viewers (smooth or pixelated)image.icc
parameter for providing or overriding the ICC profile of an imagepattern
to tiling
. The name pattern
remains as a deprecated alias.gradient.center
, gradient.radius
, gradient.focal-center
, and gradient.focal-radius
methodsbox
and block
path
of infinite lengthgradient.repeat
image
, cbor
, csv
, json
, toml
, xml
, and yaml
now support a path string or bytes and their .decode
variants are deprecatedplugin
, bibliography
, bibliography.style
, cite.style
, raw.theme
, and raw.syntaxes
now accept bytes in addition to path strings. These did not have .decode
variants, so this adds new flexibility.path
argument/field of image
and bibliography
was renamed to source
and sources
, respectively (Minor breaking change)plugin
type is replaced by a plugin
function that returns a module containing normal Typst functions. This module can be used with import syntax. (Breaking change)plugin.transition
API is introduced which allows plugins to run impure initialization in a way that doesn't break Typst's purity guaranteesas
renaming (e.g. import "ot" + "her.typ"
) are a hard error (Breaking change)arguments
type can now be added with +
and joined in curly-braced code blocksoutline.entry
as no other element function defines methods.calc.norm
functionfloat.from-bytes
and float.to-bytes
decimal
constructor now also accepts decimal valuesrepr
of symbols, arguments, and types$"a"$
) would be displayed in italicsflac
(Flattened Accent Forms) and dtls
(Dotless Forms) OpenType featureslcm
text operatorbold
function now works with ϝ and Ϝitalic
function now works with ħlr
and context expressionslr
lr
editortype
s like producer
, writer
, scriptwriter
, and none
(defined by widespread style biblatex-chicago
to mean performers within music
and video
entries) are now recognizedeprinttype = {pubmed}
, the PubMed ID will now be correctly processedall
parameter to smallcaps
function that also enables small capitals on uppercase lettersraw
syntax highlighting for a few new languages: CFML, NSIS, and WGSLsquare
and circle
)block.sticky
not working properly at the top of a containeralign
not becoming their own paragraph0b100000pt
is not allowed anymore. Previously, it was syntactically allowed but always resolved to a value of zero. (Minor breaking change)is
as an identifier will now warn as it might become a keyword in the future#!
at the very start of a file is now ignoredpdf.embed
function for embedding arbitrary files in the exported PDFNote: HTML export is currently under active development. The feature is still very incomplete, but already available for experimentation behind a feature flag.
html.elem
function for outputting an arbitrary HTML elementhtml.frame
function for integrating content that requires layout into HTML (by embedding an SVG)target
function which returns either "paged"
or "html"
depending on the export targetrect(fill: |)
will now only show variables which contain a valid fill (either directly or nested, e.g. a dictionary containing a valid fill)cite
function--features
argument and TYPST_FEATURES
environment variable for opting into experimental features. The only feature so far is html
.typst watch
when targeting HTMLtypst fonts
output to another command--make-deps
output--make-deps
output--make-deps
outputinter
, inter.and
, inter.big
, inter.dot
, inter.double
, inter.sq
, inter.sq.big
, inter.sq.double
, integral.inter
asymp
, asymp.not
mapsto
, mapsto.long
divides.not.rev
, divides.struck
interleave
, interleave.big
, interleave.struck
eq.triple.not
, eq.dots
, eq.dots.down
, eq.dots.up
smt
, smt.eq
, lat
, lat.eq
colon.tri
, colon.tri.op
dagger.triple
, dagger.l
, dagger.r
, dagger.inv
hourglass.stroked
, hourglass.filled
die.six
, die.five
, die.four
, die.three
, die.two
, die.one
errorbar.square.stroked
, errorbar.square.filled
, errorbar.diamond.stroked
, errorbar.diamond.filled
, errorbar.circle.stroked
, errorbar.circle.filled
numero
ohm.inv
to Omega.inv
angle.l.double
from 《
to ⟪
angle.r.double
from 》
to ⟫
angstrom
from U+212B (Å
) to U+00C5 (Å
)sect
and all its variants in favor of inter
integral.sect
in favor of integral.inter
degree.c
in favor of °C
($upright(°C)$
or $upright(degree C)$
in math)degree.f
in favor of °F
($upright(°F)$
or $upright(degree F)$
in math)kelvin
in favor of just K ($upright(K)$
in math)ohm
in favor of Omega
path
function in favor of the curve
functionpattern
for tiling patterns in favor of the new name tiling
image.decode
, cbor.decode
, csv.decode
, json.decode
, toml.decode
, xml.decode
, yaml.decode
in favor of the top-level functions directly accepting both paths and bytessect
and its variants in favor of inter
, and integral.sect
in favor of integral.inter
int == "integer"
) which was temporarily introduced in Typst 0.8 now emits warnings. It will be removed in Typst 0.14.style
function and styles
argument of measure
, use a context expression instead (Breaking change)state.display
function, use state.get
instead (Breaking change)location
argument of state.at
, counter.at
, and query
(Breaking change)counter.display
worked without context (Breaking change)locate
(Breaking change)typst::compile
function is now generic and can return either a PagedDocument
or an HtmlDocument
typst-timing
now supports WebAssembly targets via web-sys
when the wasm
feature is enabledThanks to everyone who contributed to this release: @wrzian, @mkorje, @MDLC01, @PgBiel, @bluebear94, @01mf02, @EpicEricEE, @Andrew15-5, @wznmickey, @Coekjan, @jbirnick, @Dherse, @joshuagawley, @Myriad-Dreamin, @NiklasEi, @TwoF1nger, @frozolotl, @swaits, @3w36zj6, @Carbophile, @Drodt, @Emm54321, @Eric-Song-Nop, @Garmelon, @HydroH, @LaurenzV, @LuxxxLucy, @Orange149, @OverflowCat, @SekoiaTree, @SelfMadeSystem, @SkiFire13, @T0mstone, @Tetragramm, @Toafu, @arbrauns, @asibahi, @bbb651, @cskeeters, @dginev, @elegaanz, @escwxyz, @freundTech, @fynsta, @hongjr03, @iagobaapellaniz, @jakobjpeters, @jsoref, @lucaslugao, @mtoohey31, @nineff, @peng1999, @quachpas, @wzf03, @xkevio.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4