Difference between revisions of "Template:Nowrap begin/doc"

4,752 bytes removed ,  15:12, 3 February 2009
m
1 revision
(uploaded "Image:Chevy-Impala-police.jpg": Importing image file)
m (1 revision)
 
Line 1: Line 1:
{{Documentation subpage}}
{{Documentation subpage}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
{{mbox templates}}
__NOTOC__
This is the {{tl|ombox}} or '''other pages message box''' meta-template.
This is the {{tl|nowrap begin}} template.


It is used to build message box templates for pages of the types: User, Wikipedia, MediaWiki, Template, Help, Portal and any new future namespaces. That is, page types not covered by {{tl|ambox}}, {{tl|tmbox}}, {{tl|imbox}} or {{tl|cmbox}}. Thus it should ''not'' be used for boxes for articles, talk pages, image pages or category pages.
This template prevents word wraps (line breaks) in text and links with spaces in. It is designed to handle the really tricky wrapping cases where you need full control. For instance in very complex long link lists. It works similarly to {{tl|nowrap}} and {{tl|nowraplinks}}.


This template works almost exactly like {{tl|ambox}} and uses the same parameters.
This template takes no parameters, instead it works in pair with {{tl|nowrap end}}.


=== We are deploying! ===
=== Helper templates ===


After discussions on the [[Template talk:Ombox|talk page]] of this template and announcing it at several places for some time we are now deploying this template. Feel free to convert any message boxes used on "other pages" to use this meta-template. If you find any tricky cases then list them on the talk page of this template and you'll get help.
This template has a number of helper templates which allows you to tell the web browser exactly where line breaks may occur:


When this template is used to build other pages message boxes those boxes should contain explanatory texts just like before. (The same texts as before or new improved texts.) If there are more specific images in the boxes or you know a better image, then use them instead of the default images shown here.
'''Note!''' These helper templates may only be used in sections surrounded by {{tl|nowrap begin}} and {{tl|nowrap end}} or they may cause weird behaviour of your page.
 
* {{tl|wrap}} - Marks where a wrap may occur.
* {{tl|·wrap}} or {{tl|·w}} - Looks like this: " '''·''' ". For dotted lists. Renders a bold middot surrounded by spaces and then marks that a wrap may occur ''after'' the midddot.
* {{tl|•wrap}} or {{tl|•w}} - Looks like this: " • ". For dotted lists that use small font and thus need a bigger dot. Renders a bullet surrounded by spaces and then marks that a wrap may occur ''after'' the bullet.
* {{tl|–wrap}} or {{tl|–w}} - Looks like this: " &ndash; ". For dashed lists. Renders a ndash surrounded by spaces and then marks that a wrap may occur ''after'' the ndash.
* {{tl|—wrap}} or {{tl|—w}} - Looks like this: " &mdash; ". Renders a mdash surrounded by spaces and then marks that a wrap may occur ''after'' the mdash.
* {{tl|!wrap}} or {{tl|!w}} - Looks like this: " &#124; ". For pipe separated lists. Renders a pipe surrounded by spaces and then marks that a wrap may occur ''after'' the pipe. The pipe used is not a real pipe but the code <code>&amp;#124;</code> so should work within wiki tables etc.
* {{tl|\wrap}} or {{tl|\w}} - Looks like this: " / ". For slash separated lists. Renders a slash surrounded by spaces and then marks that a wrap may occur ''after'' the slash. The "\" in the name leans the other way than the rendered slash "/" for wiki-technical reasons.


=== Usage ===
=== Usage ===


Simple usage example:
<pre><nowiki>
{{nowrap begin}}


<pre>
[[Salt]] and{{wrap}} [[Pepper]] and{{wrap}} [[Curry]]
{{ombox | text = Some text.}}
and{{wrap}} [[Saffron]].{{wrap}}
</pre>
[[Salt]] and{{wrap}} [[Pepper]] and{{wrap}} [[Curry]]
and{{wrap}} [[Saffron]].


{{ombox | text = Some text.}}
{{nowrap end}}
</nowiki></pre>


It will render something like this:


Complex example:
:[[Salt]] and [[Pepper]] and [[Curry]] and
:[[Saffron]]. [[Salt]] and [[Pepper]] and
:[[Curry]] and [[Saffron]].


<pre>
But it will ''not'' render like this:
{{ombox
| type      = style
| image    = [[Image:Emblem-question-yellow.svg|40px]]
| style    = width: 400px;
| textstyle = color: red; font-weight: bold; font-style: italic;
| text      = The message body text.
}}
</pre>


{{ombox
:[[Salt]] and [[Pepper]] and [[Curry]]
| type      = style
:and [[Saffron]]. [[Salt]] and [[Pepper]]  
| image    = [[Image:Emblem-question-yellow.svg|40px]]
:and [[Curry]] and [[Saffron]].  
| style    = width: 400px;
| textstyle = color: red; font-weight: bold; font-style: italic;
| text      = The message body text.
}}


=== Other pages message box types ===
To make your code readable and easy to edit, you can put each wrappable "line" on its own line. And let's use some dots too. Like this:


The following examples use different '''type''' parameters but use no image parameters thus they use the default images for each type.
<pre><nowiki>
{{nowrap begin}}


{{ombox
[[Salt]] and [[Pepper]]{{·wrap}}  
| type = speedy
[[Pepper]] and [[Curry]]{{·wrap}}  
| text = type=<u>speedy</u> – Speedy deletion templates.
[[Curry]] and [[Saffron]]{{·wrap}}  
}}
[[Saffron]] and [[Salt]]
{{ombox
| type = delete
| text = type=<u>delete</u> – Deletion templates.
}}
{{ombox
| type = content
| text = type=<u>content</u> – Major warnings and problems, such as {{tl|high-use}}.
}}
{{ombox
| type = style
| text = type=<u>style</u> – Minor warnings and problems. {{tl|intricate}} should perhaps use this type.
}}
{{ombox
| type = notice
| text = type=<u>notice</u> – Notices and messages of any kind, both permanent and temporary. Such as {{tl|guideline}} and {{tl|how-to}}.
}}
{{ombox
| type = move
| text = type=<u>move</u> – Merge, split, rename and transwiki messages and proposals.
}}
{{ombox
| type = protection
| text = type=<u>protection</u> – Protection templates such as {{tl|pp-protected}} when shown on "other pages".
}}


=== Examples ===
{{nowrap end}}
</nowiki></pre>


Some examples using the "notice" style:
It will render something like this:


{{ombox
:[[Salt]] and [[Pepper]] '''·''' [[Pepper]] and [[Curry]] '''·'''  
| text  = No type and no image given ('''default''')
:[[Curry]] and [[Saffron]] '''·''' [[Saffron]] and [[Salt]]
}}
{{ombox
| image = none
| text  = No type and '''image=none''' – No image is used and the '''text''' uses the whole message box area.
}}
{{ombox
| image = [[Image:Gnome globe current event.svg|42px]]
| imageright = [[Image:Nuvola apps bookcase.svg|40px]]
| text  = image = <nowiki>[[Image:Gnome globe current event.svg|42px]]</nowiki> <br> imageright = <nowiki>[[Image:Nuvola apps bookcase.svg|40px]]</nowiki>
}}


{{ombox
But it will ''not'' render like this:
| type      = notice
| image      = [[Image:Blue check.svg|30px]]
| imageright = {{shortcut|WP:SHORT}}
| text      =
'''This page documents an English Wikipedia [[Wikipedia:Policies and guidelines|guideline]].''' It is a generally accepted standard that editors should follow, though it should be treated with [[Wikipedia:Use common sense|common sense]] and the [[Wikipedia:Ignore all rules|occasional exception]]. When editing this page, please ensure that your revision reflects [[Wikipedia:Consensus|consensus]]. When in doubt, discuss on the [[{{TALKPAGENAME}}|talk page]].
}}
{{ombox
| type      = notice
| image      = [[Image:Nutshell.png|30px]]
| text      =
'''This page in a nutshell:''' This template is used to build message boxes for all pages that are ''not'' articles, talk pages, image pages or category pages.
}}


=== Parameters ===
:[[Salt]] and [[Pepper]] '''·''' [[Pepper]]
:and [[Curry]] '''·''' [[Curry]] and [[Saffron]]
:'''·''' [[Saffron]] and [[Salt]]


List of all parameters:
=== Examples ===


<pre>
Here are the above examples in actual running code in a table. Try dragging the width of your web browser window so it becomes smaller and smaller and watch how the line wrapping behaves:
{{ombox
| type  = speedy / delete / content / style / notice / move / protection
| image = none / [[Image:Some image.svg|40px]]
| imageright = [[Image:Some image.svg|40px]]
| style = CSS values
| textstyle = CSS values
| text  = The message body text.
| small = {{{small|}}} / yes
| smallimage = none / [[Image:Some image.svg|30px]]
| smallimageright = none / [[Image:Some image.svg|30px]]
| smalltext  = A shorter message body text.
}}
</pre>


'''type'''
{| class="wikitable"
:If no '''type''' parameter is given the template defaults to type '''notice'''. That means it gets a gray border.
|-
|
{{nowrap begin}}
[[Salt]] and{{wrap}} [[Pepper]] and{{wrap}} [[Curry]]
and{{wrap}} [[Saffron]].{{wrap}}
[[Salt]] and{{wrap}} [[Pepper]] and{{wrap}} [[Curry]]
and{{wrap}} [[Saffron]].  
{{nowrap end}}
|
{{nowrap begin}}
[[Salt]] and [[Pepper]]{{·wrap}}
[[Pepper]] and [[Curry]]{{·wrap}}
[[Curry]] and [[Saffron]]{{·wrap}}
[[Saffron]] and [[Salt]]
{{nowrap end}}
|}


'''image'''
An example demonstrating all the helper templates:
:'''No parameter''' = If no '''image''' parameter is given the template uses a default image. Which default image it uses depends on the '''type''' parameter.
:'''An image''' = Should be an image with usual wiki notation. 40px - 50px width are usually about right depending on the image height to width ratio. (But the message box can handle images of any size.) For example:
::<code><nowiki>image = [[Image:Crystal package settings.png|40px]]</nowiki></code>
:'''none''' = Means that no image is used.


'''imageright'''
{| class="wikitable"
:'''No parameter''' = If no '''imageright''' parameter is given then no image is shown on the right side.
|-
:'''An image''' = Should be an image with usual wiki notation. 40px - 50px width are usually about right depending on the image height to width ratio. (But the message box can handle images of any size.) For example:
|
::<code><nowiki>imageright = [[Image:Nuvola apps bookcase.png|40px]]</nowiki></code>
{{nowrap begin}}
:'''Anything''' = Any other object that you want to show on the right side.
[[Salt]]{{wrap}} [[Pepper]]{{wrap}} [[Curry]]{{·wrap}} [[Saffron]]{{·wrap}} [[Salt]]{{•wrap}} [[Pepper]]{{•wrap}} [[Curry]]{{–wrap}} [[Saffron]]{{–wrap}} [[Salt]]{{!wrap}} [[Pepper]]{{!wrap}} [[Curry]]{{\wrap}} [[Saffron]]{{\wrap}} [[Salt]]
 
{{nowrap end}}
'''style'''
|
:Optional [[Cascading Style Sheets|CSS]] values used by the entire message box table. Without quotation marks <code>" "</code> but with the ending semicolons <code>;</code>. For example:
{{nowrap begin}}
::<code>style = margin-bottom: 0.5em;</code>
[[Salt]]{{wrap}} [[Pepper]]{{wrap}} [[Curry]]{{·wrap}} [[Saffron]]{{·wrap}} [[Salt]]{{•wrap}} [[Pepper]]{{•wrap}} [[Curry]]{{–wrap}} [[Saffron]]{{–wrap}} [[Salt]]{{!wrap}} [[Pepper]]{{!wrap}} [[Curry]]{{\wrap}} [[Saffron]]{{\wrap}} [[Salt]]
 
{{nowrap end}}
'''textstyle'''
|}
:Optional [[Cascading Style Sheets|CSS]] values used by the text cell. For example:
::<code>textstyle = text-align: center;</code>
 
'''text'''
:The message body text.
 
==== The small parameters ====
 
{{ombox
| small = yes
| text = small = yes
}}
{{ombox
| type = style
| small = yes
| text = type = style <br> small = yes
}}
'''small'''
:'''yes''' = Makes it a smaller right floating message box. This also makes the default images smaller. Note that any data fed to the '''smallimage''', '''smallimageright''' and '''smalltext''' parameters is only used if "small=yes". To make it so your template also understands the small parameter you can use this code:
::<code><nowiki>small = {{{small|}}}</nowiki></code>
 
{{ombox
| small = yes
| image      = [[Image:Replacement filing cabinet.svg|50px]]
| smallimage = [[Image:Replacement filing cabinet.svg|32px]]
| text =
small = yes <br> image = <nowiki>[[Image:Replacement filing cabinet.svg|50px]]</nowiki> <br> smallimage = <nowiki>[[Image:Replacement filing cabinet.svg|32px]]</nowiki>
}}
'''smallimage'''
:'''No parameter''' = If no '''smallimage''' parameter is given then this template falls back to use the '''image''' parameter. If the '''image''' parameter also is empty then a small default image is used.
:'''An image''' = Should be an image with usual wiki notation. 30px width is usually about right. For example:
::<code><nowiki>smallimage = [[Image:Replacement filing cabinet.svg|30px]]</nowiki></code>
:'''none''' = Means that no image is used. This overrides any image fed to '''image''', when "small=yes".
 
{{ombox
| small = yes
| imageright = [[Image:Nuvola apps bookcase.png|50px]]
| smallimageright = none
| text =
small = yes <br> imageright = <nowiki>[[Image:Nuvola apps bookcase.png|50px]]</nowiki> <br> smallimageright = none
}}
'''smallimageright'''
:'''No parameter''' = If no '''smallimageright''' parameter is given then this template falls back to use the '''imageright''' parameter. If the '''imageright''' parameter also is empty then no image is shown on the right side.
:'''An image''' = Should be an image with usual wiki notation. 30px width is usually about right. For example:
::<code><nowiki>smallimageright = [[Image:Nuvola apps bookcase.png|30px]]</nowiki></code>
:'''Anything''' = Any other object that you want to show on the right side.
:'''none''' = Means that no right side image is used. This overrides any image fed to '''imageright''', when "small=yes".
 
'''smalltext'''
:A shorter version of the message body text. If no '''smalltext''' parameter is given then this template falls back to use the '''text''' parameter.


=== Technical details ===
=== Technical details ===


If you need to use special characters in the text parameter then you need to escape them like this:
The actual code that does the job is this HTML+CSS code:
 
<pre>
{{ombox
| text  = <div>
Equal sign = and a start and end brace { } work fine as they are.
But here is a pipe {{!}} and two end braces &lt;nowiki>}}&lt;/nowiki>.
And now a pipe and end braces &lt;nowiki>|}}&lt;/nowiki>.
</div>
}}
</pre>
 
{{ombox
| text  = <div>
Equal sign = and a start and end brace { } work fine as they are.
But here is a pipe {{!}} and two end braces <nowiki>}}</nowiki>.
And now a pipe and end braces <nowiki>|}}</nowiki>.
</div>
}}
 
This template uses the ombox CSS classes in [[MediaWiki:Common.css]] for most of its looks, thus it is fully skinnable.


This template calls {{tl|ombox/core}} which holds most of the code for {{tl|ombox}}, while {{tl|ombox}} itself does parameter preprocessing.
:<code><nowiki><span style="white-space:nowrap;"> Text and links </span> <span style="white-space:nowrap;"> More text and links </span></nowiki></code>


Internally this meta-template uses HTML markup instead of wiki markup for the table code. That is the usual way we make meta-templates since wiki markup has several drawbacks. For instance it makes it harder to use [[m:Help:ParserFunctions|parser functions]] and special characters in parameters.  
It means that wraps may only happen in the unprotected space between the <code><nowiki></span></nowiki></code> and the <code><nowiki><span ...></nowiki></code>. That's what {{tl|nowrap begin}} and its helper templates are packaging in an easy to use way.


The default images for this meta-template are in png format instead of svg format. The main reason is that some older web browsers have trouble with the transparent background that MediaWiki renders for svg images. The png images here have hand optimised transparent background colour so they look good in all browsers. Note that svg icons only look somewhat bad in the old browsers, thus such hand optimisation is only worth the trouble for very widely used icons.
{{tl|·wrap}} and the other helper templates should not have any spaces or newlines before them or they will render two spaces before the dot. They tolerate anything from no to several spaces and even a newline after them and they will still only render one space after the dot. If a wrap occurs then the wrap will come after the dot, even if there are spaces before the helper template.


For more technical details see the [[Template talk:Ombox|talk page]]. Since this template works almost exactly like {{tl|ambox}}, {{tl|tmbox}}, {{tl|imbox}} and {{tl|cmbox}} their talk pages and related pages might also contain more details.
The {{tl|·wrap}} causes problems if inside sections of bolded and/or italicised text. Do end the bold text before the {{tl|·wrap}} and continue the bold text after it to avoid the problems. {{tl|•wrap}} and the other helper templates only have this problem if the section is bolded and italicised at the same time.


=== See also ===
=== See also ===


There are several meta-templates in the mbox family:
* {{tl|nowrap end}} - The other end of this template.
* {{tl|ambox}} – For article message boxes.
* {{tl|nowrap}} - A template with similar purpose.
* {{tl|tmbox}} – For talk page message boxes.
* {{tl|nowraplinks}} - Prevents wraps inside links and only allows wraps between the links and in normal text. Very useful for link lists and usually easier to use than this template.
* {{tl|imbox}} – For image page message boxes.
* {{tn|·}} and {{tn|}} - If you need dots/bullets when not using <code><nowiki>{{nowrap begin}}+{{nowrap end}}</nowiki></code>.
* {{tl|cmbox}} – For category message boxes.
* [[Wikipedia:Line break handling]] - The how-to guide detailing how to handle word wraps (line breaks) on Wikipedia.  
* {{tl|ombox}} – For other pages message boxes.
* {{tl|mbox}} – Has namespace detection, for message boxes that are used on several types of pages and thus need to change style depending on what page they are used on.
 
Closely related meta-templates:
 
* {{tl|fmbox}} – For header and footer message boxes.
* {{tl|dmbox}} – For disambiguation and set index message boxes.


<includeonly>
<includeonly>
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
<!-- ADD CATEGORIES AND INTERWIKIS BELOW THIS LINE -->
[[Category:Wikipedia metatemplates|{{PAGENAME}}]]
[[Category:Wikipedia formatting and function templates|{{PAGENAME}}]]
 
[[hsb:Předłoha:Ombox]]
[[mk:Шаблон:Ombox]]
[[mn:Template:Ombox]]
[[ro:Format:Meta-casetămap]]
[[uk:Шаблон:Ombox]]


[[da:Skabelon:Nowrap begin]]
[[hsb:Předłoha:Nowrap begin]]
[[id:Templat:Nowrap begin]]
[[ja:Template:Nowrap begin]]
[[ko:틀:Nowrap 시작]]
[[mk:Шаблон:Nowrap begin]]
[[pl:Szablon:Nowrap start]]
[[ro:Format:Nowrap begin]]
</includeonly>
</includeonly>
Budlight
Bots, Bureaucrats, Administrators
529

edits