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
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
Laurenz
f1025071ed
Tidy up
2023-06-24 15:05:59 +02:00
MALO
b96b7b7ee1
Use third person in documentation ( #1560 )
2023-06-24 14:33:17 +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
Mathias Fischler
2e03fb34cb
Add infrastructure to enrich errors with hints ( #1486 )
2023-06-24 14:18:21 +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
Mathias Fischler
93e6638bfe
Resolve #1141 : Add hint for missing numbering, improve hint format consistency ( #1456 )
2023-06-12 12:46:08 +02:00
Pg Biel
c58a8fbd1d
Add `outline.entry` ( #1423 )
2023-06-12 11:50:59 +02:00
Laurenz
c65aaa9137
Undo regex type rename
...
Unnecessary breaking change for now
2023-06-09 15:52:31 +02:00
Laurenz
3bedf8d0d1
Translate TOML datetime properly
2023-06-09 15:45:16 +02:00
Laurenz
7ece53ae0c
Adjust outline indent option
2023-06-09 14:50:29 +02:00
Laurenz
903f440b28
Rename `cramp` to `cramped`
2023-06-09 14:48:23 +02:00
Alex Saveau
635ef03273
Treat function-looking code in attachment as function ( #985 )
2023-06-09 11:36:44 +02:00
Alex Saveau
61effc350a
Don't type check matrices ( #1442 )
2023-06-09 10:25:12 +02:00
Laurenz
56f7ede964
Improve footnote handling for multi-page blocks
2023-06-08 15:51:22 +02:00
Laurenz
2b812259c2
Fix footnote in columns
...
Fixes #1433
2023-06-08 12:24:47 +02:00
Laurenz
a1b0a41883
Fix a bug with footnotes in blocks/lists/etc.
...
This still not gives the "footnote and entry" are on same page invariant for blocks, but at least we do not get random extraneous page breaks anymore.
Relevant issues: #1275 , #1433
2023-06-08 11:51:42 +02:00
Laurenz
f3e3061a7f
Fix a bug in footnote together-keeping logic
2023-06-08 11:21:35 +02:00
Laurenz
10ae0a2c2b
Fix line alignment
...
Fixes #1398 . How this works for the other shapes is a hack, but the line was missing from that hack.
2023-06-08 10:20:24 +02:00
Jett Chen
c87f802cf6
add calc.exp, calc.ln ( #1299 )
...
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-06-07 14:44:07 +02:00
Yang Hau
0dc1776202
refactor: Replace once_cell to std lib ( #1402 )
2023-06-07 14:42:58 +02:00
Laurenz
fd417da04f
Improve value casting infrastructure
2023-06-06 22:06:16 +02:00
Laurenz
219f14355b
Rename `into_u16` to `as_u16`
2023-06-06 19:06:56 +02:00
Peng Guanwen
a54cde71cb
Bugfix of CJK punctuation adjustment ( #1384 )
2023-06-01 15:14:56 +02:00
Sung Jeon
08b49291bc
Add NumberingKind variants for Korean ( #1360 )
...
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-05-30 18:42:24 +02:00
Erik Bünnig
b805c5f100
Unicode code point conversion ( #1068 ) ( #1132 )
2023-05-30 18:11:30 +02:00
Lynn
7e07b61046
Add a base parameter to str() ( #1362 )
2023-05-30 18:05:15 +02:00
Peng Guanwen
e2bf2327b5
Use icu4x for linebreaking algorithm ( #1355 )
2023-05-30 17:53:10 +02:00
Laurenz
25e94cef03
Fix doc links
2023-05-30 14:50:43 +02:00
Laurenz
f90fcd664b
Fix pagebreak before `place`
...
Fixes #1368
2023-05-30 14:36:34 +02:00
Gabriel Wu
87ee97ae5e
Support syntax highlighting for more languages ( #771 )
...
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-05-30 10:46:56 +02:00
Pg Biel
47f81f0da5
Custom outline indenting ( #1157 )
2023-05-30 10:46:39 +02:00
MALO
644bbf9914
Add `fields` method to content ( #1340 )
2023-05-30 10:13:27 +02:00
Pg Biel
e4557f6639
Fix `.at(default: ...)` for strings and content ( #1339 )
2023-05-29 20:15:32 +02:00
Leedehai
31dfe32242
Add regression test for fix 3eb1f31 ( #1320 )
2023-05-29 20:14:31 +02:00
Laurenz
017027bf39
Rework delimiter errors
...
Fixes #572
2023-05-24 16:58:51 +02:00
Laurenz
363836a28e
Fix layout panic in rounded rectangle
...
Fixes #1216 both by hardening the rounded rectangle against negative size and by ensuring that the negative size doesn't occur in the first place for this case.
2023-05-23 15:30:28 +02:00
Eric Biedert
ff903674f9
Fix tests on windows ( #1222 )
2023-05-23 12:36:54 +02:00
sitandr
5dbc15ef0c
Forced size command in math ( #1128 )
2023-05-23 11:22:27 +02:00
Laurenz Stampfl
752817ae74
Add support for date & time handling ( #435 )
2023-05-23 10:41:20 +02:00
Laurenz
f4fd6855e7
Fix and simplify reference supplements
...
- Fixes #873 by properly handling `none` supplement for`ref`.
- Fixes #523 by adding a `supplement` parameter to `math.equation`
- In the future, we can remove supplement functions in favor of show-set rules with fine-grained selectors. Currently, this is not possible because show-set + synthesis doesn't play well together
2023-05-22 20:56:30 +02:00
Laurenz
183997d5fe
Don't hide introspection metadata
...
Fixes #622
2023-05-22 16:45:23 +02:00
Laurenz
8aa0ae197d
Fix field access on styled element
...
Fixes #1197
2023-05-22 13:49:09 +02:00
Laurenz
3d83960322
Fix removal order for dictionary
...
Switches to `shift_remove` for now. In the future, we should look into a more efficient implementation. Fixes #1258 .
2023-05-22 13:10:48 +02:00
Laurenz
08870d4a4c
Clearer error messages for failed comparisons
...
Fixes #1231
2023-05-22 13:06:33 +02:00
Laurenz
1321862cd5
Footnotes
2023-05-20 21:36:24 +02:00
Laurenz
7bb69c0902
Check crate docs in CI
2023-05-20 10:48:25 +02:00
Naim A
d61a839188
resolve #510 : reverse quote direction in RTL languages ( #1183 )
2023-05-19 16:49:16 +02:00
sitandr
42c3a6fa72
Fixed symbol style reset in stretching ( #1195 )
2023-05-19 15:33:15 +02:00
Leedehai
84b9d9c990
Print the string that is not castable to number ( #1207 )
2023-05-19 14:54:44 +02:00
Leedehai
8d4f9304c0
Update string doc: index can be negative ( #1198 )
2023-05-19 14:41:58 +02:00
Laurenz
551ea99d05
Show default values in documentation
...
Fixes #169
Fixes #1102
2023-05-17 14:41:46 +02:00
Laurenz
d14d1e867f
Fix figure detection
2023-05-17 12:55:25 +02:00
Laurenz
88cb8c2626
Bump comemo
2023-05-16 16:43:35 +02:00
Peng Guanwen
659f27bf6a
Do not hang CJK punctuation ( #1211 )
2023-05-15 08:57:17 +02:00
sitandr
4b17c3f5c6
Show rules for symbols ( fixes #1130 ) ( #1175 )
2023-05-12 12:26:26 +02:00
jassler
fd84d23ade
Support for align parameter in table to take an array ( #1087 ) ( #1149 )
2023-05-12 12:26:14 +02:00
Pg Biel
a8728be9b0
Initial support for breakable figures ( #1121 )
2023-05-12 11:00:55 +02:00
Leedehai
e8de8a49c5
Adjust attach() per TeXbook Appendix G 18a ( #1129 )
2023-05-11 17:38:04 +02:00
Pg Biel
1a6224f566
Default enum number alignment to 'end' ( #1042 )
2023-05-11 16:36:41 +02:00
Pg Biel
b5ad2468ad
Improve alignment of text inside raw blocks ( #1034 )
2023-05-11 16:32:46 +02:00
Peng Guanwen
d19a4124de
Implement sophisticated CJK punctuation adjustment ( #954 )
2023-05-11 15:02:52 +02:00
Alex Saveau
e472b0347f
Alternate between right/left alignment in equations ( #936 )
2023-05-11 14:56:17 +02:00
Laurenz
2f0b5eeae0
More efficient introspection
...
Switches from a mutable locator to one based on tracked chains and optimizes query performance.
2023-05-11 11:27:00 +02:00
Laurenz
47dff3765d
Remove 'static bound on `World`
...
Thanks to improvements in comemo, tracked types don't need to be 'static anymore. This means that the 'static bound on the `World` is now lifted and that the `Route` doesn't need to use unsafe code anymore to manage its lifetime.
2023-05-11 10:50:30 +02:00
Pg Biel
f88ef45ee6
Function scopes ( #1032 )
2023-05-03 14:20:53 +02:00
Marmare314
db6a710638
Parameter pattern bug ( #1062 )
2023-05-03 12:42:26 +02:00
Michael Lohr
ffad8516af
Implement default values for at() ( #995 )
2023-05-03 12:34:35 +02:00
dvdvgt
be3c4d7876
[Feature] Allow function as argument for string.replace ( #944 )
2023-05-03 11:41:50 +02:00
Marmare314
edc0632d8c
Add shorthand for root operation ( #929 )
2023-05-03 11:16:38 +02:00
HarmoGlace
856557353b
Add rust minimum version in `Cargo.toml` ( #902 )
2023-05-03 10:37:44 +02:00
Laurenz
ad347632ab
Make ligatures copyable and searchable
...
Fixes #479
Fixes #1040
2023-05-03 10:33:18 +02:00
Alberto Vilches
bcc014c4e1
fix: typos ( #1074 )
2023-05-02 20:45:18 +02:00
Martin Haug
17cef8dcee
Add ICC profiles to images in PDF and update `usvg`, `svg2pdf` ( #822 )
2023-05-02 13:53:20 +02:00
chris-02
407d8a3ab2
Fix smartquotes in outline ( #1047 )
...
Fixes #1041 .
2023-05-01 13:29:40 +02:00
Leedehai
ecd589a84f
Add a test checking equations can embed function-built pieces ( #1033 )
2023-04-29 20:51:29 +02:00
Marmare314
8fa1af8ac8
check index on placeholder ( #1005 )
2023-04-28 18:49:21 +02:00
Pg Biel
0d8c3254b7
Initial fix for spacing on decorated math operators ( #1023 )
2023-04-28 18:49:02 +02:00
Alex Saveau
1235d52c52
Make ast == ast.op ( fixes #1004 ) ( #1017 )
2023-04-27 22:34:46 +02:00
Leedehai
605b0b5f73
Remove trailing blankspaces ( #1001 )
2023-04-27 11:27:38 +02:00
Alexander Seiler
c941baa7ee
Correct some typos ( #987 )
2023-04-27 11:26:43 +02:00
Laurenz
b1e0de0078
Version bump
2023-04-26 15:54:05 +02:00
Laurenz
3680c854a2
Touch up docs
2023-04-26 15:37:21 +02:00
Marmare314
59957746e9
Pattern as parameter ( #854 )
2023-04-26 11:32:11 +02:00
HarmoGlace
6134e3f4ee
Add toml support ( #807 )
2023-04-26 11:31:32 +02:00
HarmoGlace
7cb63d1aae
Fix overflows with operators ( #904 )
2023-04-26 11:30:16 +02:00
pan93412
a6df909a8d
Allow passing `region` to LocalName ( #926 )
2023-04-26 11:30:03 +02:00
Alex Saveau
1d42d6674c
Upgrade a bunch of deps and remove two unused ones ( #968 )
2023-04-26 11:22:43 +02:00
jdierkes
249d5fe515
Fix grid-cell misalignment bug ( #963 ) ( #978 )
...
Having a table span multiple pages can cause an alignment bug in the
table itself. If the first region in a cell in a grid row is empty, all
other cells in this row will skip the first region. A misalignment bug
can occur, since the calculation of all region sizes happen before the
skip. The overall size allocated for the content of a cell with multiple
regions and content in the first region thus is too little.
Fixes #963
2023-04-26 11:22:35 +02:00
Pg Biel
ae4accc071
Fix alignment of list markers & enum numbers ( #988 )
2023-04-26 10:03:34 +02:00
Alex Saveau
f740c0b03f
Support picking the last subtest by using a random big number ( #970 )
2023-04-26 10:02:17 +02:00
Leedehai
62361b4127
Support indices preceding the base symbol, revamping #699 ( #825 )
...
Breaking change: abbreviate attach() attachment params, top -> t, bottom -> b
2023-04-25 11:24:07 +02:00
Alex Saveau
fb99090208
Support implicit alignment ( #749 )
2023-04-25 11:22:32 +02:00
Laurenz Stampfl
f38989358e
Add a zip method to arrays ( #947 )
2023-04-25 11:22:20 +02:00
Marmare314
d5d98b67a8
Destructuring assign ( #703 )
2023-04-25 11:22:12 +02:00
SekoiaTree
efad1e71fa
Add sum and product to arrays ( #966 )
2023-04-25 11:18:27 +02:00
Marmare314
12129f0170
hint for unknown variable containing dash ( #924 )
2023-04-24 19:08:07 +02:00
Alex Saveau
bc802bd8fb
Fix broken matrices with alignment and optimize code while we're at it ( #935 )
2023-04-24 11:16:13 +02:00
Alex Saveau
5ccc687619
Obey alignment in matrices ( #892 )
2023-04-24 11:04:04 +02:00
Luis David Licea Torres
e5ea3ecbbb
Spanish quote marks ( #941 )
2023-04-24 10:33:56 +02:00
Laurenz
ff1e4049d1
Support show-set for outline and bibliography headings
2023-04-23 15:06:42 +02:00
Pg Biel
e9a0cf9741
Fix 0pt strokes ( #923 )
2023-04-23 14:38:12 +02:00
Alex Saveau
b75cad2d3b
Parallelize tests ( #900 )
2023-04-23 14:35:18 +02:00
Pg Biel
a4075f8b9b
Implement math `cancel` function ( #793 )
2023-04-21 11:28:46 +02:00
astrale-sharp
4cea7007d0
use clap for parsing tests. ( #876 )
2023-04-21 11:16:32 +02:00
Alex Saveau
851b154a6c
Convert math alignment to single-pass algorithm ( #891 )
2023-04-20 19:48:11 +02:00
HarmoGlace
42b93b7b53
Add `quo`, `trunc` and `fract` calculation methods and rename `mod` to `rem` ( #890 )
2023-04-20 16:09:41 +02:00
Martin Haug
2a682f0008
Add alt text to image function and PDF ( #823 )
2023-04-20 11:23:03 +02:00
Marmare314
4524539c2b
forbid underscore as identifier closes #513 ( #837 )
2023-04-20 11:05:11 +02:00
Alex Saveau
c505a0f5dc
Add UPDATE_EXPECT envvar to update tests ( #748 )
2023-04-20 10:47:31 +02:00
Alex Saveau
b285bea41d
Make `dot` be multiplication and add `dot.period` for periods ( #747 )
2023-04-19 19:08:59 +02:00
Laurenz
f08ae95b9d
Fix argument sinks
...
Fixes #886 .
2023-04-19 17:51:33 +02:00
Laurenz
5a6330dbfc
Fix math hiding once more
2023-04-19 16:51:47 +02:00
Johannes Wolf
981c578ff9
path: Use close_path() for closing paths ( #801 )
2023-04-19 16:30:27 +02:00
HarmoGlace
1e934def56
Add `gcd` and `lcm` calculation methods ( #789 )
2023-04-19 16:18:31 +02:00
Leedehai
dc3017955a
Give more specific error messages ( #881 )
2023-04-19 13:26:55 +02:00
Laurenz
f8966f9e86
Fix realize in math
2023-04-19 11:06:52 +02:00
Laurenz
d10b53df0b
Clippy
2023-04-18 19:16:13 +02:00
Laurenz
35302d2004
Handle SVG with text
2023-04-18 19:04:46 +02:00
Laurenz
b51cb131bd
Bump comemo
2023-04-17 19:59:45 +02:00
Peng Guanwen
480ad7670b
More Chinese punctuation adjustment ( #836 )
...
and also general linebreak improvements
2023-04-17 18:20:59 +02:00
Laurenz
9bdc4a7de0
Write PDF outline
2023-04-17 13:26:49 +02:00
Alex Saveau
e5f942172d
Add comment at end of line test ( #783 )
2023-04-13 21:22:34 +02:00
HarmoGlace
29b36d4876
Fix `pow` overflow ( #784 )
2023-04-13 21:08:54 +02:00
Alex Saveau
6d596da72b
Make math punctuation tests more complete ( #782 )
2023-04-13 21:03:00 +02:00
Marmare314
0105eb7382
Fix function sinks ( #638 )
2023-04-13 16:07:58 +02:00
Birk Tjelmeland
d1cd814ef8
Add support for more complex strokes ( #505 )
2023-04-13 16:05:56 +02:00
Laurenz
46ce9c94e3
Fix linebreak after inline objects with metadata
2023-04-13 15:52:20 +02:00
Laurenz
9025ecb2ee
Better error spans in `calc`
2023-04-13 15:13:31 +02:00
HarmoGlace
e11bd2a193
Add factorial, permutation and binomial to calculation functions ( #639 )
2023-04-13 14:38:51 +02:00
Laurenz
89cf4054d6
Reduce amount of hashing
2023-04-13 14:23:46 +02:00
Peng Guanwen
ff16f3fb37
Refine linebreak algorithm for better Chinese justification ( #701 )
2023-04-13 10:44:39 +02:00
Alex Saveau
03d2ec9f81
Strip trailing line breaks in math equations ( #750 )
2023-04-13 10:42:03 +02:00
Chen
a066a3d283
More flexible capability to control showing reference ( #646 )
2023-04-13 10:41:42 +02:00
Sébastien d'Herbais de Thun
1198e0cd38
Selector rework ( #640 )
2023-04-12 12:47:51 +02:00
Laurenz
fe2640c552
Version bump
2023-04-11 22:34:25 +02:00
Laurenz
12be8fe070
Let dictionaries respect insertion order
2023-04-11 21:59:02 +02:00
Laurenz
6dcb65e3a3
Improve documentation
2023-04-11 21:54:13 +02:00
Marmare314
72d8785abe
fix parenthesized binding ( #707 )
2023-04-11 18:44:17 +02:00
Laurenz
9984e73ff3
Fix highlighting of identifiers before brackets
2023-04-11 17:26:00 +02:00
Laurenz
9720424884
Fix duplicate error message for destructuring
2023-04-11 16:50:26 +02:00
Laurenz
74fce3fc78
Fix square sizing
...
Fixes #85 .
2023-04-11 16:26:26 +02:00
Eric Biedert
c7db709da5
Allow treating ratios as floats ( #681 )
2023-04-11 14:13:01 +02:00
Daniel Csillag
a8087a9dbb
Array sorting by key ( #584 )
2023-04-11 12:48:17 +02:00
Laurenz
75461675c4
Fix numbering test
2023-04-06 15:55:28 +02:00
SteamedFish
ebb995feca
Add Chinese numbering ( #565 )
2023-04-06 15:50:15 +02:00
Laurenz
4ba3b9da80
Fix block sizing test
2023-04-06 15:49:40 +02:00
Pg Biel
ca71081d05
Add 'layout' function to obtain the size of the outer container ( #557 )
2023-04-06 15:36:36 +02:00
Alex Sayers
5cb226026e
Add Iroha-style numbering (+ bugfix) ( #555 )
2023-04-06 15:31:17 +02:00
Marmare314
0f8219b392
Unpacking syntax ( #532 )
...
Closes #341
2023-04-06 15:26:09 +02:00
Laurenz
a73149767c
Fix block child spacing
2023-04-06 15:13:26 +02:00
Laurenz
4f4af02ace
Fix path and polygon strokes
2023-04-06 12:58:27 +02:00
Laurenz
f9b9be16f9
Fix box and block sizing
2023-04-06 12:26:39 +02:00
SekoiaTree
52b92a9d35
Path support ( #536 )
2023-04-06 12:10:49 +02:00
astrale-sharp
085282c138
Appends a hint if length is expected but hint provided. ( #580 )
2023-04-05 16:47:12 +02:00
Raphaël CV
d569f6b33b
Fix inversion cal frak R ( #593 )
2023-04-05 13:37:54 +02:00
Daniel Csillag
f548223663
Fix hiding of math ( #587 )
2023-04-05 12:04:11 +02:00
Laurenz
b3faef4b80
Bump version
2023-04-05 01:41:15 +02:00
Laurenz
e13c72b301
Fix first line indent with styled text
2023-04-05 00:15:51 +02:00
Sébastien d'Herbais de Thun
f347ed4314
Improved figure numbering, labelling and referencing ( #491 )
2023-04-04 19:21:25 +02:00
Laurenz
5b0297464e
Rename bibliography styles
2023-04-04 18:29:18 +02:00
Laurenz
570c528b3e
Integers with different bases
2023-04-04 15:46:09 +02:00
Laurenz
e77abf842d
Make error messages a bit more consistent
2023-04-04 14:33:43 +02:00
HarmoGlace
4aa5e0a4a3
Make behavior of calculation functions consistent ( #515 )
2023-04-04 14:33:26 +02:00
Alex Sayers
2c735294cd
Improve justification of Chinese/Japanese text ( #542 )
2023-04-03 15:56:23 +02:00
Sébastien d'Herbais de Thun
cca9ea8249
Make all counters start at zero ( #533 )
2023-04-02 20:01:19 +02:00
Laurenz
b469f30c83
Fix block spacing
2023-04-02 19:47:42 +02:00
Laurenz
e1ecb8cabe
Simplify `pow` function
2023-04-01 23:31:23 +02:00
Naim A
66a22b5555
Hebrew numbering ( #446 )
2023-04-01 16:05:06 +02:00
Birk Tjelmeland
ed79ecbb44
Add support for cliping content in `block` and `box` ( #431 )
2023-04-01 16:04:38 +02:00
P-Andersson
387bcc3879
add support for loading data from yaml files ( #447 )
2023-04-01 14:33:42 +02:00
Lars Wrenger
631ba40e57
Support for multiple bib files in a bibliography ( #296 )
2023-03-31 18:41:17 +02:00
Chris Ohk
418bd89ba4
Correct minor typos ( #474 )
2023-03-31 16:51:12 +02:00
frozolotl
ed36ef3312
Add support for more characters in links ( #379 )
2023-03-30 21:26:43 +02:00
Johannes Wolf
4d9c6b28d0
cli: Allow reading every path not of type dir ( #414 )
2023-03-30 00:36:22 +02:00
Naim A
2ed4212c76
bail! when #symbol is called without parameters ( #440 )
2023-03-29 23:07:08 +02:00
Laurenz
72fb155403
Link to label
2023-03-29 20:10:23 +02:00
Laurenz
24e26b8c77
Fix styling of text operators
2023-03-29 19:21:01 +02:00
frozolotl
e13fc04c3e
Fix parsing of language in single-tick raw literals ( #401 )
2023-03-28 17:04:27 +02:00
Laurenz
d1ff94a3b5
A bit more polygon docs
2023-03-28 17:00:02 +02:00
Olle Lögdahl
44165d09a9
Add polygon drawing primitive ( #314 )
2023-03-28 16:43:16 +02:00
Laurenz
e84df1a036
Fix tests on Windows
...
Fixes #386 .
2023-03-28 14:30:21 +02:00
Laurenz
e83e05d541
Term list separator changes
2023-03-27 22:31:29 +02:00
Laurenz
66de90437f
Update fibonacci example and add `round` function
2023-03-27 20:23:37 +02:00
Laurenz
e724d04253
Update changelog
2023-03-27 16:51:03 +02:00
Laurenz
c5fb34123c
Fix parsing of unbalanced delimiters in math
2023-03-27 16:09:26 +02:00
Laurenz
d71c933cca
Bump dependencies
2023-03-27 15:49:04 +02:00
Laurenz
1336219690
Fix numeric bibliography ordering
2023-03-27 15:21:18 +02:00
Laurenz
13ece5ec26
Allow disabling vector and matrix delimiters
2023-03-27 14:52:25 +02:00
Laurenz
51d972ec24
Fix matrix delimiters
...
Fixes #200 .
2023-03-27 13:14:21 +02:00
Laurenz
2c7f2c005a
Parse decimals as a unit
...
Fixes #257 .
2023-03-27 12:50:00 +02:00
Laurenz
a5c88c19b3
Fix enum parsing and allow zero in numberings
...
Fixes #353 .
2023-03-27 12:12:57 +02:00
Alexander Ekdahl
766d1be72b
Newton's notation for derivatives ( #281 )
2023-03-25 13:32:25 +01:00
Ryan Pitasky
8b1852cffb
Replace infinite repeat layout panic with error ( #235 )
...
When a page has auto width and there were no other constraints on the repetition width, this would previously panic. Now, there is an explicit check with a new error and test case.
2023-03-24 09:15:24 +01:00
Kian-Meng Ang
25acefeb5b
Fix typos ( #115 )
...
Found via `codespell -S target -L
crate,ist,thi,alle,dedented,ue,tung,nd,ende,overriden,dependant`
2023-03-22 09:02:51 +01:00
Laurenz
b934a2fd83
Embed standard fonts in binary
2023-03-21 23:18:56 +01:00
Laurenz
53b57d8294
Fix show rule colon error message
2023-03-21 13:08:18 +01:00
Laurenz
2d16f9434f
Documentation for citation, bibliography, and content
2023-03-20 22:09:10 +01:00
Laurenz
ab43bd802e
Renaming and refactoring
2023-03-19 22:39:19 +01:00
Laurenz
0ba99ab8aa
Measurement and introspection rework
2023-03-19 10:19:34 +01:00
Laurenz
c7f4d6b12e
Equation numbering
2023-03-18 19:54:00 +01:00
Laurenz
a69b587455
Rename formula to equation
2023-03-18 19:27:31 +01:00
Laurenz
a16726ae66
Architecture description
2023-03-18 18:27:22 +01:00
Laurenz
f2b0c5e08d
Fix page counter
2023-03-18 16:28:39 +01:00
Laurenz
af7fe4d760
Hover and autocomplete in show rules
2023-03-17 18:18:47 +01:00
Laurenz
6d64d3e8e9
Query
2023-03-17 16:04:14 +01:00
Laurenz
c47e4cb496
State
2023-03-17 16:04:12 +01:00
Laurenz
312197b276
Counters
2023-03-17 11:45:57 +01:00
Laurenz
ecb5543985
Node links
2023-03-15 12:33:38 +01:00
Laurenz
89f44f220d
Bibliography and citations
2023-03-14 22:53:54 +01:00
Laurenz
e50189cfa7
Allow keywords as fields
2023-03-14 22:31:05 +01:00
Laurenz
2bacbaf2bd
Hanging indent
2023-03-14 22:30:21 +01:00
Laurenz
724e9b140c
Locatability and synthesis improvements
2023-03-13 21:41:33 +01:00
Laurenz
ad05ba5925
Spans in math
2023-03-12 13:20:36 +01:00
Martin Haug
2720a44b96
Merge branch 'main' into ng
2023-03-12 09:58:47 +01:00
Laurenz
1a390deaea
Figures
2023-03-11 20:01:56 +01:00
Laurenz
529d3e10c6
Section references
2023-03-11 18:29:48 +01:00
Laurenz
a9fdff244a
Expose content representation more
2023-03-10 21:19:50 +01:00
Laurenz
902c2ea121
Fix y offset in shaper
2023-03-10 14:25:04 +01:00
Laurenz
62f35602a8
New #[func] macro
2023-03-10 12:55:21 +01:00
Laurenz
2c13ff9bfe
Make render background color configurable
2023-03-09 13:07:36 +01:00
Laurenz
d7a65fa26d
Rework style chain access
2023-03-08 14:35:33 +01:00
Laurenz
e5eab73374
Streamline field names
2023-03-08 11:02:27 +01:00
Laurenz
1b2b53ecb9
Require font to be a named argument
2023-03-08 10:44:24 +01:00
Laurenz
25b5bd1175
Fully untyped model
2023-03-07 15:17:13 +01:00
Laurenz
6ab7760822
Split up `model` module
2023-03-01 16:33:28 +01:00
Laurenz
7597b99789
New default style
2023-02-25 20:04:30 +01:00
Laurenz
09077d6382
Fix more bad font names
2023-02-24 15:08:00 +01:00
Laurenz
448844d66c
Allow multiple authors
2023-02-24 14:09:38 +01:00
Laurenz
affb353453
Merge main back
2023-02-23 14:38:45 +01:00
Laurenz
6e65ebf236
Panic function
2023-02-19 21:08:01 +01:00
Laurenz
c1637054a4
Fix semicolon parsing
2023-02-17 16:41:21 +01:00
Laurenz
028632a3a1
Fix error handling after hashtag
2023-02-17 16:32:48 +01:00
Laurenz
dd5f07eb91
Add `clusters` and `codepoints` methods
2023-02-17 10:53:47 +01:00
Laurenz
585f656487
Check char boundaries in string methods
2023-02-17 10:20:52 +01:00
Laurenz
56b6a2a908
Impl `Eq` for syntax tree types
2023-02-17 10:01:40 +01:00
Laurenz
67b4540397
Dissolve utility category
2023-02-16 14:43:38 +01:00
Laurenz
942fa6636d
Fix raw block highlighting
2023-02-15 09:52:08 +01:00
Laurenz
b9c0fd87d3
Fix grid sizing
2023-02-14 12:34:16 +01:00
Laurenz
cc9b52ddd4
Better table lines
2023-02-14 12:08:05 +01:00
Laurenz
17e9805b34
Let `eval` take code instead of markup
2023-02-13 17:45:08 +01:00
Laurenz
28b5c55cd5
Configurable markers for nested lists
2023-02-13 17:15:20 +01:00
Laurenz
05c8c6045c
Configurable numbering for nested enums
2023-02-13 16:54:05 +01:00
Laurenz
8f68bc7a8e
Dissolve basics folder
2023-02-13 16:50:57 +01:00
Laurenz
b1b4e52af9
Block sizing
2023-02-13 16:04:25 +01:00
Laurenz
72b60dfde7
Fill and stroke properties for containers
2023-02-13 12:18:34 +01:00
Laurenz
fd90736fb6
Support fractional width for `box`
2023-02-12 22:04:27 +01:00
Laurenz
d99359dede
Add `baseline` argument to `box`
2023-02-12 21:14:21 +01:00
Laurenz
d689d706ea
Vertically center non-math content in math by default
2023-02-12 21:14:12 +01:00
Laurenz
7b2cdb9d95
Require colon in show rule
2023-02-12 20:25:24 +01:00
Laurenz
3ffa7393f0
Make all nodes block-level
2023-02-12 19:57:28 +01:00
Laurenz
ebbee6274c
Fix square base
2023-02-12 16:38:18 +01:00
Laurenz
6260878245
Let line have an extent
2023-02-12 15:01:40 +01:00
Laurenz
2b26e08128
Fix set document bug
2023-02-12 13:23:48 +01:00
Laurenz
8cbc2ac483
Fix place base
2023-02-12 13:23:40 +01:00
Laurenz
01a62a690b
Make grid RTL aware
2023-02-12 12:57:40 +01:00
Laurenz
8951b1923a
Skip grid region if one cell is empty
2023-02-12 12:57:35 +01:00
Laurenz
e873468ea7
Change grid base for auto columns
2023-02-12 11:38:42 +01:00
Laurenz
03cbdea4b4
Fix "not in" precedence
2023-02-12 10:17:35 +01:00
Laurenz
ebe919220d
Fix flow bugs
2023-02-11 13:30:55 +01:00
Laurenz
7d28e6499e
Set Typst versions to `0.0.0`
2023-02-06 11:53:49 +01:00
Laurenz
2e87dcdbe0
More fonts
2023-02-06 11:48:16 +01:00
Laurenz
ec05ed7e06
Move assets
2023-01-31 15:05:42 +01:00
Laurenz
9a99beec94
Fix `array.pop()`
2023-02-05 17:47:33 +01:00
Laurenz
93138e2d4b
Fix font switch in math
2023-02-03 17:47:05 +01:00
Laurenz
9e918d06ad
Fix function call highlighting
2023-02-03 17:46:53 +01:00
Laurenz
15bc932ec1
Rename infinity symbol
2023-02-02 22:34:53 +01:00
Laurenz
2bb0135d2a
Fix inconsistency between text and idents in math
2023-02-02 22:33:12 +01:00
Laurenz
255044e04e
Ignore accent when positioning superscript
2023-02-02 21:21:04 +01:00
Laurenz
3f85d005bb
Fix root index placement again
2023-02-02 19:50:14 +01:00
Laurenz
10675cd6d5
Merge text and math symbols
2023-02-02 19:50:06 +01:00
Laurenz
e9ff2d6463
More robust automatic math spacing
2023-02-02 16:47:10 +01:00
Laurenz
e6400861ab
Matrix baseline alignment
2023-02-02 14:40:34 +01:00
Laurenz
bb12624e8e
Fix heading and list markers
2023-02-02 14:27:31 +01:00
Laurenz
5f5c659279
Math tests
2023-02-02 14:13:56 +01:00
Laurenz
afa344f33d
Fix raw show rule
2023-02-01 13:32:05 +01:00
Laurenz
c2bd114914
Symbol improvements
2023-01-31 13:00:20 +01:00
Laurenz
69985e59bc
Make lowercase greek italic
2023-01-31 02:05:53 +01:00
Laurenz
0ef1b02ee0
Add calc constants
2023-01-30 21:29:03 +01:00
Martin Haug
0287b98ef3
Add calc module
2023-01-30 21:04:34 +01:00
Laurenz
1ea0a93325
User-defined symbols
2023-01-30 19:45:10 +01:00
Laurenz
d9d2c021d6
Fix inline math bounding box
2023-01-29 20:44:33 +01:00
Laurenz
0911c709a8
Fix tests
2023-01-29 18:00:28 +01:00
Laurenz
406de22ee5
Remove method call syntax kind
2023-01-28 18:32:58 +01:00
Laurenz
4809e685a2
More capable math calls
2023-01-28 15:36:32 +01:00
Laurenz
28c554ec21
Rework math attachments and accents
2023-01-28 12:14:03 +01:00
Laurenz
2e039cb052
Fix math spacing bugs
2023-01-27 15:32:05 +01:00
Laurenz
43ef60c09c
Tracing-based expression tooltips
2023-01-27 12:05:12 +01:00
Laurenz
1de53730bc
Symbol values and modules
2023-01-27 12:04:36 +01:00
Laurenz
a8fd64f928
Hashtags everywhere!
2023-01-27 11:54:30 +01:00
Laurenz
4653ffebb4
Math module
2023-01-23 15:23:52 +01:00
Laurenz
2b8426b1b3
Interpret methods on modules as functions in modules
2023-01-23 13:26:10 +01:00
Laurenz
87a89e77e5
Some fixes
2023-01-22 13:48:49 +01:00
Laurenz
6f7e8dd497
Add Fira Math font
2023-01-22 13:16:25 +01:00
Laurenz
eabbbf7eae
Name handling for New Computer Modern Math
2023-01-22 13:16:03 +01:00
Laurenz
dd331f007c
Rewrite parser
2023-01-20 14:05:35 +01:00
Laurenz
40561e57fb
Remove most fields from `SyntaxKind` enum
2023-01-15 12:40:27 +01:00
Laurenz
ab03f32240
Reorganize syntax module
2023-01-14 12:34:17 +01:00
Laurenz
29b31c4a5a
New import syntax
2023-01-03 12:32:17 +01:00
Laurenz
7c683db367
Merge `MarkupNode` and `MathNode` into `Expr`
2022-12-31 09:52:14 +01:00
Laurenz
a6d90c1bf1
Numbering functions
2022-12-30 20:00:50 +01:00
Laurenz
f70cea508c
Remove index syntax in favor of accessor methods
2022-12-30 16:45:41 +01:00
Laurenz
fe1f440069
Clamp shape radii
2022-12-30 10:07:46 +01:00
Laurenz
94cf7005e9
Forbid division by zero
2022-12-30 10:01:37 +01:00
Laurenz
68c6160a14
Recursion with max depth
2022-12-30 09:48:30 +01:00
Martin Haug
bc535f7b71
`read` function
2022-12-29 11:49:01 +01:00
Laurenz
8527517258
Rename `desc` to `terms`
2022-12-22 18:25:29 +01:00
Laurenz
4c92ab4ace
Rename the `create` category to `construct`
2022-12-21 23:51:15 +01:00
Laurenz
038f9b015e
Document `line` function
2022-12-21 16:32:14 +01:00
Laurenz
31f904a2c4
Split up and document shapes
2022-12-21 16:19:46 +01:00
Laurenz
ba294e2670
Split up list type into three separate types and document them
2022-12-21 12:50:33 +01:00
Laurenz
ee732468c7
Document text category
2022-12-21 00:26:20 +01:00
Laurenz
38a0404050
Document underline, strikethrough, and overline
2022-12-20 18:20:19 +01:00
Laurenz
f5f7df7247
Documentation
2022-12-20 16:11:37 +01:00
Laurenz
b4b022940b
Syntax and example sections
2022-12-19 01:16:35 +01:00
Laurenz
35b16e545b
Document parameters in comment
2022-12-17 16:24:29 +01:00
Laurenz
b6202b646a
Reflection for castables
2022-12-15 23:11:20 +01:00
Laurenz
9ba4d2c134
New macro setup
2022-12-14 10:09:44 +01:00
Laurenz
4c73456fc1
Move highlighting into new IDE module
2022-12-14 10:02:19 +01:00
Laurenz
ad66fbdfa2
Detect infinite loops
2022-12-14 09:56:24 +01:00
Laurenz
c38d55614a
A few math fixes
2022-12-09 21:22:23 +01:00
Laurenz
cd089b6194
Align set rule
2022-12-09 10:21:11 +01:00
Laurenz
11c7ceb29e
Extend math library
2022-12-07 14:01:20 +01:00
Laurenz
5a0053c729
Vectors and cases
2022-12-07 11:30:17 +01:00
Laurenz
b2572f9d48
Math shorthands
2022-12-06 15:37:17 +01:00
Laurenz
3ecb0c754b
More math syntax
2022-12-06 12:37:08 +01:00
Laurenz
c2e458a133
Symbol notation
2022-12-05 12:25:37 +01:00
Laurenz
f57ce86431
Heading numbering and outline
2022-12-02 15:53:01 +01:00
Laurenz
56923ee472
Multi-part numbering patterns
2022-12-02 15:47:25 +01:00
Laurenz
9bc90c371f
Introspection
2022-12-02 15:45:18 +01:00
Laurenz
5110a41de1
Introduce virtual typesetter
2022-12-02 13:21:36 +01:00
Laurenz
bdf06c9c61
Fix auto column shrinking behaviour
2022-11-30 14:49:55 +01:00
Laurenz
579dac3c91
Strong delta
2022-11-29 14:57:05 +01:00
Laurenz
0efe669278
Reorganize library and tests
2022-11-29 14:18:13 +01:00
Laurenz
836692e73c
Widow and orphan prevention
2022-11-28 17:57:16 +01:00
Laurenz
989d170dc7
Fragments
2022-11-28 12:40:16 +01:00
Laurenz
6bafc63910
Document metadata
2022-11-26 23:52:01 +01:00
Laurenz
0579fd4409
Reorganize library base
2022-11-26 17:13:31 +01:00
Laurenz
36490f7f7b
Make text and space nodes unselectable
2022-11-26 15:09:03 +01:00
Laurenz
7af46fc025
Dynamic labels
2022-11-26 13:41:27 +01:00
Laurenz
3cdd8bfa40
Extract numbering pattern from list node
2022-11-26 12:51:15 +01:00
Laurenz
96f72eee6c
Separate typesetting and compilation
2022-11-24 17:51:07 +01:00
Laurenz
5ae81971f2
Introduce `Library`
2022-11-23 16:07:54 +01:00
Laurenz
b2a3d3f235
More general evaluation interface
2022-11-23 12:00:06 +01:00
Laurenz
2ce727fc95
Make inner node and node data private
2022-11-22 14:40:56 +01:00
Laurenz
dd9c323941
Show with set
2022-11-21 17:12:16 +01:00
Laurenz
c28d2130dd
Don't display functions
2022-11-21 17:11:40 +01:00
Laurenz
1d7e082d1d
Labels
2022-11-21 16:12:24 +01:00
Laurenz
ddada45097
Tracepoints for show rules
2022-11-20 23:32:30 +01:00
Laurenz
72361106bc
Add flag for model printing
2022-11-20 21:39:19 +01:00
Laurenz
321121c6c3
Move font folder
2022-11-20 18:14:13 +01:00
Laurenz
8eeb4ad8f6
Rename `margins` to `margin`
2022-11-19 23:33:33 +01:00
Laurenz
1937d746ab
Show everything!
2022-11-19 22:40:42 +01:00
Laurenz
9b8c1dc19f
Pass text node to text show rule instead of string
2022-11-18 14:31:51 +01:00
Laurenz
bf59c08a0a
New interaction model
2022-11-12 23:46:26 +01:00
Laurenz
010cc2effc
New block spacing model
2022-11-09 18:20:02 +01:00
Laurenz
a7a4cae294
Less style properties
2022-11-08 11:45:59 +01:00
Laurenz
0a41844cc4
Selectors
2022-11-07 14:43:13 +01:00
Laurenz
efd1853d06
Show it!
...
- New show rule syntax
- Set if syntax
- Removed wrap syntax
2022-11-07 12:46:05 +01:00
Laurenz
eb951c008b
Style changes
2022-11-04 11:38:09 +01:00
Laurenz
33928a00dc
Tidy up library
2022-11-03 16:50:26 +01:00
Laurenz
46921a8c28
Separate test crate
...
This removes the not-really-cyclic dependency that confuses rust-analyzer. See also: https://github.com/rust-lang/rust-analyzer/issues/2414
2022-11-03 16:13:35 +01:00
Laurenz
37a7afddfa
Split crates
2022-11-03 13:35:39 +01:00
Laurenz
f547c97072
Reduce usage of `finalize`
2022-10-31 15:47:49 +01:00
Laurenz
636bdb9e43
Rename `RoleMap` to `LangItems`
2022-10-31 09:11:56 +01:00
Laurenz
95e9134a3c
Refactor `geom` module
2022-10-28 16:43:38 +02:00
Laurenz
c0e972b91a
Reduce dependencies from compiler on library
2022-10-18 00:04:12 +02:00
Laurenz
e218226655
Merge some modules
2022-10-17 20:04:22 +02:00
Laurenz
fd8160f374
Remove `SpanPos` in favor of `ErrorPos`
2022-10-05 13:15:02 +02:00
Laurenz
ec884ec1d8
Refactor syntax module
2022-10-05 12:49:39 +02:00
Laurenz
5a8534a395
Parse basic math syntax
2022-10-04 13:45:16 +02:00
Laurenz
7ef6cb31df
Bump ttf-parser
2022-09-30 11:23:09 +02:00
Laurenz
abafb39041
Fix bad list interaction
...
Fixes #87
2022-09-26 16:25:40 +02:00
Laurenz
704f2fbaf1
Description lists, link syntax, and new enum syntax
2022-09-26 16:12:57 +02:00
Laurenz
2661f1a506
Round to nearest `u8` instead of flooring
2022-09-25 21:46:54 +02:00
Martin Haug
b14274d1e4
Methods to modify colors
2022-09-25 20:04:33 +02:00
Laurenz
f6adc45638
XML reading
2022-09-25 18:20:39 +02:00
Laurenz
fffb55f79a
JSON reading
2022-09-25 17:37:16 +02:00
Laurenz
ddd3b6a82b
Tracked memoization
2022-09-21 20:25:57 +02:00
Laurenz
3760748fdd
Refactor error handling
2022-09-20 19:49:47 +02:00
Laurenz
757a701c1a
A New World
2022-09-20 16:37:15 +02:00
Laurenz
e29f55bb29
Remove font store
2022-09-19 17:44:40 +02:00
Laurenz
30be75c668
Renaming
...
`Face` -> `Font`
`FaceId` -> `FontId`
`SourceFile` -> `Source`
2022-09-19 11:36:59 +02:00
Laurenz
4ec3bcee48
Remove pins and memoization
2022-09-19 11:16:05 +02:00
Laurenz
e5f958b921
Handle line comments nested in block comments
...
Fixes #76
2022-09-19 11:05:25 +02:00
Laurenz
b98004330b
Handle non-breaking spaces during justification
2022-09-19 10:28:06 +02:00
Laurenz
0d12f2ab23
[WIP] Label and reference syntax
2022-09-07 11:07:17 +02:00
Laurenz
9362c279de
CSV reading
2022-07-27 00:09:15 +02:00
Laurenz
fc574b3945
New `Str` type with methods
2022-07-26 23:27:44 +02:00
Laurenz
1e9a5eda48
Rework array methods
2022-07-26 23:24:30 +02:00
Laurenz
0dacb2d151
Fix error messages on Windows
2022-06-14 18:18:28 +02:00
Laurenz
20b990d297
Anti-aliased image rendering
2022-06-14 17:20:31 +02:00
Laurenz
7a6c2cce77
Make radius configuration unconfusing
2022-06-14 17:17:54 +02:00
Laurenz
6832ca2a26
Ensure expressions can continue after a multiline block
2022-06-14 14:05:46 +02:00
Laurenz
c81e2a5f56
Many fixes
2022-06-14 13:53:02 +02:00
Laurenz
2fe549c1ec
Fix inline math formula frame size
2022-06-13 14:07:48 +02:00
Laurenz
7660978ee5
Move `Arc` into `Frame`
2022-06-12 20:51:31 +02:00
Laurenz
6e3b1a2c80
Make all fields of `Frame` private
2022-06-12 17:26:18 +02:00
Laurenz
ed6550fdb0
Bump dependencies
2022-06-10 23:54:16 +02:00
Laurenz
94b375ce55
Incremental renumbering
2022-06-01 13:49:02 +02:00
Laurenz
0a9172cb15
Enforce and make use of span ordering
2022-05-31 13:19:09 +02:00
Laurenz
9bbebd69dd
Numbered spans
2022-05-31 12:37:05 +02:00
Laurenz
08a6188123
Remove green/red distinction
2022-05-31 10:40:30 +02:00
Martin Haug
755d468198
Fix inline nodes and decorations
...
Also Code Review 👯♂️
2022-06-01 11:43:03 +02:00
Martin Haug
4e3036afcb
Sub- and superscripts
...
Fixes to PDF export I guess
Also improved rendition for non-Latin scripts
2022-05-31 22:56:08 +02:00
Laurenz
ccb4753e24
Find optionally takes function instead of value
2022-05-30 10:33:51 +02:00
Laurenz
90be79dc86
Page background and foreground
2022-05-28 00:26:24 +02:00
Laurenz
1a7ce3da02
Luma color
2022-05-27 16:09:43 +02:00
Laurenz
d4e59d4be1
Make justified break work for last line
2022-05-27 15:54:54 +02:00
Laurenz
736289b064
Ensure me is always contained in all
2022-05-27 14:20:05 +02:00
Laurenz
ae68a15a46
Print function for debugging
2022-05-27 14:19:58 +02:00
Laurenz
806d9f0d9a
Pure functions!
2022-05-26 17:14:44 +02:00
Laurenz
22214a1e0a
Test groups
2022-05-27 14:23:05 +02:00
Laurenz
66d8f4569a
Locate me!
2022-05-26 11:59:53 +02:00
Martin Haug
99cb655832
Intra-document links
2022-05-27 12:56:20 +02:00
Laurenz
c010cbc17d
Move route from context to VM
2022-05-25 13:59:06 +02:00
Laurenz
3309ff9fe5
Slim down context
2022-05-25 11:16:03 +02:00
Laurenz
018860da9c
Parse math fonts only once
2022-05-24 19:30:09 +02:00
Laurenz
08554380f8
Fix generated strong and emphasized text
2022-05-19 13:11:00 +02:00
Laurenz
5a7c901f21
Switch to New Computer Modern Math
2022-05-19 12:59:39 +02:00
Laurenz
3965e10281
Hack in ReX for now
2022-05-18 19:09:57 +02:00
Laurenz
242b01549a
Safe `eval` function
2022-05-16 20:22:48 +02:00
Laurenz
a741bd6b83
Absolute paths
2022-05-16 17:56:36 +02:00
Laurenz
6536e9e069
Table fill closure
2022-05-16 16:04:40 +02:00
Laurenz
bc1bc91a33
Allow adding `none` and anything
2022-05-16 15:55:50 +02:00
Laurenz
1df621868f
Fix control flow bug
2022-05-13 16:39:41 +02:00
Laurenz
05c27a581e
Automatically display value in more places
2022-05-13 16:27:44 +02:00
Laurenz
3e9c63d685
Underline headings in raw theme
2022-05-13 13:52:26 +02:00
Laurenz
778aa4e7df
Mutable field access
2022-05-09 00:11:03 +02:00
Laurenz
1927cc86da
Set, show, wrap in code blocks
2022-05-09 00:03:57 +02:00
Laurenz
bfaf5447a7
Cast content from string
2022-05-06 10:05:11 +02:00
Laurenz
15ef72cca4
Fix empty heading
2022-05-04 23:34:02 +02:00
Laurenz
1bca9ccecb
Improve diagnostics
2022-05-04 23:26:15 +02:00
Laurenz
2a45650dcc
Keyed pairs
2022-05-04 23:12:31 +02:00
Laurenz
e674fd7e90
New raw theme & nicer debug representation
2022-05-04 22:14:57 +02:00
Laurenz
75472fee1a
Division for lengths
2022-05-04 22:14:51 +02:00
Laurenz
ba5622b7b9
Move smallcaps into separate function
2022-05-04 13:21:31 +02:00
Laurenz
507c5fc925
Text replacement show rules
2022-05-04 00:14:31 +02:00
Laurenz
e18a896a93
Test recursive show rules
2022-05-03 16:43:44 +02:00
Laurenz
d59109e8ff
Support recursive show rules
2022-05-03 15:58:15 +02:00
Martin Haug
6a8a0ec6ec
Code Review: Heap is Stack. Unsafe is Good.
...
Spaghetti Code is Style.
2022-05-03 12:59:41 +02:00
Martin Haug
33213abe7d
New page margins API
2022-05-02 18:48:32 +02:00
Martin Haug
9b4397cdab
Tests for the new shape API
2022-05-02 18:25:53 +02:00
Martin Haug
7b6f3a0ab9
A new `Cast` implementation for `Sides`
...
Reinstate circle
2022-05-02 16:35:11 +02:00
Martin Haug
84a4961a5d
Outset; fix folding
2022-05-01 14:56:07 +02:00
Laurenz
f9e115daf5
New block spacing model
2022-04-30 14:12:28 +02:00
Martin Haug
649c101f07
Add blind text function
2022-04-25 14:20:47 +02:00
Laurenz
7163b4a6c5
Soft pagebreak
2022-04-24 21:58:45 +02:00
Laurenz
2f33ad0e0a
Rename soft linebreak to justified linebreak
2022-04-24 21:38:23 +02:00
Laurenz
8fbb11fc05
Extract `model` module
2022-04-24 15:47:42 +02:00
Laurenz
04fb8b288a
Show rules with type ascribed object
2022-04-23 21:55:58 +02:00
Laurenz
7a2cc3e7d2
Field access
2022-04-19 16:37:16 +02:00
Laurenz
255d4c620f
Automatic frame merging
2022-04-19 13:54:04 +02:00
Laurenz
a302105b9f
Fix duplicate RTL text and alignment + fr bugs
2022-04-18 12:37:22 +02:00
Laurenz
db820ae9aa
Repeat function
2022-04-17 12:11:00 +02:00
Laurenz
4494b443bb
Ellipsis
2022-04-16 23:06:47 +02:00
Laurenz
c5b3f8ee98
Switch to `unscanny`
2022-04-16 22:23:57 +02:00
Laurenz
2db4b603db
Fix bug with enums starting at zero
2022-04-14 13:24:48 +02:00
Laurenz
b274155c6d
Improve language and add region controls
2022-04-13 16:01:24 +02:00
Laurenz
d025854457
Make language non-optional with english as default
2022-04-13 15:01:19 +02:00
Laurenz
67e9313b91
Soft breaks and shy hyphens
2022-04-13 14:48:19 +02:00
Laurenz
2279c26543
Smart quotes
...
Co-Authored-By: Martin Haug <mhaug@live.de>
2022-04-13 13:08:46 +02:00
Laurenz
e8dd842c66
Fix bug with basically empty paragraph
2022-04-13 11:59:05 +02:00
Laurenz
002b6c5b3e
Don't hang quotes
2022-04-13 11:24:42 +02:00
Laurenz
c3a387b8f7
Segment by script
2022-04-12 22:23:08 +02:00
Laurenz
1101a8370f
Negative array indexing
2022-04-11 16:30:34 +02:00
Laurenz
cd62792c0a
Prevent duplicate named arguments and dictionary keys
2022-04-11 16:11:16 +02:00
Laurenz
938b0af889
Spreading into arrays and dictionaries
2022-04-11 15:52:57 +02:00
Laurenz
34fa8df044
Move language-related properties from `par` to `text`
...
Closes #67
2022-04-10 23:36:36 +02:00
Laurenz
29eb13ca62
Sum color and length into stroke
2022-04-09 12:02:35 +02:00
Laurenz
712c00ecb7
Em units
2022-04-08 15:45:14 +02:00
Laurenz
977ac77e6a
Start & end alignment
2022-04-08 15:01:55 +02:00
Laurenz
4bb6240b40
Make `Relative` generic
2022-04-07 18:04:29 +02:00
Laurenz
1192132dc0
Rename length-related types
...
`Fractional` => `Fraction`
`Relative` => `Ratio`
`Linear` => `Relative`
2022-04-07 16:19:51 +02:00
Laurenz
eb22eed31b
Make chinese justification less bad
2022-04-07 12:51:03 +02:00
Laurenz
3d52387eea
Rework style chains
2022-04-07 11:07:00 +02:00
Laurenz
20b4d590b3
Fix wrong `search_range` computation
2022-04-05 17:03:24 +02:00
Laurenz
b8233a9e01
Don't allow empty lists and enums
2022-04-05 15:10:15 +02:00
Laurenz
b865accae6
Don't allow headings to span multiple lines
2022-04-05 15:04:31 +02:00
Laurenz
23d108c8e0
Font fallback
2022-04-03 13:55:58 +02:00
Laurenz
beca01c826
Methods
2022-03-18 23:43:58 +01:00
Laurenz
77d153d315
Add `in` and `not in` operators
2022-03-15 15:27:36 +01:00
Laurenz
ae0a56cdff
Non-returning error macro
2022-03-15 11:30:13 +01:00
Martin Haug
6f5b721fe5
CR: I'm gonna make him a refactor he can't refuse
2022-03-17 10:50:51 +01:00
Martin Haug
4d617bcd67
`LineNode`
2022-03-16 12:36:50 +01:00
Laurenz
288a926fea
Knuth-Plass and MicroType
2022-03-14 20:52:32 +01:00
Laurenz
2890a156d2
Remove classes and improve naming
2022-03-12 14:24:24 +01:00
Laurenz
5ac7eb3860
Rename template to content
2022-03-11 23:36:06 +01:00
Laurenz
e6b532391d
More restructuring
2022-03-11 11:58:56 +01:00
Laurenz
b71113d37a
Hyphenation
2022-03-08 19:49:26 +01:00
Laurenz
3ca5b23823
Reorganize library
2022-02-28 23:54:34 +01:00
Martin Haug
4f09233bda
Enable join collection for control flow constructs
2022-02-28 15:41:38 +01:00
Martin Haug
8e0f5993f1
Make loops and functions react to control flow
2022-02-28 13:41:15 +01:00
Laurenz
b0f4b13f6d
Basic justification
2022-02-25 20:48:38 +01:00
Laurenz
efde5cac88
Lower and upper on templates
2022-02-24 19:56:01 +01:00
Laurenz
ecd2bca606
List above & below
2022-02-24 19:15:49 +01:00
Laurenz
49c0bac44d
First-line indents
...
Co-Authored-By: Martin Haug <mhaug@live.de>
2022-02-24 19:15:11 +01:00
Laurenz
e1f29d6cb9
Rework the core context
2022-02-23 14:53:55 +01:00
Laurenz
2bf32c51bc
Remove layout cache
2022-02-22 12:42:02 +01:00
Laurenz
c7e52f2048
Refactor paragraph layout
2022-02-21 16:47:06 +01:00
Laurenz
61d1e1a683
Remove layout-cache feature
2022-02-18 17:33:13 +01:00
Laurenz
e01970b20a
Basic show rules
2022-02-18 16:57:53 +01:00
Laurenz
05ec0f993b
Headers and footers
2022-02-18 01:07:50 +01:00
Laurenz
acae6e2a54
List label styling
2022-02-18 01:06:20 +01:00
Laurenz
980f898d55
Automatic list numbering
2022-02-17 23:00:30 +01:00
Laurenz
261f387535
Accept closures for heading styling
2022-02-17 18:12:13 +01:00
Laurenz
35610a8c6a
Fallible layout
2022-02-17 17:41:45 +01:00
Laurenz
c5e67af22b
Merge eval and layout contexts into `Vm`
2022-02-17 17:32:56 +01:00
Laurenz
c7a9bac992
Better debug implementations for numeric types
2022-02-17 12:14:50 +01:00
Laurenz
5965515a1e
Allow escaping of `-` and `.`
2022-02-10 13:19:03 +01:00
Laurenz
e089b6ea40
Set rules for everything
2022-02-09 12:34:19 +01:00
Laurenz
68503b9a07
Redesigned template layout
2022-02-07 20:00:21 +01:00
Laurenz
5d05c3f68a
Refactor and fix style folding
2022-02-05 12:41:42 +01:00
Laurenz
20a1fd8bc7
Remove root node
2022-02-02 20:33:19 +01:00
Laurenz
d3ccd55d4b
Split up styled and sequence template
2022-02-02 16:18:10 +01:00
Laurenz
bdb1c008f2
Allow set & show only directly in markup
2022-02-02 11:28:31 +01:00
Martin Haug
fe70db1f4c
New color stuff
...
- CMYK function
- More default colors
- Interpret RGB values as sRGB
2022-02-08 21:12:09 +01:00
Martin Haug
9a9c6f22c4
Add evasion of glyph shape for under- and overlines
2022-02-04 00:30:23 +01:00
Martin Haug
bd0d0e10d8
Harmonize non-negative int arguments
2022-02-03 11:32:16 +01:00
Martin Haug
3f76aadb1a
Add modulo
2022-02-03 11:32:16 +01:00
Martin Haug
e6a0447f9d
Add roman numeral and footnote formatting
2022-02-03 11:32:15 +01:00
Laurenz
20b1a38414
Switch from `Rc` to `Arc`
2022-01-31 16:47:00 +01:00
Laurenz
fa57d86ed9
Fix another parser bug
2022-01-31 13:57:15 +01:00
Laurenz
8f37189d6f
Fix incremental parsing bugs
2022-01-31 13:26:52 +01:00
Laurenz
8d1ce390e2
Rework strong and emph
...
- Star and underscore not parsed as strong/emph inside of words
- Stars/underscores must be balanced and they cannot go over paragraph break
- New `strong` and `emph` classes
2022-01-30 22:46:59 +01:00
Laurenz
d7072f378f
Also debug print syntax tree
2022-01-30 11:16:57 +01:00
Laurenz
aeb036f4dc
Fix that templates don't create a scope
2022-01-29 22:32:57 +01:00
Laurenz
44ebefbec2
Add `hide` class
2022-01-29 22:32:01 +01:00
Laurenz
24d513d891
Enable for loop over captured args
2022-01-29 21:36:25 +01:00
Laurenz
5c53b9ff60
Support for `wrap`
2022-01-28 22:32:53 +01:00
Laurenz
9c906f92c5
Parse `break`, `continue` and `return` expression
2022-01-28 21:01:36 +01:00
Laurenz
3a07603b66
Remove unnecessary group
2022-01-28 20:17:30 +01:00
Laurenz
76b1d4a93f
Parse `show` and `wrap` expressions
2022-01-28 20:02:42 +01:00
Martin Haug
4f66907d08
Add Code Block syntax highlighting
2022-01-27 22:04:45 +01:00
Laurenz
3739ab7720
Export into rendered images
2022-01-24 17:39:49 +01:00
Laurenz
db158719d6
Simplify CLI
2022-01-24 16:44:52 +01:00
Laurenz
36cae88799
Fix table panic
2022-01-18 13:46:56 +01:00
Laurenz
0c5243fa80
Basic tables
2022-01-17 16:01:01 +01:00
Laurenz
b3062ee880
Make use of new Rust 1.58 formatting feature
2022-01-13 18:43:18 +01:00
Laurenz
c7f52ed048
Add `even` and `odd` functions
2022-01-13 14:14:00 +01:00
Laurenz
e74ae6ce70
Make all nodes into classes
2022-01-08 00:20:48 +01:00
Laurenz
0b62439090
Scoped styles
2022-01-07 13:26:51 +01:00
Laurenz
af014cfe5e
Tidy up styling
2022-01-07 10:46:55 +01:00
Laurenz
f7e8624b4c
Refactor
2022-01-05 15:06:42 +01:00
Martin Haug
c994cfa7d8
Code Review: Your parsers were so preoccupied with whether they could
2022-01-04 00:21:33 +01:00
Martin Haug
98c96ba1cb
Fix parser / space / error bug
2022-01-02 14:46:08 +01:00
Martin Haug
5f114e18eb
Added a test framework for incremental parsing
...
Fix several errors:
- Indented markup is now reparsed right
- All end group errors will now fail a reparse
- Rightmost errors will always fail a reparse
2022-01-02 00:46:19 +01:00
Laurenz
f174134aa2
Style chains
2021-12-30 12:12:19 +01:00
Laurenz
5d5d8a21cf
Bump and lock dependencies
2022-01-01 12:23:00 +01:00
Martin Haug
7f7e14d95f
Minor changes to columns
2021-12-28 00:23:42 +01:00
Martin Haug
37328f11ed
Adjust column size and expansion handling
2021-12-27 19:01:36 +01:00
Martin
7efdcdf247
Apply simple suggestions from code review
...
Co-Authored-By: Laurenz <laurmaedje@gmail.com>
2021-12-27 12:33:53 +01:00
Martin Haug
b22ce6f8b8
Introduce equal-width columns
2021-12-26 15:59:24 +01:00
Laurenz
438255519e
Review One: A Set Rules Story
2021-12-22 19:19:32 +01:00