Commit Graph

59 Commits

Author SHA1 Message Date
Ian Wrzesinski 63c4720ed2
Fix list indent when starting at an open bracket (#5677) 2025-01-16 13:40:29 +00:00
Max be6629c7cb
Better math argument parsing (#5008) 2025-01-09 10:49:06 +00:00
Laurenz 1346385255
Rename `pattern` to `tiling` (#5590) 2024-12-17 09:25:27 +00:00
Ian Wrzesinski 50dcacea9a
Convert unopened square-brackets into a hard error (#5414) 2024-12-08 16:23:14 +00:00
Laurenz 0228462ba1
Bump Rust to 1.83 (#5534) 2024-12-05 15:57:01 +00:00
Laurenz cb1aad3a0c
Refactor Parser (#5310) 2024-11-04 10:17:49 +01:00
Ian Wrzesinski 2c9728f53b 18. Restore list indent behavior 2024-11-03 22:04:06 -05:00
Ian Wrzesinski 9d9a1b1e33 17. Replace while loop closures and Parser::end() to use SyntaxSet 2024-11-03 20:28:49 -05:00
Ian Wrzesinski 86ce443806 16. Compress with_mode and with_nl_mode to reduce rightward drift 2024-11-03 20:28:49 -05:00
Ian Wrzesinski 26c61be1dc 15. Convert Markup mode to use newline modes
(And break out Newline info into separate struct)
2024-11-03 20:28:49 -05:00
Ian Wrzesinski a70b8a56ef
Disallow space between ident and paren in set rule (#5269) 2024-11-01 09:45:08 +00:00
Ian Wrzesinski 4ce0b069f6 14. Update 'maybe_wrap_in_math' to remove 'wrap_within' and 'post_process'! 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 97229d24e4 13. Reorder functions to avoid jumping around when reading code. No actual changes. 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 91b384ad7b 12. Add the Token type and replace lex/skip/save methods 2024-10-31 18:26:12 -04:00
Ian Wrzesinski c466080fb2 11. Add Parser::finish_into 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 2ae1e1627f 10. Change parser modes using closures instead of manual stacks 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 88d86714a1 9. Parse math field access in the lexer 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 09975d1133 8. Create Raw nodes entirely within the lexer 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 1cecae0333 7. Return SyntaxNodes from the Lexer 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 01186779cd 6. Reduce size of memoization map state 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 16cc7eb472 5. Refactor parser memoization to localize functionality 2024-10-31 18:26:12 -04:00
Ian Wrzesinski 54eadb65a9 4. Rename convert to convert_and_eat 2024-10-31 18:26:12 -04:00
Ian Wrzesinski a764aa4192 3. Add typst-syntax README and parser comments 2024-10-31 18:26:12 -04:00
Laurenz be7cfc85d0
Split out four new crates (#5302) 2024-10-27 18:04:55 +00:00
Ian Wrzesinski b8034a3438
Syntax set macro (#5138)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-10-22 13:25:52 +00:00
Josh Soref ca1f749c08
Spelling (#5020)
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2024-09-26 17:32:55 +00:00
Sébastien d'Herbais de Thun 1997db00f3
Parenthesized imports (#4869)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-09-02 13:27:33 +00:00
Max b07607d35e
Split shorthands into math and markup, add tilde shorthand (#4706) 2024-08-09 07:41:01 +00:00
+merlan #flirora a88899ed75
Bail out of reparse in `expr_with_paren` if we land on a different char (#4577) 2024-08-08 16:06:22 +00:00
Leedehai d1c7d08893
Primes should not further raise next superscript's position (#4492)
Co-authored-by: Ian Wrzesinski <133046678+wrzian@users.noreply.github.com>
2024-07-08 19:32:58 +00:00
astrale-sharp ad4ef68a11
Lexer hint (#4346)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-06-12 12:00:22 +00:00
Yip Coekjan ada0f5da65
Hint for labels in code mode (#4319) 2024-06-04 15:33:08 +00:00
Tulio Martins 06a925a0ee
Add nested import syntax (#4228)
Co-authored-by: LuizAugustoPapa <luiz.papa@aluno.puc-rio.br>
Co-authored-by: PepinhoJp <pepinho.jp@gmail.com>
Co-authored-by: PgBiel <9021226+PgBiel@users.noreply.github.com>
2024-05-30 07:56:40 +00:00
Leedehai 44bc51ba4f
Let let-binding raise error on unexpected keywords (#4034) 2024-04-30 12:30:38 +00:00
Ian Wrzesinski 45245f0695
Fix empty 2-d math args with whitespace/trivia (#3786)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-04-19 14:31:45 +00:00
Leedehai 9289d9334b
SyntaxKind::Eof => SyntaxKind::End to better express its usage (#3872) 2024-04-08 10:21:06 +00:00
Leedehai 0619ae98a8
Fix newline parsing behavior in code mode (#3780) 2024-04-03 09:01:50 +00:00
Laurenz 1d027ff6d2
Fix parsing of parenthesized imports (#3633) 2024-03-12 10:47:48 +00:00
geekvest 098ef5acbb
Fix some comments (#3541)
Signed-off-by: geekvest <cuimoman@sohu.com>
2024-03-03 14:50:19 +00:00
Myriad-Dreamin 030041466b
Provide more fine-grained spans in raw blocks (#3257)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-03-01 09:17:41 +00:00
Laurenz 8d63b0479c
Make use of `is_some_and` where applicable (#3523) 2024-02-28 14:24:50 +00:00
Laurenz 0aa9254356
Fix bugs with parenthesized expression parsing (#3505) 2024-02-27 11:12:43 +00:00
Laurenz 9646a132a8
Fix parser bug with space before colon (#3504) 2024-02-27 10:43:02 +00:00
Laurenz 145723b1ef
New context system (#3497) 2024-02-27 10:05:16 +00:00
Laurenz be49935753
Destructuring improvements (#3463) 2024-02-21 08:38:47 +00:00
Laurenz 0fb2a67484
Introduce `SyntaxSet` (#3450) 2024-02-18 13:28:00 +00:00
Heinenen ad901c2cdb
Syntax error if function name is parenthesized (#3058)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2024-01-16 08:52:56 +00:00
Sébastien d'Herbais de Thun c4d9b0c3d8
New performance timings (#3096)
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2023-12-30 12:36:15 +00:00
Carson McManus 754e1788b2
Fix a parser bug causing `x.)` to be treated as a field access (#2962) 2023-12-18 12:33:29 +01:00
Laurenz 2da619e17c Streamline imports 2023-11-19 16:34:38 +01:00