Jump to content

Module:Gapnum/doc

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by The Mol Man (talk | contribs) at 18:53, 7 January 2015. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Implements Template:Gapnum

Use in other modules

The gaps function can be useful for formatting in other modules that work with displaying large numbers.

local gaps = require('Module:Gapnum').gaps

Using the gaps function, the first argument is the number to format. The second argument can be a table with keys that tell the module how to format. The table keys that can be used are:

  • gap - a number with CSS units (px, em, en, etc) that define the size of the gap between numbers. If blank, the module will use 0.25em.
  • prec - a number that determines the precision of the decimal part of the number. If the precision is less than the number of digits, extra digits will be removed without rounding; if it is more, zeroes will be added to the end to create the desired precision. If blank, the module will use -1, which means the precision will be the same as the number given; no digits added or removed.

Note that the return statement is a table. This means more styling or text can be added to the wrapper span tag, but it may also mean that tostring() may be required when used in other modules.

local gaps = require('Module:Gapnum').gaps

function example()
	local n = 123456.78900011
	-- Example for just simple formatting of a number
	-- n_gaps will use the default, .25em gaps and no change in precision
	-- The result will have its gaps created with inline css
	-- But the result would look like:
	-- 123 456.789 000 11
	local n_gaps = gaps(n)

	-- Different gap size
	-- These will format n into the same groups as above
	-- But the spaces between the groups will be larger and smaller, respectively
	local n_big_gaps = gaps(n, {gap='1em'})
	local n_small_gaps = gaps(n, {gap='1px'})

	-- Different precision
	-- n_prec_5 will use the number 123456.78900
	-- The result would look like:
	-- 123 456.789 00
	local n_prec_5 = gaps(n, {prec=5})
	-- n_prec_10 will use the number 123456.7890001100
	-- The result would look like:
	-- 123 456.789 000 1100
	local n_prec_10 = gaps(n, {prec=10})

	-- Both different gaps and precision can be used:
	local n_big_5 = gaps(n, {gap='1em', prec=5})
	local n_small_10 = gaps(n, {gap='1px', prec=10})
end