Skip to content

Nested block footnotes rendered in wrong order #1561

Description

@tmarplatt

(Python Markdown 3.9; mkdocs 1.6.1 with footnotes extension; Python 3.12)

While using mkdocs I stumbled upon this problem:

Footnote anchors and footnotes themselves are rendered out of order when, in the source and in addition to other document-level footnotes, one ore more footnotes are being referenced from within a nested block, such as a list element or a quote block.

If Python Markdown is downgraded to version 3.8.2, footnotes will be rendered correctly.

Here's a reproducible Markdown case:

# Heading

The following footnote anchor is the first one.[^1]

## Subheading

The following footnote anchor

1. should be the second one, but mkdocs renders it in fourth place.[^2]
1. Note that every anchor still points to its correct, matching footnote.

The following footnote anchor is the third one, but will be rendered in second place. [^3]

> Now in a quote block, possibly reproducible in any other nested block. Fourth yet shown as fifth footnote anchor.[^4]

Last, fifth footnote anchor.[^5]

### Footnotes rendered out of order:

[^1]: First
[^2]: Second
[^3]: Third
[^4]: Fourth
[^5]: Fifth

For reference, here is what I see via mkdocs serve:

Image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    confirmedConfirmed bug report or approved feature request.extensionRelated to one or more of the included extensions.someday-maybeApproved low priority request.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions