Commit Graph

9 Commits

Author SHA1 Message Date
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
cb7c28c1ae
Add intermediate lifetime. 2023-10-29 12:24:49 -04:00
Tom Alexander
f6c475c80c
Add templates for text markup. 2023-10-27 19:42:33 -04:00
Tom Alexander
f9377d7609
Make converstion to intermediate state async.
We are going to need to do things like call external tools for syntax highlighting so we are going to need async in there eventually.
2023-10-27 15:55:19 -04:00
Tom Alexander
c6cf5f75ac
Introduce a registry into the conversion to intermediate format. 2023-10-27 15:05:49 -04:00
Tom Alexander
e3b5f7f74f
Rename blog_post module to intermediate.
This module is mostly the intermediate representation of the AST, so the renaming is to make that more clear. The three forms are parsed => intermediate => render.

Parsed comes from Organic and is a direct translation of the org-mode text.

Intermediate converts the parsed data into owned values and does any calculations that are needed on the data (for example: assigning numbers to footnotes.)

Render takes intermediate and translates it into the format expected by the dust templates. The processing in this step should be minimal since all the logic should be in the intermediate step.
2023-10-27 13:10:21 -04:00