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
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
68c6160a14
Recursion with max depth
2022-12-30 09:48:30 +01:00
Laurenz
8527517258
Rename `desc` to `terms`
2022-12-22 18:25:29 +01:00
Laurenz
ba294e2670
Split up list type into three separate types and document them
2022-12-21 12:50:33 +01:00
Martin Haug
5e19991b6c
Document Utility funcs, some layout funcs
2022-12-20 18:31:47 +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
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
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
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
56923ee472
Multi-part numbering patterns
2022-12-02 15:47:25 +01:00
Laurenz
7af46fc025
Dynamic labels
2022-11-26 13:41:27 +01:00
Laurenz
b2a3d3f235
More general evaluation interface
2022-11-23 12:00:06 +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
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
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
95e9134a3c
Refactor `geom` module
2022-10-28 16:43:38 +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
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
9db89b376d
Refresh TextMate grammar
2022-09-27 16:40:17 +02:00
Laurenz
704f2fbaf1
Description lists, link syntax, and new enum syntax
2022-09-26 16:12:57 +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
30be75c668
Renaming
...
`Face` -> `Font`
`FaceId` -> `FontId`
`SourceFile` -> `Source`
2022-09-19 11:36:59 +02:00
Laurenz
0d12f2ab23
[WIP] Label and reference syntax
2022-09-07 11:07:17 +02:00
Laurenz
cbfac6cd45
Fix highlighting bugs
2022-07-26 20:32:50 +02:00
Laurenz
c81e2a5f56
Many fixes
2022-06-14 13:53:02 +02:00
Laurenz
ed6550fdb0
Bump dependencies
2022-06-10 23:54:16 +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
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
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
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
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
d59109e8ff
Support recursive show rules
2022-05-03 15:58:15 +02:00
Laurenz
f9e115daf5
New block spacing model
2022-04-30 14:12:28 +02:00
Laurenz
2f33ad0e0a
Rename soft linebreak to justified linebreak
2022-04-24 21:38:23 +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
4494b443bb
Ellipsis
2022-04-16 23:06:47 +02:00
Laurenz
67e9313b91
Soft breaks and shy hyphens
2022-04-13 14:48:19 +02:00
Laurenz
f7875032b7
Small highlighting improvement
2022-04-13 11:34:44 +02:00
Martin Haug
072543fc59
Introduce `NodeKind::Quote`
2022-04-12 22:35:04 +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
712c00ecb7
Em units
2022-04-08 15:45:14 +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
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
Martin Haug
9fda623b02
Code Review: That's just like your struct, man.
2022-02-23 20:49:47 +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
aac3afcba8
Remove `Parbreak` as a `NodeKind`
2022-02-21 13:48:21 +01:00
Laurenz
e01970b20a
Basic show rules
2022-02-18 16:57:53 +01:00
Laurenz
91e45458e3
Make values hashable
2022-02-17 12:50:54 +01:00
Laurenz
20b1a38414
Switch from `Rc` to `Arc`
2022-01-31 16:47:00 +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
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
b3062ee880
Make use of new Rust 1.58 formatting feature
2022-01-13 18:43:18 +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
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
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