Commit Graph

1312 Commits

Author SHA1 Message Date
Laurenz
7eebafa783 Merge typst and typst-library 2023-11-24 12:30: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
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
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
ea987ef4a3 Fix linebreaking at the end of links
Fixes #2689
2023-11-19 15:53:48 +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
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
Peng Guanwen
f4a81091f7
Lexer change: Allow emphasis in CJK text without spaces (#2648) 2023-11-15 15:01:15 +01:00
frozolotl
7aef798658
Fix cmyk repr (#2682) 2023-11-15 14:49:45 +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
frozolotl
7d5f6a8b73
Improve color conversions (#2659) 2023-11-13 16:23:52 +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
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
TheJosefOlsson
d25e6726e2
Add tests for shorthand (#2660) 2023-11-13 11:54:48 +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
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
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
Joseph Wilson
2ce9d76025
Add constructor for stroke. (#2518) 2023-11-08 11:08:38 +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
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
Matt Fellenz
8fd546760c
Implement dict key interpolation (#2559) 2023-11-02 17:08:08 +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
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
Eric Biedert
64d3fd8a3f
Add missing gradient to stroke cast (#2527) 2023-10-30 22:24:39 +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
221609b11c Add regression test for #80 2023-10-28 20:35:28 +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
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
Joseph Wilson
e182777133
Implement unary array.zip, closing #2478 (#2491) 2023-10-27 12:58:55 +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
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
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
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
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
tingerrr
0f24990579
Add quote element (#2252) 2023-10-10 11:59:11 +02:00
Sébastien d'Herbais de Thun
0dd79bbad2
Add raw.line (#2341) 2023-10-10 11:56:16 +02:00
Sébastien d'Herbais de Thun
9bca0bce73
Fix clipping when a box/block has a radius (#2338) 2023-10-10 11:51:22 +02:00
Sébastien d'Herbais de Thun
a8af6b449a
Adds a default value to .remove() on dict and array (#2346) 2023-10-10 11:44:59 +02:00
Sébastien d'Herbais de Thun
cef2d3afca
Gradient Part 4 - Conic gradients (#2325) 2023-10-10 11:29:05 +02:00
HydroH
7b61d722dd
Adjust table inset behavior to the same as container's (#1979) (#2323) 2023-10-09 15:52:04 +02:00
MALO
0804a9e25d
Use/allow U+2212 MINUS SIGN instead of U+002D HYPHEN MINUS everywhere (#2318) 2023-10-09 15:30:40 +02:00
Laurenz
2a19e7f4dc Bump ecow 2023-10-09 15:00:07 +02:00
TheJosefOlsson
6dab95473b
Multinomial coefficients (#2237) 2023-10-09 13:46:16 +02:00
Sébastien d'Herbais de Thun
e7443abfe6
Gradient Part 3 - Radial gradients (#2312) 2023-10-06 16:47:20 +02:00
bluebear94
6bb776029e
Fix crashes with infinite lengths (part 2) (#2298) 2023-10-05 10:26:36 +02:00
MALO
333e4037fc
Add Repr trait (#2269) 2023-10-04 12:08:56 +02:00
Sébastien d'Herbais de Thun
57bc614cf4
Gradient Part 2a - Fix sharp gradients in SVG (#2307) 2023-10-04 10:58:17 +02:00
Eric Biedert
55095246bf
Fix extent for text decoration (#2308) 2023-10-04 10:56:55 +02:00
Sébastien d'Herbais de Thun
a4e357fb37
Gradient Part 2 - Linear gradients (#2279) 2023-10-03 19:31:02 +02:00
Laurenz
6b1233e127 Fix test failure
Before we tested with an unavailable font, but the hyphens were still visible. But now the hyphens respect fallback too, so it's really hard to test it. I am removing the test for now.
2023-10-03 16:22:10 +02:00
bluebear94
ce658db2f3
ShapedText::push_hyphen: Use self.base for default hyphen range (#2299)
In the unlikely chance that we hyphenate after an empty line, we
set the glyph range to self.base..self.base so that subtracting

Fixes #2283.
2023-10-03 15:02:27 +02:00
T0mstone
cf9bde3245
Add capability to get current compiler version (#2016) 2023-10-02 20:28:19 +02:00
LU Jialin
34ebbaeb10
Passing color to the augment line in matrix (#2281) 2023-10-02 16:22:33 +02:00
Sébastien d'Herbais de Thun
62f37ad4ab
Color fixes (#2262) 2023-09-29 15:04:08 +02:00
bluebear94
553da642bd
Handle compiler panics when handling infinite lengths (#2215) 2023-09-28 11:15:09 +02:00
Eric Biedert
0d39fa021f
Prevent block spacing with placed elements (#2244) 2023-09-26 16:59:51 +02:00
Arnaud Golfouse
962071619d
Avoid plugin panics (#2232) 2023-09-26 16:21:21 +02:00
Eric Biedert
c8ebcd70d6
Resolve spacing before comparing (#2235) 2023-09-26 11:42:05 +02:00
tingerrr
0710d1c118
Add background parameter to overline, underline and strike (#2219) 2023-09-25 16:19:48 +02:00
tingerrr
063e9afccf
Add custom smart quotes (#2209) 2023-09-25 16:19:22 +02:00
LU Jialin
079ccd5e5b
Fixing the styling issues of the empty pages caused by pagebreak (#2182) 2023-09-25 14:13:54 +02:00
Anton Wetzel
98e5d97509
Better rect edges (#1956) 2023-09-25 13:54:58 +02:00
LU Jialin
04b4536772
Fixing the baseline in math content (#2220) 2023-09-25 13:13:16 +02:00
SekoiaTree
3dcbe859fb
Add gaps for matrix, case, and vector (#2186) 2023-09-21 10:26:47 +02:00
Peng Guanwen
50f354e989
Correct the consecutive hyphen cost (#2190)
This just fixes a mistake previously made. `0.3` is the correct number that is proportional to the parameters in Knuth's paper. The previously choosed value `300` is due to my calculation mistake and is too large that essentially prevent any consecutive hyphens.
2023-09-19 17:05:32 +02:00
Laurenz
7a46a85d3e Improve span stability after incremental parsing 2023-09-19 16:53:59 +02:00
Sébastien d'Herbais de Thun
163c2e1aa2
Gradient Part 1 - Color rework (#2171) 2023-09-19 15:48:33 +02:00
Eric Biedert
13758b9c97
Allow multiple fallback fonts in SVGs (#2122) 2023-09-19 10:28:50 +02:00
Eric Biedert
b10f9ae7b7
Fix "set align" for block equations (#2157) 2023-09-18 14:51:34 +02:00
Laurenz
25613cfaf3 Fix missing capturing of assignments
The previous commit was a bit overambitious. The left-hand side of assignments should actually be fully captured: Argument lists in `at` calls can contain captured variables. And if the assigned variable itself is captured, then the function is faulty anyway. (And we ensure the correct error message by capturing it.)

Fixes #2169
2023-09-16 20:41:44 +02:00
Laurenz
94380f4457 Remove 64-bit-specific test
Fixes #2139
2023-09-15 12:34:35 +02:00
Laurenz
3dd12d13f8
Fix invisibles on final page (#2141) 2023-09-14 13:36:39 +02:00
Laurenz Stampfl
a5e39d814c
Update to usvg 0.35 (#2113) 2023-09-13 16:41:45 +02:00
Laurenz
ff2650373c Fix floating placement within containers
Fixes #1879
2023-09-13 15:26:23 +02:00
Laurenz
f9feea3f29 Bump dependencies 2023-09-13 14:44:45 +02:00
Laurenz
e77d935014 Bump oxipng
The released version of oxipng has a deadlock issue with rayon. So we switch to a git dependency for now.
2023-09-13 13:46:01 +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
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
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
305524d005 Update tests for type system changes 2023-09-11 14:42:43 +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
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
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
Laurenz
2f672b4e2e Allow packages to specify their minimum compiler version 2023-09-04 16:29:57 +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
Laurenz
8c9c959f4f Rename test
The name `empty` shall not appear in any test but `empty.typ`.
2023-09-01 11:48:57 +02:00
Anton Wetzel
ca1096de78
Replace tabs with spaces in raw elements. (#2042) 2023-08-31 10:06:31 +02:00
Reid Johnson
5c1db0c4b8
Add regular polygons to visualize (#1215) 2023-08-31 09:51:00 +02:00
Laurenz
a6f347fbb7 Add test for ends-with fix 2023-08-30 17:19:25 +02:00
Laurenz
5b36b46230 Fix data loading display names 2023-08-30 17:15:49 +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
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
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
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
lolstork
c00fc14905
Initial support for augmented matrices (#1679) 2023-08-25 11:16: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
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
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
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
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
Mathias Fischler
800744ed9d
Show warning to user if they use double/empty underscores (italic) (#1871) 2023-08-07 13:47:29 +02:00
Matt Fellenz
823fc5e5c4
Fix incomplete line endings (#1866) 2023-08-06 00:15:29 +02:00
Beiri22
e3115336bf
Decode image (#1810) 2023-08-05 13:58:28 +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
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
damaxwell
20eb284318
Ensure normal weight math font face is consistent (#1774) 2023-08-03 00:34:54 +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
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
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
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
803ae9309f Support scope argument for eval 2023-07-18 21:53:42 +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
e43903d625
split attach test (#1744) 2023-07-18 10:26:20 +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
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
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
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
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
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
Lynn
9a9da80665
Color mixing function (#1332)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-07-05 11:26:50 +02:00
LingMan
224e1df8e5
Disable binary feature of oxipng (#1640)
The `oxipng` crate contains a binary target in addition to the library target. Said binary has
additional dependencies which are not needed by users of the library. Since Cargo unfortunately
doesn't currently offer a good way to express such binary-only dependencies, they are enabled by
default via the `binary` feature. Avoid downloading and building these unnecessary crates by disabling the `binary` feature.
2023-07-04 15:51:18 +02:00
Laurenz
ebfdb1dafa Move everything into crates/ directory 2023-07-02 20:07:43 +02:00
Laurenz
65f11dc364 Minor improvements 2023-06-30 09:59:58 +02:00
Laurenz
04bffc4f12 Reintroduce --root 2023-06-28 10:36:53 +02:00
Laurenz
7b92bd7c34 Basic package management 2023-06-27 18:40:17 +02:00