Commit Graph

505 Commits

Author SHA1 Message Date
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
sitandr b2d6cb58dc
Fix weak spacing broken in math (#1966) 2023-08-26 17:36:52 +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
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
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
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
Matt Fellenz f56060c1b3
Penalize runts (#1858) 2023-08-08 11:27:15 +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
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
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
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
damaxwell 7dc605307c
Improved math root layout (#1743) 2023-07-18 15:41:35 +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
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
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
damaxwell 9eb350d7de
support optical sizes for script/scriptscript when available (#1580) 2023-06-26 13:51:27 +02:00
damaxwell 1861ceb179
math under/overline now draws simple lines based on parameters in math font table (#1568) 2023-06-26 13:42:38 +02:00
MALO 33803b1614
Make footnotes referenceable (#1546) 2023-06-26 13:40:52 +02:00
bluebear94 9ef4643ba1
shape_tofus: respect text direction when inserting tofus (#1519)
This ensures that the ranges of the shaped glyphs are monotonically
decreasing in right-to-left-text, thus avoiding nonsensical results
in find_safe_to_break that later causes a panic (see #1373).
Additionally, debug assertions have been added to catch non-monotonic
glyph ranges.
2023-06-26 13:40:21 +02:00
sitandr c5e82b3fa8
Added argument to disable limits in inline math, closes #1522 (#1552) 2023-06-24 14:28:36 +02:00
Tom Binford fa42a26f6f
Improve image rendering under rotation when exporting to PNG (#1547) 2023-06-24 14:28:02 +02:00
bluebear94 622cef8e00
layout::par::collect: Treat linebreak element as whitespace (#1542)
Fixes #1540.
2023-06-24 14:26:06 +02:00
bluebear94 ececd07424
Make factorial take precedence over fraction in math expressions (#1487)
Fixes #1475.
2023-06-20 16:59:42 +02:00
sitandr 03675fc429
Created new system for limits (fixes #1443) (#1452) 2023-06-20 16:58:22 +02:00
Laurenz c5cdbaeaf8 Fix bug with extra table lines
Fixes #183
2023-06-12 17:48:30 +02:00
Laurenz 6720d8c301 Fix bug with missing table row
Fixes #1388
2023-06-12 17:20:54 +02:00
Laurenz 378ebe5f56 Delayed errors
Fixes #785. Thanks to @Dherse for the idea!
2023-06-12 15:42:01 +02:00
Zachary Capalbo 19bf1f5894
Clear page to Even Or Odd (#1427)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-06-12 14:28:25 +02:00
Luis David Licea Torres 3284e7fac7
Support for inside and outside margins (#1308)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-06-12 12:46:34 +02:00