Template:Function2: Difference between revisions

From Kolmafia
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
<includeonly>{{TOCright}}{{DISPLAYTITLE:{{{name}}}()}}{{#if: {{{needscode|}}}|{{CodeRequest}}}}{{#if: {{{improvecode|}}}|{{CodeRequest|better=yes}}}}
{{#if: {{{name|}}}||{{error|Parameter 'name' is missing for User:Philmasterplus/TemplateSandbox2}}}}
==Function Syntax==
{{#if: {{{function1.return_type|}}}
  |<p>{{FunctionDeclaration|name={{{name}}}|func=1|desc=yes}}</p>}}
{{#if: {{{function2.return_type|}}}
  |<p>{{FunctionDeclaration|name={{{name}}}|func=2|desc=yes}}</p>}}
{{#if: {{{function3.return_type|}}}
  |<p>{{FunctionDeclaration|name={{{name}}}|func=3|desc=yes}}</p>}}
{{#if: {{{function4.return_type|}}}
  |<p>{{FunctionDeclaration|name={{{name}}}|func=4|desc=yes}}</p>}}
{{#if: {{{function5.return_type|}}}
  |<p>{{FunctionDeclaration|name={{{name}}}|func=5|desc=yes}}</p>}}
{{{description}}}
{{#if: {{{code1|}}}|{{{code1}}}}}{{#if: {{{code2|}}}|{{{code2}}}}}{{#if: {{{code3|}}}|{{{code3}}}}}{{#if: {{{code4|}}}|{{{code4}}}}}{{#if: {{{code5|}}}|{{{code5}}}}}
{{#if: {{{cli_equiv|}}}|
==CLI Equivalent==
{{{cli_equiv}}}}}
{{#if: {{{see_also|}}}|{{{see_also|}}}}}
{{#if: {{{more_info|}}}|
==More Information==
{{{more_info}}}}}
{{#if: {{{special|}}}|
==Special==
{{{special}}}}}
[[Category:Ash Functions]]
</includeonly><noinclude>
<templatedata>
{
  "description": "Replacement for Template:FunctionPage. Must be used with data-driven function pages.",
  "params": {
    "name": {
      "label": "ASH function name",
      "description": "Name of the ASH function. This should match the function page name.",
      "required": true,
      "type": "line",
      "example": "visit_url"
    },
    "description": {
      "label": "Description",
      "description": "Long description that covers all functions. Note: Use <p></p> to separate paragraphs, because double line breaks don't work",
      "required": true,
      "type": "content"
    },
    "function1.description": {
      "label": "Function 1, description",
      "description": "Short description for the overloaded function 1 (and so on for functions 2 through 3)",
      "required": true,
      "type": "content",
      "example": "Visits a web page and returns its HTML source."
    },
    "function1.return_type": {
      "label": "Function 1, return type",
      "description": "Return type of the overloaded function 1.",
      "required": true,
      "type": "line",
      "example": "buffer"
    },
    "function1.param1": {
      "label": "Function 1, parameter 1",
      "description": "Name of the parameter 1 of the overloaded function 1 (and so on for parameters 2 through 5).",
      "type": "line",
      "example": "url"
    },
    "function1.param1.description": {
      "label": "Function 1, parameter 1 description",
      "description": "Description of parameter 1 of the overloaded function 1.",
      "type": "content",
      "example": "URL of the page to visit. If a relative URL is provided, it is treated as an in-game page."
    },
    "function1.param1.optional": {
      "label": "Function 1, parameter 1 is optional?",
      "description": "\"yes\" = optional. Any non-empty string will do, but please use \"yes\" to make standardization easier.",
      "type": "line",
      "example": "yes"
    },
    "function1.param1.default": {
      "label": "Function 1, parameter 1 default value",
      "description": "If this is specified, function1.param1.optional must be \"yes\"",
      "type": "line",
      "example": "\"\""
    },
    "code1": {
      "label": "Example code 1",
      "description": "Example code showing how to use this function. Use [[Template:CodeSample]] to create sample code. (Same for code2 through code5)",
      "type": "content"
    },
    "cli_equiv": {
      "label": "Equivalent gCLI command",
      "description": "If provided, must be a gCLI command that provides functionality equivalent to this function.",
      "type": "line"
    },
    "see_also": {
      "label": "See Also section",
      "description": "If provided, this is used as the content for the See Also section. Use [[Template:SeeAlso]] to build a See Also section.",
      "type": "content"
    },
    "more_info": {
      "label": "More Information section",
      "description": "If provided, this is used as the content for the More Information section",
      "type": "content"
    },
    "special": {
      "label": "Special section",
      "description": "If provided, this is used as the content for the Special section",
      "type": "content"
    },
    "needscode": {
      "label": "Needs code samples?",
      "description": "If set to \"yes\", adds a \"needs code samples\" banner and categorizes the page under [[Category:Needs Code Sample]].",
      "type": "line"
    },
    "improvecode": {
      "label": "Needs improved code samples?",
      "description": "If set to \"yes\", adds a \"needs better code samples\" banner and categorizes the page under [[Category:Needs Code Sample]].",
      "type": "line"
    }
  }
}
</templatedata>
==Notes==
This template is not meant to be used directly, but rather through the use of <pre>{{{format|User:Philmasterplus/TemplateSandbox2}}}</pre> in a data-driven function page.
Use this as the starting point for a data-driven function page:
<pre>
&lt;onlyinclude&gt;&#123;&#123;&#123;&#123;&#123;format|Function2}}}
&lt;onlyinclude&gt;&#123;&#123;&#123;&#123;&#123;format|Function2}}}
|name=
|name=
Line 267: Line 139:
|code1=&#123;&#123;CodeSample
|code1=&#123;&#123;CodeSample
   |title=Code Samples
   |title=Code Samples
   |description=Visits your private character sheet.
   |description=
   |code=
   |code=
   |moreinfo=
   |moreinfo=
}}
}}
|code2=&#123;&#123;CodeSample
|code2=&#123;&#123;CodeSample
   |description=Visits your private character sheet.
   |description=
   |code=
   |code=
   |moreinfo=
   |moreinfo=
}}
}}
|code3=&#123;&#123;CodeSample
|code3=&#123;&#123;CodeSample
   |description=Visits your private character sheet.
   |description=
   |code=
   |code=
   |moreinfo=
   |moreinfo=
}}
}}
|code4=&#123;&#123;CodeSample
|code4=&#123;&#123;CodeSample
   |description=Visits your private character sheet.
   |description=
   |code=
   |code=
   |moreinfo=
   |moreinfo=
}}
}}
|code5=&#123;&#123;CodeSample
|code5=&#123;&#123;CodeSample
   |description=Visits your private character sheet.
   |description=
   |code=
   |code=
   |moreinfo=
   |moreinfo=
Line 299: Line 171:
&lt;!-- Add an appropriate function subcategory here, e.g. [[Category:Adventuring]],
&lt;!-- Add an appropriate function subcategory here, e.g. [[Category:Adventuring]],
     then delete this comment --&gt;
     then delete this comment --&gt;
</pre>
Data-driven function pages are incompatible with old-style function pages (i.e. ones that use [[Template:FunctionPage]]).
</noinclude>

Revision as of 11:53, 20 December 2020

<onlyinclude>{{{{{format|Function2}}} |name= |function1.return_type= |function1.description= |function1.param1= |function1.param1.type= |function1.param2.optional= |function1.param2.default= |function1.param1.description= |function1.param2= |function1.param2.type= |function1.param2.optional= |function1.param2.default= |function1.param2.description= |function1.param3= |function1.param3.type= |function1.param3.optional= |function1.param3.default= |function1.param3.description= |function1.param4= |function1.param4.type= |function1.param4.optional= |function1.param4.default= |function1.param4.description= |function1.param5= |function1.param5.type= |function1.param5.optional= |function1.param5.default= |function1.param5.description= |function2.return_type= |function2.description= |function2.param1= |function2.param1.type= |function2.param2.optional= |function2.param2.default= |function2.param1.description= |function2.param2= |function2.param2.type= |function2.param2.optional= |function2.param2.default= |function2.param2.description= |function2.param3= |function2.param3.type= |function2.param3.optional= |function2.param3.default= |function2.param3.description= |function2.param4= |function2.param4.type= |function2.param4.optional= |function2.param4.default= |function2.param4.description= |function2.param5= |function2.param5.type= |function2.param5.optional= |function2.param5.default= |function2.param5.description= |function3.return_type= |function3.description= |function3.param1= |function3.param1.type= |function3.param2.optional= |function3.param2.default= |function3.param1.description= |function3.param2= |function3.param2.type= |function3.param2.optional= |function3.param2.default= |function3.param2.description= |function3.param3= |function3.param3.type= |function3.param3.optional= |function3.param3.default= |function3.param3.description= |function3.param4= |function3.param4.type= |function3.param4.optional= |function3.param4.default= |function3.param4.description= |function3.param5= |function3.param5.type= |function3.param5.optional= |function3.param5.default= |function3.param5.description= |function4.return_type= |function4.description= |function4.param1= |function4.param1.type= |function4.param2.optional= |function4.param2.default= |function4.param1.description= |function4.param2= |function4.param2.type= |function4.param2.optional= |function4.param2.default= |function4.param2.description= |function4.param3= |function4.param3.type= |function4.param3.optional= |function4.param3.default= |function4.param3.description= |function4.param4= |function4.param4.type= |function4.param4.optional= |function4.param4.default= |function4.param4.description= |function4.param5= |function4.param5.type= |function4.param5.optional= |function4.param5.default= |function4.param5.description= |function5.return_type= |function5.description= |function5.param1= |function5.param1.type= |function5.param2.optional= |function5.param2.default= |function5.param1.description= |function5.param2= |function5.param2.type= |function5.param2.optional= |function5.param2.default= |function5.param2.description= |function5.param3= |function5.param3.type= |function5.param3.optional= |function5.param3.default= |function5.param3.description= |function5.param4= |function5.param4.type= |function5.param4.optional= |function5.param4.default= |function5.param4.description= |function5.param5= |function5.param5.type= |function5.param5.optional= |function5.param5.default= |function5.param5.description= |description= |code1={{CodeSample

 |title=Code Samples
 |description=
 |code=
 |moreinfo=

}} |code2={{CodeSample

 |description=
 |code=
 |moreinfo=

}} |code3={{CodeSample

 |description=
 |code=
 |moreinfo=

}} |code4={{CodeSample

 |description=
 |code=
 |moreinfo=

}} |code5={{CodeSample

 |description=
 |code=
 |moreinfo=

}} |see_also={{SeeAlso|}} |cli_equiv= |more_info= |special= |{{{1|}}} }}</onlyinclude> <!-- Add an appropriate function subcategory here, e.g. ,

    then delete this comment -->