Template:Gaps

From UBC Wiki
Documentation icon Template documentation[view] [edit] [history] [purge]


Template:Gaps outputs its unnamed arguments in order, applying the margin-left: 0.2em CSS rule to all but the first, so that there will be gaps of 0.2em between the arguments (the nominal width of a thin space. The whole output has the white-space: nowrap rule so that it will not be broken across several lines.

It supports up to twenty unnamed arguments. In addition, it supports the base and e arguments which can be used for numbers in exponential notation. The base will be assumed to be 10 unless otherwise specified; a hyphen-minus "-" in the exponent will be automatically substituted by a minus sign "−". It also supports the arguments lhs and u for putting left-hand sides and units within the non-breaking span (see examples below).

See Wikipedia:Manual of Style (dates and numbers) § Delimiting (grouping of digits) for information about where to put the gaps in numbers.

Usage

Input Output
{{gaps|−2.002|319|304|3622|(15)}} −2.0023193043622(15)
{{gaps|299|792|458|u=m/s}} 299792458 m/s
{{gaps|lhs=π|3.14159|26535|89793|23846|26433|83279|...}} π = 3.141592653589793238462643383279...
{{gaps|P.|A.|M.}} Dirac P.A.M. Dirac
{{nowrap|1={{gaps|sin|2''φ''}} = 2 {{gaps|sin|''φ''}} {{gaps|cos|''φ''}}}} sin2φ = 2 sinφ cosφ
"She disputed his statement that 'Voltaire never said "I disapprove of what you say, but I will defend to the death your right to say {{gaps|it."|'|"}} "She disputed his statement that 'Voltaire never said "I disapprove of what you say, but I will defend to the death your right to say it."'"
{{gaps|1.602|176|487|(40)|e=-19|u=C}} 1.602176487(40)×10^−19 C
64 MB ({{gaps|64|base=2|e=20}} bytes) 64 MB (64×2^20 bytes)

Performance impact

Template:Gaps allows up to 20 parameters, and displays the gaps by setting the left-margin space of each group. The gaps are not actual spaces, so a copy/paste of the text is treated as connected, consecutive text. Template:Gaps is coded with minimal wikitext markup, so equivalent hand-coded markup could not be much shorter. Counting the length of the span-tags, there can be 15,800 instances of 2-part {gaps}, or 9,500 uses of 3-part gaps, or 6,800 with 4-part gaps (etc.), per page. The template uses a minimal expansion depth of only 2 levels (of the if-else nesting limit, such as 40 maximum), and if those 2 levels are exceeded, only the first portion will be shown. Although the text, as displayed, is consecutive as on-screen text, {gaps} for a number cannot be used in a calculation because the internal markup contains the invisible <span> tags which would be invalid text in typical numeric processing.

See also

  • {{gapnum}} - format a number to show 3-digit gaps, with decimal gaps of 3 or 4 digits
  • {{Val/delimitnum}} - format a number to show commas, but decimal gaps of 3 or 4 digits
  • {{convert/gaps}} - convert an amount to show 3-digit gaps, with decimal gaps
  • {{Space}} - to create alignment between adjacent text lines, or to space out titles, etc.