Commit Graph

1503 Commits

Author SHA1 Message Date
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 33013af37a Error message when font doesn't support math 2023-01-27 19:27:32 +01:00
Laurenz c7c135f25e Add `variants` method to symbol 2023-01-27 19:27:15 +01:00
Laurenz a96141a3ea Autocomplete methods 2023-01-27 16:09:35 +01:00
Laurenz 2e039cb052 Fix math spacing bugs 2023-01-27 15:32:05 +01:00
Laurenz a59b9fff93 Scale shorthand brackets 2023-01-27 12:20:19 +01:00
Laurenz 9d962c5c40 More `track_caller` annotations 2023-01-27 12:16:54 +01:00
Laurenz 43ef60c09c Tracing-based expression tooltips 2023-01-27 12:05:12 +01:00
Laurenz c56299c6bd Refactor autocomplete 2023-01-27 12:04:54 +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 33585d9a3f Small fixes 2023-01-27 11:38:04 +01:00
Laurenz 4653ffebb4 Math module 2023-01-23 15:23:52 +01:00
Laurenz 84c6c8b0e6 Fix closure parameter capturing 2023-01-23 15:02:09 +01:00
Laurenz 2b8426b1b3 Interpret methods on modules as functions in modules 2023-01-23 13:26:10 +01:00
Laurenz 6ca240508e Don't throw away arguments after non-function math call 2023-01-22 16:29:37 +01:00
Laurenz 7e295d84b5 Math delimiter grouping 2023-01-22 13:32:58 +01:00
Laurenz ea378e89b4 Better math atoms 2023-01-22 13:27:49 +01:00
Laurenz 83b6858146 Math framework 2023-01-22 13:26:42 +01:00
Laurenz a2d77e36ba Frame debugging tools 2023-01-22 13:21:35 +01:00
Laurenz 760936af49 Remove ReX 2023-01-22 13:19:48 +01:00
Laurenz 815ee3254c Formatting fixes 2023-01-22 13:18:30 +01:00
Laurenz eabbbf7eae Name handling for New Computer Modern Math 2023-01-22 13:16:03 +01:00
Laurenz e38839c287 Fix small newline bug 2023-01-20 14:26:43 +01:00
Laurenz b73b4f33bc Fix a few clippy lints 2023-01-20 14:21:59 +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 15f0434d1f Eliminate literal type 2023-01-14 12:52:24 +01:00
Laurenz ab03f32240 Reorganize syntax module 2023-01-14 12:34:17 +01:00
Laurenz 2589692b00 Iterator over coverage 2023-01-12 17:13:10 +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
Laurenz 94b90761eb Bugfixes 2022-12-27 16:07:26 +01:00
Laurenz 046cd4f5c7 Fix autocomplete 2022-12-25 17:20:12 +01:00
Laurenz 8527517258 Rename `desc` to `terms` 2022-12-22 18:25:29 +01:00
Laurenz 990224c0f8 Annotate return values 2022-12-22 00:34:03 +01:00
Laurenz 1eda162867 Mutable methods with return values 2022-12-21 23:48:04 +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
Martin Haug 5e19991b6c Document Utility funcs, some layout funcs 2022-12-20 18:31:47 +01:00
Laurenz f5f7df7247 Documentation 2022-12-20 16:11:37 +01:00
Martin Haug b8ffd3ad3d Document meta and data loading categories 2022-12-20 15:55:15 +01:00
Laurenz b4b022940b Syntax and example sections 2022-12-19 01:16:35 +01:00
Laurenz ba384e5bb6 Fix set rule autocomplete filter 2022-12-17 18:12:08 +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 f3980c7045 Basic autocompletion 2022-12-14 10:10:26 +01:00
Laurenz 0c7fb7d30f Hover tooltips 2022-12-14 10:10:07 +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 2470df05af Linked syntax node 2022-12-14 09:57:52 +01:00
Laurenz ad66fbdfa2 Detect infinite loops 2022-12-14 09:56:24 +01:00
Laurenz 2271d67f8f Faster image rendering 2022-12-12 10:35:42 +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 1d324235bd Make show rule fallible again 2022-12-05 12:21:10 +01:00
Laurenz 1bb05677fa Small improvements 2022-12-05 10:59:00 +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 33ab1fdbdd Fix closure capturing bug with for loops 2022-12-02 13:08:06 +01:00
Laurenz e1e93938a1 Memoize image size computation 2022-11-30 14:52:18 +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 7caf98fe42 Switch `StrResult` to `EcoString` 2022-11-27 01:00:57 +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 9db6e533cd Make content a bit more compact 2022-11-26 15:34:02 +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 bf5edbbbbb Tidy up 2022-11-25 12:16:13 +01:00
Laurenz 96f72eee6c Separate typesetting and compilation 2022-11-24 17:51:07 +01:00
Laurenz 8d3c68a1de Protect Vm 2022-11-24 17:41:41 +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 c2749f7615 More sensible `LayoutRoot` 2022-11-22 21:09:20 +01:00
Laurenz 5992f11b4c Reorganize content type 2022-11-22 20:12:37 +01:00
Laurenz b476de87b7 Rename two syntax types 2022-11-22 14:53:03 +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 36ea0b05c9 Refactor proc macros 2022-11-21 14:00:37 +01:00
Laurenz 7c7b830225 Retain text spans during regex matching 2022-11-21 10:48:19 +01:00
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