Difference between revisions of "Template:Documentation/core"

From Halachipedia
Jump to: navigation, search
m (Protected Template:Documentation/core: Will soon be used by {{documentation}} which is high-risk. Semi-protecting it now in case we forget to protect it when we deploy it. ([edit=autoconfirmed] (indefinite) [move=sysop] (indefinite)))
m (41 revisions)
 
(35 intermediate revisions by 15 users not shown)
Line 1: Line 1:
 
<!--
 
<!--
 
   Start of green doc box
 
   Start of green doc box
--><div class="template-documentation"><!--
+
--><div id="template-documentation" class="template-documentation iezoomfix"><!--
 
   Add the heading at the top of the doc box:
 
   Add the heading at the top of the doc box:
 
-->{{#ifeq: {{{heading|¬}}} | <!--Defined but empty-->
 
-->{{#ifeq: {{{heading|¬}}} | <!--Defined but empty-->
Line 11: Line 11:
 
     <span class="editsection plainlinks" id="doc_editlinks">{{
 
     <span class="editsection plainlinks" id="doc_editlinks">{{
 
     #if: {{{doc exist|yes}}}
 
     #if: {{{doc exist|yes}}}
     | [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=edit}} edit]] [{{purge|purge}}]  
+
     | &#91;[[{{{docpage|{{FULLPAGENAME}}/doc}}}|view]]&#93; [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=edit}} edit]] [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=history}} history]] [{{purge|purge}}]  
 
     | <!--/doc doesn't exist-->
 
     | <!--/doc doesn't exist-->
       [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}| action=edit&preload=Template:Documentation/preload}} create]]
+
       [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}| action=edit&preload={{
 +
        #if: {{{preload|}}}
 +
        | {{urlencode:{{{preload}}}}}
 +
        | {{#ifeq: {{SUBJECTSPACE}} | {{ns:File}}
 +
          | Template:Documentation/preload-filespace
 +
          | Template:Documentation/preload
 +
          }} }} }} create]]
 
     }}</span>
 
     }}</span>
 
   }} <span style="{{#if: {{{heading-style|}}}
 
   }} <span style="{{#if: {{{heading-style|}}}
 
   | {{{heading-style|}}}
 
   | {{{heading-style|}}}
   | {{#ifeq: {{NAMESPACE}} | {{ns:Template}}
+
   | {{#ifeq: {{SUBJECTSPACE}} | {{ns:Template}}
 
     | font-weight: bold; font-size: 125%
 
     | font-weight: bold; font-size: 125%
 
     | font-size: 150%
 
     | font-size: 150%
Line 24: Line 30:
 
   | ¬ =   
 
   | ¬ =   
 
     <!--"heading" not defined in this or previous level-->
 
     <!--"heading" not defined in this or previous level-->
     {{#ifeq: {{NAMESPACE}} | {{ns:template}}
+
     {{#switch: {{SUBJECTSPACE}}  
    | [[Image:Template-info.svg|50px]] Template documentation
+
    | {{ns:Template}} = [[Image:Template-info.svg|50px|alt=]] Template documentation
     | Documentation
+
     | {{ns:File}} = Summary
 +
    | #default = Documentation
 
     }}
 
     }}
 
   | #default =  
 
   | #default =  
Line 34: Line 41:
 
}}<!--
 
}}<!--
 
   Load the /doc content:
 
   Load the /doc content:
-->{{#if: {{{content|}}}
+
  Note: The line breaks between this comment and the if-case
 +
  and between the if-case and the following div are necessary so
 +
  "=== Headings ===" at the start and end of docs are interpreted.
 +
-->
 +
{{#if: {{{content|}}}
 
| {{{content|}}}
 
| {{{content|}}}
 
| {{#if: {{{doc exist|yes}}}
 
| {{#if: {{{doc exist|yes}}}
Line 40: Line 51:
 
   }}
 
   }}
 
}}
 
}}
<div style="clear: both;"></div>
+
<div style="clear: both;"></div><!--So right or left floating items don't stick out of the doc box.-->
 
</div><!--End of green doc box--><!--
 
</div><!--End of green doc box--><!--
   Small box below for the doc meta-data.
+
   Link box below for the doc meta-data:
 
-->{{#if:  
 
-->{{#if:  
   <!--Check if we need the small box-->
+
   <!--Check if we should show the link box-->
   {{{doc exist|yes}}}{{
+
   {{#ifeq: {{{link box|}}} | off
  #switch: {{SUBJECTSPACE}}
+
  |
  | {{ns:User}}
+
  | {{{doc exist|yes}}}{{
  | {{ns:Template}} = yes
+
    #switch: {{SUBJECTSPACE}}
 +
    | {{ns:User}}
 +
    | {{ns:Template}} = yes
 +
    }}
 
   }}
 
   }}
  
 
| {{fmbox
 
| {{fmbox
 +
  | id = documentation-meta-data
 
   | image = none
 
   | image = none
 
   | style = background-color: #ecfcf4;
 
   | style = background-color: #ecfcf4;
 +
  | textstyle = font-style: italic;
 
   | text =  
 
   | text =  
     ''{{#if: {{{doc exist|yes}}}
+
     {{#if: {{{link box|}}}
    | <!--/doc exists, link to it-->
+
    | {{{link box}}}  <!--Use custom link box content-->
      The above [[Wikipedia:Template documentation|documentation]] is [[Wikipedia:Transclusion|transcluded]] from [[{{{docpage|{{FULLPAGENAME}}/doc}}}]]. <small style="font-style: normal">([{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=edit}} edit] &#124; [{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=history}} history])</small> <br>
+
    | {{#if: {{{doc exist|yes}}}
    }}<!--  
+
      | <!--/doc exists, link to it-->
      Add links to /sandbox and /testcases when appropriate  
+
        The above [[Wikipedia:Template documentation|documentation]] is [[Wikipedia:Transclusion|transcluded]] from [[{{{docpage|{{FULLPAGENAME}}/doc}}}]]. <small style="font-style: normal">([{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=edit}} edit] &#124; [{{fullurl:{{{docpage|{{FULLPAGENAME}}/doc}}}|action=history}} history])</small> <br />
-->{{#switch: {{SUBJECTSPACE}}
+
      }}<!--  
    | {{ns:User}}
+
        Add links to /sandbox and /testcases when appropriate:
    | {{ns:Template}} =  
+
  -->{{#switch: {{SUBJECTSPACE}}
      Editors can experiment in this template's {{
+
      | {{ns:User}}
      #ifexist: {{{sandbox| {{FULLPAGENAME}}/sandbox }}}
+
      | {{ns:Template}} =  
      | [[{{{sandbox| {{FULLPAGENAME}}/sandbox }}}|sandbox]] <small style="font-style: normal">([{{fullurl: {{{sandbox| {{FULLPAGENAME}}/sandbox }}} | action=edit }} edit])</small>  
+
        Editors can experiment in this template's {{
      | sandbox <small style="font-style: normal">([{{fullurl: {{{sandbox| {{FULLPAGENAME}}/sandbox }}} | action=edit&preload=Template:Documentation/preload-sandbox }} create])</small>  
+
        #ifexist: {{{sandbox| {{FULLPAGENAME}}/sandbox }}}
      }} and {{
+
        | [[{{{sandbox| {{FULLPAGENAME}}/sandbox }}}|sandbox]] <small style="font-style: normal">([{{fullurl: {{{sandbox| {{FULLPAGENAME}}/sandbox }}} | action=edit }} edit] <nowiki>|</nowiki> [{{fullurl:Special:ComparePages | page1={{urlencode:{{{template page|{{FULLPAGENAME}}}}}}}&page2={{urlencode:{{{sandbox|{{FULLPAGENAME}}/sandbox}}}}}}} diff])</small>  
      #ifexist: {{{testcases| {{FULLPAGENAME}}/testcases }}}
+
        | sandbox <small style="font-style: normal">([{{fullurl: {{{sandbox| {{FULLPAGENAME}}/sandbox }}} | action=edit&preload=Template:Documentation/preload-sandbox }} create] <nowiki>|</nowiki> [{{fullurl: {{{sandbox| {{FULLPAGENAME}}/sandbox }}} | action=edit&preload={{urlencode:{{{template page|{{FULLPAGENAME}}}}}}}&summary={{urlencode:Create sandbox version of [[{{{template page|{{FULLPAGENAME}}}}}]]}} }} mirror])</small>  
      | [[{{{testcases| {{FULLPAGENAME}}/testcases }}}|testcases]] <small style="font-style: normal">([{{fullurl: {{{testcases| {{FULLPAGENAME}}/testcases }}} | action=edit }} edit])</small>
+
        }} and {{
      | testcases <small style="font-style: normal">([{{fullurl: {{{testcases| {{FULLPAGENAME}}/testcases }}} | action=edit&preload=Template:Documentation/preload-testcases }} create])</small>
+
        #ifexist: {{{testcases| {{FULLPAGENAME}}/testcases }}}
       }} pages.
+
        | [[{{{testcases| {{FULLPAGENAME}}/testcases }}}|testcases]] <small style="font-style: normal">([{{fullurl: {{{testcases| {{FULLPAGENAME}}/testcases }}} | action=edit }} edit])</small>
     }}''
+
        | testcases <small style="font-style: normal">([{{fullurl: {{{testcases| {{FULLPAGENAME}}/testcases }}} | action=edit&preload=Template:Documentation/preload-testcases }} create])</small>
 +
        }} pages. <br />
 +
      }}<!--
 +
        Show the cats and interwiki text, but not
 +
        if "content" fed or "docname fed" since then it is
 +
        unclear where to add the cats and interwikis.
 +
  -->{{#if: {{{content|}}} {{{docname fed|}}}
 +
      |
 +
      | Please add categories and interwikis to the [[{{{docpage|{{FULLPAGENAME}}/doc}}}|/doc]] subpage.
 +
      }}<!--
 +
        Show the "Subpages" link:
 +
  -->{{#switch: {{SUBJECTSPACE}}
 +
       | {{ns:File}} =  <!--Don't show it-->
 +
      | {{ns:Template}} = &#32;[[Special:PrefixIndex/{{{template page|{{FULLPAGENAME}}}}}/|Subpages of this template]].
 +
      | #default = &#32;[[Special:PrefixIndex/{{{template page|{{FULLPAGENAME}}}}}/|Subpages of this page]].
 +
      }}
 +
    }}{{#ifexist:{{FULLPAGENAME}}/Print
 +
    |<br />A [[Help:Books/for experts#Improving the book layout|print version]] of this template exists at [[/Print]]. If you make a change to this template, please update the print version as well.[[Category:Templates with print versions]]
 +
     }}
 +
  }}
 +
}}<!--End link box--><!--
 +
 
 +
  Detect and report strange usage:
 +
-->{{#if:
 +
 
 +
  <!--Check if {{documentation}} is transcluded
 +
      on a /doc or /testcases page-->
 +
  {{#switch: {{SUBPAGENAME}}
 +
  | doc
 +
  | testcases = strange
 
   }}
 
   }}
 +
  <!--More checks can be added here, just return anything
 +
      to make the surrounding if-case trigger-->
 +
 +
| <includeonly>[[Category:Wikipedia pages with strange ((documentation)) usage|{{main other|Main:}}{{FULLPAGENAME}}]]<!-- Sort on namespace --></includeonly>
 +
 
}}<noinclude>
 
}}<noinclude>
  
<!-- {{pp-template}} -->
 
 
<!-- Add categories and interwikis to the /doc subpage, not here! -->
 
<!-- Add categories and interwikis to the /doc subpage, not here! -->
 
</noinclude>
 
</noinclude>

Latest revision as of 10:29, 31 March 2013

[view] [edit] [history] [purge] 50px Template documentation

This is the {{documentation/core}} sub-template.

Do not use this template directly, use {{documentation}} instead.

Template:Tlf calls {{documentation/core2}} which in turn calls this template. This template holds most of the code for Template:Tlf, while Template:Tlf and Template:Tlf do parameter preprocessing. Thus simplifying the code.

Technical details

This sub-template currently expects these parameters:

{{documentation/core
| heading = {{{heading|¬}}}   <!--Note that the "¬" is necessary 
     so we can detect the difference between empty and undefined-->
| heading-style = {{{heading-style|}}}
| content = {{{content|}}}    <!--Text instead of a /doc page-->
| link box = {{{link box|}}}  <!--So "link box=off" works-->

| docpage =     <!--Full pagename of the doc page-->
| doc exist =   <!--"yes" if the doc page exists, empty string if not-->
| docname fed = <!--"yes" if a docname was manually fed-->

| sandbox =     <!--Full pagename of the /sandbox-->
| testcases =   <!--Full pagename of the /testcases-->

| template page =   <!--Full pagename where the {{documentation}}
    template is placed, but without ending /sandbox or /testcases.
    Note: Unfortunately might not be the "correct" namespace if 
    the template is in subject space and the {{documentation}} 
    template is in talk space or the other way around.-->
}}

For more documentation see {{documentation}}. pt:Predefinição:Documentation/core