Laurenz
ddada45097
Tracepoints for show rules
2022-11-20 23:32:30 +01:00
Laurenz
46d469f4be
Ignore linebreak directly after markup statement
2022-11-20 21:40:08 +01:00
Laurenz
565b1977ae
Rename `RawKind` to `RawFields`
2022-11-19 23:12:23 +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
92f2c56203
Reorganize style module
2022-11-18 12:49:27 +01:00
Laurenz
c3895cbd66
Remove `Target` enum
2022-11-18 11:23:56 +01:00
Laurenz
ddb617390c
Simplify layout_inline's signature
2022-11-17 23:04:02 +01:00
Laurenz
d9ce194fe7
Remove role applications
2022-11-09 22:49:25 +01:00
Laurenz
010cc2effc
New block spacing model
2022-11-09 18:20:02 +01:00
Laurenz
12a59963b0
Reduce style chain bloat
2022-11-08 16:37:07 +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
37a7afddfa
Split crates
2022-11-03 13:35:39 +01:00
Laurenz
56342bd972
Move layout traits into library
2022-11-02 14:48:51 +01:00
Laurenz
37ac5d966e
More dynamic content representation
2022-11-02 09:18:33 +01:00
Laurenz
f547c97072
Reduce usage of `finalize`
2022-10-31 15:47:49 +01:00
Laurenz
671ce3dedd
Replace `encode` with `field`
2022-10-31 13:49:10 +01:00
Laurenz
636bdb9e43
Rename `RoleMap` to `LangItems`
2022-10-31 09:11:56 +01:00
Laurenz
237feda063
Remove semantic role handling
2022-10-31 09:05:50 +01:00
Laurenz
66ad023519
Split up some files
2022-10-31 08:57:44 +01:00
Laurenz
95e9134a3c
Refactor `geom` module
2022-10-28 16:43:38 +02:00
Laurenz
66030ae5d7
Small fixes
2022-10-27 15:56:03 +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
4fd031a256
More spans in AST
2022-10-17 17:11:01 +02:00
Laurenz
86990d2287
Also hash syntax tree in source
2022-10-14 13:25:49 +02:00
Laurenz
0a0feb75fe
Add `NotSource` variant to `FileError`
2022-10-05 13:20:46 +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
9db89b376d
Refresh TextMate grammar
2022-09-27 16:40:17 +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
680cc9aa93
Do not upset Acrobat
2022-09-25 21:37:22 +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
59f67b79c7
Remove image store
2022-09-19 12:49:36 +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
e5615ce02d
Fix cost if last line is justified
2022-09-19 10:42:54 +02:00
Laurenz
65c4ee42e7
Underline only Typst headings in code blocks
2022-09-19 10:29:08 +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
ef866b0cd1
Move casting into separate module
2022-07-26 23:16:03 +02:00
Laurenz
a904976db5
Remove booleans from args parser
2022-06-15 13:26:53 +02:00
Laurenz
cbfac6cd45
Fix highlighting bugs
2022-07-26 20:32:50 +02:00
Laurenz
4817c62dfb
Split up PDF exporter
2022-06-14 21:36:33 +02:00
Laurenz
7fb19d5ef8
Unified file loading errors
2022-06-14 20:07:27 +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
e03f32ca34
Turn reparsing methods into free functions
2022-06-14 14:03:13 +02:00
Laurenz
c81e2a5f56
Many fixes
2022-06-14 13:53:02 +02:00
Laurenz
891af17260
Bump lipsum
2022-06-13 19:44:57 +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
6aff11057b
Non-outlined headings
2022-06-09 13:45:36 +02:00
Laurenz
cd5a14bc24
Merge pull request #75 from typst/semantics
...
Frame Role and PDF outline
2022-06-08 19:31:07 +02:00
Martin Haug
72d3f3fffa
CR: Whoever said orange is the new pink was seriously disturbed.
2022-06-08 19:26:20 +02:00
Martin Haug
9dca4c2f78
Preallocate Page Refs
2022-06-08 17:05:07 +02:00
Martin Haug
55dce19f49
Restructure PDF structure writing
2022-06-08 16:36:50 +02:00
Martin Haug
995a7882d2
Auto-detect grid row semantics
2022-06-08 13:11:51 +02:00
Martin Haug
6d8b65c4b2
More consistent role application
2022-06-08 12:30:10 +02:00
Martin Haug
4640585fbd
First iteration of outline items
2022-06-04 12:57:45 +02:00
Martin Haug
b905048d4b
Switch bounded condition, delete `only_at_start`
2022-06-01 19:39:23 +02:00
Martin Haug
91bf1b7f65
Refine `ahead_nontrivia` search
...
Also reintroduces unsafe layers under another name
2022-06-01 17:58:04 +02:00
Laurenz
af10b08cc1
Documentation
2022-06-01 16:51:46 +02:00
Laurenz
94b375ce55
Incremental renumbering
2022-06-01 13:49:02 +02:00
Laurenz
c56a8c41f0
Fix that incremental reparsing is impossible at the end
...
Co-Authored-By: Martin Haug <mhaug@live.de>
2022-06-01 10:30:28 +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
97858e5992
Basic manual tracking
2022-05-31 10:13:34 +02:00
Laurenz
ccb4753e24
Find optionally takes function instead of value
2022-05-30 10:33:51 +02:00
Laurenz
757615dc42
Fix color space definitions
2022-05-30 10:31:05 +02:00
Martin Haug
26a427a321
Fix `FontFile3` dictionary for OpenType-Fonts
2022-05-30 10:28:06 +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
8ba11b0722
Reword
2022-05-27 16:37:03 +02:00
Laurenz
f8009b5b59
Reuse location type
2022-05-27 14:34:27 +02:00
Laurenz
736289b064
Ensure me is always contained in all
2022-05-27 14:20:05 +02:00
Laurenz
9950a69d23
Replay group and value side effects
2022-05-27 09:36:51 +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
3e052e6e01
All methods for groups
2022-05-26 14:29:10 +02:00
Laurenz
a9869c212f
Locatable groups
2022-05-26 13:49:44 +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
0170913d54
Rebrand queries as memoization
2022-05-25 21:56:22 +02:00
Laurenz
b6b6e36924
Replace static with const in two places
2022-05-25 21:23:12 +02:00
Laurenz
30fdba4356
Move deps from context to VM
2022-05-25 14:56:37 +02:00
Laurenz
c010cbc17d
Move route from context to VM
2022-05-25 13:59:06 +02:00
Laurenz
6935cf8dfe
Virtual machine
2022-05-25 11:51:28 +02:00
Laurenz
3309ff9fe5
Slim down context
2022-05-25 11:16:03 +02:00
Laurenz
362a7f2a8a
Thread-local query cache
2022-05-25 10:55:08 +02:00
Laurenz
018860da9c
Parse math fonts only once
2022-05-24 19:30:09 +02:00
Laurenz
acdde6d326
Remove `unscoped` hack
2022-05-24 18:32:51 +02:00
Laurenz
18511686f3
Add missing string cast for marginal
2022-05-20 22:28:02 +02:00
Laurenz
6ff5536127
Expand command line interface
2022-05-20 10:31:44 +02:00
Laurenz
c9b72aaa84
More highlighting API
2022-05-20 10:04:49 +02:00
Laurenz
fcce3df093
Simplify `only_in_mode` to `only_in_markup`
2022-05-19 13:56:14 +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
486f7b1bca
Forbid `auto` for raw and math family
2022-05-18 18:12:02 +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
204cad6bd6
Store core context in grid layouter
2022-05-16 15:39:08 +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
11f1f0818b
Pass language to raw show rule
2022-05-13 13:52:52 +02:00
Laurenz
3e9c63d685
Underline headings in raw theme
2022-05-13 13:52:26 +02:00
Laurenz
673d4e33e9
Fix grid measurement bug
2022-05-13 13:49:36 +02:00
Laurenz
64f8f981c2
Fix `Cast` implementation of `LayoutNode`
2022-05-12 11:42:09 +02:00
Martin Haug
84bd3454df
Write language and direction for PDFs
2022-05-11 16:25:49 +02:00
Laurenz
a247653cd0
Fix wrong table padding in subsetting
2022-05-09 09:41:13 +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
Martin Haug
49b8574b8d
Fix CFF font bug
2022-05-07 17:23:44 +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
Laurenz
f77f1f61bf
Split up style module
2022-04-30 16:47:43 +02:00
Martin Haug
51d0de09c6
Code Review: Relax, it's much worse than you think
2022-05-03 23:43:56 +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
f07395f9a4
Move rounding logic out of exporters
2022-05-02 17:20:47 +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
Martin Haug
5f1499d380
Add round corners and change arguments
2022-05-01 11:50:34 +02:00
Laurenz
f9e115daf5
New block spacing model
2022-04-30 14:12:28 +02:00
Laurenz
f7c67cde72
New document & flow building
2022-04-26 13:26:31 +02:00
Laurenz
09aabc3a21
Public style entry enum
2022-04-25 15:50:13 +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
2791f59ce2
Clean up the parser a bit
2022-04-24 18:00:36 +02:00
Laurenz
89927d7de0
`StyleSlot`, `KeyId` and `NodeId`
2022-04-24 16:42:19 +02:00
Laurenz
8fbb11fc05
Extract `model` module
2022-04-24 15:47:42 +02:00
Laurenz
e4ee14e54f
Extract methods into separate module
2022-04-24 15:27:06 +02:00
Laurenz
50e4002a2a
Split `show` into `realize` and `finalize`
2022-04-24 14:53:43 +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
f27f7a05ab
Tidy paragraph layout
2022-04-18 13:10:40 +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
f7875032b7
Small highlighting improvement
2022-04-13 11:34:44 +02:00
Laurenz
002b6c5b3e
Don't hang quotes
2022-04-13 11:24:42 +02:00
Martin Haug
072543fc59
Introduce `NodeKind::Quote`
2022-04-12 22:35:04 +02:00
Laurenz
c3a387b8f7
Segment by script
2022-04-12 22:23:08 +02:00
Laurenz
56968bc0d6
Merge text runs during paragraph layout
2022-04-12 17:49:22 +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
790bd536eb
Fix incremental bugs
...
Co-Authored-By: Martin Haug <mhaug@live.de>
2022-04-11 15:39:32 +02:00
Laurenz
3cc026cf39
Reorder blocks
2022-04-11 18:08:40 +02:00
Laurenz
029b87b0a9
Less style chains lookups during paragraph layout
2022-04-10 23:24:09 +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
e1d7edb7c1
Property resolving
2022-04-08 14:48:02 +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
2eacfcfa81
Fix typo
2022-04-05 14:42:36 +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
9c7067bce3
Refactor paragraph layout
2022-03-13 12:47:51 +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
5ce2a006b6
Consistent block naming
2022-03-11 12:22:27 +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
d24c7030d8
Allow access to numbering for unordered lists
2022-03-08 19:49:22 +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
9fde38a6f8
CR: I've a feeling we're not in Review anymore.
2022-02-28 14:22:49 +01:00
Martin Haug
8e0f5993f1
Make loops and functions react to control flow
2022-02-28 13:41:15 +01:00
Martin Haug
d007788db8
Introduce `EvalResult` for control flow
2022-02-28 13:18:29 +01:00
Laurenz
4f85fc3acd
Remove dependency on itertools
2022-02-26 00:13:44 +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
90132b0d65
Merge pull request #64 from typst/new-incr-parse
...
New Incremental Parser
2022-02-23 23:58:05 +01:00
Martin Haug
9fda623b02
Code Review: That's just like your struct, man.
2022-02-23 20:49:47 +01:00
Laurenz
f2f473a81f
Query cache
2022-02-23 17:17:00 +01:00
Laurenz
e1f29d6cb9
Rework the core context
2022-02-23 14:53:55 +01:00
Martin Haug
4c8634c600
Early stop for falling indents.
...
Fix code edits and at_start handling.
Also fix dedenting for multi-byte chars in raw blocks.
2022-02-23 14:50:38 +01:00
Martin Haug
20ac96f27a
New incremental parsing paradigm
...
Also move column offset into scanner.
This fixes #62
2022-02-23 13:58:56 +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
Martin Haug
aac3afcba8
Remove `Parbreak` as a `NodeKind`
2022-02-21 13:48:21 +01:00
Laurenz
61761604e4
Page style list fix
2022-02-20 23:54:46 +01:00
Laurenz
43556a74aa
Fix alphabetic numbering
2022-02-18 17:45:25 +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
3d965ae6a4
Change default parameter of `Cast`
2022-02-17 14:31:02 +01:00
Laurenz
17e3353483
Make values sync
2022-02-17 14:09:26 +01:00
Laurenz
91e45458e3
Make values hashable
2022-02-17 12:50:54 +01:00
Laurenz
c7a9bac992
Better debug implementations for numeric types
2022-02-17 12:14:50 +01:00
Laurenz
ab95627d87
Switch to const generics for nodes
2022-02-17 13:28:04 +01:00
Laurenz
5965515a1e
Allow escaping of `-` and `.`
2022-02-10 13:19:03 +01:00
Laurenz
624471db61
Proper error messages for shorthands
2022-02-10 10:29:17 +01:00
Laurenz
6e198bf760
Fix CMYK formatting
2022-02-10 10:05:43 +01:00
Laurenz
ed1197a3db
Don't try to reload faces over and over
2022-02-10 10:03:39 +01:00
Laurenz
642e149464
Incremental bug fixes
...
Co-Authored-By: Martin Haug <mhaug@live.de>
2022-02-09 18:15:39 +01:00
Laurenz
5a0e7cc361
Coalesce text and simple spaces for high performance
...
Co-Authored-By: Martin Haug <mhaug@live.de>
2022-02-09 14:56:12 +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
9730e785a8
Tidy up
2022-02-07 14:19:13 +01:00
Laurenz
5d05c3f68a
Refactor and fix style folding
2022-02-05 12:41:42 +01:00
Laurenz
90fb28b4b6
Add `group` in addition to `group_by_key`
2022-02-04 21:32:14 +01:00
Laurenz
bdc7127adf
Refactor flow, stack and grid layouters a bit
2022-02-03 15:25:47 +01:00
Laurenz
f9d3802492
Better debug representation for template
2022-02-03 14:27:20 +01:00
Laurenz
20a1fd8bc7
Remove root node
2022-02-02 20:33:19 +01:00
Laurenz
c5e05ac0ea
Rename `into_block` to `pack`
2022-02-02 17:17:41 +01:00
Laurenz
88e50a55af
Pass arguments to call and construct directly by value
2022-02-02 16:32:30 +01:00
Laurenz
d3ccd55d4b
Split up styled and sequence template
2022-02-02 16:18:10 +01:00
Laurenz
a7b403fd74
Rename `Node` to `Template`
2022-02-02 16:02:23 +01:00
Laurenz
0a1916c1e4
Remove width from backlog and last region
2022-02-02 15:25:43 +01:00
Laurenz
bdb1c008f2
Allow set & show only directly in markup
2022-02-02 11:28:31 +01:00
Laurenz
7c33c1e691
Make `Add` for `Node` a bit more efficient
2022-02-02 10:40:33 +01:00
Laurenz
a3f151df82
Fix filename
2022-02-02 10:40:26 +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
144c2957e1
Le Rêfectéur
2022-02-04 11:28:39 +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
Martin Haug
e32e9faa53
Fix incremental group bug
2022-02-03 11:31:53 +01:00
Laurenz
6a6753cb69
Better function representation
2022-02-01 12:26:13 +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
b1a82ae22d
Remove `markup_while`
2022-01-31 11:16:31 +01:00
Laurenz
490819a3d0
Reorder succession rules
2022-01-31 11:05:59 +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
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
3cad6bf607
Allow to add `none` and node
2022-01-29 18:14:51 +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
Laurenz
c183ed3c15
Mutex comes from tex and we don't want any
2022-01-27 23:07:10 +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
cd7630415f
Don't do font fallback for unshapable newlines
2022-01-17 16:48:16 +01:00
Laurenz
0c5243fa80
Basic tables
2022-01-17 16:01:01 +01:00
Laurenz
4abdafcd15
Faster byte/utf-16 offset conversions
2022-01-13 19:55:32 +01:00
Laurenz
b3062ee880
Make use of new Rust 1.58 formatting feature
2022-01-13 18:43:18 +01:00
Laurenz
8013a0d0e6
More heading configuration
2022-01-13 14:14:34 +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
5fd9c0b0d7
Lift styles out of individual nodes
2022-01-05 23:55:06 +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
Martin Haug
289122e83c
Deal with offside rule and remove RightWhitespace
2021-11-29 12:06:41 +01:00
Laurenz
12f7335ac3
Clarity and bugfix
...
Fixes a bug where validation would wrongly reject an atomic primary reparse due to trailing whitespace.
Co-Authored-By: Martin <mhaug@live.de>
2021-11-28 22:32:20 +01:00
Martin Haug
e05eb5fda5
Code Review: Parser, I can't let you do this
2021-11-28 18:18:45 +01:00
Martin Haug
edc686d738
Make incremental parsing simpler and move it somewhere else
2021-11-27 16:10:22 +01:00
Martin Haug
fdb9d0743d
Refactoring and bugfixes
2021-11-18 16:21:45 +01:00
Martin Haug
3162c6a83a
Comments and neighbors
2021-11-10 20:41:10 +01:00
Martin Haug
91f2f97572
Multiple replacements, escapes
2021-11-09 13:34:23 +01:00
Martin Haug
7a631d8b09
Simplify node mode management
2021-11-09 13:07:55 +01:00
Martin Haug
9141cba6a9
Deal with the effects of keywords
2021-11-08 12:01:35 +01:00
Martin Haug
0663758fbb
Tests
...
- length updates
- dealing with keywords and comments
2021-11-07 19:43:01 +01:00
Martin Haug
eba7fc34ef
Incremental-safety based approach
2021-11-06 16:07:21 +01:00
Martin Haug
7016ab0d12
Make stuff more elegant
2021-11-03 11:03:00 +01:00
Martin Haug
1e4cab393e
Introduce incremental parsing
2021-11-02 12:06:22 +01:00
Laurenz
179a9f4798
Clarifications and small improvements
2021-12-30 17:02:19 +01:00
Laurenz
f174134aa2
Style chains
2021-12-30 12:12:19 +01:00
Laurenz
f5dcb84e36
Make clippy a bit happier
2021-12-30 12:00:12 +01:00
Laurenz
bd304b99e5
Tidying
2021-12-28 13:41:26 +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 Haug
accf70949d
Make column child frames expand horizontally
2021-12-27 14:04:25 +01:00
Martin Haug
ee12bf6716
Iterate over target regions instead in columns loop
2021-12-27 13:41:57 +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
Laurenz
11565a40b3
Set Rules Episode IX: The Rise of Testing
2021-12-21 00:20:24 +01:00
Laurenz
958f74f777
Set Rules Episode VIII: The First Macro
2021-12-16 14:43:02 +01:00
Laurenz
2a3d0f4b39
Set Rules Episode VII: The Set Awakens
2021-12-15 20:27:41 +01:00
Laurenz
244ad386ec
Set Rules Episode VI: Return of the Refactor
2021-12-15 12:49:20 +01:00
Laurenz
57f5c0a1b1
Set Rules Episode V: The Tests Strike Back
2021-12-15 11:12:38 +01:00
Laurenz
ae38be9097
Set Rules Episode IV: A New Fold
2021-12-15 11:11:57 +01:00
Laurenz
fe21c4d399
Set Rules Episode III: Revenge of the packer
2021-12-09 13:42:52 +01:00
Laurenz
40b87d4066
Set Rules Episode II: Attack of the properties
2021-12-07 16:36:39 +01:00
Laurenz
26bdc1f0f6
Set Rules Episode I: The Phantom Style
2021-12-05 12:54:03 +01:00
Martin Haug
738ff7e1f5
Reduce the size of the `FramesEntry` struct and bump edition
2021-12-13 15:56:14 +01:00
Martin Haug
7c829c5c1b
Bump pdf-writer, svg2pdf and error messages
...
Co-Authored-By: Laurenz <laurmaedje@gmail.com>
2021-12-07 00:06:54 +01:00
Martin Haug
f15ee7efb6
Add SVG capabilities
2021-12-06 14:58:57 +01:00
Laurenz
2982020480
Bump pdf-writer
2021-12-04 21:55:23 +01:00
Martin Haug
d971ac9a8c
Add a producer info for the PDF
2021-12-02 17:24:52 +01:00
Laurenz
bfa9962632
Remove baseline weirdness
2021-12-02 14:48:12 +01:00
Laurenz
f3bdc9d3da
Syntax highlighting
2021-11-30 18:55:50 +01:00
Laurenz
e4e4c1876f
Fix square and circle width & height
2021-11-29 16:13:53 +01:00
Laurenz
67705e2038
Fix vertical image expansion
2021-11-29 15:09:29 +01:00
Laurenz
cae60ea0cc
Go back to wrapping inline nodes
2021-11-29 13:12:50 +01:00
Laurenz
e36b8ed374
Layout bugfixes
2021-11-29 12:06:38 +01:00
Laurenz
50bd863471
More independent placed node
2021-11-26 23:51:18 +01:00
Laurenz
3a15922d2f
X/Y abstractions
2021-11-26 16:32:06 +01:00
Laurenz
393d74f9bb
Layout improvements
2021-11-25 20:51:16 +01:00
Laurenz
304d9dd110
Small style changes
2021-11-24 17:00:10 +01:00
Laurenz
8a88f71cb1
Transformations
2021-11-23 22:04:08 +01:00
Laurenz
c77c5a0f0a
Simpler alignment resolving
2021-11-23 14:25:50 +01:00
Laurenz
4f9e5819bb
2d alignments with plus operator
2021-11-23 12:45:20 +01:00
Laurenz
d3f6040ced
Horizon alignment
2021-11-23 11:58:16 +01:00
Laurenz
02f114d072
Remove decorum
2021-11-22 15:50:35 +01:00
Laurenz
0a974d86ba
Welcome to Tigerland
2021-11-22 15:26:56 +01:00
Laurenz
ed50661378
Castable optional and smart values
2021-11-29 16:47:35 +01:00
Laurenz
cef46e6c40
Strokes
2021-11-20 15:51:07 +01:00
Laurenz
70c0dd7674
Small fixes
2021-11-19 13:16:43 +01:00
Laurenz
5a59bb4821
Page fill
2021-11-18 12:50:28 +01:00
Laurenz
b2e6a29789
Refactoring
2021-11-18 00:58:32 +01:00
Laurenz
d9c529347d
Configurable paragraph alignment
2021-11-17 23:54:43 +01:00
Laurenz
095fa52be5
Placed node
2021-11-17 23:09:23 +01:00
Laurenz
e869c899bc
More intuitive auto image sizing in grid
2021-11-17 22:29:23 +01:00
Laurenz
89f2e71852
Align node
2021-11-17 17:09:19 +01:00
Laurenz
9a800daa82
Image fit modes
2021-11-16 21:32:29 +01:00
Laurenz
0cdf17216f
Abstraction for fr resolving
2021-11-16 18:15:47 +01:00
Laurenz
79638d4bbd
Don't wrap already layoutable nodes into flows/pars unnecessarily
2021-11-16 12:47:14 +01:00
Laurenz
73c4701749
Introduce `SizedNode`
2021-11-16 11:40:42 +01:00
Laurenz
0e0f340502
Revert page and inline levels
2021-11-16 10:41:30 +01:00
Laurenz
bc118634ac
Remove alignment from stack
2021-11-16 10:22:46 +01:00
Laurenz
210c4d9373
Move `lang` functionality into `par`
2021-11-16 00:37:33 +01:00
Laurenz
370802de13
Simplify `FlowNode` a bit
2021-11-16 00:32:41 +01:00
Laurenz
972c940e07
Introduce `FlowNode`
2021-11-16 00:12:43 +01:00
Martin Haug
bcde4a3e51
Fix a grid constraint
2021-11-27 15:05:26 +01:00
Martin Haug
5677766715
Fix some comments
2021-11-24 20:07:44 +01:00
Laurenz
0ad0fa5a05
RTL tracking test
2021-11-20 13:26:28 +01:00
Martin Haug
c020707ebc
Add tracking to font function
2021-11-20 12:36:03 +01:00
Laurenz
63c274e7f6
Make clippy happier and remove `Str`
2021-11-15 17:06:43 +01:00
Laurenz
8a38899c98
Tidying
2021-11-14 15:06:34 +01:00
Laurenz
14048937b8
Search for fonts in the project directory
2021-11-14 13:13:27 +01:00
Laurenz
38c5c36241
Final touches
2021-11-08 13:06:11 +01:00
Laurenz
75fffc1f9b
Fine-grained capturing
2021-11-08 11:52:09 +01:00
Laurenz
95866d5fc9
Tidy up AST
2021-11-08 01:37:49 +01:00