Commit Graph

34 Commits

Author SHA1 Message Date
Tom Alexander
6e2fc362ea Add support for babel-call keywords. 2023-09-06 18:04:53 -04:00
Tom Alexander
df79cbd0b7 Give global options their own lifetime. 2023-09-03 16:22:40 -04:00
Tom Alexander
3bdb24ad88 Fixing more errors. 2023-09-03 12:23:18 -04:00
Tom Alexander
74a6101de7 Update RefContext to three lifetimes. 2023-09-02 22:45:46 -04:00
Tom Alexander
564104f1e8 Switch to RefContext. 2023-09-02 19:16:44 -04:00
Tom Alexander
eabffe5ecc Move over the rest of the types. 2023-09-02 19:08:01 -04:00
Tom Alexander
67f79aeb51 Remove context from detect plain list.
All checks were successful
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
rust-build Build rust-build has succeeded
2023-08-31 18:53:28 -04:00
Tom Alexander
1bcd1895c0 Allow affiliating keywords with regular keywords. 2023-08-29 17:19:13 -04:00
Tom Alexander
9df40fb13f Only allow specific keywords for affiliated keywords. 2023-08-29 16:56:07 -04:00
Tom Alexander
9c1e6ccc97 Add a detect_element function.
All checks were successful
rust-test Build rust-test has succeeded
rust-build Build rust-build has succeeded
This is an optimization. When you have something like plain text which ends when it hits the next element, we only need to parse enough to detect that an element is about to occur. For elements like plain lists, this is as simple as parsing a line starting with optional whitespace and then a bullet, which avoids parsing the entire plain list tree. The benefit is most noticeable in deeply nested plain lists.
2023-08-25 01:07:53 -04:00
Tom Alexander
dab598e5e7 Convert all functions to using the wrapped input type.
Some checks failed
rust-test Build rust-test has failed
rust-build Build rust-build has failed
2023-08-24 16:06:29 -04:00
Tom Alexander
cd1b4ba785 Make the tracing macros optional. 2023-08-10 20:22:34 -04:00
Tom Alexander
0ca6ce504f Simulate trailing whitespace in empty greater blocks just like drawers. 2023-04-22 21:45:18 -04:00
Tom Alexander
0b3f414ecf Get tracing back into the element parser. 2023-04-22 19:15:29 -04:00
Tom Alexander
4816a5dfc4 Code structure for latex environment. 2023-04-22 16:56:36 -04:00
Tom Alexander
92ee59558b Remove unused import. 2023-04-22 01:36:43 -04:00
Tom Alexander
af90ea6dfd Fix infinite loop by only checking paragraph matcher when boolean is true.
Before I was checking afterwards with a verify, which was causing an infinite loop.
2023-04-22 01:34:34 -04:00
Tom Alexander
7855020927 Fix some errors. 2023-04-22 01:13:05 -04:00
Tom Alexander
4ac6d89311 Moving towards unifying into a single parameterized element matcher.
This is to give paragraph priority over keyword in parsing so that affiliated keywords for paragraphs will be parsed as such.
2023-04-22 00:55:31 -04:00
Tom Alexander
fef5841713 Identify a problem. 2023-04-22 00:23:16 -04:00
Tom Alexander
7b7779ee7e Set the source using the full range of affiliated keywords to trailing whitespace. 2023-04-22 00:09:14 -04:00
Tom Alexander
0b989b53a6 Fix warnings. 2023-04-21 23:55:18 -04:00
Tom Alexander
e97cf6630f Move consuming the trailing whitespace up to the element matchers. 2023-04-21 23:54:54 -04:00
Tom Alexander
7df899e3a7 Read affiliated keywords. 2023-04-21 23:36:38 -04:00
Tom Alexander
f0bab39778 Code structure for keyword. 2023-04-21 22:33:10 -04:00
Tom Alexander
bfffde3fdb Implement the horizontal rule parser. 2023-04-21 22:23:59 -04:00
Tom Alexander
5ae8ac61e5 Code structure for fixed width area. 2023-04-21 22:04:22 -04:00
Tom Alexander
db78faa36f Add the code structure for diary sexp. 2023-04-21 20:22:31 -04:00
Tom Alexander
c2ccf4da37 Set up the initial code structure for the clock. 2023-04-21 19:05:30 -04:00
Tom Alexander
18323a2b43 Solve the rest of the compiler warnings. 2023-04-21 18:42:31 -04:00
Tom Alexander
a1724dae52 Combine the error types. 2023-04-21 18:36:01 -04:00
Tom Alexander
dbb04dcba6 Defining new structs for each type of lesser block. 2023-04-21 17:55:10 -04:00
Tom Alexander
0293ca6b12 Set up code structure for lesser blocks. 2023-04-21 16:31:25 -04:00
Tom Alexander
d780981baf Separate out the element parsers. 2023-04-21 16:10:56 -04:00