Commit Graph

497 Commits

Author SHA1 Message Date
Tom Alexander 7728f3b71e
Fix property drawers beneath headlines. 2023-04-19 19:53:37 -04:00
Tom Alexander 87bdedf2e6
Only drop trailing whitespace when there isn't a property drawer. 2023-04-19 19:39:56 -04:00
Tom Alexander d0410391cc
Drop blank lines after property drawer instead of owning them. 2023-04-19 19:28:21 -04:00
Tom Alexander 4e65d2cda9
Fix requiring no space between comment and property drawer for zeroth section. 2023-04-19 19:22:23 -04:00
Tom Alexander 603cc131a0
Numerous fixes to property drawers. 2023-04-19 19:03:51 -04:00
Tom Alexander b557b9ca5d
Accounting for the blank lines at the head of documents and comments plus property drawer at the head of the zeroth section. 2023-04-19 18:37:39 -04:00
Tom Alexander 1deb53f1a3
Add the binary back in because we need it for generating jaeger traces. 2023-04-19 18:12:53 -04:00
Tom Alexander 99677ee98e
fixup 2023-04-19 18:10:55 -04:00
Tom Alexander 8de6f1a817
Implement node property. 2023-04-19 18:10:29 -04:00
Tom Alexander f7f29e7a56
Finish property drawer parser but node property is unstarted. 2023-04-19 17:15:00 -04:00
Tom Alexander 2137b08e42
Detect the opening and build the context. 2023-04-19 17:03:46 -04:00
Tom Alexander 18f8e2562e
Remove the old toy language binary.
Using the org_mode_samples integration tests through the rust test framework has removed the need for the toy language binary and I think removing it will make rust-analyzer less confused about imports. This repository is now solely a library repository.
2023-04-19 16:54:17 -04:00
Tom Alexander a267f23e0f
Initial code structure for property drawers. 2023-04-19 16:51:00 -04:00
Tom Alexander fcf1ba4ea6
Add an example of nested properties adding to previous properties. 2023-04-19 16:43:23 -04:00
Tom Alexander 7c64be3f51
Add support for multiprocessing for the tests. 2023-04-19 16:35:26 -04:00
Tom Alexander 2a04455955
Remove the makefiles from org_mode_samples.
These Makefiles were beautiful, but now that the org_mode_samples are integrated into the rust test framework, it no longer makes sense to keep using these Makefiles. Instead, running scripts/run_integration_test.bash <org file under org_mode_samples>... will output the same information, additional information, and it will do it all without writing anything to disk (besides any files generated during compilation).
2023-04-19 16:22:53 -04:00
Tom Alexander 8214efdfcb
Make the integration test script work from anywhere. 2023-04-19 16:15:58 -04:00
Tom Alexander d3bb642a10
Unify status name handling on the emacs name. 2023-04-19 16:04:30 -04:00
Tom Alexander 31da2e970c
Merge branch 'test_improvement' 2023-04-19 15:39:32 -04:00
Tom Alexander 94193d4fa5
Make name mismatch report an error rather than abort everything. 2023-04-19 15:38:36 -04:00
Tom Alexander a6d8c873d4
Add an assert_bounds utility function. 2023-04-19 15:29:46 -04:00
Tom Alexander a4c6e899ac
Add a utility function to check the first element in an sexp. 2023-04-19 15:19:21 -04:00
Tom Alexander 821eacf161
Mark more tests as expect fail. 2023-04-19 15:03:45 -04:00
Tom Alexander 7ac0cee223
Support nesting greater blocks of different names. 2023-04-19 15:00:02 -04:00
Tom Alexander 2b08b52c16
Support drawers with only whitespace. 2023-04-19 14:52:31 -04:00
Tom Alexander 4a31dd6db0
Mark some tests that need keyword implemented as expect fail. 2023-04-19 14:45:32 -04:00
Tom Alexander 35aab10155
Add support for marking integration tests as expected to fail. 2023-04-19 14:40:10 -04:00
Tom Alexander c6fd04e9ce
Fix footnote definition end matcher detecting the next footnote definition. 2023-04-19 14:30:02 -04:00
Tom Alexander 71bc1a5679
Support passing in test names instead of files. 2023-04-19 14:17:31 -04:00
Tom Alexander b93ee2885f
Add a script to trigger specific integration tests. 2023-04-19 14:14:16 -04:00
Tom Alexander 6001b81529
Merge branch 'dynamic_block' 2023-04-19 14:01:53 -04:00
Tom Alexander ed8cdae1cd
Add diff code for dynamic blocks. 2023-04-19 13:59:17 -04:00
Tom Alexander cab5ba70e5
Parser for dynamic blocks. 2023-04-19 13:51:18 -04:00
Tom Alexander 0d07a6aad3
Initial structure for dynamic blocks. 2023-04-19 13:30:15 -04:00
Tom Alexander 6cb536169d
Build static binaries for release. 2023-04-19 00:42:08 -04:00
Tom Alexander 4a21205956
Optimize the release build.
This shaved a 7MB binary down to 2MB.
2023-04-19 00:22:25 -04:00
Tom Alexander d69522c7dc
Remove the compare binary since this is now integrated with the tests. 2023-04-19 00:12:14 -04:00
Tom Alexander 7649ff7990
Make a release build. 2023-04-19 00:09:25 -04:00
Tom Alexander 80afe795cd
Print out the org source text also. 2023-04-18 23:57:57 -04:00
Tom Alexander cb38ffc520
Merge branch 'integration_tests' 2023-04-18 23:53:16 -04:00
Tom Alexander b0965bebe6
Remove old script for invoking the tests. 2023-04-18 23:53:06 -04:00
Tom Alexander 72c8da94a3
Hook the integration tests into rust's test framework.
Instead of using a hacked-together shell script, use rust's test framework to do the comparison.
2023-04-18 23:50:58 -04:00
Tom Alexander fba80f4f7b
Merge branch 'nesting_same_objects' 2023-04-18 22:20:52 -04:00
Tom Alexander 400e253cf1
Don't give paragraph a context since it just contains objects. 2023-04-18 22:18:21 -04:00
Tom Alexander 45d0ce17c3
Do not allow elements to immediately nest inside themselves.
Plain list is omitted because they can nest.
2023-04-18 22:10:44 -04:00
Tom Alexander 3a3cee337c
To pass this test, we need to not allow nesting of elements directly inside themselves. 2023-04-18 21:47:07 -04:00
Tom Alexander 09442a0530
Oddly enough emacs is breaking up lines with 🔚 as a separate paragraph when regular letters would get combined. 2023-04-18 21:41:13 -04:00
Tom Alexander c9109d1a13
Merge branch 'exit_matcher_priority' 2023-04-18 21:37:09 -04:00
Tom Alexander 13a2ba1dc5
Handle greater blocks with only blank space inside them. 2023-04-18 21:28:22 -04:00
Tom Alexander 0effc7c087
You can have a block containing only whitespace which gets matched as a paragraph whose value is just a single newline. 2023-04-18 20:58:25 -04:00