Commit Graph

796 Commits

Author SHA1 Message Date
Laurenz 63b73ee98c
Refactor behaved building (#3403) 2024-02-12 12:29:52 +00:00
Leedehai 17d687b6a2
Better errors for array/dictionary method calls that return mutable (#3370) 2024-02-11 13:08:43 +00:00
Harry Smith a1f111dfa6
Fix hebrew symbol codepoints (#3375) 2024-02-11 13:04:57 +00:00
frozolotl e2e8159bb2
Do not enter alternate screen if colors are disabled (#3366) 2024-02-08 09:29:36 +00:00
Joseph Wilson 260018c6cc
Fix typo in Stroke::repr (#3374) 2024-02-07 09:16:24 +00:00
spore 70b354e887
Support reading input from stdin (#3339) 2024-02-05 13:05:26 +00:00
Laurenz 302b870321
Delay errors for all show rules (#3323) 2024-02-05 09:56:09 +00:00
Leedehai 6a9866dc80
Update dictionary.insert() doc and tests (#3343) 2024-02-05 09:42:47 +00:00
Laurenz 92aba81a91
Support text show rules that match their own output (#3327) 2024-02-05 09:42:14 +00:00
Laurenz 71ed779599
Fix terms show rule (#3325) 2024-02-04 11:25:28 +00:00
tingerrr a8f764ab48
Fix error swallowing (#3338) 2024-02-04 11:23:29 +00:00
Laurenz 2594b36701
Support for and/or selectors in show rules (#3326) 2024-02-02 14:25:19 +00:00
Martin Kröning 356032bf8c
font-exceptions: override weight of Arial Black (#3321)
Signed-off-by: Martin Kröning <martin.kroening@eonerc.rwth-aachen.de>
2024-02-02 10:54:05 +00:00
Laurenz f1ba218e8f
Use heading's own location for numbering (#3322) 2024-02-02 10:53:39 +00:00
Peng Guanwen 154747590e
Fix style issue for Latin Modern (#3315) 2024-02-02 08:53:51 +00:00
Leedehai c06a71f653
Let for-loop iterate Dict with an iterator (#3318) 2024-02-02 08:52:58 +00:00
Leedehai 42f59af812
Allow for-loop to iterate over bytes (#3317) 2024-02-02 08:51:44 +00:00
Peng Guanwen 464a15bdca
Introduce override list to FontInfo (#3228) 2024-02-01 13:45:33 +00:00
Laurenz 7d33436e55
Fix show-set semantics (#3311) 2024-02-01 13:30:17 +00:00
Laurenz 426445edfc
Ensure synthesized field access never panics (#3310) 2024-01-31 13:56:57 +00:00
frozolotl 6999be9ab0
Use alternate screen and refactor terminal output. (#2665) 2024-01-31 09:19:07 +00:00
Leedehai 51854ba4df
Adjust for-loop's pattern matching rules (#3308) 2024-01-31 09:12:06 +00:00
Michael Färber de31a5ce59
Document how to cite sources with special characters. (#3261)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-30 14:37:33 +00:00
Laurenz b744b87818
Respect set rules in where selectors (#3290) 2024-01-30 14:24:41 +00:00
Laurenz a1e8560ca6
Refactor `#[elem]` macro (#3303) 2024-01-30 13:49:51 +00:00
Laurenz f14288cacf
Refactor folding (#3294) 2024-01-30 09:43:08 +00:00
Leedehai a3e1c70e9e
Fix an error of uncastable dict input (#3247) 2024-01-30 09:30:57 +00:00
Leedehai a603729336
Remove an unnecessary clone in loop evaluation (#3297) 2024-01-30 09:30:34 +00:00
Laurenz 23bb48b31e Refactor capability helpers 2024-01-29 12:40:28 +01:00
Laurenz 03079887f3 Merge `Fields` and `ElementFields` traits 2024-01-29 12:37:55 +01:00
Terts Diepraam ead94a64df
Link to `datetime` from `datetime.display` docs (#3270) 2024-01-29 10:47:36 +00:00
Peng Guanwen 269860c571
Do not parse special spaces to Space Token (#3267) 2024-01-29 10:46:41 +00:00
Laurenz 6207b3d9b0
Configure ureq to use sytem-native TLS (#3258) 2024-01-26 09:50:43 +00:00
Laurenz b09d6ae31c
Refactor math styling to bring it closer to normal styling (#3262) 2024-01-26 09:50:33 +00:00
zica d8464a9a81
Add missing Chinese counting symbols to documentation (#3264) 2024-01-26 09:21:53 +00:00
Laurenz Stampfl afc28264e8
Bump resvg + svg2pdf and add support for filters (#3254) 2024-01-25 15:42:04 +00:00
PgBiel cd71741532
Merging cells: Colspans [More Flexible Tables Pt.3a] (#3239) 2024-01-25 15:35:10 +00:00
Artemis Tosini 310a89cbd8
Include units in top-level SVG element (#3233) 2024-01-25 15:34:35 +00:00
Wenzhuo Liu 6359a83f82
doc: remove inaccurate statement in eval (#3250) 2024-01-25 15:15:13 +00:00
Myriad-Dreamin f1fbb479b0
Make typst's advanced color public (#3234) 2024-01-25 15:14:48 +00:00
Malo 02b16bf9cf
Make `math.class` affect the limit configuration (#3231) 2024-01-25 15:14:12 +00:00
Laurenz Stampfl 11abc1f1e3
Fix PDF export of grayscale image (#3219) 2024-01-25 15:12:31 +00:00
Tobias Rapp b4b17871d6
Add symbol name for narrow non-breaking space (#3217) 2024-01-25 15:08:22 +00:00
mkpoli ff6da491c8
Add explanation of show rule scope in footnote (#3187) 2024-01-25 15:07:37 +00:00
PgBiel 47b8d61cd8
Implement bitwise operations on integers (#3130) 2024-01-25 15:07:11 +00:00
Laurenz 2a8e40f282 More efficient guard storage 2024-01-24 17:08:37 +01:00
Laurenz 6ab04d80f3 Remove guards for built-in elements
The only recursive built-in show rule was the one for equations and that one was unnecessary.
2024-01-24 16:29:20 +01:00
Laurenz a3684352ea Handle `Finalize` alongside `Synthesize` 2024-01-24 15:47:54 +01:00
Malo 1612913f8f
Add `gt.approx`, `gt.napprox`, `lt.approx`, `lt.napprox` and `colon.double` (#3245) 2024-01-24 10:56:03 +00:00
Andrew Voynov f27321b269
Renamed `diff` symbol to `partial` (#3211) 2024-01-18 13:27:21 +00:00
Laurenz fae358968f Cleaner separation between single and multi-region layout 2024-01-18 11:47:45 +01:00
Laurenz 6ac71eeaf7 Add `Page` struct
To get rid of the Meta hack where numbering and things like that are stored in the frame.
2024-01-17 21:53:20 +01:00
Laurenz 50741209a8 Handle metadata application where styles are managed 2024-01-17 20:55:50 +01:00
Laurenz fe56fb29fa Fix emptyness check in `into_par_items` 2024-01-17 17:32:51 +01:00
Laurenz cb69648e2f Add a few manual Debug impls to elements 2024-01-17 17:32:51 +01:00
PgBiel 21585e03cf
Table cell `x` and `y` fields [More Flexible Tables Pt.2b] (#3050) 2024-01-17 15:52:28 +00:00
Laurenz 7cb257a1ac More consistent naming 2024-01-16 14:52:50 +01:00
Laurenz 55a50ace1e Don't discard other attributes in `time` macro 2024-01-16 10:33:15 +01:00
Laurenz c2dfbd39a0
Migrate metadata fields out of individual elements (#3200) 2024-01-16 09:24:36 +00:00
Heinenen ad901c2cdb
Syntax error if function name is parenthesized (#3058)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-16 08:52:56 +00:00
Laurenz f57c34a7ce Remove inline annotations in main crate
Inline annotations only have an effect cross-crate and LTO is enabled anyway. Benchmarks don't show any performance difference.

Keeping them typst-syntax and typst-timing for now because these have a higher chance of being called cross-crate by crate consumers.
2024-01-15 15:19:59 +01:00
Andrew Voynov 213bf36a05
Added gradient alias for nabla symbol (#3195) 2024-01-15 11:41:09 +00:00
violet 39003555f3
Add sym.lrm and sym.rlm (#3182) 2024-01-15 11:40:54 +00:00
Martin Haug 5a9de6046b
Add Catalan translations (#3181) 2024-01-15 11:36:48 +00:00
Laurenz 37249c20f7 Autogenerate default cast in`#[ty]` unless `cast` is specified 2024-01-12 14:43:42 +01:00
Sébastien d'Herbais de Thun 1834ebc529
Added `int.signum`, `float.signum`, `float.is-nan`, and `float.is-infinite` (#3118) 2024-01-12 13:38:58 +00:00
Laurenz c298cf61f2 Rename `Align` to `Alignment` 2024-01-12 11:05:43 +01:00
Laurenz bc2a4f802c Add Stroke::from_pair 2024-01-12 10:58:34 +01:00
Laurenz 0340497e00 Fix a few variadic signatures 2024-01-12 10:50:44 +01:00
Wenzhuo Liu cc1f974164
Partially fix hide for line, polygon, table, grid (#3139) 2024-01-09 08:12:08 +00:00
Leedehai 23875a0483
Let type constructor/field access error report the name correctly (#3140)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-09 07:45:24 +00:00
Sébastien d'Herbais de Thun 712eaaa5f4
Fix CMYK on gradients (#3142) 2024-01-08 15:53:22 +00:00
Wenzhuo Liu 46053b62e5
Fix large operators in cambria math (#3115) 2024-01-05 19:30:45 +00:00
PgBiel 8fa573a9a2
Initial table per-cell customization [More Flexible Tables Pt.2a] (#3037)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-05 19:30:07 +00:00
Leedehai a124694f08
Ignore weak HElem at the beginning and end of an LR group (#2950) 2024-01-05 18:08:27 +00:00
didier amyot d52ae4bd48
fix: removed typo from http client user agent. (#3134) 2024-01-05 18:07:55 +00:00
emilylime 4a65c2115b
Fix typos (#3126) 2024-01-05 14:12:27 +00:00
Eric Biedert 55536e218d
Improve positioning of multiple accents and attachments (#3059) 2024-01-04 15:14:26 +00:00
Leedehai 9aeb63cafa
Clarify label name's pattern in doc (#3053)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-04 15:06:55 +00:00
Kevin K 2d1c1747f7
Fix CMYK docs (#3128) 2024-01-03 20:53:17 +00:00
Myriad-Dreamin 34e3bd52aa
Inline equations linebreak at appropriate places (#2938)
Co-authored-by: David Maxwell <damaxwell@alaska.edu>
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-03 12:04:36 +00:00
Sébastien d'Herbais de Thun 3aeb150c95
Added `to-absolute` method to length. (#3117)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-03 09:43:08 +00:00
Wenzhuo Liu 28a5069f95
Fix linebreak fallback tofu (#3123) 2024-01-03 09:41:41 +00:00
Leedehai 155af2318e
Sync the new combining accents added in PR #2218 (#3069) 2024-01-03 09:37:20 +00:00
Leedehai ae3aac27d3
Expose PrimesElem as #math.primes in Typst code (#3063) 2024-01-03 09:36:50 +00:00
Leedehai 39e53fcdc9
Clarify the way to access functions from dictionaries (#3064)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-02 09:13:45 +00:00
Nathan Varner 527d63ed25
Don't stop parsing markup text for braces (#3112) 2024-01-02 09:08:07 +00:00
Sébastien d'Herbais de Thun a236e362db
Fix `#[internal]` fields needing `IntoValue` impl (#3103) 2024-01-02 09:06:56 +00:00
tingerrr 4bf16d7acb
Add a `--color` flag (#3060)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-02 09:03:01 +00:00
Heinenen c27b9e2b0f
Don't allow nested line comment inside block comment (#3048) 2023-12-30 13:01:05 +00:00
Sébastien d'Herbais de Thun c4d9b0c3d8
New performance timings (#3096)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-12-30 12:36:15 +00:00
voidiz 4e5afa672f
Suggest accessing field if method doesn't exist (#2977) 2023-12-28 14:28:04 +00:00
Eric Biedert f94708d202
Make accent size adjustable (#3077) 2023-12-28 13:30:32 +00:00
Laurenz 0c08022ffa Remove uses of `EcoString::inline`
EcoString::inline can produce runtime panics if things are changed later. It should only be used if really necessary (because of const context)
2023-12-28 13:58:03 +01:00
Laurenz 67ead94cc2 Fix naming inconsistency for strokes 2023-12-28 13:52:58 +01:00
k-84mo10 9741885aaf
Contemporary Japanese numbering (#3012) 2023-12-25 22:28:00 +01:00
Stamen b1256283da
Added Serbian translation for LocalName (#3023) 2023-12-21 00:06:44 +01:00
Laurenz 79c2ec8f6f Fix `star.stroked` 2023-12-21 00:02:57 +01:00
Martin Haug 3dc4eb6bcd Write annotation flags 2023-12-19 22:45:41 +01:00
Wenzhuo Liu 81ff34d80d
Add stroke for text (#2970) 2023-12-19 10:36:18 +01:00
PgBiel 111a69f6aa
Grid and Table API Unification [More Flexible Tables Pt.1] (#3009) 2023-12-19 10:28:41 +01:00
Emmett Rayes 6808e58a3b
Cycle list markers by default (#2788)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-12-18 18:25:28 +01:00
Niklas Ausborn 1f983ced90
Implement CSV file header rows support. (#2619)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-12-18 17:14:21 +01:00
Malo e8e797c18b
Explain how to get the location of an element returned by `query` (#2999) 2023-12-18 17:01:55 +01:00
Laurenz a821b48cf4
Shape plan caching (#2876) 2023-12-18 15:35:21 +01:00
Laurenz 2f2dd17938
Bump svg2pdf and related crates (#2992) 2023-12-18 14:15:22 +01:00
Leedehai 47bb32809a
Expand the AttachElement frame so it encompasses its child center_frame (#2968) 2023-12-18 13:19:55 +01:00
CosmicHorror 56159997b7
Switch to `two-face` for extra syntect syntaxes (#2937) 2023-12-18 13:17:47 +01:00
Carson McManus 754e1788b2
Fix a parser bug causing `x.)` to be treated as a field access (#2962) 2023-12-18 12:33:29 +01:00
Sébastien d'Herbais de Thun 08225e42d8
Parallel export (#2989) 2023-12-18 12:32:53 +01:00
Eric Biedert f3c39ac84a
Fix pattern offset in PDF (#2985) 2023-12-18 12:30:26 +01:00
PgBiel eb9dd539aa
Fix unnamed sinks not capturing named args (#2984) 2023-12-18 12:30:03 +01:00
Laurenz 22ba6825db
Key/Value data from CLI (#2894) 2023-12-18 12:18:41 +01:00
Malo 356bdeba18
Do not create a block frame for out-of-flow items only (#2517) 2023-12-18 11:37:30 +01:00
Sébastien d'Herbais de Thun 41c0dae209
Switch to parallel comemo using Git dependency (#2973) 2023-12-15 12:25:54 +01:00
Laurenz cf6ce9fd53 Make `World` thread-safe 2023-12-14 22:58:56 +01:00
Malo 7adeb49652
Improve number display (#2936) 2023-12-14 14:21:25 +01:00
Malo 9024121905
Remove mentions that Typst makes specifically 5 attempts to stabilize (#2947) 2023-12-14 14:20:02 +01:00
Sébastien d'Herbais de Thun d869a07d2d
Remove HSV and HSL color spaces from PDF export (#2927)
Co-authored-by: EpicEricEE <github@ericbiedert.de>
2023-12-13 14:35:56 +01:00
Eric Biedert 077d6b5c54
Adjust color mixing for hue-based spaces (#2931) 2023-12-13 13:23:32 +01:00
Joseph Wilson 9cfe49e4ae
Mention `color.map` module, give example (#2918) 2023-12-13 13:20:48 +01:00
Sébastien d'Herbais de Thun 231b96e5cf
Make layout account for transforms (#2555) 2023-12-13 12:44:28 +01:00
Leedehai 5eedff8667
Explain `ShapedGlyph` and `Glyph` (#2901) 2023-12-13 11:56:43 +01:00
oliver 8d7d18c4d6
More consistent spelling of "behaviour" (#2923) 2023-12-12 15:34:46 +01:00
Sébastien d'Herbais de Thun 343a423e9f
Fix #2902 (#2913) 2023-12-11 17:03:59 +01:00
Malo ce9d420472
Mention `str(<label>)` feature in documentation for `label` (#2906) 2023-12-11 17:03:26 +01:00
Leedehai d52fcd5b46
Fix quotes in Danish (#2892) 2023-12-11 16:05:31 +01:00
Laurenz 2dc0478ffe Less interior mutability in system world 2023-12-08 19:02:09 +01:00
Laurenz 3b104e2ba8 Move export cache 2023-12-08 19:02:09 +01:00
Sébastien d'Herbais de Thun 3e96f5f75f
Fix label in `.fields()` accessor (#2884) 2023-12-07 12:22:07 +01:00
Emanuel 9e333e5058
Add calc.root function (#2736)
Fixes #2522
2023-12-06 14:32:56 +01:00
PgBiel 0ebce56b36
Implement lexicographic array comparison (#2827) 2023-12-05 19:15:03 +01:00
Albert Dong 3960f8f7d9
Add theming for scopes required by diff format (#2838) 2023-12-05 19:12:53 +01:00
Leedehai 058f24f95e
Rename is_cjk_script() to is_cj_script() (#2829) 2023-12-05 19:04:38 +01:00
Andrew Voynov 8a69d3bfb6
Rephrased documentation about relativeness for patterns and gradients (#2863) 2023-12-05 19:03:42 +01:00
Andrew Voynov 64c2c65c80
Moved `auto` note up in caption separator docs (#2856)
Previously `auto` note was only visible when example is shown.
2023-12-05 12:55:13 +01:00
Johann Birnick f3fa900d58
Fixed typo/mistake in math alignment documentation. (#2865) 2023-12-05 12:52:52 +01:00
Sébastien d'Herbais de Thun f5c90c8714
Fix PDF transform (#2850) 2023-12-04 14:24:05 +01:00
Joseph Wilson b8b1a92151
Update emph.rs docstring (#2847) 2023-12-04 12:54:12 +01:00
Laurenz 962108d168 Fix zero-sized patterns 2023-12-04 12:50:07 +01:00
Sébastien d'Herbais de Thun 7f10d3282e
Fix defaults on `#[synthesized]` fields (#2825)
Fixes #2821
2023-12-04 11:44:34 +01:00
Laurenz 293a715443 Adjust signature of `jump_from_cursor` 2023-11-30 19:09:42 +01:00
Laurenz f16a9ea9ad Drop dependency on `DashMap`
DashMap doesn't work in multi-threaded WebAssembly in Safari: https://bugs.webkit.org/show_bug.cgi?id=265581
2023-11-30 18:31:56 +01:00
Laurenz de40124adb Fix content hashing
Fixes #2800
2023-11-30 13:49:17 +01:00
Sébastien d'Herbais de Thun 5bdec9e1d8
Optimized labels & introspector (#2801)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-11-30 12:57:04 +01:00
frozolotl 79c2d1f29e
Fix chinese numbers being limited to 255 (#2802) 2023-11-30 10:19:58 +01:00
He Li 3ea2ad6cae
Don't exit watcher on invalid utf-8 (#2795) 2023-11-29 19:57:57 +01:00
Marten Roots 275883a01f
Added the Estonian language to LocalName (#2797) 2023-11-29 18:47:13 +01:00
Laurenz 3c22c9f319 Pattern improvements 2023-11-29 16:28:30 +01:00
Laurenz aa23198ad9 A little less route nesting 2023-11-29 13:09:00 +01:00
Leedehai 37614716be
Demo mid() with a new example showing a friction point with auto-scaling (#2783) 2023-11-29 12:29:37 +01:00
Laurenz af9d8727e1 Don't write multiple authors in XMP metadata
Fixes #2556.
2023-11-29 11:53:09 +01:00
Laurenz 2007f30b11 Better error message for named instead of positional argument 2023-11-28 18:55:03 +01:00
Laurenz b5ef789315 Add missing details for type completion 2023-11-28 12:13:43 +01:00
Laurenz 5a833208f9 Mark document children as internal 2023-11-27 17:49:32 +01:00
Laurenz 713cde1136 Make workspace inheriting consistent 2023-11-27 16:54:55 +01:00
Laurenz bf8a3ecec5 Update changelog 2023-11-27 16:04:47 +01:00
T0mstone 76c5ca051e
Fix trailing comma of function call in math mode (#2772) 2023-11-27 16:03:11 +01:00
Sébastien d'Herbais de Thun c1ed55f555
Optimized `DocumentElem` (#2777) 2023-11-27 12:13:46 +01:00
Leedehai 34862b7b27
Implement mid() for middle delimiters in lr() (#2760) 2023-11-27 12:02:51 +01:00
Sébastien d'Herbais de Thun 0fbb1aaaaa
Optimize `Content::has`, `Introspector::query_label`, and `MetaElem` (#2759) 2023-11-27 11:37:30 +01:00
danieleades e36a18b991
Use clippy workspace lints and inline format args (#2771) 2023-11-27 11:34:14 +01:00
danieleades 3c2b61ee7d
Run clippy on all features (#2767) 2023-11-27 11:18:48 +01:00
Sébastien d'Herbais de Thun 2c85161a27
Added `hint` to `bail!`, `warning!`, and `error!` (#2756) 2023-11-27 11:17:47 +01:00
Jakob Sachs 219c1c9ed0
Added vertical number alignment to enum (#2742)
Fixes #2441
2023-11-27 11:12:04 +01:00
Laurenz 85b1d1d4dd Rework `Vt` into `Engine`
- Moves as much data out of the `Vm`
- Removes duplication with call_vm and call_vt flavours
- Uses tracked chain instead of fixed int for determining max nesting depth
- This means that nesting checks now generalizes to layout and realization, to detect crashing show rules and overly nested layouts
2023-11-26 19:03:21 +01:00
Martin Haug 2f795b5c07 Bump Hayagriva
Fix #2572
2023-11-24 16:38:03 +01:00
Sébastien d'Herbais de Thun 1756718bab
Gradient Part 6 - Pattern fills (#2740) 2023-11-24 15:46:20 +01:00
Laurenz 3d2f1d2d6c Simplify counting a bit 2023-11-24 14:54:43 +01:00
Laurenz 704bec64ae Move delayed errors into tracer 2023-11-24 12:38:27 +01:00
Laurenz 7eebafa783 Merge `typst` and `typst-library` 2023-11-24 12:30:02 +01:00
frozolotl 76e173b78b
Allow multiple font paths in `TYPST_FONT_PATHS` (#2746) 2023-11-24 11:42:02 +01:00
frozolotl e5470401f4
Fix `has` on non-inherent fields (#2745) 2023-11-24 11:41:38 +01:00
frozolotl 55799f7395
Make `color.components`' alpha parameter named (#2734) 2023-11-21 18:05:12 +01:00
Laurenz 36c7301608 Tidy up some imports 2023-11-21 15:20:49 +01:00
Laurenz 1ef6ba7f41 Inline block into styles file 2023-11-21 14:54:47 +01:00
Laurenz ec8230c02e Extract location type into its own file 2023-11-21 14:49:59 +01:00
frozolotl 8e5b7fe5c1
Clean up some color quantization code (#2730) 2023-11-21 10:24:39 +01:00
Laurenz c1bc529986 Support arbitrary content for document title
For PDF, they will be immediately turned into plain text. However, it's still useful because templates can now accept content titles (with math or such things) instead of forcing strings because of set document. Moreover, it will be useful with "get rules" in the future.
2023-11-20 18:31:29 +01:00
Sébastien d'Herbais de Thun b5956ca3f1
Document the `#[ghost]` attribute from #2718 (#2721) 2023-11-20 18:20:42 +01:00
Sébastien d'Herbais de Thun 96f02960a2
Fix gradient colors (#2719) 2023-11-20 18:20:26 +01:00
Sébastien d'Herbais de Thun 9b5b3b2557
Added `ghost` attr to `elem` macro (#2718) 2023-11-19 19:23:00 +01:00
Laurenz b479be8e9e Fix docs 2023-11-19 19:14:11 +01:00
Laurenz c641044380 Workaround for show set propagation on citations
Fixes #2531
2023-11-19 18:57:28 +01:00
Laurenz 35d6a891bc Rename typeset function to layout 2023-11-19 18:17:06 +01:00
Laurenz c97a01616a More useful `Debug` impls 2023-11-19 18:16:18 +01:00
Laurenz 2da619e17c Streamline imports 2023-11-19 16:34:38 +01:00
Laurenz ea987ef4a3 Fix linebreaking at the end of links
Fixes #2689
2023-11-19 15:53:48 +01:00
Laurenz 18cb3becb3 Disable default features of `zip` crate 2023-11-19 13:04:48 +01:00
Laurenz fa43b4bf5d Use proxy for fetching release metadata 2023-11-19 12:49:08 +01:00
Laurenz e0d6526a53
Watching fixes (#2706) 2023-11-19 12:31:42 +01:00
frozolotl 43f90b2159
Implement euclidean division and remainder (#2678) 2023-11-17 19:55:57 +01:00
Sébastien d'Herbais de Thun f5b3af3c1b
Parallel image encoding (#2693) 2023-11-17 19:42:49 +01:00
frozolotl b0e81d4b3f
Remove restrictions to chroma and improve clamping (#2690)
This PR does a few small things:
- Oklab's a*/b* and Oklch's chroma components can be as large as desired.
- In PDF, when encoding Oklab, the range is widened from [-0.4,0.4] to [-0.5,0.5].
- In PDF, clamping is now performed on Oklch's chroma instead of a* and b*.
  This causes hue not to be distorted when clamping.

SVG and PNG export remain unchanged:
- SVG itself never had any restrictions on chroma.
  We directly use the `oklab` and `oklch` CSS colors, which should work fine for the most part.
  In the future, embedded ICC profiles might be nice. Further research is likely necessary.
- While PNG does not support color spaces like Oklab or Oklch, certain useful features exist.
  One can define gamma (gAMA) and chromacities&whitepoint (cHRM) chunks and even embed ICC profiles.
  While `image` crate does not support these features for encoding, its backend crate `png` does support gAMA and cHRM.
  It does not allow embedding ICC profiles yet, though.

As it stands, to fully support wide gamuts and more accurate colors, more work is necessary.
This PR should help a bit though.
2023-11-17 10:41:45 +01:00
Sébastien d'Herbais de Thun 5aaaacbf47
Allow `elem` synthesized fields to take a default value (#2687) 2023-11-17 10:39:08 +01:00
Laurenz 624ff5cb7a Correct sentence 2023-11-17 10:08:55 +01:00
Peng Guanwen f4a81091f7
Lexer change: Allow emphasis in CJK text without spaces (#2648) 2023-11-15 15:01:15 +01:00
tingerrr 50ea3b4f16
Add `arguments` constructor & fix equality (#2686) 2023-11-15 14:50:31 +01:00
frozolotl 7aef798658
Fix cmyk repr (#2682) 2023-11-15 14:49:45 +01:00
Sébastien d'Herbais de Thun f39a8bc015
Add span information to realized `ParElem` (#2675) 2023-11-15 14:49:29 +01:00
frozolotl f56813a778
Remove `a` suffix from Rgba and LinearRgba (#2691) 2023-11-15 14:48:48 +01:00
Dimitri Kokkonis 897447e859
Translate local names to Greek (#2684)
Additionally, add support for single and double quotes in Greek.
2023-11-14 15:59:30 +01:00
Sébastien d'Herbais de Thun d77356a16f
Fix potential line splitting issue in `raw` (#2674) 2023-11-13 16:56:51 +01:00
frozolotl 7d5f6a8b73
Improve color conversions (#2659) 2023-11-13 16:23:52 +01:00
Sébastien d'Herbais de Thun c427ca9e4e
Assign spans to `raw.line` (#2672) 2023-11-13 15:49:38 +01:00
frozolotl d16ab29068
Make Oklab and Oklch chroma ratios relative to 0.4 (#2642) 2023-11-13 15:48:54 +01:00
frozolotl 67422e664b
Allow non-string contents for math operators (#2663) 2023-11-13 12:26:58 +01:00
Malo 8219ec2595
Improve documentation for figure kind (#2654) 2023-11-13 12:18:05 +01:00
Wenzhuo Liu e07275163f
Filter out meta items when adding CJK-Latin (#2655)
spacing.
2023-11-13 12:13:05 +01:00
frozolotl 97bb0fbce3
Fix bug where inline equations were displayed in the outline (#2662) 2023-11-13 12:04:34 +01:00
frozolotl 1f273eb88f
Fix spelling mistake (#2664) 2023-11-13 11:52:57 +01:00
Laurenz 778802e5a8 Fix links in bibliographies again
Fixes #2667
2023-11-13 11:50:27 +01:00
Andrew Voynov a44141be2e
Changed default `image` Russian supplement to short form (#2637) 2023-11-11 10:46:25 +01:00
MALO 13f1a4386f
Improve French and Chinese localization for figures (#2542) 2023-11-10 17:17:39 +01:00
Laurenz 010084e2d6 Simplify some paths 2023-11-10 12:01:13 +01:00
frozolotl d93ed1b3d8
Implement Oklch support (#2611) 2023-11-10 10:31:06 +01:00
Laurenz 7f0fcda376 Move some things out of `util` 2023-11-08 23:42:45 +01:00
Sébastien d'Herbais de Thun d7fea7077e
Gradient Part 5c: Fix gradient rotation on text & math (#2606) 2023-11-08 15:51:25 +01:00
Laurenz ccbe901cb7 Make `PdfContext` private again 2023-11-08 15:35:05 +01:00
Laurenz 8be482c2c2 Fix intradoc links 2023-11-08 15:33:49 +01:00
Anton Wetzel ba05164bb6
Change rectangle clip to use the inside of the stroke, not the middle. (#2626) 2023-11-08 15:30:00 +01:00
Laurenz 46846a337e Extract `typst-pdf` crate 2023-11-08 15:09:55 +01:00
Laurenz 80b4ca4c04 Extract `typst-svg` crate 2023-11-08 13:21:47 +01:00
Laurenz ec04c3de2f Extract `typst-render` crate 2023-11-08 13:16:13 +01:00
Laurenz 4794bd35fa Switch to workspace dependencies 2023-11-08 12:56:35 +01:00
frozolotl 7f1c38548a
Fix color export for SVG (#2610) 2023-11-08 11:11:02 +01:00
frozolotl cfb767346e
Fix OkLab color negation (#2609)
This changes negation to effectively rotate hue by 180deg.
Previously, negation failed in certain cases and produced unexpected results.
2023-11-08 11:10:37 +01:00
Joseph Wilson 2ce9d76025
Add constructor for `stroke`. (#2518) 2023-11-08 11:08:38 +01:00
KronosTheLate 3a1e47913d
Make reference to spreading in arguments of `grid` (#2593)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-11-07 16:56:09 +01:00
tingerrr 5f922abfd8
Add hints for invalid identifier errors (#2583) 2023-11-07 12:14:20 +01:00
Sébastien d'Herbais de Thun 241a6d9e5a
Gradient Part 5b: Fix gradients in math (#2604) 2023-11-07 12:09:51 +01:00
tingerrr 4d5255d9cb
Synthesize `block` and `quotes` & improve documentation for `quote` (#2532) 2023-11-07 11:49:28 +01:00
Peng Guanwen 4a7d3585d9
Improve reshape condition (#2547) 2023-11-06 21:43:15 +01:00
Samuel Tardieu e550f0a8f7
Prevent silent swallowing of return expressions trailing arguments (#2545)
Fixes #2104
2023-11-06 21:42:38 +01:00
Sébastien d'Herbais de Thun c0f6d2004a
Content rework 2 - Electric Boogaloo (#2504) 2023-11-06 21:37:50 +01:00
Matt Fellenz 8fd546760c
Implement dict key interpolation (#2559) 2023-11-02 17:08:08 +01:00
Charlie Moog b716700b61
Derive PDF instance id from content hash (#2552) 2023-11-02 11:12:07 +01:00
MALO 51d9fe2d02
Documentation fixes (#2543) 2023-11-02 11:01:46 +01:00
Andrew Voynov c47757d6d4
fix(figure separator): `. ` is now default for Russian (#2540) 2023-11-02 11:00:42 +01:00
Laurenz 4248265bca Some math docs improvements 2023-11-02 10:49:14 +01:00
Andrew Voynov 0f274f8edb
Fixed doc typo for math > cancel > angle (#2535) 2023-10-31 20:50:21 +01:00
Laurenz c177a63c9b Fix citation grouping bug with spaces 2023-10-31 12:19:30 +01:00
Laurenz ab5dd2a1cb CSL support 2023-10-31 01:33:06 +01:00
Joseph Wilson 27ab2bb9a2
Documentation improvements (#2492) 2023-10-31 01:32:08 +01:00
Fritz Rehde c3114fa380
Fixed typos (#2524) 2023-10-30 23:25:28 +01:00
Laurenz 55296a9196 Say which label occurs never or multiple times in error message 2023-10-30 23:00:40 +01:00
Laurenz 90cd1a5a09 Add a bit more detail to `font` parameter docs 2023-10-30 22:55:52 +01:00
Laurenz e6ad40004b Label tooltip 2023-10-30 22:54:21 +01:00
Laurenz 5a6cadefda Label autocompletion 2023-10-30 22:54:17 +01:00
Laurenz 7ac9b1a365 More Markdown features in docs 2023-10-30 22:53:55 +01:00
Eric Biedert 64d3fd8a3f
Add missing gradient to stroke cast (#2527) 2023-10-30 22:24:39 +01:00
Laurenz 995fc40363 Remove duplicated lookup 2023-10-29 22:41:28 +01:00
Laurenz 265b37d12d Reduce trigger region of closure tooltip 2023-10-29 19:36:20 +01:00
Laurenz 9c29dbf84f Docs fixes 2023-10-29 19:35:44 +01:00
Laurenz 987e97cc2c Clarify how `ident` is used in PDF export 2023-10-29 11:22:06 +01:00
MALO 500468fd05
Improve "cannot apply '{+,-}'" error messages (#2510) 2023-10-29 11:15:53 +01:00
Laurenz 29130a26f8 Linebreaking for links 2023-10-29 00:52:15 +02:00
Laurenz 4c75adbb04 Simplify linebreaking
Switches from an iterator to callback style, which significantly increases the clarity of the whole thing.
2023-10-28 23:03:09 +02:00
Laurenz 0f4f37cc09 Bump ICU data 2023-10-28 20:35:38 +02:00
Laurenz aa62d05453 Fix justification with hanging indent and negative spacing
Fixes #2419
2023-10-28 20:05:51 +02:00
Laurenz c3b1e32d11 Fix justified linebreaking without justifiables 2023-10-28 18:02:16 +02:00
Martin Haug f78a8f5d48
Add IDs and creation date to PDFs (#2374) 2023-10-27 18:33:23 +02:00
Laurenz 4163b2eabc Fix spelling of sRGB 2023-10-27 17:56:30 +02:00
Laurenz 24a0bd8cfb Fix error priority for function arguments
Errors about superfluous arguments are now thrown before errors of the function execution itself.

Fixes #1367
2023-10-27 15:38:08 +02:00
Laurenz cbfd9884a9 Fix argument parsing bug
Things like `luma(1, key: "val")` didn't produce an error before because `args.finish()?` wasn't called. This changes `args: Args` to `args: &mut Args` to make it impossible for that to happen.
2023-10-27 13:25:15 +02:00
Laurenz fa81c3ece0 Less verbose `Debug` impl for `Element` 2023-10-27 13:00:48 +02:00
Joseph Wilson e182777133
Implement unary `array.zip`, closing #2478 (#2491) 2023-10-27 12:58:55 +02:00
tingerrr 1603e2df26
Fix trailing mandatory breaks being swallowed (#2502) 2023-10-27 00:17:47 +02:00
7sDream b80382b216
Use fontdb to search fonts, with basic fontconfig support (#2472) 2023-10-25 18:38:08 +02:00
Laurenz e686a11ae7 Bump dependencies 2023-10-25 17:39:40 +02:00
Francisco J. Sanchez c29a31b6c5
Fix pagebreak.to check (#2475) 2023-10-25 17:16:34 +02:00
Thomas Aldrian 866bd27d2e
Add `csch` and `sech` operators (#2378) 2023-10-25 17:12:11 +02:00
Laurenz 38f59c2a27 Improve color and gradient docs 2023-10-25 16:20:08 +02:00
Laurenz a7fbe5151e Bump pdf-writer
Fixes #2397
2023-10-24 15:23:04 +02:00
Laurenz 69191b6b20 Remove unnecessary backticks
Fixes #2447
2023-10-22 14:47:19 +02:00
LU Jialin f81a8d00e3
Refactor `cancel`, now able to take absolute angle or functions (#2466) 2023-10-22 14:07:30 +02:00
Wenzhuo Liu b97ee93b8f
Support adjustment of more CJK punctuation (#2456) 2023-10-22 13:45:51 +02:00
MALO cf9ca6cb59
Fix compiler panic for float with no vertical alignment (#2437) 2023-10-22 13:43:24 +02:00
Eric Biedert 3ed6462ee0
Don't hyphenate on no-break characters (#2396) 2023-10-22 13:36:33 +02:00
MALO aaac1dbd68
Adapt default figure separator to the current locale (#2390) 2023-10-22 13:33:00 +02:00
SekoiaTree 7f185f21e0
Add date to document (#2371) 2023-10-22 13:29:48 +02:00
SekoiaTree 3faad6bc5d
Add support for negative augment indexes (#2372) 2023-10-22 13:22:34 +02:00
Laurenz 208711203e Fix tag list order 2023-10-19 19:57:47 +02:00
tingerrr 76d4c39ce4
Only print unique diagnostics (#2385) 2023-10-19 12:04:05 +02:00
Joseph Wilson 06ba535c45
Clarified docs for `calc.perm,rem,quo` (#2408) 2023-10-19 10:12:28 +02:00
frozolotl 01b14ff316
Clear screen instead of resetting the terminal (#2431)
Resetting the terminal can change color themes and other settings.
This commit changes the behavior to just clear the screen.
2023-10-19 10:11:22 +02:00
Sébastien d'Herbais de Thun 56510d9df0
Fixed transform panic (#2435) 2023-10-19 09:57:03 +02:00
Sébastien d'Herbais de Thun 838b56e72b
removed `update_justifiable` (#2426) 2023-10-18 13:36:24 +02:00
Sébastien d'Herbais de Thun c0dbb900e8
Cached export for incremental (#2400) 2023-10-17 20:53:01 +02:00
Sébastien d'Herbais de Thun 37a988af83
Replace `Vec` with `EcoVec`, removed `Box` (#2420) 2023-10-17 20:50:36 +02:00
Sébastien d'Herbais de Thun 77b84675e5
Cache `is_justifiable` (#2399) 2023-10-17 18:12:34 +02:00
tingerrr 372476323f
Add `reverse` parameter to `cases` (#2370) 2023-10-17 11:48:46 +02:00
tingerrr 80175db397
Filter out prohibited line breaks in `par` (#2376) 2023-10-17 11:26:34 +02:00
Oscar 5f1ea5c48c
Add some integral symbols (#2413) 2023-10-17 11:22:13 +02:00
Sébastien d'Herbais de Thun d25c5ac9a2
Replaced `into_iter` to `iter` (#2398) 2023-10-17 11:15:01 +02:00
Peng Guanwen e4d9db83ea
Automatically add spacing between CJK and Latin characters (#2334) 2023-10-17 11:14:09 +02:00
Sébastien d'Herbais de Thun a59666369b
Part 5a: Gradients on text with `relative: auto` or `relative: "parent"` (#2364) 2023-10-12 18:03:52 +02:00
bluebear94 d3b62bd02e
MathAttach::primes: account for possible hash before base (#2363)
Fixes #2358.
2023-10-12 10:19:07 +02:00
KillTheMule d1a702f3fd
Simpler example for a regex (#2345) 2023-10-10 12:50:39 +02:00
tingerrr 0f24990579
Add `quote` element (#2252) 2023-10-10 11:59:11 +02:00