Template:Navbar/doc

From Mirrorplay: Fae
Revision as of 09:25, 16 June 2024 by Storyteller (talk | contribs) (1 revision imported: Supplementary Module/Template UL)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

{{#ifeq:doc |doc

    | 

{{#ifeq:show |show

|

        }}{{#if: |
         |   {{#ifexist:Template:Navbar
                  | [[Category:{{#switch:Template |Template=Template |Module=Module |User=User |#default=Wikipedia}} documentation pages]]
                  |
                 }}
        }}
    | 
   }}

{{#ifeq:Navbar|Navbar|

{{#if:{{#ifeq:doc|sandbox|1}}{{#ifeq:doc|doc|1}}||{{#switch:Lua error: First parameter must be one of edit, move, create, upload, undelete, autoreview.|sysop|templateeditor|interfaceadmin=|#default=}}}}}}

{{#ifeq:Navbar|VTE|Template:Tsh}}

{{Navbar}} provides a small "view · talk · edit" navigation bar. It is primarily used for content-heavy templates and other transcluded content blocks, so that the content inside the template or block is more easily editable in situ where it was found, without having track it down through examining transclusion code. {{Navbar}}'s extremely high use rate and consequent protection level are because it is integrated as a feature into numerous navigation box and infobox templates used in millions of articles. It is also a regular feature of many internal-use templates and tables of the Wikipedia, Help, and Template namespaces.

Usage

General

When one of the following examples is placed inside a given template (or block of content used for selective transclusion), it adds basic navbar navigational functionality:

<syntaxhighlight lang="wikitext" inline>Lua error in Module:Navbar at line 58: Invalid title {{subst:PAGENAME}}.</syntaxhighlight>
<syntaxhighlight lang="wikitext" inline>Lua error in Module:Navbar at line 58: Invalid title {{subst:PAGENAME}}.</syntaxhighlight>
<syntaxhighlight lang="wikitext" inline>Lua error in Module:Navbar at line 58: Invalid title {{subst:PAGENAME}}.</syntaxhighlight>

The <syntaxhighlight lang="wikitext" inline>{{subst:PAGENAME}}</syntaxhighlight> will be substituted with the page name of the real location of the content when parsed by the servers. For example, <syntaxhighlight lang="wikitext" inline>

</syntaxhighlight> gives:

If the page is moved or renamed the substituted text will need to be updated accordingly. Alternatively, you can use {{safesubst:#if:params |{{#invoke:params|{{safesubst:#if:self |{{safesubst:#if:self|self}} |function }}}} |Error: Missing module name. }} instead of <syntaxhighlight lang="wikitext" inline>{{subst:PAGENAME}}</syntaxhighlight> to keep track of the current location of the transcluded page:

<syntaxhighlight lang="wikitext" inline></syntaxhighlight>

When used in content that is selectively transcluded but which is also used as-is in its original location, this template should be wrapped in {{#switch:p

|c|close  = 
|s|single
|o|open
|p|pair   = <{{#switch:includeonly
|categorytree=categorytree
|charinsert=charinsert
|ce=ce
|chem=chem
|gallery=gallery
|graph=graph
|hiero=hiero
|includeonly=includeonly
|indicator=indicator
|imagemap=imagemap
|inputbox=inputbox
|mapframe=mapframe
|maplink=maplink
|math=math
|math chem=math chem
|noinclude=noinclude
|nowiki=nowiki
|onlyinclude=onlyinclude
|poem=poem
|pre=pre
|ref=ref
|references=references
|score=score
|section=section
|source=source
|syntaxhighlight=syntaxhighlight
|templatedata=templatedata
|templatestyles=templatestyles
|timeline=timeline
|#default=includeonly

}}{{#if:| {{{params}}}}} }}{{#switch:p

|c|close  = 
|s|single =   />
|o|open   = >
|p|pair   = >...

}}{{#switch:p

|s|single
|o|open   = 
|c|close
|p|pair   = </includeonly>

}} markup, so that it only appears when transcluded.

Font size and weight

Font-size is 88% when used in a topical navbar template or in plain text, and 100% when nested in a navbox or infobox (because those templates' text size is already reduced; the "100%" is relative to the surrounding template's own content, not that of the entire page). The |{{SAFESUBST:#if:fontstyle|fontstyle=}} parameter can be used to adjust font size as needed (e.g. to reduce font size even more when the template is used inside a block element with a large font size). Do not abuse this to make excessively small text (i.e. less than 85% of the normal page text), since that causes accessibility problems for many readers.

In a topical navbar, the weight is "normal"; when nested in a navbox or infobox, it inherits the style of the surrounding content. The middot bullets are bold for better visibility.

Block level element

The template generates block-level markup with {{#switch:pair

 |c|close =
 |e|empty|s|single|v|void
 |o|open
 |p|pair = <{{#if:|div|div}}{{#if:| {{{attribs}}}}}
}}{{#switch:pair
 |c|close = 
 |e|empty|s|single|v|void =  />
 |o|open = >
 |p|pair = {{#ifeq:div|!--||>}}...
}}{{#switch:pair
 |e|empty|s|single|v|void
 |o|open =
 |c|close
 |p|pair = {{#ifeq:div|!--|-->|</div>}}
}} tags, and therefore, any surrounding markup cannot include {{#switch:pair
 |c|close =
 |e|empty|s|single|v|void
 |o|open
 |p|pair = <{{#if:|span|span}}{{#if:| {{{attribs}}}}}
}}{{#switch:pair
 |c|close = 
 |e|empty|s|single|v|void =  />
 |o|open = >
 |p|pair = {{#ifeq:span|!--||>}}...
}}{{#switch:pair
 |e|empty|s|single|v|void
 |o|open =
 |c|close
 |p|pair = {{#ifeq:span|!--|-->|</span>}}
}} tags, which would cause a div-span-flip lint error.

Examples

Required parameters

  • {{navbar|Template Name}} – the template name is required.

Optional parameters

Options Parameters Produces... "Shortcut" template
Basic {{navbar|Template Name}}
Different text {{navbar|Template Name|text=This template:}}
Without "This box:" text {{navbar|Template Name|plain=y}} {{view}}
Short version {{navbar|Template Name|mini=y}} {{v}}
With brackets {{navbar|Template Name|brackets=y}}
With font styling examples (span) {{navbar|Template Name|fontstyle=color: green; font-style: italic;}}
With whole-template styling examples (div) {{navbar|Template Name|style=float:right; background: Beige; padding: 5px; border: 1px solid;}}
History, move, and watchlist links {{navbar|template=Template Name|e|t|h|m|w}}

Note that to show the history, move, and watchlist links, |{{SAFESUBST:#if:template|template=}} needs to be set to the template value specifically. Individual values can be left out of this list, e.g. {{navbar|template=Template Name|h|m|w}} will only show the view, history, move, and watchlist links.

Shortcut templates

The mini=y and plain=y parameters can be avoided by using the {{v}} or {{view}} templates, respectively, instead.

{{view}} and {{v}} also support changing the shown links, for example only view and edit, or only view and talk:

Code Result
template=view/doc}}</syntaxhighlight>
template=view/doc|talk}}</syntaxhighlight>
template=view/doc|talk|edit}}</syntaxhighlight>
template=v/doc}}</syntaxhighlight>
template=v/doc|t}}</syntaxhighlight>
template=v/doc|t|e}}</syntaxhighlight>

Notes

Navbar is contained within a {{#switch:pair

 |c|close =
 |e|empty|s|single|v|void
 |o|open
 |p|pair = <{{#if:|div|div}}{{#if:| {{{attribs}}}}}
}}{{#switch:pair
 |c|close = 
 |e|empty|s|single|v|void =  />
 |o|open = >
 |p|pair = {{#ifeq:div|!--||>}}...
}}{{#switch:pair
 |e|empty|s|single|v|void
 |o|open =
 |c|close
 |p|pair = {{#ifeq:div|!--|-->|</div>}}
}} in order to accommodate a horizontal unnumbered list. This means it cannot be placed inside a {{#switch:pair
 |c|close =
 |e|empty|s|single|v|void
 |o|open
 |p|pair = <{{#if:|span|span}}{{#if:| {{{attribs}}}}}
}}{{#switch:pair
 |c|close = 
 |e|empty|s|single|v|void =  />
 |o|open = >
 |p|pair = {{#ifeq:span|!--||>}}...
}}{{#switch:pair
 |e|empty|s|single|v|void
 |o|open =
 |c|close
 |p|pair = {{#ifeq:span|!--|-->|</span>}}
}} or other inline element, because the HTML Tidy extension will 'fix' situations where it finds block elements inside inline elements.

Prepackaged

{{Navbar-header}}
Positions on the right edge of the line, often used in non-collapsible navbox heading.
{{Navbar-collapsible}}
For use in conjunction with collapsible tables, floats opposite of the [hide]/[show] feature.

See also

[] Compare different edit templates:
  • {{Ed}} — plain-style edit link surrounded by <small> tags, specifically for templates only
  • {{Ed right}} — plain-style edit link surrounded by <small> tags and aligned to right of page, specifically for templates only
  • {{Edit}} — plain-style edit link, applicable to all Wikipedia namespaces
  • {{Edit section}} — edit link surrounded by <div> tags by default which can specify which section to edit on a page, applicable to all Wikipedia namespaces
  • {{Vedit}} — plain-style edit link which edit with the Wikipedia:VisualEditor, applicable to all Wikipedia namespaces

Templates with view, talk and edit links:

  • {{Navbar}} — navigation bar with configurable caption and view·talk·edit links, specifically for templates only
  • {{View}} — navbar-style view·talk·edit links, specifically for templates only
  • {{VTE}} & {{V}} — navbar-style V·T·E links (i.e. view·talk·edit links in short forms), specifically for templates only

Other internal link templates, including:

Navigation templates comparison
Template Collapsible Header color Image Groups Style (body)
parameter/s
{{Navbox}} collapsible Left/right of body Yes Yes
{{Navbox with collapsible groups}} collapsible Left/right of body and/or in each list Yes Yes
{{Navbox with columns}} collapsible Left/right of columns No Yes
Collapsible attributes
Type CSS classes JavaScript Collapses when Custom
initial state
Nesting
Collapsible tables mw-collapsible Defined in Common.js 2 or more autocollapse on page Yes Yes

TemplateData

{{#if:|{{#switch:
|=[https://bambots.brucemyers.com/TemplateParam.php?wiki=enwiki&template=%7B%7B%23if%3ANavbar%7CNavbar%7CNavbar%7D%7D {{#ifeq:{{safesubst:#switch: {{{lc}}}
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|no|S|s}}ee a monthly parameter usage report] for {{#if:Navbar|Template:Navbar|this template}} in articles{{#ifeq:{{safesubst:#switch: y

|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}}.

|None|none=[https://bambots.brucemyers.com/TemplateParam.php?wiki=enwiki&template=%7B%7B%23if%3ANavbar%7CNavbar%7CNavbar%7D%7D {{#ifeq:{{safesubst:#switch: {{{lc}}}
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|no|P|p}}arameter usage report]{{#ifeq:{{safesubst:#switch: y

|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}}

|for|For=[https://bambots.brucemyers.com/TemplateParam.php?wiki=enwiki&template=%7B%7B%23if%3ANavbar%7CNavbar%7CNavbar%7D%7D {{#ifeq:{{safesubst:#switch: {{{lc}}}
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|no|P|p}}arameter usage report] for {{#if:Navbar|Template:Navbar|Template:Navbar}}{{#ifeq:{{safesubst:#switch: y

|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}}.

|#default=[1]{{#ifeq:{{safesubst:#switch: y
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}} }}|This is the {{#if:|TemplateData|TemplateData}} for this template used by TemplateWizard, VisualEditor and other tools. {{#switch:

|=[https://bambots.brucemyers.com/TemplateParam.php?wiki=enwiki&template=%7B%7B%23if%3ANavbar%7CNavbar%7CNavbar%7D%7D {{#ifeq:{{safesubst:#switch: {{{lc}}}
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|no|S|s}}ee a monthly parameter usage report] for {{#if:Navbar|Template:Navbar|this template}} in articles{{#ifeq:{{safesubst:#switch: y

|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}}.

|None|none=[https://bambots.brucemyers.com/TemplateParam.php?wiki=enwiki&template=%7B%7B%23if%3ANavbar%7CNavbar%7CNavbar%7D%7D {{#ifeq:{{safesubst:#switch: {{{lc}}}
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|no|P|p}}arameter usage report]{{#ifeq:{{safesubst:#switch: y

|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}}

|for|For=[https://bambots.brucemyers.com/TemplateParam.php?wiki=enwiki&template=%7B%7B%23if%3ANavbar%7CNavbar%7CNavbar%7D%7D {{#ifeq:{{safesubst:#switch: {{{lc}}}
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|no|P|p}}arameter usage report] for {{#if:Navbar|Template:Navbar|Template:Navbar}}{{#ifeq:{{safesubst:#switch: y

|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}}.

|#default=[2]{{#ifeq:{{safesubst:#switch: y
|no
|n
|f
|false
|off
|0        = no
|         = no
|¬        = no
|yes
|y
|t
|true
|on
|1        = yes
|#default = no

}}|yes| based on {{#if:Navbar|its|this}} TemplateData}} }}}}

TemplateData for Navbar

{{#switch:

 {{#if:
 | {{{demospace}}}    
 | {{#ifeq:Template|Template
   | template
   | other
   }}
 }}

| template = {{#if:{{#ifeq:doc|sandbox|1}}{{#ifeq:doc|doc|1}}||

}} | other | #default = }}

When placed inside a given template, it adds navbar navigational functionality

Template parameters

ParameterDescriptionTypeStatus
Template Name1

The name of the template, so links work correctly

Default
Stringrequired
Different texttext

Allows custom text to replace the default 'this box'

Default
This box
Stringoptional
Without 'This box:' textplain

Removes 'This box'

Default
0
Numberoptional
Short Versionmini

Shortens text to V T E

Default
0
Numberoptional
with bracketsbrackets

adds brackets before and after the links

Default
0
Numberoptional
Font colorfontstyle

Allows you to change the color of the font (in the format color:green)

Default
Stringoptional
To float to the sidestyle

Allows the template to float to the side (format=float:right)

Default
float:left
Stringoptional