Commit Graph

459 Commits

Author SHA1 Message Date
Tom Alexander 412bdcda28
Fix problem with detecting end of plain list item.
The problem is line indented lte does not match because we aren't consuming the whitespace that the plain list would consume.
2023-04-14 23:56:55 -04:00
Tom Alexander be64eb92af
Ran into a bigger issue. 2023-04-14 20:17:53 -04:00
Tom Alexander 8549a6b0db
Fix case where indentation was causing the plain list item matcher to match items it wouldn't use in other parts. 2023-04-14 19:56:54 -04:00
Tom Alexander 143ac49777
Fix plain list item parser to not consume trailing whitespace on the last element. 2023-04-14 19:32:08 -04:00
Tom Alexander 08fed1301e
Fix plain list parser to not consume trailing whitespace on the last item. 2023-04-14 19:24:05 -04:00
Tom Alexander 665c1d70fb
Add a test case demonstrating an issue. 2023-04-12 15:24:18 -04:00
Tom Alexander 9efc291d28
Add a script to check all sample org-mode documents with the compare program. 2023-04-12 15:03:14 -04:00
Tom Alexander 1a38ca43d6
Update the diff program to use exit code 1 for non-matching diff. 2023-04-12 14:50:56 -04:00
Tom Alexander 05c9ec86b8
Compare plain list items inside plain lists. 2023-04-12 14:07:33 -04:00
Tom Alexander 57f56eb860
Compare footnote definition and greater block bounds. 2023-04-12 13:45:22 -04:00
Tom Alexander ba9ef7907f
Add a test proving that nested lists are exited by two blank lines. 2023-04-12 13:21:31 -04:00
Tom Alexander 75a47deedd
Compare plain list bounds. 2023-04-12 13:16:25 -04:00
Tom Alexander f27965001d
End plain lists when there are two blank lines. 2023-04-12 13:09:44 -04:00
Tom Alexander 7d5eb7c6bb
Merge branch 'compare' 2023-04-12 12:20:55 -04:00
Tom Alexander 2a601475fd
Compare children of sections. 2023-04-12 11:46:49 -04:00
Tom Alexander c4e6549feb
Compare children of heading. 2023-04-12 11:35:02 -04:00
Tom Alexander 4dbf8b9c69
Capture the trailing whitespace for the file as regular trailing whitespace for elements.
This makes our ranges for sections and headlines match up with the emacs org-mode parser for the example at org_mode_samples/sections_and_headings/sections_and_headings.org.
2023-04-12 11:17:21 -04:00
Tom Alexander a456acd1e9
Do not print the parsed sexp.
These were particularly spammy.
2023-04-11 19:51:20 -04:00
Tom Alexander 52df376553
Calculate bad children on-the-fly. 2023-04-11 19:28:45 -04:00
Tom Alexander 52b401d548
comparing begin and end offsets for top-level sections and headlines. 2023-04-11 19:16:04 -04:00
Tom Alexander 276e8abb13
Pass the source through to child diff status so I can calculate offsets. 2023-04-11 18:34:11 -04:00
Tom Alexander 6e62bd5ff2
Initial return and printing of tree diff output. 2023-04-11 18:29:40 -04:00
Tom Alexander be2d0141a5
Iterate over argv for file paths. 2023-04-11 17:41:23 -04:00
Tom Alexander 287cc8dea3
Just barely starting to diff the two parsed forms. 2023-04-11 17:35:09 -04:00
Tom Alexander 5305ae7627
Fix ending atoms at end of list. 2023-04-11 16:28:56 -04:00
Tom Alexander 8df02fa8b9
Handle text with properties. 2023-04-11 16:02:57 -04:00
Tom Alexander 3bdb1e3841
Beginning of handling quoted strings. 2023-04-11 15:28:05 -04:00
Tom Alexander 5d7ca1b966
Fix handling of whitespace. 2023-04-11 15:08:46 -04:00
Tom Alexander 751a3beffd
Implement a very basic first stab at lisp parser. 2023-04-11 14:50:37 -04:00
Tom Alexander 96d2cc7c6a
Dump the elisp when running compare. 2023-04-10 14:36:38 -04:00
Tom Alexander 552ac974d5
Initial setup for a separate compare target. 2023-04-10 13:45:36 -04:00
Tom Alexander e59d1b8fde
Add a feature for compare. 2023-04-10 13:38:31 -04:00
Tom Alexander e5f08beaca
Merge branch 'footnote_definition' 2023-04-10 13:34:08 -04:00
Tom Alexander 4c920b9d3c
Add an example showing footnote definitions and their associated trailing whitespace. 2023-04-10 13:19:30 -04:00
Tom Alexander 1ecdd61fed
Do not consume trailing whitespace if the parent exit matcher is matching. 2023-04-10 13:13:11 -04:00
Tom Alexander 895ee9f3b6
Add a test showing the footnote exit matcher is not handling multiple blank lines properly. 2023-04-10 12:16:49 -04:00
Tom Alexander 6fdd613bed
Cleanup. 2023-04-10 12:13:31 -04:00
Tom Alexander 9c832053d4
Remove parent exit matcher check from section.
This was poorly thought out and causing exit due to the no exit error.
2023-04-10 12:08:03 -04:00
Tom Alexander ea753ad33c
Fix footnote definition end matcher to use trailing whitespace. 2023-04-10 12:03:01 -04:00
Tom Alexander 6578ddc100
Add a test for footnote definition. 2023-04-10 11:54:05 -04:00
Tom Alexander e5bc4cb14b
Footnote definitions are parsing on their own. 2023-04-10 11:50:43 -04:00
Tom Alexander 45db182421
Add comment about why we are not checking the parent exit matcher in paragraph. 2023-04-10 11:34:29 -04:00
Tom Alexander df9265c2af
Updated paragraph to handle the new consumption of trailing whitespace. 2023-04-10 11:29:14 -04:00
Tom Alexander e417e86bd4
Add a simple test for paragraphs. 2023-04-10 11:24:04 -04:00
Tom Alexander 204f319a92
Simplify headline_end and section_end now that eof is a special case. 2023-04-10 11:19:20 -04:00
Tom Alexander cbe7ef4030
Update the section parser to handle the new whitespace-included element parsers. 2023-04-10 11:16:32 -04:00
Tom Alexander 54b0ff5036
Check for whitespace eof in exit matcher. 2023-04-10 10:50:42 -04:00
Tom Alexander 137815dbaf
Only use a local context when checking exit matchers.
This prevents context tree from deeper in the parse impacting exit checks for earlier in the parse. This is needed due to the trailing whitespace context element.
2023-04-10 10:49:28 -04:00
Tom Alexander 9a0172e1a4
Add a context element for tracking whether or not elements should consume their trailing whitespace. 2023-04-10 10:36:16 -04:00
Tom Alexander 6813c7c991
Identified the problem as being the handling of the trailing whitespace. 2023-04-10 09:49:24 -04:00