{"route":"/en-US-v0.13.1/changelog/0.7.0/","title":"0.7.0","description":"Changes in Typst 0.7.0","part":null,"outline":[{"id":"text-and-layout","name":"Text and Layout","children":[]},{"id":"export","name":"Export","children":[]},{"id":"math","name":"Math","children":[]},{"id":"scripting","name":"Scripting","children":[]},{"id":"tooling-and-diagnostics","name":"Tooling and Diagnostics","children":[]},{"id":"command-line-interface","name":"Command line interface","children":[]},{"id":"miscellaneous-improvements","name":"Miscellaneous Improvements","children":[]},{"id":"development","name":"Development","children":[]},{"id":"contributors","name":"Contributors","children":[]}],"body":{"kind":"html","content":"<h1>Version 0.7.0 (August 7, 2023)</h1>\n<h2 id=\"text-and-layout\">Text and Layout</h2>\n<ul>\n<li>Added support for floating figures through the\n<a href=\"/en-US-v0.13.1/reference/model/figure/#parameters-placement\"><code>placement</code></a> argument on the figure function</li>\n<li>Added support for arbitrary floating content through the\n<a href=\"/en-US-v0.13.1/reference/layout/place/#parameters-float\"><code>float</code></a> argument on the place function</li>\n<li>Added support for loading <code>.sublime-syntax</code> files as highlighting\n<a href=\"/en-US-v0.13.1/reference/text/raw/#parameters-syntaxes\">syntaxes</a> for raw blocks</li>\n<li>Added support for loading <code>.tmTheme</code> files as highlighting\n<a href=\"/en-US-v0.13.1/reference/text/raw/#parameters-theme\">themes</a> for raw blocks</li>\n<li>Added <em>bounds</em> option to <a href=\"/en-US-v0.13.1/reference/text/text/#parameters-top-edge\"><code>top-edge</code></a> and\n<a href=\"/en-US-v0.13.1/reference/text/text/#parameters-bottom-edge\"><code>bottom-edge</code></a> arguments of text function for tight\nbounding boxes</li>\n<li>Removed nonsensical top- and bottom-edge options, e.g. <em>ascender</em> for the\nbottom edge <strong>(Breaking change)</strong></li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/text/text/#parameters-script\"><code>script</code></a> argument to text function</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/text/smartquote/#parameters-alternative\"><code>alternative</code></a> argument to smart quote\nfunction</li>\n<li>Added basic i18n for Japanese</li>\n<li>Added hyphenation support for <code>nb</code> and <code>nn</code> language codes in addition to <code>no</code></li>\n<li>Fixed positioning of <a href=\"/en-US-v0.13.1/reference/layout/place/\">placed elements</a> in containers</li>\n<li>Fixed overflowing containers due to optimized line breaks</li>\n</ul>\n<h2 id=\"export\">Export</h2>\n<ul>\n<li>Greatly improved export of SVG images to PDF. Many thanks to\n<a href=\"https://github.com/LaurenzV\">@LaurenzV</a> for their work on this.</li>\n<li>Added support for the alpha channel of RGBA colors in PDF export</li>\n<li>Fixed a bug with PPI (pixels per inch) for PNG export</li>\n</ul>\n<h2 id=\"math\">Math</h2>\n<ul>\n<li>Improved layout of primes (e.g. in <code><span class=\"typ-math-delim\">$</span>a<span class=\"typ-math-op\">&#39;</span><span class=\"typ-math-op\">_</span>1<span class=\"typ-math-delim\">$</span></code>)</li>\n<li>Improved display of multi-primes (e.g. in <code><span class=\"typ-math-delim\">$</span>a<span class=\"typ-math-op\">&#39;</span><span class=\"typ-math-op\">&#39;</span><span class=\"typ-math-delim\">$</span></code>)</li>\n<li>Improved layout of <a href=\"/en-US-v0.13.1/reference/math/roots/#functions-root\">roots</a></li>\n<li>Changed relations to show attachments as <a href=\"/en-US-v0.13.1/reference/math/attach/#functions-limits\">limits</a> by default\n(e.g. in <code><span class=\"typ-math-delim\">$</span>a <span class=\"typ-escape\">-&gt;</span><span class=\"typ-math-op\">^</span>x b<span class=\"typ-math-delim\">$</span></code>)</li>\n<li>Large operators and delimiters are now always vertically centered</li>\n<li><a href=\"/en-US-v0.13.1/reference/layout/box/\">Boxes</a> in equations now sit on the baseline instead of being vertically\ncentered by default. Notably, this does not affect <a href=\"/en-US-v0.13.1/reference/layout/block/\">blocks</a> because\nthey are not inline elements.</li>\n<li>Added support for <a href=\"/en-US-v0.13.1/reference/layout/h/#parameters-weak\">weak spacing</a></li>\n<li>Added support for OpenType character variants</li>\n<li>Added support for customizing the <a href=\"/en-US-v0.13.1/reference/math/class/\">math class</a> of content</li>\n<li>Fixed spacing around <code>.</code>, <code>\\/</code>, and <code>...</code></li>\n<li>Fixed spacing between closing delimiters and large operators</li>\n<li>Fixed a bug with math font weight selection</li>\n<li>Symbols and Operators <strong>(Breaking changes)</strong>\n<ul>\n<li>Added <code>id</code>, <code>im</code>, and <code>tr</code> text <a href=\"/en-US-v0.13.1/reference/math/op/\">operators</a></li>\n<li>Renamed <code>ident</code> to <code>equiv</code> with alias <code>eq.triple</code> and removed <code>ident.strict</code>\nin favor of <code>eq.quad</code></li>\n<li>Renamed <code>ast.sq</code> to <code>ast.square</code> and <code>integral.sq</code> to <code>integral.square</code></li>\n<li>Renamed <code>.eqq</code> modifier to <code>.equiv</code> (and <code>.neqq</code> to <code>.nequiv</code>) for <code>tilde</code>,\n<code>gt</code>, <code>lt</code>, <code>prec</code>, and <code>succ</code></li>\n<li>Added <code>emptyset</code> as alias for <code>nothing</code></li>\n<li>Added <code>lt.curly</code> and <code>gt.curly</code> as aliases for <code>prec</code> and <code>succ</code></li>\n<li>Added <code>aleph</code>, <code>beth</code>, and <code>gimmel</code> as alias for <code>alef</code>, <code>bet</code>, and <code>gimel</code></li>\n</ul>\n</li>\n</ul>\n<h2 id=\"scripting\">Scripting</h2>\n<ul>\n<li>Fields\n<ul>\n<li>Added <code>abs</code> and <code>em</code> field to <a href=\"/en-US-v0.13.1/reference/layout/length/\">lengths</a></li>\n<li>Added <code>ratio</code> and <code>length</code> field to <a href=\"/en-US-v0.13.1/reference/layout/relative/\">relative lengths</a></li>\n<li>Added <code>x</code> and <code>y</code> field to <a href=\"/en-US-v0.13.1/reference/layout/align/#parameters-alignment\">2d alignments</a></li>\n<li>Added <code>paint</code>, <code>thickness</code>, <code>cap</code>, <code>join</code>, <code>dash</code>, and <code>miter-limit</code> field\nto <a href=\"/en-US-v0.13.1/reference/visualize/stroke/\">strokes</a></li>\n</ul>\n</li>\n<li>Accessor and utility methods\n<ul>\n<li>Added <a href=\"/en-US-v0.13.1/reference/foundations/array/#definitions-dedup\"><code>dedup</code></a> method to arrays</li>\n<li>Added <code>pt</code>, <code>mm</code>, <code>cm</code>, and <code>inches</code> method to <a href=\"/en-US-v0.13.1/reference/layout/length/\">lengths</a></li>\n<li>Added <code>deg</code> and <code>rad</code> method to <a href=\"/en-US-v0.13.1/reference/layout/angle/\">angles</a></li>\n<li>Added <code>kind</code>, <code>hex</code>, <code>rgba</code>, <code>cmyk</code>, and <code>luma</code> method to <a href=\"/en-US-v0.13.1/reference/visualize/color/\">colors</a></li>\n<li>Added <code>axis</code>, <code>start</code>, <code>end</code>, and <code>inv</code> method to <a href=\"/en-US-v0.13.1/reference/layout/stack/#parameters-dir\">directions</a></li>\n<li>Added <code>axis</code> and <code>inv</code> method to <a href=\"/en-US-v0.13.1/reference/layout/align/#parameters-alignment\">alignments</a></li>\n<li>Added <code>inv</code> method to <a href=\"/en-US-v0.13.1/reference/layout/align/#parameters-alignment\">2d alignments</a></li>\n<li>Added <code>start</code> argument to <a href=\"/en-US-v0.13.1/reference/foundations/array/#definitions-enumerate\"><code>enumerate</code></a> method on arrays</li>\n</ul>\n</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/visualize/color/#definitions-mix\"><code>color.mix</code></a> function</li>\n<li>Added <code>mode</code> and <code>scope</code> arguments to <a href=\"/en-US-v0.13.1/reference/foundations/eval/\" title=\"`eval`\"><code>eval</code></a> function</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/foundations/bytes/\" title=\"`bytes`\"><code>bytes</code></a> type for holding large byte buffers\n<ul>\n<li>Added <a href=\"/en-US-v0.13.1/reference/data-loading/read/#parameters-encoding\"><code>encoding</code></a> argument to read function to read a file\nas bytes instead of a string</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/visualize/image/#definitions-decode\"><code>image.decode</code></a> function for decoding an image\ndirectly from a string or bytes</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/foundations/bytes/\" title=\"`bytes`\"><code>bytes</code></a> function for converting a string or an array of integers to\nbytes</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/foundations/array/\" title=\"`array`\"><code>array</code></a> function for converting bytes to an array of integers</li>\n<li>Added support for converting bytes to a string with the <a href=\"/en-US-v0.13.1/reference/foundations/str/\" title=\"`str`\"><code>str</code></a> function</li>\n</ul>\n</li>\n</ul>\n<h2 id=\"tooling-and-diagnostics\">Tooling and Diagnostics</h2>\n<ul>\n<li>Added support for compiler warnings</li>\n<li>Added warning when compilation does not converge within five attempts due to\nintense use of introspection features</li>\n<li>Added warnings for empty emphasis (<code>__</code> and <code>**</code>)</li>\n<li>Improved error message for invalid field assignments</li>\n<li>Improved error message after single <code>#</code></li>\n<li>Improved error message when a keyword is used where an identifier is expected</li>\n<li>Fixed parameter autocompletion for functions that are in modules</li>\n<li>Import autocompletion now only shows the latest package version until a colon\nis typed</li>\n<li>Fixed autocompletion for dictionary key containing a space</li>\n<li>Fixed autocompletion for <code>for</code> loops</li>\n</ul>\n<h2 id=\"command-line-interface\">Command line interface</h2>\n<ul>\n<li>Added <code>typst query</code> subcommand to execute a\n<a href=\"/en-US-v0.13.1/reference/introspection/query/#command-line-queries\">query</a> on the command\nline</li>\n<li>The <code>--root</code> and <code>--font-paths</code> arguments cannot appear in front of the\ncommand anymore <strong>(Breaking change)</strong></li>\n<li>Local and cached packages are now stored in directories of the form\n<code>{namespace}/{name}/{version}</code> instead of <code>{namespace}/{name}-{version}</code>\n<strong>(Breaking change)</strong></li>\n<li>Now prioritizes explicitly given fonts (via <code>--font-paths</code>) over system and\nembedded fonts when both exist</li>\n<li>Fixed <code>typst watch</code> not working with some text editors</li>\n<li>Fixed displayed compilation time (now includes export)</li>\n</ul>\n<h2 id=\"miscellaneous-improvements\">Miscellaneous Improvements</h2>\n<ul>\n<li>Added <a href=\"/en-US-v0.13.1/reference/model/heading/#parameters-bookmarked\"><code>bookmarked</code></a> argument to heading to control\nwhether a heading becomes part of the PDF outline</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/model/figure/#definitions-caption-position\"><code>caption-pos</code></a> argument to control the\nposition of a figure's caption</li>\n<li>Added <a href=\"/en-US-v0.13.1/reference/introspection/metadata/\" title=\"`metadata`\"><code>metadata</code></a> function for exposing an arbitrary value to the\nintrospection system</li>\n<li>Fixed that a <a href=\"/en-US-v0.13.1/reference/introspection/state/\" title=\"`state`\"><code>state</code></a> was identified by the pair <code>(key, init)</code> instead of\njust its <code>key</code></li>\n<li>Improved indent logic of <a href=\"/en-US-v0.13.1/reference/model/enum/\">enumerations</a>. Instead of requiring at least\nas much indent as the end of the marker, they now require only one more space\nindent than the start of the marker. As a result, even long markers like <code>12.</code>\nwork with just 2 spaces of indent.</li>\n<li>Fixed bug with indent logic of <a href=\"/en-US-v0.13.1/reference/text/raw/\" title=\"`raw`\"><code>raw</code></a> blocks</li>\n<li>Fixed a parsing bug with dictionaries</li>\n</ul>\n<h2 id=\"development\">Development</h2>\n<ul>\n<li>Extracted parser and syntax tree into <code>typst-syntax</code> crate</li>\n<li>The <code>World::today</code> implementation of Typst dependents may need fixing if they\nhave the same <a href=\"https://github.com/typst/typst/issues/1842\">bug</a> that the CLI\nworld had</li>\n</ul>\n<h2 id=\"contributors\">Contributors</h2>"}}