Commit Graph

900 Commits

Author SHA1 Message Date
Tom Alexander 16e788c36c
Add tests for LaTeX fragments and text markup that span more than three lines.
The documentation currently states that the body for these cannot span more than three lines but that is not the behavior I am seeing from emacs in practice. Waiting on a mailing list response to tell me if this is a documentation error or a parser error.
2023-08-28 01:18:46 -04:00
Tom Alexander 1952d175c0
Record line number in OrgSource.
This will be used for elements who have limits on the number of lines inside of them. This includes LaTeX fragment bodies and text markup.
2023-08-28 01:18:45 -04:00
Tom Alexander 20c17c40be
Switch greater blocks to using name provided when building exit matcher instead of from context. 2023-08-28 01:18:45 -04:00
Tom Alexander b35d785e73
Fix tracing in the run_docker_compare.bash script.
rust-build Build rust-build has failed Details
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
2023-08-28 01:18:45 -04:00
Tom Alexander b6b869df25
Minor improvement to error message in diff.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-28 01:05:09 -04:00
Tom Alexander 18a396b7cb
Remove deprecated tests.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 23:25:50 -04:00
Tom Alexander 085490476e
Fix make dockertest.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 22:41:55 -04:00
Tom Alexander 9c9964c66f
Add lt and gt entities.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 22:15:23 -04:00
Tom Alexander 1a3e26c148
Update plain list greater block exit matcher priority test to match blog post.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
It is still testing the same thing, but I changed the contents a bit to match what is being used in my blog post.
2023-08-27 21:03:16 -04:00
Tom Alexander e9e6a8ff64
Merge branch 'clean_up_docker'
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 18:03:51 -04:00
Tom Alexander b124317f30
Fix up scripts to handle the changes to the docker containers. 2023-08-27 18:03:37 -04:00
Tom Alexander ad389f0776
Remove volumes in the clean step.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 17:53:51 -04:00
Tom Alexander 75dfc7f812
Depend on build when using the docker images. 2023-08-27 17:51:57 -04:00
Tom Alexander c17de8ef5e
Set up the same mounts when running make shell. 2023-08-27 17:50:33 -04:00
Tom Alexander 378b6bb391
Update the run targets for the Makefiles for the docker containers.
This was previously using the standard docker makefile I use as a starting point for all of my docker makefiles. Now it will properly mount the source directory.
2023-08-27 17:46:36 -04:00
Tom Alexander cc86591a6c
Support the debug/dev profile in the perf script.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 17:02:12 -04:00
Tom Alexander f25dbc1d7c
Add a script for testing organic parse times.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
This is not meant to produce publishable or comparable benchmarks. Such a script would have to run many iterations with the input already loaded into memory, proper prioritization via nice/ionice, and have a warm-up phase. This is just automating a basic test I am frequently running to compare parse times when investigating performance issues.
2023-08-27 16:56:32 -04:00
Tom Alexander daee50c160
Merge branch 'dynamic_block_test'
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-27 16:23:28 -04:00
Tom Alexander 3e143796f7
Compare heading todo keywords.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
This only handles the default case where the only valid TODO keywords are TODO and DONE.
2023-08-27 15:56:08 -04:00
Tom Alexander 9cc5e63c1b
Compare heading tags.
rust-test Build rust-test has failed Details
rust-build Build rust-build has succeeded Details
2023-08-25 07:05:59 -04:00
Tom Alexander be6197e4c7
Store the tags in the heading. 2023-08-25 06:20:06 -04:00
Tom Alexander 2d4e54845b
Add support for parsing tags in headlines. 2023-08-25 06:13:29 -04:00
Tom Alexander d5ea650b96
Add a test for dynamic blocks. 2023-08-25 05:36:57 -04:00
Tom Alexander 60363579b5
Merge branch 'plain_list_content_on_next_line'
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 05:28:14 -04:00
Tom Alexander 1b678fe81f
Add tests for detect_plain_list. 2023-08-25 05:27:09 -04:00
Tom Alexander bfea828e62
Update detect_plain_list to support line breaks. 2023-08-25 05:27:08 -04:00
Tom Alexander bc5745a95f
Add support for list items with a line break before their contents. 2023-08-25 05:18:26 -04:00
Tom Alexander efa372a9e9
Add a test case that breaks the current parser. 2023-08-25 04:39:58 -04:00
Tom Alexander 2fb57daaec
Move the table cell object parser into the object parser file.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 04:35:54 -04:00
Tom Alexander 3a38f4cd35
Add support for the ast entity.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 04:28:24 -04:00
Tom Alexander 45e16fea2d
Honor the NO_COLOR environment variable.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 04:25:39 -04:00
Tom Alexander 5134cece7b
Add color to compare output.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 04:09:52 -04:00
Tom Alexander 19432d91ab
Get the emacs and org-mode versions when launching the compare script.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 03:11:19 -04:00
Tom Alexander 16a107eebb
Update org-mode version. 2023-08-25 02:56:28 -04:00
Tom Alexander 77348b560c
Parameterize the emacs and org-mode versions in the dockerfiles.
rustfmt Build rustfmt has succeeded Details
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has succeeded Details
2023-08-25 02:03:35 -04:00
Tom Alexander fc79507ef3
Merge branch 'plain_list_perf_investigation'
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 01:10:04 -04:00
Tom Alexander 9c1e6ccc97
Add a detect_element function.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
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 0dbc8f0925
Remove redundant exit matcher checks.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-25 00:01:56 -04:00
Tom Alexander 02fe10fba3
Move objects to a lower exit class.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
Paragraph's exit matcher which detects elements was causing the plain list parser to exit after the first item was parsed which was causing significant amounts of re-parsing.
2023-08-24 23:34:23 -04:00
Tom Alexander 33d7ae03d1
Add a TODO.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-24 21:35:34 -04:00
Tom Alexander 03faa7257f
Move the indent level for plain list's exit matcher to const fn instead of grabbing from the context.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
This made a slight improvement to performance.
2023-08-24 20:50:24 -04:00
Tom Alexander ae3510abd5
Do not cast lesser block name to lowercase at runtime.
This reduced the runtime of my problematic test case from 6.9 seconds to 6 seconds.
2023-08-24 20:10:43 -04:00
fluxcdbot ad3f47864a CI: autofix rust code.
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has failed Details
2023-08-24 23:43:41 +00:00
Tom Alexander 533ef2a9a8
Merge branch 'wrapped_input'
rustfmt Build rustfmt has succeeded Details
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-24 19:40:55 -04:00
Tom Alexander cf37bc4111
Remove unnecessary context from some util functions.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-24 19:29:00 -04:00
Tom Alexander e5224cda63
Removing dead code.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-24 18:40:25 -04:00
Tom Alexander 64e3481660
Update get_consumed to use the new wrapped input type. 2023-08-24 18:33:40 -04:00
Tom Alexander 32071ce74d
Fix handling of start of line in OrgSource.
rust-test Build rust-test has succeeded Details
rust-build Build rust-build has succeeded Details
2023-08-24 18:08:16 -04:00
Tom Alexander e84e2b5147
Update tests to compile again. 2023-08-24 17:15:24 -04:00
Tom Alexander 3348807a05
Eliminate the document root context element. 2023-08-24 17:01:12 -04:00