Fletcher on 09 Dec, 2022 12:35 PM
There are a couple of things going on here.
MultiMarkdown parses in a single pass, so you can't "nest" things that
have to be resolved sequentially.
Metadata variables (the '[%foo]' construct) have to be a "top-level"
element within a span of plain text in order to be converted into the
value from the metadata.
Additionally, the URL construction (`[foo](URL)`) does not interpret
Markdown inside the `(URL)` section -- that text is used as is.
In this case, you are saying that the URL is literally `[%domain]`.
You can test something similar with `[Foo **bar**](Foo **bar**)`. The
strong attribute is applied to the link text, but not the URL.
The one exception to the "single pass" rule is that there is a
pre-processing step that handles the `mmd header` and `mmd footer`
metadata, and performs file transclusion to create the final plain text
source, and *then* the MultiMarkdown parser does it's thing.