feat: support footnote macro conversion to Markdown footnotes - #40
Open
mxmehl wants to merge 2 commits into
Open
feat: support footnote macro conversion to Markdown footnotes#40mxmehl wants to merge 2 commits into
mxmehl wants to merge 2 commits into
Conversation
Assisted-by: Claude:claude-sonnet-4.6
Footnote extraction ran as a pre-processing step before the
substitution chain, so a footnote hidden inside an attribute
reference (e.g. {link-antrag}) was never seen: the reference had
not been expanded yet, and by the time the macros substitution ran
it only knew how to expand the numeric footnote token.
Surface attribute references before footnote extraction so that
footnotes arriving via an attribute are tokenized in document
order, matching AsciiDoc's macros-after-attributes ordering. Also
reuse a named footnote whenever its id is already defined (text
ignored on reuse, per spec), which lets a named footnote shared
through an attribute reference resolve to a single definition.
Assisted-by: Claude:claude-sonnet-4.6
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #35
This PR add the feature to convert AsciiDoc
footnote:[text]macros to Markdown footnote syntax. Inline references become[^N]with consecutively assigned numbers. Footnote definitions are appended at the end of the document as[^N]: textlines.Named footnotes (
footnote:id[text]) are also supported, and back-references (footnote:id[]) reuse the same number as the first definition. Footnote text goes through full normal substitutions, including URL macros with bracketed labels. Escaped macros (\footnote:) pass through verbatim.Also supports footnotes provided as part of attributes.