Module:Convert/text: Difference between revisions

Jump to navigation Jump to search
m (1 revision imported)
(update from sandbox per Template talk:Convert#Module version 30)
Line 6: Line 6:
local SIprefixes = {
local SIprefixes = {
-- The prefix field is what the prefix should be, if different from the prefix used.
-- The prefix field is what the prefix should be, if different from the prefix used.
['Q'] = { exponent = 30, name = 'quetta',                },
['R'] = { exponent = 27, name = 'ronna',                  },
['Y'] = { exponent = 24, name = 'yotta',                  },
['Y'] = { exponent = 24, name = 'yotta',                  },
['Z'] = { exponent = 21, name = 'zetta',                  },
['Z'] = { exponent = 21, name = 'zetta',                  },
Line 28: Line 30:
['z'] = { exponent =-21, name = 'zepto',                  },
['z'] = { exponent =-21, name = 'zepto',                  },
['y'] = { exponent =-24, name = 'yocto',                  },
['y'] = { exponent =-24, name = 'yocto',                  },
['r'] = { exponent =-27, name = 'ronto',                  },
['q'] = { exponent =-30, name = 'quecto',                },
}
}


Line 82: Line 86:
cvt_no_num        = { 'Needs the number to be converted'          , 'needs a number'      , 'option',  'needs_number'        },
cvt_no_num        = { 'Needs the number to be converted'          , 'needs a number'      , 'option',  'needs_number'        },
cvt_no_num2        = { 'Needs another number for a range'          , 'needs another number', 'option',  'needs_another_number' },
cvt_no_num2        = { 'Needs another number for a range'          , 'needs another number', 'option',  'needs_another_number' },
cvt_bad_altitude  = { '"$1" needs an integer'                      , 'invalid altitude'    , 'option',  'invalid_altitude'    },
cvt_bad_frac      = { '"$1" needs an integer above 1'              , 'invalid fraction'    , 'option',  'invalid_fraction'    },
cvt_bad_frac      = { '"$1" needs an integer above 1'              , 'invalid fraction'    , 'option',  'invalid_fraction'    },
cvt_bad_prec      = { 'Precision "$1" must be an integer'          , 'invalid precision'  , 'option',  'invalid_precision'    },
cvt_bad_prec      = { 'Precision "$1" must be an integer'          , 'invalid precision'  , 'option',  'invalid_precision'    },
Line 109: Line 114:
["sqbr-nbsp"]  = { " [" , "]" },
["sqbr-nbsp"]  = { " [" , "]" },
["comma"]      = { ", "      , "" , ", " },
["comma"]      = { ", "      , "" , ", " },
["semicolon"]  = { "; "      , ""  },
["slash-sp"]  = { " / "    , "" , wantname = true },
["slash-sp"]  = { " / "    , "" , wantname = true },
["slash-nbsp"] = { " / ", "" , wantname = true },
["slash-nbsp"] = { " / ", "" , wantname = true },
Line 174: Line 180:
["abbr"] = "abbr",
["abbr"] = "abbr",
["adj"] = "adj",
["adj"] = "adj",
["altitude_ft"] = "altitude_ft",
["altitude_m"] = "altitude_m",
["comma"] = "comma",
["comma"] = "comma",
["debug"] = "debug",
["debug"] = "debug",
Line 180: Line 188:
["input"] = "input",
["input"] = "input",
["lang"] = "lang",
["lang"] = "lang",
["link"] = "lk",
["lk"] = "lk",
["lk"] = "lk",
["order"] = "order",
["order"] = "order",
Line 200: Line 209:
-- (not intended to be set by the template which invokes this module).
-- (not intended to be set by the template which invokes this module).
-- Example: At enwiki, "abbr" includes:
-- Example: At enwiki, "abbr" includes:
--    ["comma"] = "opt_nocomma"
--    ["values"] = "opt_values"
-- As a result, if the template uses abbr=comma, Module:Convert sets:
-- As a result, if the template uses abbr=values, Module:Convert sets:
--    parms["opt_nocomma"] = true
--    parms["opt_values"] = true
--    parms["abbr"] = nil
--    parms["abbr"] = nil
-- Therefore parms.abbr will be nil, or will have one of the listed values
-- Therefore parms.abbr will be nil, or will have one of the listed values
-- that do not start with "opt_".
-- that do not start with "opt_".
-- An option value of form "xxx?" is the same as "xxx" but shows the input as deprecated.
-- An option value of form "xxx?" is the same as "xxx" but shows the input as deprecated.
-- Options removed in January 2018 with remnants still in Module:Convert:
--    abbr=mos (in a range, repeat the input unit)
--    adj=1 (set opt_singular to make the unit name singular when 0 < abs(value) <= 1)
local en_option_value = {
local en_option_value = {
-- $=x is handled as a special case: x should be a currency symbol that will be used instead of "$"
["$"] = 'TEXT',                    -- TEXT should be a currency symbol that will be used instead of "$"
["abbr"] = {
["abbr"] = {
-- ["local text for option value"] = "en value used in this module"
-- ["local text for option value"] = "en value used in this module"
Line 232: Line 244:
["ri2"] = "opt_ri=2",          -- round input with precision = 2
["ri2"] = "opt_ri=2",          -- round input with precision = 2
["ri3"] = "opt_ri=3",          -- round input with precision = 3
["ri3"] = "opt_ri=3",          -- round input with precision = 3
["~"] = "opt_also_symbol",      -- same as abbr=~ so can have {{convert|1|C|K|abbr=off|adj=~}}
},
},
["altitude_ft"] = 'INTEGER',
["altitude_m"] = 'INTEGER',
["comma"] = {
["comma"] = {
["5"] = "opt_comma5",          -- only use numsep grouping if 5 or more digits
["5"] = "opt_comma5",          -- only use numsep grouping if 5 or more digits
Line 256: Line 271:
["output only"] = "opt_output_only",
["output only"] = "opt_output_only",
["preunit"] = "opt_two_preunits",    -- user-specified text before input and output units
["preunit"] = "opt_two_preunits",    -- user-specified text before input and output units
["semicolon"] = "semicolon",    -- join: ';'
["sqbr"] = "sqbr",              -- join: '[...]'
["sqbr"] = "sqbr",              -- join: '[...]'
["table"] = "opt_table",        -- output is suitable for a table cell with align="right"
["table"] = "opt_table",        -- output is suitable for a table cell with align="right"
Line 264: Line 280:
["x"] = "x",                    -- join: <first>...<second> (user-specified text)
["x"] = "x",                    -- join: <first>...<second> (user-specified text)
},
},
-- frac=x is handled as a special case: x must be an integer (possibly in local language) = 2 or more
["frac"] = 'INTEGER',
-- input=x is handled as a special case: x should be <value><space><unitcode> or <wikidata-property-id>
["input"] = 'TEXT',                -- TEXT should be <value><space><unitcode> or <wikidata-property-id>
["lang"] = {                        -- language for output digits (both en and local digits are always accepted for input)
["lang"] = {                        -- language for output digits (both en and local digits are always accepted for input)
["en"] = "opt_lang_en",        -- use en digits for numbers, regardless of local language
["en"] = "opt_lang_en",        -- use en digits for numbers, regardless of local language
Line 280: Line 296:
["out"] = "opt_order_out",      -- do not show input; instead, use order in output combination, with the first output shown as the input
["out"] = "opt_order_out",      -- do not show input; instead, use order in output combination, with the first output shown as the input
},
},
-- qid=x is handled as a special case: x should be a Wikidata Q item identifier.
["qid"] = 'TEXT',                  -- TEXT should be a Wikidata Q item identifier
-- qual=x is handled as a special case: x should be a Wikidata Q item identifier.
["qual"] = 'TEXT',                  -- TEXT should be a Wikidata Q item identifier
["round"] = {
["round"] = {
["0.5"] = "opt_round=0.5",      -- round output value to nearest 0.5
["0.5"] = "opt_round=0.5",      -- round output value to nearest 0.5
Line 290: Line 306:
["each"] = "opt_round_each",    -- using default precision in a range, round each output separately (default uses highest precision of each item in range)
["each"] = "opt_round_each",    -- using default precision in a range, round each output separately (default uses highest precision of each item in range)
},
},
-- sigfig=x is handled as a special case: x must be an integer (possibly in local language) = 1 or more
["sigfig"] = 'INTEGER',
["sortable"] = {
["sortable"] = {
["off"] = "",                  -- ignored (off is the default)
["off"] = "",                  -- ignored (off is the default)
["on"] = "opt_sortable_on",    -- output sort key for use in a sortable table, based on value from converting to a standard base unit
["on"] = "opt_sortable_on",    -- output sort key for use in a sortable table, based on value from converting to a standard base unit
["debug"] = "opt_sortable_on, opt_sortable_debug",  -- |sortable=debug is the same as |sortable=on|debug=yes
},
},
["sp"] = {
["sp"] = {
Line 303: Line 320:
["on"] = "opt_spell_in, opt_spell_out",                  -- spell input and output values in words
["on"] = "opt_spell_in, opt_spell_out",                  -- spell input and output values in words
["On"] = "opt_spell_in, opt_spell_out, opt_spell_upper", -- same, with first letter of first word in result uppercase
["On"] = "opt_spell_in, opt_spell_out, opt_spell_upper", -- same, with first letter of first word in result uppercase
["us"] = "opt_sp_us",          -- use U.S. spelling; same as sp=us so spell=us also works
},
},
-- stylein=x is handled as a special case: x can be any text
["stylein"] = 'TEXT',
-- styleout=x is handled as a special case: x can be any text
["styleout"] = 'TEXT',
-- tracking=x is handled as a special case: x can be any text
["tracking"] = 'TEXT',
}
 
local titles = {
["frac"] = "Fraction/styles.css",
["sfrac"] = "Sfrac/styles.css",
}
}


Line 320: Line 343:
eng_scales = eng_scales,
eng_scales = eng_scales,
ranges = ranges,
ranges = ranges,
titles = titles,
}
}
Anonymous user

Navigation menu