Template:Avoid wrap/doc

Template page

{{Avoid wrap}}, {{avoidwrap}} or {{awrap}} avoids wrapping of specific text.

To achieve the opposite effect of {{Avoid wrap}}, you can use {{wbr}}. For more information about wrapping and breaking sentences, see OODA WIKI:Line-break handling.

Usage

{{Avoid wrap|these words stay together}}
{{Avoid wrap|a, b, c, or d.}}
{{Avoid wrap| merry-go-round }}
{{Avoid wrap| [[4-part harmony]] }}
{{Avoid wrap| [[Cascading Style Sheets|CSS]] }}
{{Avoid wrap| [[#Examples|Examples section]] }}

The template names {{Nobr}} and {{Nobreak}} are redirects that may be used instead of "{{Avoid wrap|…}}".

Examples

"They held {{Avoid wrap|10 kg (22 lb)}} in total."


May render like this:

They held 10 kg (22 lb)
in total.


Or like this:

They held
10 kg (22 lb) in total.


But not render like this:

They held 10 kg (22
lb) in total.
"He encountered {{Avoid wrap|a tiger}} in the woods."


May render like this:

He encountered a tiger
in the woods.


Or like this:

He encountered
a tiger in the woods.


But not like this:

He encountered a
tiger in the woods.

Controlling line-breaking in infoboxes

This template may be used with {{Wbr}} and {{Spaces}} to control line-breaking in bulletless lists in infoboxes, to prevent wrapped long entries from being confused with multiple entries. See Template:Wbr/doc#Controlling line-breaking in infoboxes for details.

Handling equal-sign or bar

Templates have problems with parameter data that contains equal-signs "=" or vertical bars "|" (pipes). Note that this does not apply if the equal-sign "=" or vertical bar "|" is inside a wikilink or another template. In the case that there is a bare equal-sign "=" or vertical bar "|", consider using {{Avoid wrap begin}} + {{Avoid wrap end}} instead. However, there are also other workarounds:

For text that includes an equal-sign "=", precede the text with 1=, use a triple-brace unnamed parameter {{{|=}}}, or the {{=}} template. For example:

{{Avoid wrap|1=2 + 2 = 4}},
{{Avoid wrap|2 + 2 {{{|=}}} 4}}, or
{{Avoid wrap|2 + 2 {{=}} 4}}

which all render as this:

2 + 2 = 4.

For text that includes a vertical bar "|", escape the bar(s) with "|" or "{{pipe}}" or "{{abs}}". For instance, put two bars "|6|" like this:

{{Avoid wrap|&#124;6&#124; < 7}}  or  {{Avoid wrap|{{pipe}}6{{pipe}} < 7}}  or  {{avoid wrap|{{abs|6}} < 7}}

Which renders this:

|6| < 7

Technical details

The actual code that does the job is this HTML span tag that applies a class to the text inside the template:

<span class="avoidwrap" style="display:inline-block;">This text will not wrap</span>

When there is not enough remaining space on a line to fit the contents of such as block, it will be pushed to the next line in its entirety. However when the block in itself doesn't fit on a single line, line breaking still applies to the 'internal' text block. This is especially advantageous for mobile rendering where the available line width might be much smaller than on desktops and might require line breaks to make longer words or sections fit.

TemplateData

This is the TemplateData for this template used by TemplateWizard, VisualEditor and other tools. Click here to see a monthly parameter usage report for this template in articles based on this TemplateData.

TemplateData for Avoid wrap

Prevents word wraps (line breaks) within text or inside a link which contains spaces or hyphens (-).

Template parameters

ParameterDescriptionTypeStatus
Text1

Text or link to be protected.

Stringrequired

See also

  • {{nowrap}} prevents wrapping within a single template (i.e. not suitable for relatively complex or lengthy content).
  • {{nowraplinks}} ... {{nowraplinks end}} prevents wraps inside links while allowing wraps between links and in normal text. Very useful for link lists and easy to use.
  • {{nowrap begin}} ... {{nowrap end}} prevents wraps in both text and links. For the trickier wrapping cases when you need full control, for instance in very complex link lists.
  • {{word joiner}} prevents wraps for both two adjacent characters.
  • {{avoid wrap}} prevents wraps unless the space is too narrow to display the text on one line.
    • {{inline block}} does the same and allows further style customization, but does not automatically add the "avoidwrap" CSS class.
  • {{spaces}} produces multiple non-breaking spaces (or a single one).
  • {{wrap}} can be used to provide a (brief) exception within a no-wrapping area.
    • {{normalwraplink}} allows links to wrap when they otherwise would not.
  • {{·}} and {{•}}, spaced and wrap-sensitive interpunct (dot) and bullet.
  • Help:Line-break handling, OODA WIKI's how-to guide about word wrapping and line breaks.
    • In particular, to avoid line wrapping when quoting a passage such as a poem or computer code, see Template:Quote § Line breaks – e.g. Template:Blockquote with "poem" tag.