Template:Listref/sandbox
This is the template sandbox page for Template:Listref (diff). See also the companion subpage for test cases. |
This template uses TemplateStyles: |
This template creates in-text citations and a reference list for use in list articles as a supplement to the standard footnote system. It is intended for use only for references used a large number of times. The template is styled to render in-text citations and the reference list like the <ref>
tags and {{reflist}} template used by the footnote system.
Differences:
- There is no backlink from the citation in the reference list, by design.
- The in-text citation uses a standard HTML link without an id, by design. Other templates create an HTML id, which is only allowed to be defined once, thus multiple uses of the same in-text citation results in invalid HTML
- The in-text citation link and the anchor in the reference list are created manually.
Likenesses:
- In-text citations use the same style.
- The reference list uses the same marking and font size.
- The citation in the reference list is highlighted when the in-text citation is followed.
- The reference list can be formatted with columns like {{reflist}}.
The problem
[edit]List articles often use a single named reference a large number of times. Each use creates a backlink in the reference list entry and eventually the backlinks become ugly and useless.[I] For example:
- ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df dg dh di dj dk dl dm dn do
Examples:
In-text citation
[edit]{{listref}}
creates the in-text citation link using the first unnamed parameter. This will define both the superscript callout text ([a]) and the link id (#CITEREFa
). If undefined, it defaults to a.[II]
Examples:
Although any characters can be used, only these styles will link to citations in the reference list:
- lower-alpha
- upper-alpha
- lower-roman
- upper-roman
- lower-greek
- decimal
To include a page number use |p=
Reference list
[edit]The citations are defined in and the reference list is displayed with {{listref/reflist}}
. There are two named parameters for up to nine citations:
|id1=
through|id9=
matches the link id set with {{listref}}.|ref1=
through|ref9=
defines the full citation.
{{Listref/reflist}}
supports style parameters similar to {{reflist}}:
- Columns: Using
{{listref/reflist|30em}}
will automatically choose the number of columns based on the width of the web browser. You can set this to match the columns parameter in {{reflist}}. - List style: The reference list is styled as lower-alpha by default. It can be changed with
|liststyle=
to:- upper-alpha
- lower-roman
- upper-roman
- lower-greek
- decimal
- The style must match the in-text link id style.
{{listref/reflist |id1=a |ref1=Reference a |id2=b |ref2=Reference b }}
Citations in the reference list must be in the proper order for the superscript links to function.
Freestyle
[edit]You can use any text for the label by setting |liststyle=square
. The reference list will show as an unordered list and the label will show in the reference list at the beginning of each entry enclosed by brackets.
Examples
[edit]Default using letters
* The brontosaurus is thin at one end.{{listref}} * Then it becomes much thicker in the middle.{{listref}} * The Norwegian Blue Parrot will not move if its feet are nailed to the perch.{{listref|b}} * Its metabolic processes are a matter of interest only to historians.{{listref|b}} {{listref/reflist| |id1=a |ref1={{cite book |last=Elk |first=Anne |title=[[Anne Elk's Theory on Brontosauruses]] |date=November 16, 1972}} |id2=b |ref2={{cite book |last=Praline |first=Eric |title=[[Dead Parrot sketch]] |date=December 7, 1969}} }}
- The brontosaurus is thin at one end.[a]
- Then it becomes much thicker in the middle.[a]
- The Norwegian Blue Parrot will not move if its feet are nailed to the perch.[b]
- Its metabolic processes are a matter of interest only to historians.[b]
- Elk, Anne (November 16, 1972). Anne Elk's Theory on Brontosauruses.
- Praline, Eric (December 7, 1969). Dead Parrot sketch.
Roman numeral labels
* The brontosaurus is thin at one end.{{listref|i}} * Then it becomes much thicker in the middle.{{listref|i}} * The Norwegian Blue Parrot will not move if its feet are nailed to the perch.{{listref|ii}} * Its metabolic processes are a matter of interest only to historians.{{listref|ii}} {{listref/reflist|liststyle=lower-roman |id1=i |ref1={{cite book |last=Elk |first=Anne |title=[[Anne Elk's Theory on Brontosauruses]] |date=November 16, 1972}} |id2=ii |ref2={{cite book |last=Praline |first=Eric |title=[[Dead Parrot sketch]] |date=December 7, 1969}} }}
- The brontosaurus is thin at one end.[i]
- Then it becomes much thicker in the middle.[i]
- The Norwegian Blue Parrot will not move if its feet are nailed to the perch.[ii]
- Its metabolic processes are a matter of interest only to historians.[ii]
- Elk, Anne (November 16, 1972). Anne Elk's Theory on Brontosauruses.
- Praline, Eric (December 7, 1969). Dead Parrot sketch.
Freestyle labels
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<ref>consectetur adipisicing elit</ref> Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.<ref>sunt in culpa qui officia</ref> Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. * The brontosaurus is thin at one end.{{listref|AE}} * Then it becomes much thicker in the middle.{{listref|AE}} * The Norwegian Blue Parrot will not move if its feet are nailed to the perch.{{listref|EP}} * Its metabolic processes are a matter of interest only to historians.{{listref|EP}} {{listref/reflist|liststyle=square |id1=AE |ref1={{cite book |last=Elk |first=Anne |title=[[Anne Elk's Theory on Brontosauruses]] |date=November 16, 1972}} |id2=EP |ref2={{cite book |last=Praline |first=Eric |title=[[Dead Parrot sketch]] |date=December 7, 1969}} }} {{reflist}}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.[1] Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.[2] Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
- The brontosaurus is thin at one end.[AE]
- Then it becomes much thicker in the middle.[AE]
- The Norwegian Blue Parrot will not move if its feet are nailed to the perch.[EP]
- Its metabolic processes are a matter of interest only to historians.[EP]
- [AE] Elk, Anne (November 16, 1972). Anne Elk's Theory on Brontosauruses.
- [EP] Praline, Eric (December 7, 1969). Dead Parrot sketch.
Troubleshooting
[edit]With manual links it is easy to introduce errors such as duplicate anchors and unused references. The script User:Trappist the monk/HarvErrors will show many related errors. Duplicate anchors may be found by using the W3C Markup Validation Service.
After installing the script, errors should show in this test:
Bug
[edit]The issue with over-backlinking has been reported as T25455 Cite extension: suppress backlink. If the extension is updated, then this template should be deprecated.
See also
[edit]- {{ran}}/{{rma}} – another pair of templates that create references without backlinks
- {{citeref}} – a template to link from one citation to another
Notes
[edit]- ^ Backlinks are defined in MediaWiki:Cite references link many format backlink labels. Backlinks were originally only a—z but over time have been increased to a—azz allowing for 1377 backlinks.
- ^ This template is a wrapper for {{ran}} and will work just the same as that template. The only difference is that listref provides a default value of "a" for the "tag" parameter.