Difference between revisions of "Template:Hands/numdisp"

From blackwiki
Jump to navigation Jump to search
imported>Plastikspork
(Will debug in sandbox, reverting for now)
imported>Plastikspork
(Okay, trying again now that changes have been made to one of the subtemplates)
Line 1: Line 1:
{{Convert/numdisp/a|{{#titleparts:{{{1}}}|1|1}}|{{#titleparts:{{{1}}}|1|2}}}}<noinclude>
+
{{#if:{{#titleparts:{{{1|-1200-3/118}}}|1|2}}<!--
{{pp-template|small=yes}}
+
-->|{{Convert/numdisp/fracparts<!--
[[Category:Subtemplates of Template Convert]]
+
  -->|{{{1|-1200-3/118}}}|{{#titleparts:{{{1|-1200-3/118}}}|1|1}}|{{#titleparts:{{{1|-1200-3/118}}}|1|2}}}}<!--
 +
-->|{{formatnum:{{{1|6000}}}}}<!--
 +
-->}}<noinclude><!--
 +
--============================================================
 +
-- Display a number, with optional fraction part: 6+3/8
 +
--============================================================
 +
--
 +
--NOTE A1: This template processes a number, for display, by
 +
--    checking to display a fraction part ("/"), else it just
 +
--    uses {{formatnum:{{{1|6000}}}}} such as for "6,000".
 +
--    In 99% of Wikipedia usage, there are no fractions.
 +
--
 +
--NOTE D2: The check, for fraction parts, uses parser-function
 +
--    #titleparts to split the number at "/" (if any) and
 +
--    then checks part 2 (the denominator, after the slash)
 +
--    to trigger use of {Convert/numdisp/fracparts). Hence,
 +
--         #if: {{#titleparts:{{{1|6+3/8}}}|1|2}}
 +
--    will be true if a denominator exists (such as "8").
 +
--
 +
-- WARNING: *** DO NOT DELETE COMMENTS FROM THIS TEMPLATE ***
 +
--      Unless these comments are readily available, people
 +
--      might tinker with the coding (or rename templates),
 +
--      in hopes to clarify operation because these comments
 +
--      were not nearby to explain the issues. Having these
 +
--      comments only on a doc-page increases the danger of
 +
--      explanations no longer matching the current coding.
 +
--      UPDATE these comments to match changes to the template.
 +
--      UPDATE the HISTORY during major changes (not typos).
 +
--
 +
--------------------------------------------------------------
 +
--HISTORY:
 +
--03Apr09 Created by [[User:Jimp]] on English Wikipedia.
 +
--19Nov10 Invokes subtemplate only if has denominator (at "/").
 +
--19Nov10 Put NOTES comments to explain template coding.
 +
--19Nov10 Put HISTORY comments to log major changes.
 +
--19Nov10 Put all parameters on 1 line to avoid newline "2^ /3"
 +
--20Nov10 Linked {Documentation} to hold any interwiki links.
 +
--
 +
** Add interwiki links to /doc subpage to avoid changes here **
 +
-->
 +
{{Documentation}}
 
</noinclude>
 
</noinclude>

Revision as of 04:57, 21 November 2010

Template:Convert/numdisp/fracparts

Template documentation[view] [edit] [history] [purge]

The Template:Hands/numdisp processes a number, for display, by checking to display a fraction part (at "/"), else it just uses parser-function {{formatnum:{{{1|6000}}}}} to add commas, such as to show "6,000".

Usage:  {{hands/numdisp|6+3/8}} → Template:Convert/numdisp/fracparts
{{hands/numdisp|-4-1/2}} → Template:Convert/numdisp/fracparts
{{hands/numdisp|23500}} → 23,500
{{hands/numdisp|2300+643/1250}} → Template:Convert/numdisp/fracparts
{{hands/numdisp|&minus;7.0}} → −7.0
{{hands/numdisp|14+6/ }} → Expression error: Unexpected < operator

Implementation

The check, for fraction parts, uses parser-function {{#titleparts:xx/xx|1|2}} to split a number at "/" (if any, as in: 6+3/8) and then checks if part 2 (the denominator, after the slash) contains a number, to trigger use of {{hands/numdisp/frac}}). Hence, the template uses:

#if: {{#titleparts:{{{1|6+3/8}}}|1|2}}

That if-expression will be true if a denominator exists (such as "8" in 6+3/8).

See also