Commit Graph

1282 Commits

Author SHA1 Message Date
Tom Alexander 767f44f94d
Port comment. 2023-10-12 16:52:49 -04:00
Tom Alexander 1411aca7b5
Port footnote definition. 2023-10-12 16:48:50 -04:00
Tom Alexander 9ccdcaac24
Port dynamic block. 2023-10-12 16:46:15 -04:00
Tom Alexander d1223dcdb7
Port paragraph parser to use ak_element. 2023-10-12 16:37:31 -04:00
Tom Alexander 59448a4f2c
Port greater blocker over to ak_element!(). 2023-10-12 16:27:57 -04:00
Tom Alexander 5136880532
Fix tests. 2023-10-12 16:14:23 -04:00
Tom Alexander 8654cf5507
Fully port over the first parser. 2023-10-12 16:09:35 -04:00
Tom Alexander 6ca4dc8ffc
Add a macro for calling parsers that take in the affiliated keywords. 2023-10-12 16:06:59 -04:00
Tom Alexander a6f36ba679
Create a template for new element functions that will take in the affiliated keywords instead of re-parsing them multiple times. 2023-10-12 15:47:06 -04:00
Tom Alexander 176e37874e
Remove the parser to parse affiliated keywords as regular keywords. 2023-10-12 15:25:26 -04:00
Tom Alexander 0d579263cb
Remove affiliated keyword non-exit for paragraph. 2023-10-12 14:07:57 -04:00
Tom Alexander 8bc942a26f
Create artificial scopes for the optional value and mandatory value. 2023-10-11 19:14:32 -04:00
Tom Alexander dff7550038
Remove prints. 2023-10-11 19:09:51 -04:00
Tom Alexander c4edcb8c24
Fix parsing the optional value. 2023-10-11 19:07:47 -04:00
Tom Alexander 4a44d88461
Better error messages. 2023-10-11 19:05:39 -04:00
Tom Alexander efc6bd11d9
Do not exit on first loop. 2023-10-11 18:59:13 -04:00
Tom Alexander 51429e3155
Handle optval when translating names. 2023-10-11 18:50:22 -04:00
Tom Alexander b1a0fa4acf
Compare optional value. 2023-10-11 18:44:21 -04:00
Tom Alexander aeb2b6fe68
Parse out the optional value objects. 2023-10-11 18:29:07 -04:00
Tom Alexander 6679db98a8
Add comments. 2023-10-11 17:53:32 -04:00
Tom Alexander dc9188dffc
Better error logging when emacs errors out.
rustfmt Build rustfmt has succeeded Details
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has failed Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-11 17:22:01 -04:00
Tom Alexander bd620ccd0d
Format. 2023-10-11 16:32:08 -04:00
Tom Alexander 3fcf1b3864
Compare Document additional properties. 2023-10-11 16:27:25 -04:00
Tom Alexander d965dd6fd1
Implement get_additional_properties for Document. 2023-10-11 16:14:03 -04:00
Tom Alexander a9f067e25a
Update name tests to use all the affiliated keywords. 2023-10-11 15:25:09 -04:00
Tom Alexander 41b4b1015e
Update all comparisons to handle affiliated keywords. 2023-10-11 14:57:32 -04:00
Tom Alexander 9523365090
Update all elements to the new AffiliatedKeywords. 2023-10-11 14:44:25 -04:00
Tom Alexander aa33fe42a8
Update compare_properties to handle affiliated keywords. 2023-10-11 14:14:33 -04:00
Tom Alexander 78a9b93f22
Nevermind, it did work. 2023-10-11 14:03:42 -04:00
Tom Alexander a89339e472
Using owned string did not solve it. 2023-10-11 14:00:18 -04:00
Tom Alexander f3307a8159
Lifetime issue. 2023-10-11 13:55:43 -04:00
Tom Alexander 4bfa25dcb3
Comparing lists of quoted strings. 2023-10-11 13:04:33 -04:00
Tom Alexander 441a240c33
Comparing single string values. 2023-10-11 13:00:21 -04:00
Tom Alexander e767892dd5
Add capitalization. 2023-10-11 12:42:42 -04:00
Tom Alexander 8e0a7dea0f
A very simple GetAffiliatedKeywords trait. 2023-10-11 12:19:27 -04:00
Tom Alexander c4cc40f5e1
Parsing the affiliated keywords. 2023-10-11 12:16:35 -04:00
Tom Alexander a5129199c7
I need to parse the affiliated keywords during parsing because it relies on the global settings. 2023-10-11 12:16:35 -04:00
Tom Alexander c0e462944d
Comment out the broken stuff. 2023-10-11 12:16:35 -04:00
Tom Alexander 63614841e8
Trait lifetime issues. 2023-10-11 12:16:35 -04:00
Tom Alexander bc4c09c546
Add constants for affiliated keyword settings. 2023-10-11 12:16:35 -04:00
Tom Alexander 0d1ab0e75a
Add a debug assert for org entities being sorted. 2023-10-11 12:16:35 -04:00
Tom Alexander 6e39029f91
Store the affiliated keywords on the plainlist. 2023-10-10 18:10:34 -04:00
Tom Alexander 7cb71a5a0a
Compare the additional properties on headlines. 2023-10-10 17:40:27 -04:00
Tom Alexander 6b90a9bfa8
Add TODO. 2023-10-10 17:15:51 -04:00
Tom Alexander 6d4db60688
Support ("") as being equal to None in compare_property_list_of_ast_nodes. 2023-10-10 16:35:16 -04:00
Tom Alexander 3aca01891d
Remove the old implementation of comparing headlines. 2023-10-10 16:12:29 -04:00
Tom Alexander 275ed87c3f
Add a compare_properties variant with support for additional properties. 2023-10-10 16:10:12 -04:00
Tom Alexander b385270d7b
Implement a function to get the additional properties on a headline. 2023-10-10 15:54:44 -04:00
Tom Alexander 585b1d2b74
compare_properties for document. 2023-10-10 15:30:27 -04:00
Tom Alexander c578bb45af
Implement ExactSizeIterator for the other node types. 2023-10-10 15:27:03 -04:00
Tom Alexander b7f7876706
Impl ExactSizeIterator for multi_field_iter. 2023-10-10 15:23:04 -04:00
Tom Alexander ee5ed17c20
Implement ExactSizeIterator for DocumentIter. 2023-10-10 15:19:42 -04:00
Tom Alexander a873794068
Starting a compare properties document function. 2023-10-10 14:58:18 -04:00
Tom Alexander 534c5ded3c
Fix table type is required. 2023-10-10 02:07:36 -04:00
Tom Alexander bdaf90af03
compare_properties timestamp. 2023-10-10 02:05:31 -04:00
Tom Alexander 1a67aac502
compare_properties latex environment. 2023-10-10 01:39:47 -04:00
Tom Alexander 9f166278f4
compare_properties babel call. 2023-10-10 01:36:48 -04:00
Tom Alexander c2222c9102
compare_properties keyword. 2023-10-10 01:32:36 -04:00
Tom Alexander fc104680eb
compare_properties horizontal rule. 2023-10-10 01:29:00 -04:00
Tom Alexander e40e3ff553
compare_properties fixed width area. 2023-10-10 01:27:37 -04:00
Tom Alexander 0b465fe290
compare_properties planning. 2023-10-10 01:24:44 -04:00
Tom Alexander d5396e311b
compare_properties diary sexp. 2023-10-10 01:22:16 -04:00
Tom Alexander 384242af87
compare_properties clock. 2023-10-10 01:19:14 -04:00
Tom Alexander ec755bae8b
compare_properties src block. 2023-10-10 01:13:09 -04:00
Tom Alexander 0b1e06f0d5
compare_properties export block. 2023-10-10 01:07:41 -04:00
Tom Alexander bdfa050ee3
compare_properties example block. 2023-10-10 01:02:45 -04:00
Tom Alexander ec98e1c3c5
compare_properties comment block. 2023-10-10 00:15:04 -04:00
Tom Alexander 0d0b1b2051
compare_properties verse block. 2023-10-10 00:12:40 -04:00
Tom Alexander 2215c32e57
compare_properties table cell. 2023-10-10 00:11:05 -04:00
Tom Alexander cf257443b0
compare_properties table row. 2023-10-10 00:07:34 -04:00
Tom Alexander 62815621e4
compare_properties table. 2023-10-10 00:05:34 -04:00
Tom Alexander 7af5359e00
compare_properties node property. 2023-10-09 22:45:32 -04:00
Tom Alexander d1184fa1d0
compare_properties property drawer. 2023-10-09 22:42:02 -04:00
Tom Alexander 5b146d7c07
compare_properties drawer. 2023-10-09 22:37:53 -04:00
Tom Alexander 926682d513
compare_properties comment. 2023-10-09 22:36:15 -04:00
Tom Alexander 4c89d6c813
compare_properties footnote definition. 2023-10-09 22:32:25 -04:00
Tom Alexander 62926bb91d
compare_properties dynamic block. 2023-10-09 22:28:32 -04:00
Tom Alexander 9ab649ebd4
compare_properties special block. 2023-10-09 22:20:20 -04:00
Tom Alexander ca1b633a9f
compare_properties quote block. 2023-10-09 21:57:11 -04:00
Tom Alexander f543caee00
compare_properties plain list item. 2023-10-09 21:55:29 -04:00
Tom Alexander 409a92333e
compare_properties plain list. 2023-10-09 21:55:28 -04:00
Tom Alexander 7a38d1ead3
compare_properties paragraph. 2023-10-09 21:55:28 -04:00
Tom Alexander 33c53a14ab
Switch back to the old compare heading function until we support additional properties. 2023-10-09 21:32:29 -04:00
Tom Alexander 65615c64d2
Implement a new compare_properties implementation of the heading comparison. 2023-10-09 21:27:18 -04:00
Tom Alexander 166e59b922
Implement a compare_property_numeric. 2023-10-09 21:04:41 -04:00
Tom Alexander 8e357ed3b6
compare_properties section. 2023-10-09 20:54:31 -04:00
Tom Alexander ee1d8ca321
Text markup uses confine context. 2023-10-09 20:36:38 -04:00
Tom Alexander 25531cc443
Accept eof as a disallowed character for plain links. 2023-10-09 20:24:43 -04:00
Tom Alexander 47a440147f
Fix formatting.
rustfmt Build rustfmt has succeeded Details
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has failed Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-09 19:52:32 -04:00
Tom Alexander d1ef83afca
Compare properties of subscript and superscript. 2023-10-09 19:51:31 -04:00
Tom Alexander 4d88256394
Compare statistics cookies properties. 2023-10-09 19:40:13 -04:00
Tom Alexander a588da2c4a
Compare target properties. 2023-10-09 19:37:47 -04:00
Tom Alexander 869c98d8b2
Compare line break properties. 2023-10-09 19:33:51 -04:00
Tom Alexander 4bc2f48738
Compare inline source block properties. 2023-10-09 19:31:57 -04:00
Tom Alexander 0d0b9863c3
Populate inline babel call fields. 2023-10-09 19:25:00 -04:00
Tom Alexander 6bc6fdc87b
Compare properties for inline babel calls. 2023-10-09 19:21:58 -04:00
Tom Alexander bf1a281c29
Footnote reference description is in a confined context. 2023-10-09 18:23:13 -04:00
Tom Alexander df4daa0e16
Do not include context in tracing. 2023-10-09 18:02:36 -04:00
Tom Alexander 5cd34ba3a2
Create a new context tree when calling into confine_context.
The parent exit matchers were causing an issue.
2023-10-09 18:02:36 -04:00
Tom Alexander 13b95cd0a1
Fix handling of text markup at the start/end of regular link descriptions and radio targets. 2023-10-09 18:02:36 -04:00
Tom Alexander 876d042c37
Fix tests. 2023-10-09 15:54:30 -04:00
Tom Alexander 81c0b7079f
Do not include leading slash in citation style.
rust-test Build rust-test has failed Details
rust-build Build rust-build has succeeded Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-09 15:48:43 -04:00
Tom Alexander 4a367dd7e0
Include closing semicolon in citation reference. 2023-10-09 15:45:10 -04:00
Tom Alexander 8a0f9d4540
Fix comparing key and mark prefix/suffix as optional. 2023-10-09 15:41:21 -04:00
Tom Alexander f6155ecf93
Switch to returning ComparePropertiesResult.
This is to support returning lists of child results for properties that contain lists of ast nodes.
2023-10-09 15:33:33 -04:00
Tom Alexander c077d34933
Populate citation reference properties. 2023-10-09 15:33:33 -04:00
Tom Alexander 1ecc3ecf9d
Fill citation fields. 2023-10-09 15:33:33 -04:00
Tom Alexander 840dc0a750
Support text markup at the start of a regular link description.
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has succeeded Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-09 14:02:27 -04:00
Tom Alexander adc5a383c3
Allow text markup at the start of a radio target. 2023-10-09 13:47:36 -04:00
Tom Alexander 5ac12229f4
Fix footnote reference type. 2023-10-09 13:23:08 -04:00
Tom Alexander 9565435526
Compare footnote reference properties. 2023-10-09 13:14:35 -04:00
Tom Alexander e39562c85d
Roll out the new children functions to all compare functions using the new compare_properties macro.
We will roll it out to the rest of them when we move them over to the new compare_properties macro.
2023-10-09 13:08:45 -04:00
Tom Alexander 84ec2f2023
Introduce functions to compare children and assert there are no children. 2023-10-09 13:01:55 -04:00
Tom Alexander 00ed63dcaa
Compare properties for export snippets. 2023-10-09 13:01:55 -04:00
Tom Alexander 4e551e6d7e
Compare latex fragment properties.
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has succeeded Details
rust-foreign-document-test Build rust-foreign-document-test has succeeded Details
2023-10-09 12:30:59 -04:00
Tom Alexander 99318f39e3
Do not accept escaping {} for entities ending in whitespace. 2023-10-09 10:33:07 -04:00
Tom Alexander c679a85e77
Fix sorting of entity names. 2023-10-09 10:33:07 -04:00
Tom Alexander fc17fc224c
Update definitions to the version of entities used in the org-mode in the docker container. 2023-10-09 10:33:07 -04:00
Tom Alexander 7fe7e7a6ea
Add use_brackets. 2023-10-09 10:33:07 -04:00
Tom Alexander ef591556fe
Populate entity fields. 2023-10-08 18:06:56 -04:00
Tom Alexander c150aa4dea
Add support for an org-entities global setting. 2023-10-08 18:01:42 -04:00
Tom Alexander 1df6777b0b
Starting to compare entity properties. 2023-10-08 17:24:03 -04:00
Tom Alexander f07d041eb9
Fix handling capitalization in macro names.
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has succeeded Details
rust-foreign-document-test Build rust-foreign-document-test has succeeded Details
2023-10-08 16:51:44 -04:00
Tom Alexander 9bdec391f1
Do not capture trailing whitespace on the final macro arg.
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has succeeded Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-08 16:39:22 -04:00
Tom Alexander dd009498dd
Switch to using coalesce_whitespace_escaped for macro args.
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has succeeded Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-08 16:19:25 -04:00
Tom Alexander 17c745ee71
Improve coalesce_whitespace_escaped to borrow when single spaces are used. 2023-10-08 16:15:49 -04:00
Tom Alexander 41aa0349a0
Add tests for coalesce_whitespace_escaped. 2023-10-08 16:06:52 -04:00
Tom Alexander a6adeee40b
Handle escaping the characters in org macro arguments. 2023-10-08 15:54:56 -04:00
Tom Alexander a32cea8139
Coalesce whitespace in macro args. 2023-10-08 15:08:21 -04:00
Tom Alexander 37bc5ef712
Do not include whitespace at the end of value. 2023-10-08 14:48:29 -04:00
Tom Alexander 1a2f0856da
Compare macro properties. 2023-10-08 14:40:01 -04:00
Tom Alexander e9276e35ca
Add comments. 2023-10-08 14:18:17 -04:00
Tom Alexander 3041a575f9
Fix lifetimes. 2023-10-08 14:13:02 -04:00
Tom Alexander 42dbda494a
Switch to using a similar optimized Cow function for regular link. 2023-10-08 14:11:46 -04:00
Tom Alexander 0e791e67ab
Move the angle link string processing functions to a util file.
Since I bothered to do the right thing and implement these as returning Cow so I can avoid unnecessary allocations, I figure I should move them to a util file so they can be re-used.
2023-10-08 13:36:57 -04:00
Tom Alexander ba55e0df4f
Remove all whitespace from search option if it contains any line breaks and handle triple+ slashes for file links. 2023-10-08 13:23:12 -04:00
Tom Alexander d987b9b75b
Remove line breaks from path and do not allow search option for protocol links. 2023-10-08 13:02:09 -04:00
Tom Alexander aa253c38dd
Parse out the angle link properties. 2023-10-08 12:46:18 -04:00
Tom Alexander ceb5376b21
Fix handling of search option for plain links when parenthesis are involved. 2023-10-08 10:57:05 -04:00
Tom Alexander b64c1c944b
Allow :: to end links regardless of parenthesis. 2023-10-08 10:57:05 -04:00
Tom Alexander 120a06055f
Handle 3 or more slashes in the path for regular links. 2023-10-08 09:54:10 -04:00
Tom Alexander bbcafef8bf
Handle 3 or more slashes in the path for plain links. 2023-10-08 09:51:12 -04:00
Tom Alexander 038535174b
Do not allow empty path in plain links and do not remove "//" in regular links. 2023-10-08 09:34:47 -04:00
Tom Alexander 1bbe8fc688
Do not strip "//" from plain link path. 2023-10-08 09:28:09 -04:00
Tom Alexander ba8115c648
Remove "//" from file paths. 2023-10-08 09:16:48 -04:00
Tom Alexander 0030ef4459
Parse application and handle parenthesis in regular links. 2023-10-08 09:10:47 -04:00
Tom Alexander 20a8683894
Handle puncuation-only search options.
rust-build Build rust-build has succeeded Details
rust-test Build rust-test has failed Details
rust-foreign-document-test Build rust-foreign-document-test has failed Details
2023-10-07 03:25:37 -04:00
Tom Alexander 7196e10b69
Set up regular links for adding application. 2023-10-07 03:14:16 -04:00
Tom Alexander ddb09a1805
Add support for application in plain links. 2023-10-07 03:00:40 -04:00
Tom Alexander c58b850570
Add support for search options. 2023-10-07 02:42:07 -04:00