Commit Graph

477 Commits

Author SHA1 Message Date
Laurenz b7430f6da0 Fix incremental compilation by fixing closure capturing
Fixes #1958
2023-09-16 12:37:35 +02:00
Laurenz 464dac8d4a Remove outdated note on transparency 2023-09-15 10:28:44 +02:00
Laurenz de902d8775 Minor docs fixes 2023-09-14 14:59:16 +02:00
Laurenz f15b81e9a7 Bump svg2pdf 2023-09-14 14:43:11 +02:00
Laurenz 3dd12d13f8
Fix invisibles on final page (#2141) 2023-09-14 13:36:39 +02:00
Laurenz Stampfl 47c7975d70
Fix bug where not all text nodes were detected (#2136) 2023-09-13 23:00:35 +02:00
frozolotl c203eff9f4
Allow typst package to compile by itself (#2130) 2023-09-13 20:37:17 +02:00
Johannes Wolf 68fc6f5bc0
array: Mention sort stability in the docs (#2129) 2023-09-13 19:49:41 +02:00
Laurenz Stampfl a5e39d814c
Update to usvg 0.35 (#2113) 2023-09-13 16:41:45 +02:00
Laurenz 6aa9dbfbe6 Touch up docs a little 2023-09-13 15:43:54 +02:00
Laurenz 5df550f8e8 Memoize plugin invocations 2023-09-13 15:43:18 +02:00
Laurenz 88404e924b Mention import renaming in the docs 2023-09-13 15:42:35 +02:00
Laurenz ff2650373c Fix floating placement within containers
Fixes #1879
2023-09-13 15:26:23 +02:00
Laurenz dad7c88576 Fix embedding of CID-keyed fonts into PDF
Fixes #2032
Fixes #573
2023-09-13 15:03:37 +02:00
Laurenz f9feea3f29 Bump dependencies 2023-09-13 14:44:45 +02:00
Laurenz 68b365b351 Fix newline in text in math
Fixes #1948
2023-09-13 13:45:05 +02:00
Laurenz 8fb225feb4 Fix box in 100% width block
Fixes #2128
2023-09-13 13:44:28 +02:00
Kevin K 8927f3d572
Add logical numbering support for PDF export (#1933)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-09-13 10:18:08 +02:00
Wenzhuo Liu c1a8ea68cb
Fix typo in svg export (#2124) 2023-09-13 10:01:20 +02:00
Dmitrij 6275dfd062
Add figure separator field (#1791) 2023-09-12 15:01:59 +02:00
MALO 976abdfe7d
Add `figure.caption` element (#1704)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-09-12 14:47:36 +02:00
Laurenz e39be71a54 Fix newline parsing behaviour in markup 2023-09-12 11:45:24 +02:00
frozolotl 14d28dbf4e
Gracefully handle error if field was not defined (#2110) 2023-09-12 11:26:35 +02:00
Laurenz 2dc000daeb Type compatibility
For now, types can be used like strings in operations to prevent breakage of many packages. Hopefully, we can get rid of this in the future.
2023-09-11 17:38:03 +02:00
Laurenz 3a979e88da Docs generation for types 2023-09-11 15:53:20 +02:00
Laurenz b471ac7d59 First-class types
Makes types first-class values.
2023-09-11 14:40:22 +02:00
Laurenz 8f36fca684 Better proc macros 2023-09-11 14:38:54 +02:00
Laurenz 921b40cf9c Forward third-party errors
Better to know something even if it isn't always formatted in the prettiest way
2023-09-11 12:04:37 +02:00
Zicklag 6483d3035b
Support proxy and custom certificate configuration. (#2006) 2023-09-11 12:03:47 +02:00
LU Jialin d056280165
Wrap into an equation when a Math expr is evaluated (#2081) 2023-09-11 10:47:08 +02:00
LU Jialin 71dccde031
Provide `highlight` function for setting the background color of text (#2076) 2023-09-11 10:46:39 +02:00
Laurenz 073effc740 Fix font family mismatch between Typst and usvg
Fixes #2051
2023-09-09 22:33:17 +02:00
raphCode 66a5958917
Add note: footnote show/set rules at document start (#2078) 2023-09-07 12:01:50 +02:00
klMse 97ca009bb8
Fix arguments for hyberbolic functions (#2072) 2023-09-06 14:27:44 +02:00
Laurenz 65aeea3142 Fix spacing after number in math
Fixes #1052
2023-09-06 12:15:27 +02:00
Laurenz fe402759c0 Don't automatically match fences
Fixes #306
2023-09-06 12:07:37 +02:00
Laurenz b76e8d5db9 Interpret vertical page number alignment differently
The vertical alignment of `number-align` now selects header or footer instead of aligning within the footer. This is a minor breaking change because
- top behaves differently now
- horizon is now forbidden
- bottom (the new default) behaves differently, too
Typical number-align usage will likely not use the vertical component at all, though.

Fixes #645
2023-09-06 10:32:54 +02:00
Laurenz 87c0a5171a Bump hayagriva 2023-09-05 12:17:30 +02:00
LU Jialin e0e1462439
fix typo in the to-bytes conversion (#2067) 2023-09-05 09:16:02 +02:00
Laurenz 2f672b4e2e Allow packages to specify their minimum compiler version 2023-09-04 16:29:57 +02:00
Laurenz 68a25f497e Bump hypher 2023-09-04 13:23:14 +02:00
Laurenz 7c42c9bab0 Docs fixes
Fixes #2059
Fixes #1946
Fixes #1936
Fixes #1862
Fixes #1820
Fixes #1383
2023-09-04 13:18:35 +02:00
Simon Rask be83b2cc66
Remove `ManuallyDrop` usage (#2058)
This usage can be removed since the issue was fixed: https://github.com/rust-lang/rust/issues/70919
2023-09-04 11:47:13 +02:00
KillTheMule 1cc67d5df2
Update ast.rs (#2057)
Rust 1.74 warns about this, noting it will be a hard error soon. Quite annoying when developing on an unstable compiler now already ;)
2023-09-04 11:46:44 +02:00
bluebear94 499c5f2444
Fix improper line wrapping in the presence of medial newlines (#2056)
Fixes #2019.
2023-09-04 11:46:17 +02:00
Martin Haug ba043a8d70
Add a page setup guide (#1911) 2023-09-04 11:43:11 +02:00
Laurenz c0b332a4c0 Font embedding fixes
- Subset prefix based on hash instead of hardcoded
- Fix base font name of Type0 font
- Embed CFF directly as standalone font

Co-Authored-By: Martin Haug <mhaug@live.de>
2023-09-01 13:56:45 +02:00
Anton Wetzel ca1096de78
Replace tabs with spaces in raw elements. (#2042) 2023-08-31 10:06:31 +02:00
jimvdl aea20670d8
Display download progress for self-updating and packages (#2031) 2023-08-31 10:02:53 +02:00
Szymon Bęczkowski 6b7db851e9
Modify sqrt example (#2028) 2023-08-31 09:52:12 +02:00
Reid Johnson 5c1db0c4b8
Add regular polygons to visualize (#1215) 2023-08-31 09:51:00 +02:00
Kevin K bcab770524
Fix typo in docs of `decode` method for image (#2046) 2023-08-30 17:31:30 +02:00
Laurenz a6f347fbb7 Add test for ends-with fix 2023-08-30 17:19:25 +02:00
Neill Johnston dacab7869f
Fix: ends-with (#2034) 2023-08-30 17:17:27 +02:00
Laurenz 5b36b46230 Fix data loading display names 2023-08-30 17:15:49 +02:00
Beiri22 d3ca2ff4ec
Support CBOR binary serialization / deserialization (#2000) 2023-08-30 17:11:21 +02:00
Pg Biel 19b91d59d1
Allow renaming imports with `as` (#1923) 2023-08-30 13:36:02 +02:00
Sébastien d'Herbais de Thun 8a0dd88f10
Make zip variadic (#2041) 2023-08-30 13:31:37 +02:00
Beiri22 e1558268f9
Introduce second variant of Ignorant Behaviour and prevent weak page breaks at basically empty pages (#1929) 2023-08-30 12:58:16 +02:00
Beiri22 f616302496
Duration type, simple date-duration-calculations and comparisons (#1843) 2023-08-30 12:28:53 +02:00
Matt Fellenz 35c785ea11
Add tau (#2033) 2023-08-30 11:56:00 +02:00
Laurenz 0e5c48ad0d Add a bit more docs to `compile` 2023-08-29 18:01:18 +02:00
Laurenz a71a2057f2 More type safety for spans 2023-08-29 17:35:35 +02:00
jimvdl 7bdf1f57b0
Let the CLI `typst update` itself without a package manager (#1887) 2023-08-26 20:44:58 +02:00
sitandr b2d6cb58dc
Fix weak spacing broken in math (#1966) 2023-08-26 17:36:52 +02:00
Kevin K 45bd58fbaa
Implement `rev()` method on string (#2013) 2023-08-26 17:35:52 +02:00
Sébastien d'Herbais de Thun cd13e55dd1
Fixed numbering hint (#2012) 2023-08-26 16:02:28 +02:00
Andrew Voynov 0f794c8c75
Fixed counter's "Time travel" doc example (#2002) 2023-08-25 21:42:50 +02:00
Laurenz 7c1ee0ac0d Fix formatting 2023-08-25 17:57:11 +02:00
Kivi Kaitaniemi 139328bb95
Add Finnish translations (#1996) 2023-08-25 14:32:11 +02:00
Beiri22 22b5959608
separate decode from string/bytes for all data functions; and encode for json, toml, yaml via serde (#1935) 2023-08-25 14:31:03 +02:00
Beiri22 ea469c2df6
calm down clippy even more (#1997) 2023-08-25 14:27:50 +02:00
Laurenz 94df32a919 Make clippy happy 2023-08-25 11:34:04 +02:00
lolstork c00fc14905
Initial support for augmented matrices (#1679) 2023-08-25 11:16:03 +02:00
Matt Fellenz ff5dc9191e
Add format arg to CLI (#1985) 2023-08-23 22:44:03 +02:00
bluebear94 3fcb5ea73c
Render opening smart quote after another opening quote of a different type (#1559) 2023-08-23 14:55:43 +02:00
bluebear94 b59b8bfb35
linebreak_optimized: Handle breakpoints separated only by spaces (#1821) 2023-08-23 13:39:22 +02:00
Laurenz afc95ed19d Virtual path type
Fixes #1937
2023-08-22 14:21:04 +02:00
damaxwell 756bdb623c
Support selectors with and/or followed by before/after (#1883)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-08-22 12:23:55 +02:00
Laurenz 8f19b49afa Fix some typos in CLI help 2023-08-22 01:09:19 +02:00
Laurenz 522708b9df Set new minimum serde version
1.0.184 does not ship with a precompiled binary anymore
2023-08-21 21:49:14 +02:00
Lukas Löring f600515625
Improve clarity regarding location parameter in counter.final() (#1962) 2023-08-21 16:53:56 +02:00
Clemens Koza 73999fe823
Fix documentation on when raw text is a block. (#1953) 2023-08-21 16:53:45 +02:00
Simon Rask 046029b1e2
Add hint for missing method error for dictionary where a field with a function is present (#1922) 2023-08-21 16:26:05 +02:00
Laurenz f6a4b8f97b Propagate error before checking for control flow event 2023-08-21 16:22:17 +02:00
bluebear94 877df549aa
Check for control flow event before let binding (#1912)
Fixes #1906 (trying to destructure the result of `continue`).
2023-08-21 16:21:37 +02:00
Gokul Soumya 5c6434d4ce
Add intersperse() method for arrays (#1897) 2023-08-21 16:01:27 +02:00
Laurenz 487fddb7cb Fix a few typos 2023-08-21 15:40:52 +02:00
Laurenz d52493938e Make bytes joinable 2023-08-21 15:33:03 +02:00
astrale-sharp 99ddbafc09
Wasm plugin system (#1555) 2023-08-21 15:17:16 +02:00
Laurenz 4b29bf6ff6 Implement `Serialize` and `Deserialize` for completions 2023-08-21 11:14:08 +02:00
Kingfree 287556bc14
Local names for Chinese and Traditional Chinese (#1919) 2023-08-20 12:09:16 +02:00
Laurenz 3ab179ebd3 Restrict serde version 2023-08-19 20:06:01 +02:00
Laurenz 5fb5854ed8 Make AST borrowed 2023-08-19 19:44:08 +02:00
sitandr 2f81089995
Fix single prime in subscript (#1909)
* Fix single prime in subscript (a_' producing wrong result)

* Clippy
2023-08-10 21:36:05 +02:00
sitandr 1e21fac2ce
Fix crashing on empty regexps (#1870) 2023-08-08 14:42:04 +02:00
Laurenz 2ea451b83b Refactor SVG export a bit 2023-08-08 13:00:47 +02:00
Wenzhuo Liu 61e4ad6bba
Add SVG export (#1729) 2023-08-08 12:54:13 +02:00
Matt Fellenz f56060c1b3
Penalize runts (#1858) 2023-08-08 11:27:15 +02:00
Laurenz ea834d9d1d Bump pdf-writer and svg2pdf 2023-08-07 16:59:15 +02:00
Laurenz 44e5e9c5f1 Add hint for "access denied" message 2023-08-07 16:46:33 +02:00
Laurenz b61eee4306 Fix autocomplete for functions in modules 2023-08-07 16:15:38 +02:00
Laurenz 07c80e9a81 Touch up docs 2023-08-07 15:58:16 +02:00
Mathias Fischler 800744ed9d
Show warning to user if they use double/empty underscores (italic) (#1871) 2023-08-07 13:47:29 +02:00
Gokul Soumya 63935b9513
Remove outdated docs about toml() not supporting datetimes (#1874) 2023-08-07 13:38:21 +02:00
Beiri22 357bce56f5
Query-System for metadata (#1812)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-08-06 23:49:04 +02:00
Beiri22 e3115336bf
Decode image (#1810) 2023-08-05 13:58:28 +02:00
Laurenz Stampfl 49282626e9
Add support for opacities (#1844) 2023-08-05 12:03:26 +02:00
damaxwell ba0990f189
Period and slash are ordinary characters in math (#1855) 2023-08-05 12:02:38 +02:00
damaxwell ad55755f33
Correct spacing between closing delimiter and large operators (#1857) 2023-08-05 12:01:53 +02:00
Laurenz b8b0137504 Bytes type
- Moves `Bytes` from `util` to `eval` module
- Accepts bytes in `str` function for bytes -> str conversion
- Adds `bytes` function for str | array -> bytes conversion
- Adds `array` function for bytes -> array conversion
- Adds `len`, `at`, and `slice` methods for bytes
- Adds `encoding` parameter to `read` function
2023-08-04 15:46:46 +02:00
Laurenz 028d2f5308 Split markup and math shorthands for docs 2023-08-03 16:33:17 +02:00
Laurenz 53a896f049 Bump hypher 2023-08-03 16:21:01 +02:00
Martin Haug 3a2fbcb49c Add shorthands to category pages 2023-08-03 16:10:49 +02:00
Luke Chambers 02d981ed1c
Search additional font paths before system/embedded (#1847) 2023-08-03 13:55:00 +02:00
bluebear94 c5a103867d
layout::par::finalize: Bound allotted width when fitting to width (#1828)
Sometimes, optimized line breaking outputs lines that are wider
than the allotted width so that spacing between words can be
narrowed to fit. However, the width calculation for the fit-to-width
case does not account for this, causing the resulting width to exceed
the width of the region. This commit takes the minimum of the
calculated width with the width of the region. Fixes #1825.
2023-08-03 00:45:40 +02:00
Anton Wetzel 39e101f0af
enum ident one more then current start (#1824) 2023-08-03 00:35:26 +02:00
damaxwell 20eb284318
Ensure normal weight math font face is consistent (#1774) 2023-08-03 00:34:54 +02:00
Wenzhuo Liu 733c5c9913
fix(cli): include export in compile time (#1816) 2023-08-03 00:31:28 +02:00
damaxwell cd163868f5
large operators have limits in displays; relations have limits always (#1748) 2023-08-03 00:27:33 +02:00
bluebear94 3c94e05ced
Warn if layout doesn't stabilize (#1684) 2023-08-03 00:24:25 +02:00
Beiri22 77cc05b121
Fix datetime offset (#1845) 2023-08-01 23:54:37 +02:00
Laurenz 1c7105ba82 Change package search and caching path
Brings local packages in line with changes to the package repository. See also: https://github.com/typst/packages/issues/61
2023-08-01 00:59:40 +02:00
bluebear94 66df130ca4
Add start parameter to array enumerate (#1818) 2023-07-29 23:11:21 +02:00
Pg Biel 5bd97e218b
Update field mutation error message (#1742) 2023-07-26 23:03:33 +02:00
Adrián Delgado 7341bdf2d1
Cleanup docs (#1797) 2023-07-26 22:18:06 +02:00
Adrián Delgado 69e16a8877
Add Listing's Spanish translation (#1798) 2023-07-26 22:17:18 +02:00
damaxwell f197a447a4
Gardening. (#1789) 2023-07-25 18:26:45 +02:00
Laurenz Stampfl 8e200c356c
Enable feature raster images to resvg (#1786) 2023-07-24 22:17:49 +02:00
Laurenz c0af6e3569 Fix for loop (with key) autocompletion
The special-case for loop syntax does not exist anymore, but the pattern syntax covers the use case. Fixes #1778.
2023-07-24 12:27:24 +02:00
Laurenz c23d036426 Show only latest version until colon is typed
Fixes #1734
2023-07-24 12:24:43 +02:00
Laurenz b2e58f7207 Bump svg2pdf
Co-Authored-By: Laurenz Stampfl <47084093+LaurenzV@users.noreply.github.com>
2023-07-21 23:58:00 +02:00
damaxwell 51a21403ba
Improved #box baselines in math (#1755)
* Improved #box baselines in math

* add a test
2023-07-20 12:59:22 +02:00
damaxwell c72952b512
Center delimiters vertically about the axis (#1756) 2023-07-20 12:50:12 +02:00
damaxwell 6a396ae214
Center large operators on axis (#1735) 2023-07-20 09:47:29 +02:00
DVDTSB 0e04d46e31
Move `perp` symbol into correct category (#1741) 2023-07-19 13:13:47 +02:00
Laurenz fc90b72355 Identify state by key only 2023-07-19 13:11:54 +02:00
Laurenz fa9e2c6237 Resolve `place` deltas relative to real container size 2023-07-19 12:59:34 +02:00
Laurenz 3dcd8e6e6b
Positions placed elements relative to real container size (#1745)
This positions placed elements relative to the real container size instead of relative to the base size of the region. This makes its usage more versatile.

Fixes #82
Fixes #685
Fixes #1705
2023-07-19 12:53:36 +02:00
lolstork b37c1e2731
Add infrastructure for compiler warnings (#1731) 2023-07-19 12:52:47 +02:00
damaxwell 8a57395ee4
Support OpenType writing script (#1697) 2023-07-19 12:25:24 +02:00
Laurenz f39bfa4762 Enable ecow's serde feature for typst-syntax 2023-07-19 10:47:14 +02:00
Laurenz 803ae9309f Support `scope` argument for `eval` 2023-07-18 21:53:42 +02:00
Laurenz f52c39c388 Support different modes for `eval` 2023-07-18 21:53:39 +02:00
Laurenz f5953887c9 Extract syntax module into typst-syntax crate 2023-07-18 21:04:46 +02:00
damaxwell 7dc605307c
Improved math root layout (#1743) 2023-07-18 15:41:35 +02:00
Sébastien d'Herbais de Thun 0c94d2b34e
Adding `dedup` to `array` (#1738) 2023-07-18 15:23:56 +02:00
damaxwell 7a1cd362aa
Support for bounding box text edges (#1626) 2023-07-17 18:19:46 +02:00
Myriad-Dreamin 9b72ee4d22
Load theme for raw code (#1675) 2023-07-17 16:43:33 +02:00
Liam Murphy e0e797c27d
Classify `dots.c`, `dots.down`, `dots.up` and `dots.v` as normal (#1726)
Fixes #713. They were previously classified by Unicode as relations, which caused a '+' sign after one of them to be treated as a unary operator rather than a binary operator. This PR overrides the Unicode classification and classifies them as normal instead, which causes a '+' sign after one of them to be properly treated as a binary operator.
2023-07-17 16:08:19 +02:00
Andrew Jeffery c98c3d1a38
Allow spaces in dict (#1692) 2023-07-17 16:02:04 +02:00
KG 31efd542cb
Rename math symbols (#1124)
Co-authored-by: Ryan Pitasky <111201305+rpitasky@users.noreply.github.com>
Co-authored-by: Daniel Csillag <15617291+dccsillag@users.noreply.github.com>
2023-07-17 15:54:26 +02:00
Pg Biel 9b1a2b41f0
Add fields and methods to several primitives (#790) 2023-07-11 16:11:18 +02:00
MALO 507efc3a1c
Do not take empty lines into account when computing `raw` block dedent (#1676) 2023-07-10 18:23:14 +02:00
Laurenz 78f96f844b Basic floating placement 2023-07-10 18:16:59 +02:00
Trévis Morvany 0e8492eac1
Fix `typst watch` not working with some text editors (#1680) 2023-07-10 12:21:59 +02:00
sitandr dfe361ec6a
Better primes in math (#1614) 2023-07-10 12:09:09 +02:00
Eric Biedert be0f8fe6d7
Customizable math classes (#1681) 2023-07-10 11:00:12 +02:00
Murphy Sünnenwold 7404f85a02
Add more math operators (#1090) 2023-07-08 19:57:53 +02:00
Laurenz 1bb024ca3f Fix autocompletion for dictionary key with spaces 2023-07-06 16:09:37 +02:00
Laurenz db09a5a712 Better error messages for `#` expressions 2023-07-06 16:01:23 +02:00
Laurenz adcc6e5506 Better error messages for keywords in place of identifiers
Fixes #1123
2023-07-06 15:16:41 +02:00
T0mstone 46a6f92bf3
Add alternative smartquotes (#1631) 2023-07-06 13:52:24 +02:00
Sébastien d'Herbais de Thun 07553cbe71
Raw syntax definition loading (#1655) 2023-07-06 13:51:28 +02:00
bluebear94 cba200d4ec
Handle single and alternate substs for single glyphs in math mode (#1592) 2023-07-06 10:11:42 +02:00
Erik Bünnig c4a1bd0055
Caption position (#1495) (#1496) 2023-07-06 10:08:53 +02:00
Shogo Takata dca56a8028
Add Japanese translation for LocalName (#1662) 2023-07-06 09:59:06 +02:00
lolstork 286dec3f0a
Make default margin behavior more precise (#1666) 2023-07-06 09:38:04 +02:00
bluebear94 a4756d8576
Add support for weak elements in math (#1633) 2023-07-06 09:37:19 +02:00
Mathias Fischler 5bdad06d92
Parser hints infrastructure (#1570) 2023-07-05 16:25:26 +02:00
Pg Biel d37217aaa4
Add heading `bookmarked` toggle (#1566) 2023-07-05 16:16:00 +02:00
raphCode 8711b5eeed
Clarify docs: Weak spacings eat markup space (#1648)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-07-05 12:54:33 +02:00
Lynn 9a9da80665
Color mixing function (#1332)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-07-05 11:26:50 +02:00
Laurenz 5fdd62141f Reword CLI docs 2023-07-04 16:47:57 +02:00
Laurenz 22052f4b59 Adapt docs infrastructure 2023-07-04 15:49:07 +02:00
Laurenz 615b1eacc7 Move roadmap into this repository 2023-07-03 17:32:29 +02:00
Laurenz ebfdb1dafa Move everything into `crates/` directory 2023-07-02 20:07:43 +02:00