Tsukasa OI
74aca53f55
rustdoc: Allow multiple references to a single footnote
...
Multiple references to a single footnote is a part of GitHub Flavored
Markdown syntax (although not explicitly documented as well as regular
footnotes, it is implemented in GitHub's fork of CommonMark) and not
prohibited by rustdoc.
cf. <587a12bb54/test/extensions.txt (L762-L780) >
However, using it makes multiple "sup" elements with the same "id"
attribute, which is invalid per the HTML specification.
Still, not only this is a valid GitHub Flavored Markdown syntax, this is
helpful on certain cases and actually tested (accidentally) in
tests/rustdoc/footnote-reference-in-footnote-def.rs.
This commit keeps track of the number of references per footnote and gives
unique ID to each reference. It also emits *all* back links from a footnote
to its references as "↩" (return symbol) plus a numeric list in superscript.
As a known limitation, it assumes that all references to a footnote are
rendered (this is not always true if a dangling footnote has one or more
references but considered a reasonable compromise).
Also note that, this commit is designed so that no HTML changes will occur
unless multiple references to a single footnote is actually used.
2025-08-14 04:39:31 +00:00
..
2025-05-05 17:49:12 +02:00
2025-05-05 17:47:18 +02:00
2025-05-05 17:49:12 +02:00
2025-05-05 17:47:18 +02:00
2025-05-05 17:49:12 +02:00
2024-07-17 11:01:29 +01:00
2025-07-03 23:16:47 +08:00
2024-07-29 14:34:34 +00:00
2025-03-22 12:47:05 -05:00
2025-05-05 17:47:18 +02:00
2025-05-24 14:15:20 -05:00
2024-09-12 13:47:51 -07:00
2025-08-10 23:02:53 +08:00
2025-07-28 13:34:03 +01:00
2024-09-12 13:47:51 -07:00
2025-05-05 17:47:18 +02:00
2025-06-26 13:46:45 +00:00
2025-02-23 22:24:00 +05:30
2025-08-05 15:34:51 -05:00
2024-06-24 11:08:41 +02:00
2025-05-05 17:47:18 +02:00
2025-06-12 07:35:00 +00:00
2024-09-07 19:02:22 -04:00
2025-06-16 23:04:36 +00:00
2025-06-16 23:04:36 +00:00
2025-05-05 17:47:18 +02:00
2025-08-02 11:24:21 +02:00
2025-01-22 05:03:54 +01:00
2025-05-05 17:47:17 +02:00
2024-06-24 11:08:41 +02:00
2025-05-25 15:10:24 +02:00
2024-06-24 11:08:41 +02:00
2025-04-17 08:55:53 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-07-23 00:00:01 +00:00
2025-07-23 00:00:01 +00:00
2025-01-18 20:29:55 +01:00
2025-07-23 00:00:01 +00:00
2025-07-23 00:00:01 +00:00
2025-07-23 00:00:01 +00:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-12-19 10:48:01 -08:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-06-03 10:35:28 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-11-03 18:59:31 +00:00
2024-06-24 11:08:41 +02:00
2025-02-24 07:53:59 +01:00
2024-06-24 11:08:41 +02:00
2024-09-12 13:47:51 -07:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-10-19 14:39:20 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-08-22 20:27:57 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-10-16 15:53:49 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-09-23 09:21:39 -07:00
2024-06-24 11:08:41 +02:00
2024-09-12 13:47:51 -07:00
2024-10-23 19:15:23 -04:00
2025-02-16 19:34:50 +00:00
2025-02-16 19:34:50 +00:00
2024-06-24 11:08:41 +02:00
2025-04-17 08:55:53 +02:00
2025-06-16 23:04:36 +00:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-02-01 15:04:19 -08:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-11-13 16:56:40 +01:00
2025-01-18 20:29:55 +01:00
2025-08-14 04:39:31 +00:00
2025-08-14 04:39:31 +00:00
2024-07-12 18:14:37 -07:00
2024-07-12 18:14:37 -07:00
2025-06-16 23:04:36 +00:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-11-10 13:38:41 -06:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-10-17 12:32:31 -04:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-02-01 15:04:19 -08:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2025-01-18 20:29:55 +01:00
2025-01-17 22:36:49 +01:00
2024-12-17 13:56:10 +11:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-11-18 18:11:50 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-07-12 18:14:37 -07:00
2024-06-24 11:08:41 +02:00
2024-07-12 18:14:37 -07:00
2025-01-19 11:47:32 +01:00
2025-01-19 11:47:32 +01:00
2024-07-12 18:14:37 -07:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-08-05 11:04:51 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-08-05 11:04:51 +02:00
2025-03-27 11:18:43 +01:00
2024-06-24 11:08:41 +02:00
2024-07-12 18:14:37 -07:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-03-15 18:13:27 +00:00
2025-06-16 23:04:36 +00:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-02-02 12:36:12 +01:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-01-18 20:29:55 +01:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-06-24 18:55:45 +00:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-10-23 19:15:23 -04:00
2024-09-23 09:21:39 -07:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-04-17 02:35:05 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-10-23 19:15:23 -04:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2025-05-25 15:10:23 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-12-31 01:08:43 +00:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00
2024-06-24 11:08:41 +02:00