Difference between revisions of "Template:\/doc"

From Kerbal Space Program Wiki
Jump to: navigation, search
(Import from Wikipedia (CC BY-SA license))
 
m (links)
 
Line 1: Line 1:
 
{{Documentation subpage}} __NOTOC__
 
{{Documentation subpage}} __NOTOC__
 
<!----PLEASE CATEGORIES WHERE INDICATED AT THE BOTTOM OF THIS PAGE---->
 
<!----PLEASE CATEGORIES WHERE INDICATED AT THE BOTTOM OF THIS PAGE---->
This is the "slash" template, which produces "{{thinsp}}<code>&nbsp;/</code>{{thinsp}}", i.e. a [[non-breaking space]] followed by a [[Slash (punctuation)|(forward-)slash character]]. It is most often used to indicate alternatives within a (horizontal) list of items, such as:
+
This is the "slash" template, which produces "{{thinsp}}<code>&nbsp;/</code>{{thinsp}}", i.e. a [[w:non-breaking space]] followed by a [[w:Slash (punctuation)|(forward-)slash character]]. It is most often used to indicate alternatives within a (horizontal) list of items, such as:
 
: ''{{hlist|class=nowrap |item 1 |item 2 |item 3a{{\}}3b{{\}}3c |item 4 |item 5 |(etc)}}''
 
: ''{{hlist|class=nowrap |item 1 |item 2 |item 3a{{\}}3b{{\}}3c |item 4 |item 5 |(etc)}}''
The template is named using the [[backslash]] character ("{{thinsp}}\{{thinsp}}") as [[Wikipedia:Page name#Technical restrictions and limitations<!--or [[Filename#Reserved characters and words-->|slashes cannot be used]] in page names.
+
The template is named using the [[w:backslash]] character ("{{thinsp}}\{{thinsp}}") as [[w:Page name#Technical restrictions and limitations<!--or [[w:Filename#Reserved characters and words-->|slashes cannot be used]] in page names.
  
 
== Usage ==
 
== Usage ==
  
 
To maintain good linewrapping, there should be no space between the template and whatever precedes it. There's also no need to include a space after the template, although doing so should not affect its function.
 
To maintain good linewrapping, there should be no space between the template and whatever precedes it. There's also no need to include a space after the template, although doing so should not affect its function.
: <code><nowiki>[[Salt]]{{\}}[[Black pepper|Pepper]]</nowiki></code> &nbsp;...produces...&nbsp; [[Salt]]{{\}}[[Black pepper|Pepper]]
+
: <code><nowiki>[[w:Salt]]{{\}}[[w:Black pepper|Pepper]]</nowiki></code> &nbsp;...produces...&nbsp; [[w:Salt]]{{\}}[[w:Black pepper|Pepper]]
  
If linewrapping (i.e. a [[Word wrap|line-break]]) is required, the template ensures it occurs ''after'' the slash, not before:
+
If linewrapping (i.e. a [[w:Word wrap|line-break]]) is required, the template ensures it occurs ''after'' the slash, not before:
:[[Salt]] /  
+
:[[w:Salt]] /  
:[[Black pepper|Pepper]]
+
:[[w:Black pepper|Pepper]]
  
 
For long slashed lists, each list item can be put on its own line with no spaces between each item and the template, like this:
 
For long slashed lists, each list item can be put on its own line with no spaces between each item and the template, like this:
 
  <pre><nowiki>
 
  <pre><nowiki>
  [[Salt]]{{\}}
+
  [[w:Salt]]{{\}}
  [[Black pepper|Pepper]]{{\}}
+
  [[w:Black pepper|Pepper]]{{\}}
  [[Curry]]{{\}}
+
  [[w:Curry]]{{\}}
  [[Saffron]]</nowiki></pre>
+
  [[w:Saffron]]</nowiki></pre>
  
 
(It doesn't matter if there are no or some spaces at the end of the lines, after the templates.)
 
(It doesn't matter if there are no or some spaces at the end of the lines, after the templates.)
  
 
As before, it will render one space on each side of the slashes, like this:
 
As before, it will render one space on each side of the slashes, like this:
:[[Salt]] / [[Black pepper|Pepper]] / [[Curry]] / [[Saffron]]
+
:[[w:Salt]] / [[w:Black pepper|Pepper]] / [[w:Curry]] / [[w:Saffron]]
  
 
Also, if it line breaks, then the line break will come ''after'' one of the slashes, not before, like this:
 
Also, if it line breaks, then the line break will come ''after'' one of the slashes, not before, like this:
:[[Salt]] / [[Black pepper|Pepper]] /  
+
:[[w:Salt]] / [[w:Black pepper|Pepper]] /  
:[[Curry]] / [[Saffron]]
+
:[[w:Curry]] / [[w:Saffron]]
  
 
===Incorrect usage===
 
===Incorrect usage===
 
If the template is used slightly wrong, it will, in some cases, still behave well. For instance, if there are zero or several spaces after the template, like these examples:
 
If the template is used slightly wrong, it will, in some cases, still behave well. For instance, if there are zero or several spaces after the template, like these examples:
  
  <nowiki>[[Salt]]{{\}}[[Black pepper|Pepper]]</nowiki>
+
  <nowiki>[[w:Salt]]{{\}}[[w:Black pepper|Pepper]]</nowiki>
  <nowiki>[[Salt]]{{\}}  [[Black pepper|Pepper]]</nowiki>
+
  <nowiki>[[w:Salt]]{{\}}  [[w:Black pepper|Pepper]]</nowiki>
  
 
Both of them will render exactly as before, with just one space on each side of the slash, like this:
 
Both of them will render exactly as before, with just one space on each side of the slash, like this:
:[[Salt]] / [[Black pepper|Pepper]]
+
:[[w:Salt]] / [[w:Black pepper|Pepper]]
  
 
And it will still only line break ''after'' the slash, like this:
 
And it will still only line break ''after'' the slash, like this:
:[[Salt]] /  
+
:[[w:Salt]] /  
:[[Black pepper|Pepper]]
+
:[[w:Black pepper|Pepper]]
  
 
However, putting one or more spaces before the template will cause problems, like these examples:
 
However, putting one or more spaces before the template will cause problems, like these examples:
  <nowiki>[[Salt]] {{\}}[[Black pepper|Pepper]]</nowiki>
+
  <nowiki>[[w:Salt]] {{\}}[[w:Black pepper|Pepper]]</nowiki>
  <nowiki>[[Salt]]  {{\}}[[Black pepper|Pepper]]</nowiki>
+
  <nowiki>[[w:Salt]]  {{\}}[[w:Black pepper|Pepper]]</nowiki>
  <nowiki>[[Salt]] {{\}} [[Black pepper|Pepper]]</nowiki>
+
  <nowiki>[[w:Salt]] {{\}} [[w:Black pepper|Pepper]]</nowiki>
  <nowiki>[[Salt]]  {{\}}  [[Black pepper|Pepper]]</nowiki>
+
  <nowiki>[[w:Salt]]  {{\}}  [[w:Black pepper|Pepper]]</nowiki>
  
 
Then, it will render with ''two'' spaces before the slash and one after, like this:
 
Then, it will render with ''two'' spaces before the slash and one after, like this:
:[[Salt]] &nbsp;/ [[Black pepper|Pepper]]
+
:[[w:Salt]] &nbsp;/ [[w:Black pepper|Pepper]]
  
 
Also, if it line breaks, it might break ''before'' the slash, like this:
 
Also, if it line breaks, it might break ''before'' the slash, like this:
:[[Salt]]  
+
:[[w:Salt]]  
:&nbsp;/ [[Black pepper|Pepper]]
+
:&nbsp;/ [[w:Black pepper|Pepper]]
  
 
== Technical details  ==
 
== Technical details  ==
  
The space before the slash is a [[non-breaking space]]. That means it will not line break and will not collapse together with normal spaces that come before the template.
+
The space before the slash is a [[w:non-breaking space]]. That means it will not line break and will not collapse together with normal spaces that come before the template.
  
 
The space after the slash is a normal space. That means it wraps (allows line breaks) and it will collapse together with normal spaces that come after the template to form one single space.
 
The space after the slash is a normal space. That means it wraps (allows line breaks) and it will collapse together with normal spaces that come after the template to form one single space.
  
Under some circumstances, slashed link lists misbehave. They might get unexpected line wraps or they might expand outside the box they are enclosed in. The how-to guide: [[Wikipedia:Line-break handling]], explains when that happens and how to fix it.
+
Under some circumstances, slashed link lists misbehave. They might get unexpected line wraps or they might expand outside the box they are enclosed in. The how-to guide: [[w:Line-break handling]], explains when that happens and how to fix it.
  
 
== See also ==
 
== See also ==
 
* Other templates using non-breaking spaces to format inline presentation:
 
* Other templates using non-breaking spaces to format inline presentation:
*: {{tl2|·}} or {{tl2|dot}}, the "bold [[Interpunct|middot]]" template (producing "&nbsp;'''&middot;'''") formerly used to create horizontal lists.
+
*: {{tl2|·}} or {{tl2|dot}}, the "bold [[w:Interpunct|middot]]" template (producing "&nbsp;'''&middot;'''") formerly used to create horizontal lists.
 
*: {{tl2|•}} or {{tl2|bullet}}, used to produce the Unicode-style bullet character.
 
*: {{tl2|•}} or {{tl2|bullet}}, used to produce the Unicode-style bullet character.
 
*: {{tl2|spaced ndash}}, primarily used in the same way as this "slash" template to produce linewrap-friendly textual asides and/or emphasized phrases.
 
*: {{tl2|spaced ndash}}, primarily used in the same way as this "slash" template to produce linewrap-friendly textual asides and/or emphasized phrases.
* [[WP:HLIST]], which addresses h(orizontal) lists and the "hlist" [[HTML attribute|class]] in Wikipedia.
 
 
* {{tl|flatlist}}, a template that can be used to create horizontal ("flat") lists.
 
* {{tl|flatlist}}, a template that can be used to create horizontal ("flat") lists.
  
Line 76: Line 75:
 
*: {{tl|nowraplinks}} to prevent wraps inside links and only allows wraps between the links and in normal text, very useful for link lists and easy to use.
 
*: {{tl|nowraplinks}} to prevent wraps inside links and only allows wraps between the links and in normal text, very useful for link lists and easy to use.
 
*: {{tl|nowrap begin}}...{{tl|nowrap end}} to prevent wraps in both text and links. For the really tricky wrapping cases when you need full control, for instance in very complex link lists.
 
*: {{tl|nowrap begin}}...{{tl|nowrap end}} to prevent wraps in both text and links. For the really tricky wrapping cases when you need full control, for instance in very complex link lists.
* For further information, see [[Wikipedia:Line-break handling]], the how-to guide detailing how to handle line wrapping at Wikipedia.
+
* For further information, see [[w:Line-break handling]], the how-to guide detailing how to handle line wrapping at Wikipedia.
  
 
====Dot and dash size reference list====
 
====Dot and dash size reference list====

Latest revision as of 09:57, 7 March 2020

This is the "slash" template, which produces " /", i.e. a w:non-breaking space followed by a (forward-)slash character. It is most often used to indicate alternatives within a (horizontal) list of items, such as:

  • item 1
  • item 2
  • item 3a / 3b / 3c
  • item 4
  • item 5
  • (etc)

The template is named using the w:backslash character ("\") as slashes cannot be used in page names.

Usage

To maintain good linewrapping, there should be no space between the template and whatever precedes it. There's also no need to include a space after the template, although doing so should not affect its function.

[[w:Salt]]{{\}}[[w:Black pepper|Pepper]]  ...produces...  w:Salt / Pepper

If linewrapping (i.e. a line-break) is required, the template ensures it occurs after the slash, not before:

w:Salt /
Pepper

For long slashed lists, each list item can be put on its own line with no spaces between each item and the template, like this:

 [[w:Salt]]{{\}}
 [[w:Black pepper|Pepper]]{{\}}
 [[w:Curry]]{{\}}
 [[w:Saffron]]

(It doesn't matter if there are no or some spaces at the end of the lines, after the templates.)

As before, it will render one space on each side of the slashes, like this:

w:Salt / Pepper / w:Curry / w:Saffron

Also, if it line breaks, then the line break will come after one of the slashes, not before, like this:

w:Salt / Pepper /
w:Curry / w:Saffron

Incorrect usage

If the template is used slightly wrong, it will, in some cases, still behave well. For instance, if there are zero or several spaces after the template, like these examples:

[[w:Salt]]{{\}}[[w:Black pepper|Pepper]]
[[w:Salt]]{{\}}   [[w:Black pepper|Pepper]]

Both of them will render exactly as before, with just one space on each side of the slash, like this:

w:Salt / Pepper

And it will still only line break after the slash, like this:

w:Salt /
Pepper

However, putting one or more spaces before the template will cause problems, like these examples:

[[w:Salt]] {{\}}[[w:Black pepper|Pepper]]
[[w:Salt]]   {{\}}[[w:Black pepper|Pepper]]
[[w:Salt]] {{\}} [[w:Black pepper|Pepper]]
[[w:Salt]]   {{\}}   [[w:Black pepper|Pepper]]

Then, it will render with two spaces before the slash and one after, like this:

w:Salt  / Pepper

Also, if it line breaks, it might break before the slash, like this:

w:Salt
 / Pepper

Technical details

The space before the slash is a w:non-breaking space. That means it will not line break and will not collapse together with normal spaces that come before the template.

The space after the slash is a normal space. That means it wraps (allows line breaks) and it will collapse together with normal spaces that come after the template to form one single space.

Under some circumstances, slashed link lists misbehave. They might get unexpected line wraps or they might expand outside the box they are enclosed in. The how-to guide: w:Line-break handling, explains when that happens and how to fix it.

See also

  • Other templates using non-breaking spaces to format inline presentation:
    {{·}} or {{dot}}, the "bold middot" template (producing " ·") formerly used to create horizontal lists.
    {{}} or {{bullet}}, used to produce the Unicode-style bullet character.
    {{spaced ndash}}, primarily used in the same way as this "slash" template to produce linewrap-friendly textual asides and/or emphasized phrases.
  • {{flatlist}}, a template that can be used to create horizontal ("flat") lists.

Wrap control templates

  • When making dotted lists, you might need to handle proper word wrapping (line breaking):
    {{nowraplinks}} to prevent wraps inside links and only allows wraps between the links and in normal text, very useful for link lists and easy to use.
    {{nowrap begin}}...{{nowrap end}} to prevent wraps in both text and links. For the really tricky wrapping cases when you need full control, for instance in very complex link lists.
  • For further information, see w:Line-break handling, the how-to guide detailing how to handle line wrapping at Wikipedia.

Dot and dash size reference list

Template:Aligned table