diff options
Diffstat (limited to 'docs/changelog/0.4.0.md')
| -rw-r--r-- | docs/changelog/0.4.0.md | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/docs/changelog/0.4.0.md b/docs/changelog/0.4.0.md new file mode 100644 index 00000000..a5c30cdd --- /dev/null +++ b/docs/changelog/0.4.0.md @@ -0,0 +1,106 @@ +--- +title: 0.4.0 +description: Changes in Typst 0.4.0 +--- + +# Version 0.4.0 (May 20, 2023) + +## Footnotes +- Implemented support for footnotes +- The [`footnote`] function inserts a footnote +- The [`footnote.entry`]($footnote.entry) function can be used to customize the + footnote listing +- The `{"chicago-notes"}` [citation style]($cite.style) is now available + +## Documentation +- Added a [Guide for LaTeX users]($guides/guide-for-latex-users) +- Now shows default values for optional arguments +- Added richer outlines in "On this Page" +- Added initial support for search keywords: "Table of Contents" will now find + the [outline] function. Suggestions for more keywords are welcome! +- Fixed issue with search result ranking +- Fixed many more small issues + +## Math +- **Breaking change**: Alignment points (`&`) in equations now alternate between + left and right alignment +- Added support for writing roots with Unicode: For example, `[$root(x+y)$]` can + now also be written as `[$√(x+y)$]` +- Fixed uneven vertical [`attachment`]($math.attach) alignment +- Fixed spacing on decorated elements (e.g., spacing around a + [canceled]($math.cancel) operator) +- Fixed styling for stretchable symbols +- Added `tack.r.double`, `tack.l.double`, `dotless.i` and `dotless.j` + [symbols]($category/symbols/sym) +- Fixed show rules on symbols (e.g. `{show sym.tack: set text(blue)}`) +- Fixed missing rename from `ast.op` to `ast` that should have been in the + previous release + +## Scripting +- Added function scopes: A function can now hold related definitions in its own + scope, similar to a module. The new [`assert.eq`]($assert.eq) function, for + instance, is part of the [`assert`] function's scope. Note that function + scopes are currently only available for built-in functions. +- Added [`assert.eq`]($assert.eq) and [`assert.ne`]($assert.ne) functions for + simpler equality and inequality assertions with more helpful error messages +- Exposed [list]($list.item), [enum]($enum.item), and [term list]($terms.item) + items in their respective functions' scope +- The `at` methods on [strings]($str.at), [arrays]($array.at), + [dictionaries]($dictionary.at), and [content]($content.at) now support + specifying a default value +- Added support for passing a function to [`replace`]($str.replace) that is + called with each match. +- Fixed [replacement]($str.replace) strings: They are now inserted completely + verbatim instead of supporting the previous (unintended) magic dollar syntax + for capture groups +- Fixed bug with trailing placeholders in destructuring patterns +- Fixed bug with underscore in parameter destructuring +- Fixed crash with nested patterns and when hovering over an invalid pattern +- Better error messages when casting to an [integer]($int) or [float]($float) + fails + +## Text and Layout +- Implemented sophisticated CJK punctuation adjustment +- Disabled [overhang]($text.overhang) for CJK punctuation +- Added basic translations for Traditional Chinese +- Fixed [alignment]($raw.align) of text inside raw blocks (centering a raw + block, e.g. through a figure, will now keep the text itself left-aligned) +- Added support for passing a array instead of a function to configure table + cell [alignment]($table.align) and [fill]($table.fill) per column +- Fixed automatic figure [`kind`]($figure.kind) detection +- Made alignment of [enum numbers]($enum.number-align) configurable, defaulting + to `end` +- Figures can now be made breakable with a show-set rule for blocks in figure +- Initial fix for smart quotes in RTL languages + +## Export +- Fixed ligatures in PDF export: They are now copyable and searchable +- Exported PDFs now embed ICC profiles for images that have them +- Fixed export of strokes with zero thickness + +## Web app +- Projects can now contain folders +- Added upload by drag-and-drop into the file panel +- Files from the file panel can now be dragged into the editor to insert them + into a Typst file +- You can now copy-paste images and other files from your computer directly into + the editor +- Added a button to resend confirmation email +- Added an option to invert preview colors in dark mode +- Added tips to the loading screen and the Help menu. Feel free to propose more! +- Added syntax highlighting for YAML files +- Allowed middle mouse button click on many buttons to navigate into a new tab +- Allowed more project names +- Fixed overridden Vim mode keybindings +- Fixed many bugs regarding file upload and more + +## Miscellaneous Improvements +- Improved performance of counters, state, and queries +- Improved incremental parsing for more efficient recompilations +- Added support for `.yaml` extension in addition to `.yml` for bibliographies +- The CLI now emits escape codes only if the output is a TTY +- For users of the `typst` crate: The `Document` is now `Sync` again and the + `World` doesn't have to be `'static` anymore + +## Contributors +<contributors from="v0.3.0" to="v0.4.0" /> |
