{"route":"/en-US-v0.13.1/changelog/0.13.0/","title":"0.13.0","description":"Changes in Typst 0.13.0","part":null,"outline":[{"id":"highlights","name":"Highlights","children":[]},{"id":"model","name":"Model","children":[]},{"id":"visualization","name":"Visualization","children":[]},{"id":"scripting","name":"Scripting","children":[]},{"id":"math","name":"Math","children":[]},{"id":"bibliography","name":"Bibliography","children":[]},{"id":"text","name":"Text","children":[]},{"id":"layout","name":"Layout","children":[]},{"id":"syntax","name":"Syntax","children":[]},{"id":"pdf-export","name":"PDF export","children":[]},{"id":"html-export","name":"HTML export","children":[]},{"id":"tooling-and-diagnostics","name":"Tooling and Diagnostics","children":[]},{"id":"command-line-interface","name":"Command Line Interface","children":[]},{"id":"symbols","name":"Symbols","children":[]},{"id":"deprecations","name":"Deprecations","children":[]},{"id":"removals","name":"Removals","children":[]},{"id":"development","name":"Development","children":[]},{"id":"contributors","name":"Contributors","children":[]}],"body":{"kind":"html","content":"<h1>Version 0.13.0 (February 19, 2025)</h1>\n<h2 id=\"highlights\">Highlights</h2>\n<ul>\n<li>There is now a distinction between <a href=\"/en-US-v0.13.1/reference/model/par/\">proper paragraphs</a> and just\ninline-level content. This is important for future work on accessibility and\nmeans that <a href=\"/en-US-v0.13.1/reference/model/par/#parameters-first-line-indent\">first line indent</a> can now be enabled for\nall paragraphs instead of just consecutive ones.</li>\n<li>The <a href=\"/en-US-v0.13.1/reference/model/outline/\" title=\"`outline`\"><code>outline</code></a> has a better out-of-the-box look and is more customizable</li>\n<li>The new <a href=\"/en-US-v0.13.1/reference/visualize/curve/\" title=\"`curve`\"><code>curve</code></a> function (that supersedes the <code>path</code> function) provides a\nsimpler and more flexible interface for creating Bézier curves</li>\n<li>The <code>image</code> function now supports raw <a href=\"/en-US-v0.13.1/reference/visualize/image/#parameters-format\">pixel raster formats</a>\nfor generating images from within Typst</li>\n<li>Functions that accept <a href=\"/en-US-v0.13.1/reference/syntax/#paths\">file paths</a> now also accept raw\n<a href=\"/en-US-v0.13.1/reference/foundations/bytes/\" title=\"bytes\">bytes</a>, for full flexibility</li>\n<li>WebAssembly <a href=\"/en-US-v0.13.1/reference/foundations/plugin/\">plugins</a> are more flexible and automatically run\nmulti-threaded</li>\n<li>Fixed a long-standing bug where single-letter strings in math (<code><span class=\"typ-math-delim\">$</span><span class=\"typ-str\">&quot;a&quot;</span><span class=\"typ-math-delim\">$</span></code>)\nwould be displayed in italics</li>\n<li>You can now specify which charset should be <a href=\"/en-US-v0.13.1/reference/text/text/#parameters-font\">covered</a> by which\nfont family</li>\n<li>The <a href=\"/en-US-v0.13.1/reference/pdf/embed/\" title=\"`pdf.embed`\"><code>pdf.embed</code></a> function lets you embed arbitrary files in the exported\nPDF</li>\n<li>HTML export is currently under active development. The feature is still <em>very</em>\nincomplete, but already available for experimentation behind a feature flag.</li>\n</ul>\n<h2 id=\"model\">Model</h2>\n<ul>\n<li>There is now a distinction between <a href=\"/en-US-v0.13.1/reference/model/par/\">proper paragraphs</a> and just\ninline-level content <strong>(Breaking change)</strong>\n<ul>\n<li>All text at the root of a document is wrapped in paragraphs. Meanwhile, text\nin a container (like a block) is only wrapped in a paragraph if the\ncontainer holds any block-level content. If all of the content is\ninline-level, no paragraph is created.</li>\n<li>In the laid-out document, it's not immediately visible whether text became\npart of a paragraph. However, it is still important for accessibility, HTML\nexport, and for properties like <code>first-line-indent</code>.</li>\n<li>Show rules on <code>par</code> now only affect proper paragraphs</li>\n<li>The <code>first-line-indent</code> and <code>hanging-indent</code> properties also only affect\nproper paragraphs</li>\n<li>Creating a <code><span class=\"typ-func\">par</span><span class=\"typ-punct\">[</span>..<span class=\"typ-punct\">]</span></code> with body content that is not fully inline-level will\nresult in a warning</li>\n<li>The default show rules of various built-in elements like lists, quotes, etc.\nwere adjusted to ensure they produce/don't produce paragraphs as appropriate</li>\n<li>Removed support for booleans and content in <a href=\"/en-US-v0.13.1/reference/model/outline/#parameters-indent\" title=\"`outline.indent`\"><code>outline.indent</code></a></li>\n</ul>\n</li>\n<li>The <a href=\"/en-US-v0.13.1/reference/model/outline/\" title=\"`outline`\"><code>outline</code></a> function was fully reworked to improve its out-of-the-box\nbehavior <strong>(Breaking change)</strong>\n<ul>\n<li><a href=\"/en-US-v0.13.1/reference/model/outline/#definitions-entry\">Outline entries</a> are now <a href=\"/en-US-v0.13.1/reference/layout/block/\">blocks</a> and are thus\naffected by block spacing</li>\n<li>The <code><span class=\"typ-key\">auto</span></code> indentation mode now aligns numberings and titles outline-wide\nfor a grid-like look</li>\n<li>Automatic indentation now also indents entries without a numbering</li>\n<li>Titles wrapping over multiple lines now have hanging indent</li>\n<li>The page number won't appear alone on its own line anymore</li>\n<li>The link now spans the full entry instead of just the title and page number</li>\n<li>The default spacing between outline leader dots was increased</li>\n<li>The <a href=\"/en-US-v0.13.1/reference/model/outline/#definitions-entry-fill\"><code>fill</code></a> parameter was moved from <code>outline</code> to\n<code>outline.entry</code> and can thus be configured through show-set rules</li>\n<li>Removed <code>body</code> and <code>page</code> fields from outline entry</li>\n<li>Added <code>indented</code>, <code>prefix</code>, <code>inner</code>, <code>body</code>, and <code>page</code> methods on outline\nentries to simplify writing of show rules</li>\n</ul>\n</li>\n<li>Added configuration to <a href=\"/en-US-v0.13.1/reference/model/par/#parameters-first-line-indent\" title=\"`par.first-line-indent`\"><code>par.first-line-indent</code></a> for indenting all paragraphs\ninstead of just consecutive ones</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/model/ref/#parameters-form\"><code>form</code></a> parameter to <code>ref</code> function. Setting the form to\n<code><span class=\"typ-str\">&quot;page&quot;</span></code> will produce a page reference instead of a textual one.</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/model/document/#parameters-description\" title=\"`document.description`\"><code>document.description</code></a> field, which results in corresponding PDF and\nHTML metadata</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/model/enum/#parameters-reversed\" title=\"`enum.reversed`\"><code>enum.reversed</code></a> parameter</li>\n<li>Added support for Greek <a href=\"/en-US-v0.13.1/reference/model/numbering/\" title=\"numbering\">numbering</a></li>\n<li>When the <a href=\"/en-US-v0.13.1/reference/model/link/\" title=\"`link`\"><code>link</code></a> function wraps around a container like a <a href=\"/en-US-v0.13.1/reference/layout/block/\" title=\"block\">block</a>, it will\nnow generate only one link for the whole block instead of individual links for\nall the visible leaf elements. This significantly reduces PDF file sizes when\ncombining <code>link</code> and <a href=\"/en-US-v0.13.1/reference/layout/repeat/\" title=\"`repeat`\"><code>repeat</code></a>.</li>\n<li>The <a href=\"/en-US-v0.13.1/reference/model/link/\" title=\"`link`\"><code>link</code></a> function will now only strip one prefix (like <code>mailto:</code> or\n<code>tel:</code>) instead of multiple</li>\n<li>The link function now suppresses hyphenation via a built-in show-set rule\nrather than through its default show rule</li>\n<li>Displaying the page counter without a specified numbering will now take the\npage numbering into account</li>\n</ul>\n<h2 id=\"visualization\">Visualization</h2>\n<ul>\n<li>Added new <a href=\"/en-US-v0.13.1/reference/visualize/curve/\" title=\"`curve`\"><code>curve</code></a> function that supersedes the <a href=\"/en-US-v0.13.1/reference/visualize/path/\" title=\"`path`\"><code>path</code></a> function and\nprovides a simpler and more flexible interface. The <code>path</code> function is now\ndeprecated.</li>\n<li>The <code>image</code> function now supports raw <a href=\"/en-US-v0.13.1/reference/visualize/image/#parameters-format\">pixel raster formats</a>.\nThis can be used to generate images from within Typst without the need for\nencoding in an image exchange format.</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/visualize/image/#parameters-scaling\" title=\"`image.scaling`\"><code>image.scaling</code></a> parameter for configuring how an image is scaled by\nPNG export and PDF viewers (smooth or pixelated)</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/visualize/image/#parameters-icc\" title=\"`image.icc`\"><code>image.icc</code></a> parameter for providing or overriding the ICC profile of\nan image</li>\n<li>Renamed <code>pattern</code> to <a href=\"/en-US-v0.13.1/reference/visualize/tiling/\" title=\"`tiling`\"><code>tiling</code></a>. The name <code>pattern</code> remains as a deprecated\nalias.</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/visualize/gradient/#definitions-center\" title=\"`gradient.center`\"><code>gradient.center</code></a>, <a href=\"/en-US-v0.13.1/reference/visualize/gradient/#definitions-radius\" title=\"`gradient.radius`\"><code>gradient.radius</code></a>, <a href=\"/en-US-v0.13.1/reference/visualize/gradient/#definitions-focal-center\" title=\"`gradient.focal-center`\"><code>gradient.focal-center</code></a>, and\n<a href=\"/en-US-v0.13.1/reference/visualize/gradient/#definitions-focal-radius\" title=\"`gradient.focal-radius`\"><code>gradient.focal-radius</code></a> methods</li>\n<li>Fixed interaction of clipping and outset on <a href=\"/en-US-v0.13.1/reference/layout/box/\" title=\"`box`\"><code>box</code></a> and <a href=\"/en-US-v0.13.1/reference/layout/block/\" title=\"`block`\"><code>block</code></a></li>\n<li>Fixed panic with <a href=\"/en-US-v0.13.1/reference/visualize/path/\" title=\"`path`\"><code>path</code></a> of infinite length</li>\n<li>Fixed non-solid (e.g. tiling) text fills in clipped blocks</li>\n<li>Fixed a crash for images with a DPI value of zero</li>\n<li>Fixed floating-point error in <a href=\"/en-US-v0.13.1/reference/visualize/gradient/#definitions-repeat\" title=\"`gradient.repeat`\"><code>gradient.repeat</code></a></li>\n<li>Auto-detection of image formats from a raw buffer now has support for SVGs</li>\n</ul>\n<h2 id=\"scripting\">Scripting</h2>\n<ul>\n<li>Functions that accept <a href=\"/en-US-v0.13.1/reference/syntax/#paths\">file paths</a> now also accept raw\n<a href=\"/en-US-v0.13.1/reference/foundations/bytes/\" title=\"bytes\">bytes</a>\n<ul>\n<li><a href=\"/en-US-v0.13.1/reference/visualize/image/\" title=\"`image`\"><code>image</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/cbor/\" title=\"`cbor`\"><code>cbor</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/csv/\" title=\"`csv`\"><code>csv</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/json/\" title=\"`json`\"><code>json</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/toml/\" title=\"`toml`\"><code>toml</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/xml/\" title=\"`xml`\"><code>xml</code></a>, and <a href=\"/en-US-v0.13.1/reference/data-loading/yaml/\" title=\"`yaml`\"><code>yaml</code></a> now\nsupport a path string or bytes and their <code>.decode</code> variants are deprecated</li>\n<li><a href=\"/en-US-v0.13.1/reference/foundations/plugin/\" title=\"`plugin`\"><code>plugin</code></a>, <a href=\"/en-US-v0.13.1/reference/model/bibliography/\" title=\"`bibliography`\"><code>bibliography</code></a>, <a href=\"/en-US-v0.13.1/reference/model/bibliography/#parameters-style\" title=\"`bibliography.style`\"><code>bibliography.style</code></a>, <a href=\"/en-US-v0.13.1/reference/model/cite/#parameters-style\" title=\"`cite.style`\"><code>cite.style</code></a>,\n<a href=\"/en-US-v0.13.1/reference/text/raw/#parameters-theme\" title=\"`raw.theme`\"><code>raw.theme</code></a>, and <a href=\"/en-US-v0.13.1/reference/text/raw/#parameters-syntaxes\" title=\"`raw.syntaxes`\"><code>raw.syntaxes</code></a> now accept bytes in addition to path\nstrings. These did not have <code>.decode</code> variants, so this adds new\nflexibility.</li>\n<li>The <code>path</code> argument/field of <a href=\"/en-US-v0.13.1/reference/visualize/image/\" title=\"`image`\"><code>image</code></a> and <a href=\"/en-US-v0.13.1/reference/model/bibliography/\" title=\"`bibliography`\"><code>bibliography</code></a> was renamed to\n<code>source</code> and <code>sources</code>, respectively <strong>(Minor breaking change)</strong></li>\n</ul>\n</li>\n<li>Improved WebAssembly <a href=\"/en-US-v0.13.1/reference/foundations/plugin/\">plugins</a>\n<ul>\n<li>The <code>plugin</code> type is replaced by a <a href=\"/en-US-v0.13.1/reference/foundations/plugin/\"><code>plugin</code> function</a> that returns\na <a href=\"/en-US-v0.13.1/reference/foundations/module/\" title=\"module\">module</a> containing normal Typst functions. This module can be used with\nimport syntax. <strong>(Breaking change)</strong></li>\n<li>Plugins now automatically run in multiple threads without any changes by\nplugin authors</li>\n<li>A new <a href=\"/en-US-v0.13.1/reference/foundations/plugin/#definitions-transition\" title=\"`plugin.transition`\"><code>plugin.transition</code></a> API is introduced which allows plugins to run\nimpure initialization in a way that doesn't break Typst's purity guarantees</li>\n</ul>\n</li>\n<li>The variable name bound by a bare import (no renaming, no import list) is now\ndetermined statically and dynamic imports without <code>as</code> renaming (e.g.\n<code><span class=\"typ-key\">import</span> <span class=\"typ-str\">&quot;ot&quot;</span> <span class=\"typ-op\">+</span> <span class=\"typ-str\">&quot;her.typ&quot;</span></code>) are a hard error <strong>(Breaking change)</strong></li>\n<li>Values of the <a href=\"/en-US-v0.13.1/reference/foundations/arguments/\" title=\"`arguments`\"><code>arguments</code></a> type can now be added with <code>+</code> and\n<a href=\"/en-US-v0.13.1/reference/scripting/#blocks\">joined</a> in curly-braced code blocks</li>\n<li>Functions in an element function's scope can now be called with method syntax,\nbringing elements and types closer (in anticipation of a future full\nunification of the two). Currently, this is only useful for <a href=\"/en-US-v0.13.1/reference/model/outline/#definitions-entry\" title=\"`outline.entry`\"><code>outline.entry</code></a>\nas no other element function defines methods.</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/foundations/calc/#functions-norm\" title=\"`calc.norm`\"><code>calc.norm</code></a> function</li>\n<li>Added support for 32-bit floats in <a href=\"/en-US-v0.13.1/reference/foundations/float/#definitions-from-bytes\" title=\"`float.from-bytes`\"><code>float.from-bytes</code></a> and <a href=\"/en-US-v0.13.1/reference/foundations/float/#definitions-to-bytes\" title=\"`float.to-bytes`\"><code>float.to-bytes</code></a></li>\n<li>The <a href=\"/en-US-v0.13.1/reference/foundations/decimal/\" title=\"`decimal`\"><code>decimal</code></a> constructor now also accepts decimal values</li>\n<li>Improved <code>repr</code> of <a href=\"/en-US-v0.13.1/reference/foundations/symbol/\">symbols</a>, <a href=\"/en-US-v0.13.1/reference/foundations/arguments/\" title=\"arguments\">arguments</a>, and <a href=\"/en-US-v0.13.1/reference/foundations/type/\">types</a></li>\n<li>Duplicate <a href=\"/en-US-v0.13.1/reference/foundations/symbol/\" title=\"symbol\">symbol</a> variants and modifiers are now a hard error\n<strong>(Breaking change)</strong></li>\n</ul>\n<h2 id=\"math\">Math</h2>\n<ul>\n<li>Fixed a bug where single letter strings in math (<code><span class=\"typ-math-delim\">$</span><span class=\"typ-str\">&quot;a&quot;</span><span class=\"typ-math-delim\">$</span></code>) would be displayed\nin italics</li>\n<li>Math function calls can now have hyphenated named arguments and support\n<a href=\"/en-US-v0.13.1/reference/foundations/arguments/#spreading\">argument spreading</a></li>\n<li>Better looking accents thanks to support for the <code>flac</code> (Flattened Accent\nForms) and <code>dtls</code> (Dotless Forms) OpenType features</li>\n<li>Added <code>lcm</code> <a href=\"/en-US-v0.13.1/reference/math/op/\">text operator</a></li>\n<li>The <a href=\"/en-US-v0.13.1/reference/math/styles/#functions-bold\"><code>bold</code></a> function now works with ϝ and Ϝ</li>\n<li>The <a href=\"/en-US-v0.13.1/reference/math/styles/#functions-italic\"><code>italic</code></a> function now works with ħ</li>\n<li>Fixed a bug where the extent of a math equation was wrongly affected by\ninternal metadata</li>\n<li>Fixed interaction of <a href=\"/en-US-v0.13.1/reference/math/lr/#functions-lr\"><code>lr</code></a> and <a href=\"/en-US-v0.13.1/reference/context/\" title=\"context\">context</a> expressions</li>\n<li>Fixed weak spacing being unconditionally ignored in <a href=\"/en-US-v0.13.1/reference/math/lr/#functions-lr\"><code>lr</code></a></li>\n<li>Fixed sub/superscripts sometimes being in the wrong position with\n<a href=\"/en-US-v0.13.1/reference/math/lr/#functions-lr\"><code>lr</code></a></li>\n<li>Fixed multi-line annotations (e.g. overbrace) changing the math baseline</li>\n<li>Fixed merging of attachments when the base is a nested equation</li>\n<li>Fixed resolving of contextual (em-based) text sizes within math</li>\n<li>Fixed spacing around up tacks (⊥)</li>\n</ul>\n<h2 id=\"bibliography\">Bibliography</h2>\n<ul>\n<li>Prose and author-only citations now use editor names if the author names are\nunavailable</li>\n<li>Some non-standard but widely used BibLaTeX <code>editortype</code>s like <code>producer</code>,\n<code>writer</code>, <code>scriptwriter</code>, and <code>none</code> (defined by widespread style\n<code>biblatex-chicago</code> to mean performers within <code>music</code> and <code>video</code> entries) are\nnow recognized</li>\n<li>CSL styles can now render affixes around the bibliography</li>\n<li>For BibTeX entries with <code>eprinttype = {pubmed}</code>, the PubMed ID will now be\ncorrectly processed</li>\n<li>Whitespace handling for strings delimiting initialized names has been improved</li>\n<li>Uppercase spelling after apostrophes used as quotation marks is now possible</li>\n<li>Fixed bugs around the handling of CSL delimiting characters</li>\n<li>Fixed a problem with parsing multibyte characters in page ranges that could\nprevent Hayagriva from parsing some BibTeX page ranges</li>\n<li>Updated CSL APA style</li>\n<li>Updated CSL locales for Finnish, Swiss German, Austrian German, German, and\nArabic</li>\n</ul>\n<h2 id=\"text\">Text</h2>\n<ul>\n<li>Added support for specifying which charset should be <a href=\"/en-US-v0.13.1/reference/text/text/#parameters-font\">covered</a> by\nwhich font family</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/text/smallcaps/#parameters-all\"><code>all</code></a> parameter to <code>smallcaps</code> function that also\nenables small capitals on uppercase letters</li>\n<li>Added basic i18n for Basque and Bulgarian</li>\n<li><a href=\"/en-US-v0.13.1/reference/model/par/#parameters-justify\">Justification</a> does not affect <a href=\"/en-US-v0.13.1/reference/text/raw/\" title=\"raw\">raw</a> blocks anymore</li>\n<li><a href=\"/en-US-v0.13.1/reference/text/text/#parameters-cjk-latin-spacing\">CJK-Latin-spacing</a> does not affect <a href=\"/en-US-v0.13.1/reference/text/raw/\" title=\"raw\">raw</a> text\nanymore</li>\n<li>Fixed wrong language codes being used for Greek and Ukrainian</li>\n<li>Fixed default quotes for Croatian and Bulgarian</li>\n<li>Fixed crash in RTL text handling</li>\n<li>Added support for <a href=\"/en-US-v0.13.1/reference/text/raw/\" title=\"`raw`\"><code>raw</code></a> syntax highlighting for a few new languages: CFML,\nNSIS, and WGSL</li>\n<li>New font metadata exception for New Computer Modern Sans Math</li>\n<li>Updated bundled New Computer Modern fonts to version 7.0.1</li>\n</ul>\n<h2 id=\"layout\">Layout</h2>\n<ul>\n<li>Fixed various bugs with footnotes\n<ul>\n<li>Fixed footnotes getting lost when multiple footnotes were nested within\nanother footnote</li>\n<li>Fixed endless loops with empty and overlarge footnotes</li>\n<li>Fixed crash with overlarge footnotes within a floating placement</li>\n</ul>\n</li>\n<li>Fixed sizing of quadratic shapes (<a href=\"/en-US-v0.13.1/reference/visualize/square/\" title=\"`square`\"><code>square</code></a> and <a href=\"/en-US-v0.13.1/reference/visualize/circle/\" title=\"`circle`\"><code>circle</code></a>)</li>\n<li>Fixed <a href=\"/en-US-v0.13.1/reference/layout/block/#parameters-sticky\" title=\"`block.sticky`\"><code>block.sticky</code></a> not working properly at the top of a container</li>\n<li>Fixed crash due to consecutive weak spacing</li>\n<li>Fixed crash when a <a href=\"/en-US-v0.13.1/reference/layout/block/\" title=\"block\">block</a> or text have negative sizes</li>\n<li>Fixed unnecessary hyphenations occurring in rare scenarios due to a bad\ninteraction between padding and paragraph optimization</li>\n<li>Fixed lone <a href=\"/en-US-v0.13.1/reference/model/cite/\">citations</a> in <a href=\"/en-US-v0.13.1/reference/layout/align/\" title=\"`align`\"><code>align</code></a> not becoming their own paragraph</li>\n</ul>\n<h2 id=\"syntax\">Syntax</h2>\n<ul>\n<li>Top-level closing square brackets that do not have a matching opening square\nbracket are now a hard error <strong>(Minor breaking change)</strong></li>\n<li>Adding a space between the identifier and the parentheses in a set rule is not\nallowed anymore <strong>(Minor breaking change)</strong></li>\n<li>Numbers with a unit cannot have a base prefix anymore, e.g. <code>0b100000pt</code> is\nnot allowed anymore. Previously, it was syntactically allowed but always\nresolved to a value of zero. <strong>(Minor breaking change)</strong></li>\n<li>Using <code>is</code> as an identifier will now warn as it might become a keyword in the\nfuture</li>\n<li>Fixed minor whitespace handling bugs\n<ul>\n<li>in math mode argument lists</li>\n<li>at the end of headings</li>\n<li>between a term list's term and description</li>\n</ul>\n</li>\n<li>Fixed parsing of empty single line raw blocks with 3+ backticks and a language\ntag</li>\n<li>Fixed minor bug with parentheses parsing in math</li>\n<li>Markup that can only appear at the start of the line (headings, lists) can now\nalso appear at the start of a list item</li>\n<li>A shebang <code>#!</code> at the very start of a file is now ignored</li>\n</ul>\n<h2 id=\"pdf-export\">PDF export</h2>\n<ul>\n<li>Added <a href=\"/en-US-v0.13.1/reference/pdf/embed/\" title=\"`pdf.embed`\"><code>pdf.embed</code></a> function for embedding arbitrary files in the exported PDF</li>\n<li>Added support for PDF/A-3b export</li>\n<li>The PDF timestamp will now contain the timezone by default</li>\n</ul>\n<h2 id=\"html-export\">HTML export</h2>\n<p><strong>Note:</strong> HTML export is currently under active development. The feature is\nstill <em>very</em> incomplete, but already available for experimentation behind a\nfeature flag.</p>\n<ul>\n<li>Added HTML output support for some (but not all) of the built-in elements</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/html/elem/\" title=\"`html.elem`\"><code>html.elem</code></a> function for outputting an arbitrary HTML element</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/html/frame/\" title=\"`html.frame`\"><code>html.frame</code></a> function for integrating content that requires layout\ninto HTML (by embedding an SVG)</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/foundations/target/\" title=\"`target`\"><code>target</code></a> function which returns either <code><span class=\"typ-str\">&quot;paged&quot;</span></code> or <code><span class=\"typ-str\">&quot;html&quot;</span></code>\ndepending on the export target</li>\n</ul>\n<h2 id=\"tooling-and-diagnostics\">Tooling and Diagnostics</h2>\n<ul>\n<li>Autocompletion improvements\n<ul>\n<li>Added autocompletion for file paths</li>\n<li>Smarter autocompletion of variables: Completing <code><span class=\"typ-func\">rect</span><span class=\"typ-punct\">(</span>fill<span class=\"typ-punct\">:</span> |<span class=\"typ-punct\">)</span></code> will now\nonly show variables which contain a valid fill (either directly or nested,\ne.g. a dictionary containing a valid fill)</li>\n<li>Different functions will now autocomplete with different brackets (round vs\nsquare) depending on which kind is more useful</li>\n<li>Positional parameters which are already provided aren't autocompleted again\nanymore</li>\n<li>Fixed variable autocompletion not considering parameters</li>\n<li>Added autocompletion snippets for common figure usages</li>\n<li>Fixed autocompletion after half-completed import item</li>\n<li>Fixed autocompletion for <code>cite</code> function</li>\n</ul>\n</li>\n<li>Added warning when an unconditional return in a code block discards joined\ncontent</li>\n<li>Fixed error message when accessing non-existent label</li>\n<li>Fixed handling of nested imports in IDE functionality</li>\n</ul>\n<h2 id=\"command-line-interface\">Command Line Interface</h2>\n<ul>\n<li>Added <code>--features</code> argument and <code>TYPST_FEATURES</code> environment variable for\nopting into experimental features. The only feature so far is <code>html</code>.</li>\n<li>Added a live reloading HTTP server to <code>typst watch</code> when targeting HTML</li>\n<li>Fixed self-update not being aware about certain target architectures</li>\n<li>Fixed crash when piping <code>typst fonts</code> output to another command</li>\n<li>Fixed handling of relative paths in <code>--make-deps</code> output</li>\n<li>Fixed handling of multipage SVG and PNG export in <code>--make-deps</code> output</li>\n<li>Colons in filenames are now correctly escaped in <code>--make-deps</code> output</li>\n</ul>\n<h2 id=\"symbols\">Symbols</h2>\n<ul>\n<li>New\n<ul>\n<li><code>inter</code>, <code>inter.and</code>, <code>inter.big</code>, <code>inter.dot</code>, <code>inter.double</code>, <code>inter.sq</code>,\n<code>inter.sq.big</code>, <code>inter.sq.double</code>, <code>integral.inter</code></li>\n<li><code>asymp</code>, <code>asymp.not</code></li>\n<li><code>mapsto</code>, <code>mapsto.long</code></li>\n<li><code>divides.not.rev</code>, <code>divides.struck</code></li>\n<li><code>interleave</code>, <code>interleave.big</code>, <code>interleave.struck</code></li>\n<li><code>eq.triple.not</code>, <code>eq.dots</code>, <code>eq.dots.down</code>, <code>eq.dots.up</code></li>\n<li><code>smt</code>, <code>smt.eq</code>, <code>lat</code>, <code>lat.eq</code></li>\n<li><code>colon.tri</code>, <code>colon.tri.op</code></li>\n<li><code>dagger.triple</code>, <code>dagger.l</code>, <code>dagger.r</code>, <code>dagger.inv</code></li>\n<li><code>hourglass.stroked</code>, <code>hourglass.filled</code></li>\n<li><code>die.six</code>, <code>die.five</code>, <code>die.four</code>, <code>die.three</code>, <code>die.two</code>, <code>die.one</code></li>\n<li><code>errorbar.square.stroked</code>, <code>errorbar.square.filled</code>,\n<code>errorbar.diamond.stroked</code>, <code>errorbar.diamond.filled</code>,\n<code>errorbar.circle.stroked</code>, <code>errorbar.circle.filled</code></li>\n<li><code>numero</code></li>\n</ul>\n</li>\n<li>Renamed <strong>(Breaking change)</strong>\n<ul>\n<li><code>ohm.inv</code> to <code>Omega.inv</code></li>\n</ul>\n</li>\n<li>Changed codepoint <strong>(Breaking change)</strong>\n<ul>\n<li><code>angle.l.double</code> from <code>《</code> to <code>⟪</code></li>\n<li><code>angle.r.double</code> from <code>》</code> to <code>⟫</code></li>\n<li><code>angstrom</code> from U+212B (<code>Å</code>) to U+00C5 (<code>Å</code>)</li>\n</ul>\n</li>\n<li>Deprecated\n<ul>\n<li><code>sect</code> and all its variants in favor of <code>inter</code></li>\n<li><code>integral.sect</code> in favor of <code>integral.inter</code></li>\n</ul>\n</li>\n<li>Removed <strong>(Breaking change)</strong>\n<ul>\n<li><code>degree.c</code> in favor of <code>°C</code> (<code><span class=\"typ-math-delim\">$</span><span class=\"typ-func\">upright</span><span class=\"typ-punct\">(</span>°C<span class=\"typ-punct\">)</span><span class=\"typ-math-delim\">$</span></code> or <code><span class=\"typ-math-delim\">$</span><span class=\"typ-func\">upright</span><span class=\"typ-punct\">(</span><span class=\"typ-pol\">degree</span> C<span class=\"typ-punct\">)</span><span class=\"typ-math-delim\">$</span></code> in math)</li>\n<li><code>degree.f</code> in favor of <code>°F</code> (<code><span class=\"typ-math-delim\">$</span><span class=\"typ-func\">upright</span><span class=\"typ-punct\">(</span>°F<span class=\"typ-punct\">)</span><span class=\"typ-math-delim\">$</span></code> or <code><span class=\"typ-math-delim\">$</span><span class=\"typ-func\">upright</span><span class=\"typ-punct\">(</span><span class=\"typ-pol\">degree</span> F<span class=\"typ-punct\">)</span><span class=\"typ-math-delim\">$</span></code> in math)</li>\n<li><code>kelvin</code> in favor of just K (<code><span class=\"typ-math-delim\">$</span><span class=\"typ-func\">upright</span><span class=\"typ-punct\">(</span>K<span class=\"typ-punct\">)</span><span class=\"typ-math-delim\">$</span></code> in math)</li>\n<li><code>ohm</code> in favor of <code>Omega</code></li>\n</ul>\n</li>\n</ul>\n<h2 id=\"deprecations\">Deprecations</h2>\n<ul>\n<li>The <a href=\"/en-US-v0.13.1/reference/visualize/path/\" title=\"`path`\"><code>path</code></a> function in favor of the <a href=\"/en-US-v0.13.1/reference/visualize/curve/\" title=\"`curve`\"><code>curve</code></a> function</li>\n<li>The name <code>pattern</code> for tiling patterns in favor of the new name <a href=\"/en-US-v0.13.1/reference/visualize/tiling/\" title=\"`tiling`\"><code>tiling</code></a></li>\n<li><a href=\"/en-US-v0.13.1/reference/visualize/image/#definitions-decode\" title=\"`image.decode`\"><code>image.decode</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/cbor/#definitions-decode\" title=\"`cbor.decode`\"><code>cbor.decode</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/csv/#definitions-decode\" title=\"`csv.decode`\"><code>csv.decode</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/json/#definitions-decode\" title=\"`json.decode`\"><code>json.decode</code></a>,\n<a href=\"/en-US-v0.13.1/reference/data-loading/toml/#definitions-decode\" title=\"`toml.decode`\"><code>toml.decode</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/xml/#definitions-decode\" title=\"`xml.decode`\"><code>xml.decode</code></a>, <a href=\"/en-US-v0.13.1/reference/data-loading/yaml/#definitions-decode\" title=\"`yaml.decode`\"><code>yaml.decode</code></a> in favor of the top-level\nfunctions directly accepting both paths and bytes</li>\n<li>The <code>sect</code> and its variants in favor of <code>inter</code>, and <code>integral.sect</code> in favor\nof <code>integral.inter</code></li>\n<li>The compatibility behavior of type/str comparisons (e.g. <code>int <span class=\"typ-op\">==</span> <span class=\"typ-str\">&quot;integer&quot;</span></code>)\nwhich was temporarily introduced in Typst 0.8 now emits warnings. It will be\nremoved in Typst 0.14.</li>\n</ul>\n<h2 id=\"removals\">Removals</h2>\n<ul>\n<li>Removed <code>style</code> function and <code>styles</code> argument of <a href=\"/en-US-v0.13.1/reference/layout/measure/\" title=\"`measure`\"><code>measure</code></a>, use a <a href=\"/en-US-v0.13.1/reference/context/\" title=\"context\">context</a>\nexpression instead <strong>(Breaking change)</strong></li>\n<li>Removed <code>state.display</code> function, use <a href=\"/en-US-v0.13.1/reference/introspection/state/#definitions-get\" title=\"`state.get`\"><code>state.get</code></a> instead\n<strong>(Breaking change)</strong></li>\n<li>Removed <code>location</code> argument of <a href=\"/en-US-v0.13.1/reference/introspection/state/#definitions-at\" title=\"`state.at`\"><code>state.at</code></a>, <a href=\"/en-US-v0.13.1/reference/introspection/counter/#definitions-at\" title=\"`counter.at`\"><code>counter.at</code></a>, and <a href=\"/en-US-v0.13.1/reference/introspection/query/\" title=\"`query`\"><code>query</code></a>\n<strong>(Breaking change)</strong></li>\n<li>Removed compatibility behavior where <a href=\"/en-US-v0.13.1/reference/introspection/counter/#definitions-display\" title=\"`counter.display`\"><code>counter.display</code></a> worked without\n<a href=\"/en-US-v0.13.1/reference/context/\" title=\"context\">context</a> <strong>(Breaking change)</strong></li>\n<li>Removed compatibility behavior of <a href=\"/en-US-v0.13.1/reference/introspection/locate/\" title=\"`locate`\"><code>locate</code></a> <strong>(Breaking change)</strong></li>\n</ul>\n<h2 id=\"development\">Development</h2>\n<ul>\n<li>The <code>typst::compile</code> function is now generic and can return either a\n<code>PagedDocument</code> or an <code>HtmlDocument</code></li>\n<li><code>typst-timing</code> now supports WebAssembly targets via <code>web-sys</code> when the <code>wasm</code>\nfeature is enabled</li>\n<li>Increased minimum supported Rust version to 1.80</li>\n<li>Fixed linux/arm64 Docker image</li>\n</ul>\n<h2 id=\"contributors\">Contributors</h2>"}}