Tom Alexander
6823db5c60
Initial commit.
2023-08-22 17:11:45 -04:00
Tom Alexander
655af88cdf
Add scripts for running perf and callgrind.
2023-08-22 14:21:27 -04:00
Tom Alexander
2cd6f736c2
Fix building without compare feature.
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
rust-build Build rust-build has succeeded
2023-08-17 00:13:25 -04:00
fluxcdbot
5686256039
CI: autofix rust code.
rust-build Build rust-build has failed
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
2023-08-17 04:05:48 +00:00
Tom Alexander
7cf1b2d2b8
Disable the failing plain list whitespace ownership test.
rust-build Build rust-build has failed
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
2023-08-17 00:03:05 -04:00
Tom Alexander
74f4aa8d33
Remove dependency on files for running compare.
...
The tests still use files since they get the test name from a file but compare does the same action via stdin so it can operator on any org source.
2023-08-16 23:56:05 -04:00
Tom Alexander
7fafbfb6bb
Do not consume whitespace in the final plain list item.
2023-08-16 17:37:19 -04:00
Tom Alexander
56281633f3
Support blank link in plain_list_item_end, move exit matcher to end of loop in plain_list, and maybe consume trailing whitespace in plain_list_item.
2023-08-16 17:09:06 -04:00
Tom Alexander
823c33ef8e
Reduce use of expect in main.rs
2023-08-16 16:37:14 -04:00
Tom Alexander
7df393f31d
Make a new naive implementation of plain_list_item.
...
Still need to update plain_list_item_end and handle the whitespace ownership issues, but starting from a simplified state will help.
2023-08-16 16:05:24 -04:00
Tom Alexander
72d5f8f35c
Make a new naive implementation of plain_list.
2023-08-16 16:05:24 -04:00
Tom Alexander
e5e5120a10
Move telemetry handling to the tracing-specific main function.
...
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
rust-build Build rust-build has succeeded
This is so main_body can exit with an error at any time without missing the shutdown_telemetry function. This does not catch panics.
2023-08-16 16:05:24 -04:00
Tom Alexander
dae46adc12
Feature-gate tracing import.
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
rust-build Build rust-build has succeeded
2023-08-14 23:33:38 -04:00
Tom Alexander
63d092c83d
Group the two traces per compare into one trace.
2023-08-14 22:10:58 -04:00
Tom Alexander
a7b298eeec
Fix lesser block exit priority.
...
The paragraph end was matching text inside lesser blocks.
2023-08-14 17:32:10 -04:00
Tom Alexander
1bbfbc3164
Add additional tracing to lesser block.
2023-08-14 17:32:09 -04:00
Tom Alexander
2bcc3f0599
Fix reporting of jaeger traces when diff does not match.
...
The early exit was causing some traces to not be reported.
2023-08-14 17:32:09 -04:00
Tom Alexander
b93a12c32c
Add support for escaped double quotes in sexp.
2023-08-14 16:55:04 -04:00
Tom Alexander
72b8fec1be
Add support for tracing in run_docker_compare.bash.
2023-08-14 16:12:31 -04:00
Tom Alexander
eb379af78d
Switch export snippet to use exit matchers.
2023-08-14 13:13:32 -04:00
Tom Alexander
cc83431d62
Consume trailing whitespace for property drawers.
...
rust-build Build rust-build has failed
rust-test Build rust-test has failed
This is a change between the org-mode in emacs 29.1 and the org-mode currently in main.
2023-08-14 11:57:12 -04:00
Tom Alexander
e33ec4a02c
Add support for reading begin/end bounds in the new standard-properties format.
2023-08-13 02:21:02 -04:00
Tom Alexander
f7afcec824
Add support for hash notation in the elisp parser.
2023-08-13 02:21:02 -04:00
Tom Alexander
cf0991fdff
Add support for parsing vectors in the elisp parser.
2023-08-13 02:21:02 -04:00
Tom Alexander
290a700a22
New, updated opentelemetry tracing exporter.
2023-08-10 23:27:15 -04:00
Tom Alexander
44ad6753ca
Fix feature gating the compare code.
2023-08-10 20:22:34 -04:00
Tom Alexander
cd1b4ba785
Make the tracing macros optional.
2023-08-10 20:22:34 -04:00
Tom Alexander
1f10d3d064
Disable all the old tracing stuff.
2023-08-10 20:22:34 -04:00
Tom Alexander
77de97703f
Remove all the old references to "toy language"
...
This is a relic from the early development days in this repo. When I first started this repo, it was a clean-slate playground to test ideas for solving the road blocks I hit with my previous attempt at an org-mode parser. To keep things simple, I originally only had a very basic set of syntax rules that only vaguely looked similar to org-mode. Once I had things figured out, I kept developing in this repo, morphing it into a full org-mode parser. A couple of references to those early days still remained, and this patch should get rid of the last of them.
2023-08-10 18:52:57 -04:00
Tom Alexander
66c71e7e40
Switch the compiled bin to running a diff just like the automated tests.
...
This is mostly so I can test a variety of org-mode documents without needing to integrate them into the org samples folder.
2023-08-10 18:46:19 -04:00
Tom Alexander
17e523b74c
Do not consume space in time rest when leading into a repeater or delay.
2023-07-27 20:39:13 -04:00
Tom Alexander
ece8fcd0c4
Implement parser for active/inactive timestamp time ranges.
2023-07-27 20:26:56 -04:00
Tom Alexander
1a5b7ca30c
Implement parser for active/inactive timestamp date ranges.
2023-07-27 19:59:36 -04:00
Tom Alexander
b5a029e2bf
Implement parser for inactive timestamps.
2023-07-27 19:54:33 -04:00
Tom Alexander
c5f81298ba
Switch to passing in the exit matcher from a higher context to reduce the permutations of functions.
2023-07-27 19:52:35 -04:00
Tom Alexander
529418a9d1
Implement parser for active timestamps.
2023-07-27 19:45:57 -04:00
Tom Alexander
d4a3628481
Implement parser for date.
2023-07-27 19:20:28 -04:00
Tom Alexander
70f2747291
Implement parser for diary timestamps.
2023-07-27 18:59:32 -04:00
Tom Alexander
49d5a4e4b5
Call out to the parsers for the various timestamp types.
...
The parsers for those types remain unimplemented.
2023-07-24 17:54:49 -04:00
Tom Alexander
fa5fc41121
Create structure for timestamps.
2023-07-24 17:34:07 -04:00
fluxcdbot
efa56a6bef
CI: autofix rust code.
semver Build semver has succeeded
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
2023-07-24 16:57:08 -04:00
Tom Alexander
23d587c699
Implement parser for subscript/superscript with braces.
2023-07-24 16:29:31 -04:00
Tom Alexander
f717d5e7df
Implement parser for braceless subscript/superscript.
2023-07-24 15:41:14 -04:00
Tom Alexander
993c73dc9f
Create structure for subscript and superscript.
2023-07-24 14:23:36 -04:00
Tom Alexander
b8b2e33137
Implement the statistics cookie parser.
2023-07-22 02:12:21 -04:00
Tom Alexander
c73e26e2d6
Create structure for statistics cookies.
2023-07-22 02:12:20 -04:00
fluxcdbot
abb0aeacaf
CI: autofix rust code.
semver Build semver has succeeded
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
2023-07-22 05:43:17 +00:00
Tom Alexander
caa6c41798
Add a test case.
2023-07-22 01:40:27 -04:00
Tom Alexander
e54218c0d7
Implement the target parser.
2023-07-22 01:36:00 -04:00
Tom Alexander
d60cad07e0
Create structure for targets.
2023-07-22 01:15:04 -04:00
Tom Alexander
5c1d913c99
Check that the preceding line for a line break is non-empty.
2023-07-22 00:43:02 -04:00
Tom Alexander
a1f3e9ea47
Implement line break parser.
2023-07-22 00:03:21 -04:00
Tom Alexander
4d114206ef
Create structure for line breaks.
2023-07-21 23:48:37 -04:00
Tom Alexander
80039aa605
Fix bracket counting in inline babel calls.
2023-07-21 23:20:10 -04:00
Tom Alexander
0b41e12424
Fix counting brackets in inline source block.
2023-07-21 23:14:52 -04:00
Tom Alexander
e8979513aa
Implement parser for inline source blocks.
2023-07-21 22:51:19 -04:00
Tom Alexander
e0d2bb8213
Create structure for inline source blocks.
2023-07-21 22:29:04 -04:00
Tom Alexander
45b01012b3
Implement the parser for inline babel calls.
2023-07-21 21:39:53 -04:00
Tom Alexander
eef2944307
Create structure for inline babel calls.
2023-07-21 19:53:02 -04:00
Tom Alexander
7ce9dafd96
Fix parsing citations inside paragraphs.
2023-07-21 18:52:02 -04:00
Tom Alexander
d678391789
Fix parsing semicolons.
2023-07-21 18:42:22 -04:00
Tom Alexander
1a8bf01fba
Fix simple citations by making prefixes and suffixes optional.
2023-07-21 18:19:39 -04:00
Tom Alexander
4ad297f58a
Add a test for a simple citation.
2023-07-21 18:00:19 -04:00
Tom Alexander
6b47a6c6c3
Initial implementation for citations.
...
This implementation definitely has bugs and is completely untested at this point. I'm just committing the initial "assume everything works" version before I did into debugging and fixing.
2023-07-21 17:52:18 -04:00
Tom Alexander
e24b413cd0
Finish first implementation of citation reference.
2023-07-21 16:38:49 -04:00
Tom Alexander
339ff5cd26
Implement key parser and begin key_suffix parser.
2023-07-20 01:13:49 -04:00
Tom Alexander
d5c611674e
Create structure for citations.
2023-07-20 00:38:16 -04:00
Tom Alexander
7611deb1ff
Forgot to add the exit matcher nodes to the context and match the trailing ']'.
2023-07-19 23:40:26 -04:00
Tom Alexander
b850f59640
Implement parser for inline footnotes.
2023-07-19 23:20:17 -04:00
Tom Alexander
a36a820e84
Implement parser for the simplest form of footnote reference.
2023-07-19 21:32:08 -04:00
Tom Alexander
6822069c2f
Implement the parser for anonymous footnotes.
2023-07-19 21:14:09 -04:00
Tom Alexander
5fb66a586d
Implement a function to detect the end of a footnote reference definition with balanced brackets.
2023-07-19 20:52:09 -04:00
Tom Alexander
9c2eb3b122
Create structure for footnote references.
2023-07-19 18:56:46 -04:00
Tom Alexander
95e033a99b
Implement the export snippet parser.
2023-07-19 00:38:19 -04:00
Tom Alexander
1fb8ce9af6
Create structure for export snippets.
2023-07-19 00:09:16 -04:00
Tom Alexander
5e73ca74d5
Fix embedding text that coincidentally matches org-mode object syntax inside a LaTeX environment.
...
I was using the plain_text matcher before which adds its own exit condition that does not apply to LaTeX environments.
2023-07-18 23:27:48 -04:00
Tom Alexander
0d6f6288c9
Support escaping backslash in sexp.
2023-07-18 23:08:58 -04:00
Tom Alexander
a817eefce7
Add form 6 of LaTeX fragment.
2023-07-18 22:39:05 -04:00
Tom Alexander
4f5c40cd4b
Add forms 4 and 5 of LaTeX fragment.
2023-07-18 22:21:52 -04:00
Tom Alexander
faf81d0143
Add forms 2 and 3 of LaTeX fragment.
2023-07-18 22:02:38 -04:00
Tom Alexander
c79b8c7833
Implement the first form of LaTeX fragment.
2023-07-18 21:50:29 -04:00
Tom Alexander
5ad8fdf4b2
Add test cases.
2023-07-18 21:14:49 -04:00
Tom Alexander
3ab0dd4531
Create structure for LaTeX fragments.
2023-07-18 21:14:49 -04:00
Tom Alexander
754e9ff7d7
Implement entity parser.
2023-07-18 20:35:55 -04:00
Tom Alexander
21f46d09e6
Create structure for entities.
2023-07-18 20:05:39 -04:00
fluxcdbot
bab9232ebc
CI: autofix rust code.
semver Build semver has succeeded
rust-test Build rust-test has succeeded
rustfmt Build rustfmt has succeeded
2023-07-18 17:51:28 +00:00
fluxcdbot
0cd398c30c
CI: autofix rust code.
rustfmt Build rustfmt has failed
rust-test Build rust-test has succeeded
semver Build semver has succeeded
2023-07-18 17:48:21 +00:00
Tom Alexander
167ffa650c
Enable another test.
2023-07-14 20:58:11 -04:00
Tom Alexander
27d863b875
Fix the simple test by allowing bold to start/end with <> and by capturing trailing whitespace from radio links.
2023-07-14 20:55:16 -04:00
Tom Alexander
e608b73d1a
Implement all-token iteration.
...
rust-test Build rust-test has failed
Radio targets are now being properly detected and they trigger re-parses but the tests do not yet pass.
2023-07-14 20:45:31 -04:00
Tom Alexander
b27f911ff3
Finish implementing token iteration.
2023-07-14 20:24:06 -04:00
Tom Alexander
08e6efe5f5
Filling in more of the iter_tokens tree.
2023-07-14 20:18:30 -04:00
Tom Alexander
0e73b83bf3
Filling in more of the iter_tokens tree.
2023-07-14 20:09:24 -04:00
Tom Alexander
793e560bd5
Boxing made it work.
2023-07-14 19:57:27 -04:00
Tom Alexander
0073af19e2
Running into an issue returning different iterators from the same function.
2023-07-14 19:54:41 -04:00
Tom Alexander
688779ba40
Fix tests.
2023-07-14 19:09:54 -04:00
Tom Alexander
bd04451d58
Implement the second parsing pass.
2023-07-14 19:06:58 -04:00
Tom Alexander
cdd3517655
Include the trailing space for the bolds.
2023-07-14 18:32:16 -04:00
Tom Alexander
7ca8beac5a
Allow matching bolds in radio link targets.
2023-07-14 18:27:09 -04:00
Tom Alexander
4ba1e63dde
Add a test for bold inside a radio target.
2023-07-14 18:12:04 -04:00