Template:R/ref: Difference between revisions
Richardpruen (talk | contribs) m (1 revision imported: Citation templates) |
(some restructuring) |
||
Line 1: | Line 1: | ||
<includeonly>{{# | <includeonly><!-- | ||
### Debug facility: ### | |||
-->{{#if:{{{debug|}}}|DEBUG: 1="{{{1|}}}", 2="{{{2|}}}", 3="{{{3|}}}", 4="{{{4|}}}", name="{{{name|}}}", group="{{{group|}}}", page="{{{page|}}}", pages="{{{pages|}}}", location="{{{location|}}}", quote="{{{quote|}}}", trans-quote="{{{trans-quote|}}}", quote-page="{{{quote-page|}}}", quote-language="{{{quote-language|}}}", quote-cite="{{{quote-cite|}}}", reference="{{{reference|}}}", annotation="{{{annotation|}}}", leadin="{{{leadin|}}}", postscript="{{{postscript|}}}", section="{{{section|}}}", needed-reason="{{{needed-reason|}}}", needed-date="{{{needed-date|}}}", wrap="{{{wrap|}}}", content-id="{{{content-id|}}}", link-id="{{{link-id|}}}", debug="{{{debug|}}}". Potential context-section-name:"{{anchorencode:cite_sect-{{trim quotes|s={{{1|}}}}}-{{trim quotes|s={{{2|}}}}}-{{trim quotes|s={{{pages|}}}{{{page|}}}{{{location|}}}}}}}".}}<!-- | |||
### Opening "support context" span: ### | |||
-->{{#if:{{{section|}}}|{{#if:{{#lst:{{FULLPAGENAME}}|{{anchorencode:{{#switch:{{{section|}}}||y|yes=cite_sect-{{trim quotes|s={{{1|}}}}}-{{trim quotes|s={{{2|}}}}}-{{trim quotes|s={{{pages|}}}{{{page|}}}{{{location|}}}}}|{{{section|}}}}}}}}}|<templatestyles src="Template:Tooltip/styles.css"/><span class="rt-commentedText tooltip tooltip-dotted" title="Context: "{{#invoke:String|replace|{{#invoke:Plain text|main|1={{#lst:{{FULLPAGENAME}}|{{anchorencode:{{#switch:{{{section|}}}||y|yes=cite_sect-{{trim quotes|s={{{1|}}}}}-{{trim quotes|s={{{2|}}}}}-{{trim quotes|s={{{pages|}}}{{{page|}}}{{{location|}}}}}|{{{section|}}}}}}}}}|encode=false}}|"|"}}"">}}}}<!-- | |||
### First call to create reference link: ### | |||
-->{{#if:{{{link-id|}}}|<span id="{{anchorencode:{{{link-id|}}}}}" class="citation<!-- wikicite cite-r -->">}}{{#tag:ref|{{#if:{{{annotation|}}}||{{#if:{{{content-id|}}}|<span<!-- or <cite...> --> id="{{anchorencode:{{{content-id|}}}}}" class="citation<!-- wikicite cite-r -->">}}{{{reference|}}}{{#if:{{{content-id|}}}|</span><!-- or </cite> -->}}{{{postscript|}}}}}|name={{{1|}}}|group={{{2|}}}}}{{#if:{{{link-id|}}}|</span>}}<!-- | |||
### Optional second call to append data to reference: ### | |||
-->{{#if:{{{annotation|}}}|{{#tag:ref|{{#switch:{{{annotation|}}}|p|page|pages={{#if:{{{pages|}}}{{{page|}}}{{{location|}}}|‌{{#if:{{{content-id|}}}|<span id="{{anchorencode:{{{content-id|}}}}}">}}{{{leadin|}}}{{{pages|}}}{{{page|}}}{{{location|}}}{{#if:{{{content-id|}}}|</span>}}}}|quote|q=‌{{#switch:{{{quote-page|}}}|=|p|page|pages={{#if:{{{pages|}}}{{{page|}}}{{{location|}}}|{{{leadin|}}}{{{pages|}}}{{{page|}}}{{{location|}}}: }}|{{{leadin|}}}{{{quote-page|}}}: }}<q {{#if:{{{content-id|}}}|id="{{anchorencode:{{{content-id|}}}}}"}} {{#if:{{{quote-cite|}}}|cite="#{{anchorencode:{{{quote-cite|}}}}}"}} {{#if:{{{quote-language|}}}|lang="{{{quote-language|}}}"}}><bdi><!--EXPOSES_EMBEDDED_STRIPMARKERS_BUT_NOT_NECESSARY_INSIDE_Q_TAG{{#invoke:String|replace|-->{{trim quotes|s={{{quote|}}}}}<!--|"|"}}--></bdi></q>{{#if:{{{trans-quote|}}}| [<bdi><!--{{#invoke:String|replace|-->{{trim quotes|s={{{trans-quote|}}}}}<!--|"|"}}--></bdi>]}}|{{#if:{{{content-id|}}}|<span<!-- or <cite...> --> id="{{anchorencode:{{{content-id|}}}}}" class="citation<!-- wikicite cite-r -->">}}{{{leadin|}}}{{{annotation|}}}{{#if:{{{content-id|}}}|</span><!-- or </cite> -->}}}}{{{postscript|}}}|follow={{{1|}}}|group={{{2|}}}}}}}<!-- | |||
### Superscript pages and tooltip for help, pages, quotes: ### | |||
-->{{#if:{{{pages|}}}{{{page|}}}{{{location|}}}|<sup class="reference {{#switch:{{{wrap|}}}|f|forced=|no}}wrap"><!-- <nowiki> -->:<!-- </nowiki> --><span title="Page / location: {{#invoke:String|replace|{{#invoke:Plain text|main|1={{#if:{{{quote|}}}|{{#switch:{{{quote-page|}}}||p|page|pages={{{pages|}}}{{{page|}}}{{{location|}}}|{{{quote-page|}}}}}|{{{pages|}}}{{{page|}}}{{{location|}}}}}|encode=false}}|"|"}}{{#if:{{{quote|}}}| Quotation: "{{#invoke:String|replace|{{#invoke:Plain text|main|1={{trim quotes|s={{{quote|}}}}}|encode=false}}|"|"}}"{{#if:{{{trans-quote|}}}| Translation: "{{#invoke:String|replace|{{#invoke:Plain text|main|1={{trim quotes|s={{{trans-quote|}}}}}|encode=false}}|"|"}}"}}" class="tooltip tooltip-dashed" style="border-bottom: 1px dashed;}}"><!--{{#invoke:String2|hyphen2dash|1=-->{{{pages|}}}{{{page|}}}{{{location|}}}<!--}}--></span></sup>}}<!-- | |||
### Closing "support context" span: ### | |||
-->{{#if:{{{section|}}}|{{#if:{{#lst:{{FULLPAGENAME}}|{{anchorencode:{{#switch:{{{section|}}}||y|yes=cite_sect-{{trim quotes|s={{{1|}}}}}-{{trim quotes|s={{{2|}}}}}-{{trim quotes|s={{{pages|}}}{{{page|}}}{{{location|}}}}}|{{{section|}}}}}}}}}|</span>}}}}<!-- | |||
### Page needed functionality: ### | |||
-->{{#if:{{{needed-reason|}}}|{{page needed|date={{{needed-date|}}}|reason={{#switch:{{{needed-reason|}}}|y|yes=No reason given|{{{needed-reason|}}}}}}}}}<!-- | |||
### Line wrapping functionality: ### | |||
-->{{#switch:{{{wrap|}}}|n|no=|​}}<!-- | |||
### End of code ### | |||
--></includeonly><noinclude> | |||
{{documentation}} | {{documentation}} | ||
</noinclude> | </noinclude> |
Revision as of 14:13, 4 September 2021
This is a subtemplate, implementing a piece of Template:R for a single ref name.
Usage
For internal use only:
{{r/ref |[1=]name |[2=]group |direction=ltr/rtl |page=page / |pages=pages / |location=in-source-location |quote=quote |quote-page=page/p (for page) / quote-page / |quote-pages=pages/pp (for pages) / quote-pages |quote-location=page/p/pages/pp (for page/pages) / quote-location |language=language-code/language-name |translation=translation |quote-cite=quote-anchor (cite the quote belongs to) |reference=citation-text |annotation=p[age[s]] (for pages) / q[uote] (for quote including quote-page) / annotation-text |leadin=leadin-sequence |postscript=postscript-sequence |section=y[es] (to use internally generated section name) / context-section |needed-reason=y[es] (for "unspecified reason") / page-needed-reason |needed-date=page-needed-date |wrap=n[o] (default) / y[es] (to activate wrapping) / f[orced] (to enforce inline wrapping) |no-pp=y[es] (to optionally suppress p/pp) |style=AMA / else (to optionally select AMA style) |content-id=content-anchor (to mark annotation) |link-id=link-anchor (to mark superscript link) |debug=debug-value }}
See also
- Module:DecodeEncode.encode()
- Module:Plain text.main()
- Module:String.replace()
- Module:String2.hyphen2dash()
- Template:lang fn