203 Commits

Author SHA1 Message Date
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
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
acae6e2a54 List label styling 2022-02-18 01:06:20 +01:00
Laurenz
5965515a1e Allow escaping of - and . 2022-02-10 13:19:03 +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
Martin Haug
e32e9faa53 Fix incremental group bug 2022-02-03 11:31:53 +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
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
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
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
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
1e4cab393e Introduce incremental parsing 2021-11-02 12:06:22 +01:00
Laurenz
f5dcb84e36 Make clippy a bit happier 2021-12-30 12:00:12 +01:00
Laurenz
2a3d0f4b39 Set Rules Episode VII: The Set Awakens 2021-12-15 20:27:41 +01:00
Laurenz
f3bdc9d3da Syntax highlighting 2021-11-30 18:55:50 +01:00
Laurenz
63c274e7f6 Make clippy happier and remove Str 2021-11-15 17:06:43 +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
Laurenz
8117ca9950 Deduplicate trivia search 2021-11-06 15:49:39 +01:00
Laurenz
41bdafb578 Faster parser 2021-11-06 15:49:39 +01:00
Laurenz
515fe89c5e Style changes
Co-Authored-By: Martin <mhaug@live.de>
2021-11-05 13:46:42 +01:00
Martin Haug
cf2e527a02 Code Review: No Patrick, question marks are not an instrument 2021-11-05 13:46:41 +01:00
Martin Haug
5c952d56d0 New error handling 2021-11-05 13:46:41 +01:00
Laurenz
f0c9635db5 Notes 2021-11-05 13:46:41 +01:00
Laurenz
65fac0e57c Refactoring
Co-Authored-By: Martin <mhaug@live.de>
2021-11-05 13:46:41 +01:00
Martin Haug
42afb27cef Add documentation 2021-11-05 13:44:50 +01:00
Martin Haug
49fb3cd4e2 Code Review: Life is Like a Box of Iterators 2021-11-05 13:44:50 +01:00