Commit Graph

1394 Commits

Author SHA1 Message Date
Laurenz b9c0fd87d3 Fix grid sizing 2023-02-14 12:34:16 +01:00
Laurenz e64b2379a8 Disable link boxes in PDF 2023-02-13 17:53:19 +01:00
Laurenz 17e9805b34 Let `eval` take code instead of markup 2023-02-13 17:45:08 +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
Martin Haug 58adf1d025 Add XMP 2023-02-12 23:32:14 +01:00
Laurenz fd90736fb6 Support fractional width for `box` 2023-02-12 22:04:27 +01:00
Laurenz d689d706ea Vertically center non-math content in math by default 2023-02-12 21:14:12 +01:00
Laurenz 70c8a08905 Fix hover tooltip in math 2023-02-12 20:53:59 +01:00
Laurenz 7b2cdb9d95 Require colon in show rule 2023-02-12 20:25:24 +01:00
Laurenz 77c29b36d4 Autocomplete parentheses 2023-02-12 20:06:49 +01:00
Laurenz 3ffa7393f0 Make all nodes block-level 2023-02-12 19:57:28 +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 924a27bc37 Move `Fragment` into library 2023-02-09 14:11:00 +01:00
Laurenz 149e2b055b Custom link callback 2023-02-06 17:40:08 +01:00
Laurenz ea8edfa821 Make Rust happier about the inline documentation 2023-02-06 11:52:09 +01:00
Laurenz 09d17b4d21 Remove `Category` to `Tag` 2023-01-31 19:29:14 +01:00
Laurenz f72c81a757 More `PartialEq` impls for `EcoString` 2023-01-31 19:29:01 +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 9e918d06ad Fix function call highlighting 2023-02-03 17:46:53 +01:00
Laurenz 2bb0135d2a Fix inconsistency between text and idents in math 2023-02-02 22:33:12 +01:00
Laurenz 10675cd6d5 Merge text and math symbols 2023-02-02 19:50:06 +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 451ba699cb Scale fake function call 2023-02-01 13:32:14 +01:00
Laurenz e1f2acff62 No text hashtags 2023-01-30 23:08:43 +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 3a4c5ae4b9 Highlighting and docs fixes 2023-01-30 18:29:09 +01:00
Laurenz c987f07b76 HTML highlighting 2023-01-29 23:23:03 +01:00
Laurenz 5f4f507ecf Make shorthand list inspectable 2023-01-29 20:43:36 +01:00
Laurenz f7458f9533 Matrices 2023-01-29 19:11:44 +01:00
Laurenz 83b28e99ae Import completions 2023-01-29 01:07:20 +01:00
Laurenz ec21927d08 Find first hovered ancestor expression 2023-01-29 00:24:54 +01:00
Laurenz 18e2aa2cea Differentiate between text and code tooltips 2023-01-29 00:18:42 +01:00
Laurenz d29acd2203 Dictionary field completion 2023-01-28 23:55:24 +01:00
Laurenz 1e97d5c8cb Better analysis for literals 2023-01-28 23:38:03 +01:00
Laurenz 76048a8ef4 Overline, Underline, Overbracket, Underbracket 2023-01-28 23:15:03 +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 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