User:Retro/Footnotes
| Broad editing organization | More specific projects | ||||||
|---|---|---|---|---|---|---|---|
| Article improvements | Mental accretion | Phrases to watch | Templates | Character encoding | DKC organizing | Footnotes | Tooltips |
| If my subpages inspire you to carry out an idea yourself or you have any questions or concerns, I'm interested in hearing about it! | |||||||
Current footnote methods
| Group type | Footnote marker template or markup |
Transclusion count |
Reference list template |
Transclusion count |
Sample labels |
|---|---|---|---|---|---|
| none | <ref>...</ref> |
4,258,757 | {{reflist}}
|
1 2 3 4 5 6 7 8 9 10 | |
{{refn}} (for nested references) |
16,351 | 4,258,757 | |||
| lower-alpha | {{efn}} |
41,714 | {{notelist}} |
46,366 | a b c d e f g h i j |
| upper-alpha | {{efn-ua}} |
1,202 | {{notelist-ua}} |
2,163 | A B C D E F G H I J |
| lower-roman | {{efn-lr}} |
1,121 | {{notelist-lr}} |
2,156 | i ii iii iv v vi vii viii ix x |
| upper-roman | {{efn-ur}} |
22 | {{notelist-ur}} |
15 | I II III IV V VI VII VIII IX X |
| lower-greek[a] | {{efn-lg}} |
31 | {{notelist-lg}} |
55 | α β γ δ ε ζ η θ ι κ |
| Note | {{NoteTag}} |
69 | {{NoteFoot}} |
58 | Note 1 Note 2 Note 3 |
- ^ Not supported by Internet Explorer 7 and below
The row format could probably be turned into a template on its own merit. It would either be one of the two (or perhaps it could function as both, with parameter conditions):
|- | {{tlx|}} || {{TC|}} || {{tlx|}} || {{TC|}}- {{pre||- | {{tlx|}} ({{tlx|}}) || {{TC|}} || {{tlx|}} || {{TC|}}}} {| class="wikitable" |- style="vertical-align:top;" ! Footnote marker template<br/>or markup !! Transclusion<br/> count !! Invocation or<br/>transclusion !! Reference list<br/> template !! Transclusion<br/> count |- | {{tlx|Harvard citation}} ({{tlx|harv}}) || {{TC|Harvard citation|6200}} || <code><nowiki>{{#invoke:Footnotes|harvard_citation}} || || the current page's transclusion count
|-
| {{Harvard citation no brackets}} ({{harvnb}}) || 31000 || {{#invoke:Footnotes|harvard_citation_no_bracket}} || || the current page's transclusion count
|-
| {{Harvard citation text}} ({{harvtxt}}) || 4600 || {{Harvard citation/core || {{[[Template:|]]}} || the current page's transclusion count
|-
| {{Harvard citations}} ({{harvs}}) || 1500 || || {{[[Template:|]]}} || the current page's transclusion count
|-
| {{[[Template:|]]}} || the current page's transclusion count || {{[[Template:|]]}} || the current page's transclusion count
|-
| {{[[Template:|]]}} ({{[[Template:|]]}}) || the current page's transclusion count || {{[[Template:|]]}} || the current page's transclusion count
|}
Cref and cnotes
I previously tried to replace some {{cref}} and {{cnotes}} templates, but it turned out poorly because I didn't understand all the technical details. I will want to ensure I understand all the technical details before embarking upon such a quest again.
That this regex is placed higher than all regex in notes is incidental; the quality may vary. Regex is actually suboptimal because of its relative inclarity, so I will probably transition to custom AWB C#.
- Find:
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\} .*? \{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\}) - Replace:
{{efn|\3}}\2
Pages with complex footnotesComplex footnote cases
Pages with footnote mistakes cases
- Schleswig-Holstein
- Jonathan Demme
- Micronesia
- Whig Party (United States)
- CERN
- Sui dynasty
- Democratic-Republican Party: suggests a missing one b/c numbering started from 2.
- Photios I of Constantinople: Reverse problem; note which is missing the inline reference.
- Potomac River: Notes which are missing inline references
Miscellaneous notes
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\}(?=(?:[^{]*(?:(?!\{\{\s*(?:[Tt]emplate:)?[cC]note\s*\|\s*\1).)?)*\{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\}){{efn|\2}}\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\}(?=(?>.*?\{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1)\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\} (?= (?> [^{]*(?:.?[^{]*)*? \{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1) \s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})
- Find:
(?:[^{]*.??)*? - Replace:
[^{]*(?:.?[^{]*)*?
[^{}]*(\{(?(\{)[^{}]*(?1)?\}|(?!)[^{}]*)*
Needs a subroutine, not a backreference.
(\(((?>[^()]+)|(?1))*\))*
[Old note:] I'm just not going to get recursion today, and I'm fine with that; there are two many possible confusing variables.
(\{[^{]*\2[^}]*}\)
- Find:
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\} ((?:[^{]*(?:(?!\{\{\s*(?:[Tt]emplate:)?[cC]note\s*\|\s*\1).)?)* \{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})
- Replace:
{{efn|\3}}\2
Iteration 2: Lookahead time!:
- Find:
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\} (?!((?:[^{]*(?:(?!\{\{\s*(?:[Tt]emplate:)?[cC]note\s*\|\s*\1).)?)* \{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\}))
- Find 2:
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\}(?=(?:[^{]*(?:(?!\{\{\s*(?:[Tt]emplate:)?[cC]note\s*\|\s*\1).)?)*\{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})
- Replace:
{{efn|\2}} Efficiency tweaking :-p: *{{code|<nowiki>(?:[^{}]*(?:\{\{[^}]*\}\})?)+ (\{\{[Rr]efbegin\}\})?((?:[\s*]*?\{\{\s*?(?:[Tt]emplate:)?[E]fn\s*?((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})*)\s*(?(1)\{\{[Rr]efend\}\})(\{{2})([Rr]efbegin\}{2}\s*)?((?:\{{2}\s*?(?:[Tt]emplate:)??[E]fn\s*?(?:[^{}]*(?:\{{2}[^}]*\}{2})?)+\}{2}[\s*]*?)+)\s*(?(1)\{{2}[Rr]efend\}{2})
List of {{efn}} -> {{notelist}}:
(\{\{[Rr]efbegin\}\})?((?:[\s*]*?\{\{\s*?(?:[Tt]emplate:)?[E]fn\s*?((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})*)\s*(?(1)\{\{[Rr]efend\}\}|(?!))\{{2}([Rr]efbegin\}{2}\s*)?((?:\{{2}\s*?(?:[Tt]emplate:)??[E]fn\s*?(?:[^{}]*(?:(?(1)\{{2)[^}]*\}{2})?)+\}{2}[\s*]*?)+)\s*(?(1)\{{2}[Rr]efend\}{2})\{{2}([Rr]efbegin\}{2}\s*)?((?:\{{2}\s*?(?:[Tt]emplate:)??[E]fn\s*?(?:[^{}]*(?:(?(1)\{{2})[^}]*\}{2})?)+\}{2}[\s*]*?)+)\s*(?(1)\{{2}[Rr]efend\}{2})
\{{2} ([Rr]efbegin\}{2}\s*)? ((?: \{{2}\s*?(?:[Tt]emplate:)??[eE]fn\s*?(?:[^{}]*(?:(?(1)\{{2})[^}]*\}{2})?)+\}{2}[\s*]*? )+) \s* (?(1)\{{2}[Rr]efend\}{2})
Substitution:
Unique {{cref}} -> inline {{efn}}:
\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\}(?=(?:[^{]*(?:(?!\{\{\s*(?:[Tt]emplate:)?[cC]note\s*\|\s*\1).)?)*\{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}]*)\s*?\}\}(?=(?>[^{]*(?:.?[^{]*)*?\{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1)\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})\{\{\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}\s]*)\s*?\}\}(?=(?>[^{]*(?:.?[^{]*)*?\{\{\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1)\s*?\|((?:[^{}]*(?:\{\{[^}]*\}\})?)+)\}\})\{{2}\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}\s]*)\s*?\}{2}(?=(?>[^{]*(?:.?[^{]*)*?\{{2}\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1)\s*?\|((?:[^{}]*(?:\{{2}[^}]*\}{2})?)+)\}{2})
\{{2}\s*?(?:[Tt]emplate:)?[cC]ref\s*?\|\s*?([^}\s]*)\s*?\}{2} (?= (?>[^{]*(?:.?[^{]*)*? \{{2}\s*?(?:[Tt]emplate:)?[cC]note\s*?\|\s*?\1) \s*?\|((?:[^{}]*(?:\{{2}[^}]*\}{2})?)+)\}{2} )
Midstage templates
I assume these were part of an idea to have a middle transition stage between notes templates. But I want to avoid doing that if possible. I only thought of this because it was done previously, I wonder where it was done previously.
- {{efn-pre}}
- {{notelist-pre}}
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.