Commit Graph

23 Commits

Author SHA1 Message Date
Tom Alexander
59a91331cc Add support for target links.
All checks were successful
format Build format has succeeded
build-natter Build build-natter has succeeded
rust-clippy Build rust-clippy has succeeded
rust-test Build rust-test has succeeded
2023-12-23 22:54:48 -05:00
Tom Alexander
397d4ea0bc Fix clippy issues.
All checks were successful
rust-test Build rust-test has succeeded
rust-clippy Build rust-clippy has succeeded
build-natter Build build-natter has succeeded
format Build format has succeeded
2023-12-23 07:08:06 -05:00
Tom Alexander
4fb08bc7d0 Wrap inline footnote definitions in a paragraph tag.
This is to match the behavior of the upstream org html exporter.
2023-12-21 18:09:43 -05:00
Tom Alexander
8b85c02ef1 Wrap the intermediate Registry in an IntermediateContext.
This is currently just to maintain consistency with the render phase's RenderContext but in the future it should allow us to include immutable data that is not locked behind the ArcMutex.
2023-12-21 13:53:56 -05:00
Tom Alexander
0da37b25e3 Assign the reference counts. 2023-10-29 22:29:29 -04:00
Tom Alexander
ff03140007 Order the footnotes based on when they start processing rather than when they finish.
This has the benefit of making the output order make sense when footnote definitions reference footnote references but I mostly did it to match the behavior of upstream org-mode.
2023-10-29 22:29:29 -04:00
Tom Alexander
0ae492f8d3 Promote waiting footnote definitions. 2023-10-29 22:29:29 -04:00
Tom Alexander
613d49c6ec Record on-deck footnote definitions. 2023-10-29 22:29:29 -04:00
Tom Alexander
2e7cfd5637 Only parse footnote definitions if they target a reference that exists. 2023-10-29 22:29:28 -04:00
Tom Alexander
afe62de2b6 Re-enable AstNode. 2023-10-29 22:29:28 -04:00
Tom Alexander
1f3b5262b8 Fix build by making the registry guarded by an ArcMutex. 2023-10-29 22:29:28 -04:00
Tom Alexander
671159cb82 Does not work even without IntoAstNode. 2023-10-29 22:29:28 -04:00
Tom Alexander
24b9782146 Avoid closures for the intermediate macro. 2023-10-29 22:29:28 -04:00
Tom Alexander
f98a09bc59 Use macros for creating the intermediate stage.
This is to make it easier to change function signatures by consolidating the places where the signatures exist.
2023-10-29 18:46:14 -04:00
Tom Alexander
b66ec507ef Create a render ast node type. 2023-10-29 18:46:13 -04:00
Tom Alexander
645ae26701 Remove intermediate lifetime. 2023-10-29 14:53:11 -04:00
Tom Alexander
6109902945 Create an intermediate ast node type. 2023-10-29 14:45:02 -04:00
Tom Alexander
cd27869122 Populate render context for footnote references. 2023-10-29 14:45:02 -04:00
Tom Alexander
795945f0da Register footnote definitions. 2023-10-29 14:45:02 -04:00
Tom Alexander
cb7c28c1ae Add intermediate lifetime. 2023-10-29 12:24:49 -04:00
Tom Alexander
52ca300de3 Beginning to hand out footnote ids. 2023-10-29 12:24:49 -04:00
Tom Alexander
7b01230234 Add target. 2023-10-27 15:05:50 -04:00
Tom Alexander
c6cf5f75ac Introduce a registry into the conversion to intermediate format. 2023-10-27 15:05:49 -04:00