Модуль:Convert/text
Зовнішній вигляд
| Цей модуль позначений як К:реліз, готовий до загального вжитку (288). Він досягнув стадії готовності й вважається, що вільний від помилок і може використовуватись всюди, де знадобиться. Його можна згадувати на довідкових сторінках та інших сторінках Вікіпедії як можливість для навчання новачків. Аби зменшити навантаження на сервери та некоректний показ сторінок, його потрібно вдосконалювати через тестування у пісочниці[en], а не через застосування спроб і помилок. |
| Цей модуль позначено як К:такий, що потребує захищеного статусу (143). Завершені модулі використовуються в дуже великій кількості статей, або часто використовуються як підстановки. Позаяк акти вандалізму або помилки можуть вплинути на багато сторінок і навіть незначне редагування призведе до істотного навантаження на сервери, вони підлягають захисту від редагувань. |
| Цей модуль Lua використовується на близько 46 000 сторінках. Для уникнення великомасштабних збоїв та непотрібного навантаження на сервер, будь-які зміни спочатку потрібно перевірити на підсторінках /пісочниці та /тестів цього модуля, або у вашій пісочниці модуля. Потім перевірені зміни можуть бути впроваджені на цій сторінці єдиним редагуванням. Будь ласка, обговорюйте будь-які зміни на сторінці обговорення перед їхнім впровадженням. |
Ця сторінка визначає текст, що використовується у Модуль:Convert. Уся документація (з Модуль:Convert/документація) присутня у цьому модулі. Текст включає повідомлення і категорії виводу модулем та параметри, що використовуються у введенні.
Це окремий модуль для полегшення перекладу для використання у інших вікі. Наприклад, див. translation_table та інші таблиці у bn:Модуль:Convert/text.
Будь-які зміни слід спочатку перевірити у Модуль:Convert/text/пісочниця—див. Модуль:Convert/пісочниця/testcases.
Документація вище включена з Модуль:Convert/text/документація. (ред. | історія)
Дописувачі можуть експериментувати на підсторінках пісочниці (ред. | різн.) та тести (створити) цього модуля.
Будь ласка, додавайте категорії до підсторінки /text/документація. Підсторінки цієї сторінки.
Дописувачі можуть експериментувати на підсторінках пісочниці (ред. | різн.) та тести (створити) цього модуля.
Будь ласка, додавайте категорії до підсторінки /text/документація. Підсторінки цієї сторінки.
-- Text used by Module:Convert, for en.wikipedia.org (English).
-- This is a separate module to simplify translation for use on another wiki.
-- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki.
local translation_table = {
mtext = {
section_names = {
-- name_used_in_this_script = 'Section title used in conversion data'
overrides = 'Перезаписування',
conversions = 'Перетворення',
outmultiples = 'Вихідні множинні одиниці',
combinations = 'Поєднання',
inmultiples = 'Вхідні множинні одиниці',
defaults = 'Стандартні значення',
links = 'Посилання',
perunits = 'Автоматичні «на одиниці»',
varnames = 'Змінні назви',
pernames = 'Назви для другої одиниці у фразі з на',
},
titles = {
-- name_used_in_this_script = 'Title of page'
conversion_data = 'Модуль:Convert/документація/дані перетворень',
},
messages = {
-- name_used_in_this_script = 'Error message ($1 = first parameter, $2 = second)'
m_als_bad = 'Псевдонім має недійсний текст в полі «$1».',
m_als_dup = 'Поле «$1» вже визначене.',
m_als_link = 'Псевдонім «$1» повинен включати вікіпосилання («[[...]]») в тексті символьне посилання.',
m_als_mul = 'Псевдонім «$1» має множник «$2», що не є числом.',
m_als_same = 'Для псевдоніму «$2» повинно бути опущено «$1», бо воно є таким самим як і його ціль.',
m_als_type = 'Ціль псевдоніма «$1» має хибний тип.',
m_als_undef = 'Основна одиниця має бути визначена перед псевдонімом «=$1»',
m_cmb_miss = 'Пропущено код одиниці для поєднання.',
m_cmb_none = 'Не зазначено жодної одиниці для поєднання «$1»',
m_cmb_one = 'Зазначено лише одну одиницію для поєднання «$1»',
m_cmb_type = 'Одиниця «$1» в поєднанні з «$2» має хибний тип.',
m_cmb_undef = 'Одиниця «$1» в поєднанні з «$2» не визначена.',
m_cmp_def = 'Складена одиниця «$1» повинна зазначати стандартний код одиниці.',
m_cmp_int = 'Складена одиниця «$1» має компоненти, де свівідношення розміру величин не є цілим числом.',
m_cmp_inval = 'Складена одиниця «$1» має компонент з недійсним розміром величини, «$2».',
m_cmp_many = 'Складена одиниця «$1» мвє забагато полів.',
m_cmp_miss = 'Пропущено код одиниці для складеної одиниці.',
m_cmp_order = 'Складена одиниця «$1» має компоненти в неправильній послідовності або з недійсними розмірами величин.',
m_cmp_scale = 'Альтернативна одиниця «$1» в складеній одиниці «$2» має неправильний розмір величини.',
m_cmp_two = 'Поєднана одиниця «$1» повинна вказувати саме два коди одиниці.',
m_cmp_type = 'Одиниця «$1» в складеній одиниці «$2» має неправильний тип.',
m_cmp_undef = 'Одиниця «$1» в складеній одиниці «$2» не визначена.',
m_def_cond = 'Недійсна умова в стандартному значенні «$1» для одиниці «$2».',
m_def_fmt = 'Стандартний вивід «$1» для одиниці «$2» повинен мати 2 або 3 «!».',
m_def_rpt = 'Стандартний вивід «$1» для одиниці «$2» повторюється.',
m_def_same = 'Стандартний вивід для одиниці «$1» є тією ж одиницею.',
m_def_type = 'Стандартний вивід «$1» для одиниці «$2» має неправильний тип.',
m_def_undef = 'Стандартний вивід «$1» для одиниці «$2» не визначена.',
m_dfs_code = 'Розділ Стандартні значення: не зазначено код одиниці.',
m_dfs_dup = 'Розділ Стандартні значення: одиниця «$1» вже зазначена.',
m_dfs_none = 'Розділ Стандартні значення: одиниця «$1» не зазначено жодного стандартного значення.',
m_dfs_sym = 'Розділ Стандартні значення: одиниця «$1» має містити символ.',
m_dfs_two = 'Розділ Стандартні значення: одиниця «$1» повинна мати лише два поля.',
m_dfs_undef = 'Розділ Стандартні значення: одиниця «$1» не визначено.',
m_dup_code = 'Код одиниці «$1» вже був визначений.',
m_error = 'Помилка:',
m_ftl_read = 'Неможливо прочитити вікітекст з «[[$1]]».',
m_ftl_table = '[[$1]] повинно експортувати таблицю «$2».',
m_ftl_type = 'Критична помилка: невідомий тип даних для «$1»',
m_hdg_lev2 = 'Заголовок рівня 2 «$1» не знайдено.',
m_hdg_lev3 = 'Не має заголовоку рівня 3 перед: $1',
m_line_num = ' (рядок $1).',
m_lnk_brack = 'Посилання «$1» має неправильну кількість квадратних дужок.',
m_lnk_dup = 'Виключення для посилання «$1» вже визначено.',
m_lnk_miss = 'Пропущено код одиниці для посилання.',
m_lnk_none = 'Не визначено посилання для одиниці «$1».',
m_lnk_sym = 'Код одиниці «$1» для посилання має містити символ.',
m_lnk_two = 'Рядок для посилання одиниці «$1» повинен мати лише для поля.',
m_lnk_type = 'Виключення для посилання «$1» має неправильний тип.',
m_lnk_undef = 'Код одиниці «$1» для посилання не визначено.',
m_miss_code = 'Пропущено код одиниці.',
m_miss_sym = 'Пропущено символ.',
m_miss_type = 'Пропущено тип одиниці.',
m_mul_int = 'Кілька «$1» мають компоненти, де співвідношення розміру величин не є цілими числами.',
m_mul_miss = 'Пропущено код одиниці для множинної одиниці.',
m_mul_none = 'Не зазначено жодної одиниці для множинної одиниці «$1»',
m_mul_one = 'Лише одна одиниця зазначена для множинної одиниці «$1»',
m_mul_order = 'Множинна одиниця «$2» має компоненти в неправильній послідовності або з недійсними розмірами величин.',
m_mul_scale = 'Множинна одиниця «$2» має компонент з недійсним розміром величин, «$1».',
m_mul_std = 'Одиниця «$1» в множинній одиниці «$2» повинанна бути стандартною одиницею.',
m_mul_type = 'Одиниця «$1» в множинній одиниці «$2» має неправильний тип.',
m_mul_undef = 'Одиниця «$1» в множинній одиниці «$2» не визначена.',
m_no_title = 'Потрібно назва сторінки з визначеннями одиниць.',
m_ovr_dup = 'Перезаписування «$1» вже визначено.',
m_ovr_miss = 'Пропущено код одиниці для перезаписування.',
m_per_dup = 'На одиниця «$1» вже визначена.',
m_per_empty = 'Одиниця «$1» має пусте поле в «на».',
m_per_fuel = 'Одиниця «$1» має недійсний тип одиниці для ефективності палива.',
m_per_inv = 'Недійсне поле для «на».',
m_per_two = 'Одиниця «$1» не має чітко 2 полів в «на».',
m_per_undef = 'Одиниця «$1» має невизначений код одиниці «$2» в «на».',
m_percent_s = 'Поле «$1» не повинно містити «%s».',
m_pnm_cnt = 'Розділ Назви для другої одиниці у фразі з на: кожен рядок повинен мати два стовпчики.',
m_pnm_dup = 'Одиниця «$1» вже має назву після на.',
m_pnm_miss = 'Пропущено поле для назви після на.',
m_pnm_undef = 'Одиниця «$1» в назві після на не визначена.',
m_pfx_bad = 'Невідомий префікс: «$1».',
m_pfx_name = 'Одиниця з набором Префіксів повинна включати Назву.',
m_scl_bad = 'Вираз розміру величини є недійсним: «$1».',
m_scl_miss = 'Пропущено розмір величини.',
m_scl_oflow = 'Результатом виразу розміру величини є недійсне значення: «$1».',
m_var_cnt = 'Розділ Змінні назви: кожен рядок повинен мати задану кількість полів.',
m_var_dup = 'Одиниця «$1» вже має змінну назву.',
m_var_miss = 'Пропущено поле для змінної назви.',
m_var_undef = 'Одиниця «$1» в змінних назвах не визначена.',
m_warning = 'Попередження:',
m_wrn_more = ' (та більше не показано)',
m_wrn_nbsp = 'Рядок $1 містить нерозривний пробіл.',
m_wrn_nodef = 'Одиниці з наступними кодами одиниць не мають стандартного виводу.',
m_wrn_ucode = ' $1',
},
},
numdot = ',', -- decimal mark
numsep = ' ', -- separator for number grouping
per_word = 'на',
plural_suffix = '', -- disable plural unit names
varname = 'uk', -- variable names for ukwiki
specials = {
utype = {
-- ["unit type in local language"] = "name_used_in_this_script"
["ефективність палива"] = "type_fuel_efficiency",
["довжина"] = "type_length",
["температура"] = "type_temperature",
["об'єм"] = "type_volume",
},
ucode = {
exception = {
-- ["unit code in local language"] = "name_used_in_module_convert"
["ft"] = "integer_more_precision",
["in"] = "subunit_more_precision",
["lb"] = "integer_more_precision",
},
istemperature = {
-- Common temperature scales (not keVT or MK).
-- ["unit code in local language"] = 1
["C"] = true,
["F"] = true,
["K"] = true,
["R"] = true,
},
usesymbol = {
-- Use unit symbol not name if abbr not specified.
-- ["unit code in local language"] = 1
["C"] = 1,
["F"] = 1,
["K"] = 1,
["R"] = 1,
["C-change"] = 1,
["F-change"] = 1,
["K-change"] = 1,
},
alttype = {
-- Unit has an alternate type that is a valid conversion.
-- ["unit code in local language"] = "alternate type in local language"
["Nm"] = "енергія",
["ftlb"] = "момент сили",
["ftlb-f"] = "момент сили",
["ftlbf"] = "момент сили",
["inlb"] = "момент сили",
["inlb-f"] = "момент сили",
["inlbf"] = "момент сили",
["inoz-f"] = "момент сили",
["inozf"] = "момент сили",
},
},
}
}
-- Some units accept an SI prefix before the unit code, such as "kg" for kilogram.
local SIprefixes = {
-- The prefix field is what the prefix should be, if different from the prefix used.
['Кв']= { exponent = 30, name = 'квета' , },
['Q'] = { exponent = 30, name = 'квета' , prefix = 'Кв' },
['Р'] = { exponent = 27, name = 'ронна' , },
['R'] = { exponent = 27, name = 'ронна' , prefix = 'Р' },
['Й'] = { exponent = 24, name = 'йотта' , },
['Y'] = { exponent = 24, name = 'йотта' , prefix = 'Й' },
['З'] = { exponent = 21, name = 'зетта' , },
['Z'] = { exponent = 21, name = 'зетта' , prefix = 'З' },
['Е'] = { exponent = 18, name = 'екса' , },
['E'] = { exponent = 18, name = 'екса' , prefix = 'Е' },
['П'] = { exponent = 15, name = 'пета' , },
['P'] = { exponent = 15, name = 'пета' , prefix = 'П' },
['Т'] = { exponent = 12, name = 'тера' , },
['T'] = { exponent = 12, name = 'тера' , prefix = 'Т' },
['Г'] = { exponent = 9, name = 'гіга' , },
['G'] = { exponent = 9, name = 'гіга' , prefix = 'Г' },
['М'] = { exponent = 6, name = 'мега' , },
['M'] = { exponent = 6, name = 'мега' , prefix = 'М' },
['к'] = { exponent = 3, name = 'кіло' , },
['k'] = { exponent = 3, name = 'кіло' , prefix = 'к' },
['г'] = { exponent = 2, name = 'гекто' , },
['h'] = { exponent = 2, name = 'гекто' , prefix = 'г' },
['да']= { exponent = 1, name = 'дека' , },
['da']= { exponent = 1, name = 'дека' , prefix = 'да' },
['д'] = { exponent = -1, name = 'деци' , },
['d'] = { exponent = -1, name = 'деци' , prefix = 'д' },
['с'] = { exponent = -2, name = 'санти' , },
['c'] = { exponent = -2, name = 'санти' , prefix = 'с' },
['м'] = { exponent = -3, name = 'мілі' , },
['m'] = { exponent = -3, name = 'мілі' , prefix = 'м' },
['мк']= { exponent = -6, name = 'мікро' , },
['μ'] = { exponent = -6, name = 'мікро' , prefix = 'мк' }, -- key = 'GREEK SMALL LETTER MU' (U+03BC) utf-8 CE BC
['µ'] = { exponent = -6, name = 'мікро' , prefix = 'мк' }, -- key = 'MICRO SIGN' (U+00B5) utf-8 C2 B5
['u'] = { exponent = -6, name = 'мікро' , prefix = 'мк' }, -- not an SI prefix, but allow for people typing this
['н'] = { exponent = -9, name = 'нано' , },
['n'] = { exponent = -9, name = 'нано' , prefix = 'н' },
['п'] = { exponent =-12, name = 'піко' , },
['p'] = { exponent =-12, name = 'піко' , prefix = 'п' },
['ф'] = { exponent =-15, name = 'фемто' , },
['f'] = { exponent =-15, name = 'фемто' , prefix = 'ф' },
['а'] = { exponent =-18, name = 'ато' , },
['a'] = { exponent =-18, name = 'ато' , prefix = 'а' },
['з'] = { exponent =-21, name = 'зепто' , },
['z'] = { exponent =-21, name = 'зепто' , prefix = 'з' },
['й'] = { exponent =-24, name = 'йокто' , },
['y'] = { exponent =-24, name = 'йокто' , prefix = 'й' },
['р'] = { exponent =-27, name = 'ронто' , },
['r'] = { exponent =-27, name = 'ронто' , prefix = 'р' },
['кв']= { exponent =-30, name = 'квекто', },
['q'] = { exponent =-30, name = 'квекто', prefix = 'кв' },
}
-- Some units can be qualified with one of the following prefixes, when linked.
local customary_units = {
{ "US", link = "United States customary units" },
{ "U.S.", link = "United States customary units" },
{ "imperial", link = "Imperial units" },
{ "imp", link = "Imperial units" },
}
-- Names when using engineering notation (a prefix of "eN" where N is a number; example "e6km").
-- key = { "name", link = "article title", exponent = numeric_key_value }
-- If lk=on and link is defined, the name of the number will appear as a link.
local eng_scales = {
["3"] = { name1 = "тисяча", varname = "тисячі!тичяч!тисячі", exponent = 3 },
["6"] = { name1 = "мільйон", varname = "мільйони!мільйонів!мільйона", exponent = 6 },
["9"] = { name1 = "мільярд", varname = "мільярди!мільярдів!мільярда", link = "Мільярд", exponent = 9 },
["12"] = { name1 = "трильйон", varname = "трильйони!трильйонів!трильйона", link = "Трильйон", exponent = 12 },
["15"] = { name1 = "квадрильйон", varname = "квадрильйони!квадрильйонів!квадрильйона", link = "Квадрильйон", exponent = 15 },
}
-- One of the following categories is included in the text of each message.
local all_categories = {
unit = "[[Категорія:Помилки Convert]]",
option = "[[Категорія:Помилки Convert]]",
warning = "[[Категорія:Недійсні опції Convert]]",
tracking = "[[Category:Спостереження за Convert]]",
}
-- For some error messages, the following puts the wanted style around
-- each unit code marked like '...%{ft%}...'.
local unitcode_regex = '%%([{}])'
local unitcode_replace = { ['{'] = '"', ['}'] = '"' } -- no longer need the more elaborate substitute used before 2013-09-28
-- All messages that may be displayed if a problem occurs.
local all_messages = {
-- Message format string, $1 parameters: anchor, title, text, category.
-- Each displayed message starts with "Convert:" so can easily locate by searching article.
cvt_format = '<sup class="noprint Inline-Template" style="white-space:nowrap;">[<i>[[Довідка:Повідомлення Convert#$4|<span title="Convert: $1">convert: $2</span>]]</i>]</sup>$3<span class="error"></span>',
cvt_format2 = '<sup class="noprint Inline-Template" style="white-space:nowrap;">[[Довідка:Повідомлення Convert#$4|<span title="Convert: $1">$2</span>]]</sup>$3<span class="error"></span>',
cvt_format_preview = '<strong class="error">Помилка в convert: $1 [[Довідка:Повідомлення Convert#$4|(допомога)]]</strong>$3',
-- Each of following messages is a table:
-- { [1] = 'title', -- mouseover title text
-- [2] = 'text', -- link text displayed in article
-- [3] = 'category key', -- key to lookup category in all_categories
-- [4] = 'anchor', -- anchor for link to relevant section on help page
-- regex = gsub_regex,
-- replace = gsub_table,
-- } Mouseover title text Link text CatKey Anchor
cvt_bad_input = { 'input «$1» повинен бути числом або одиницею вимірювання', 'недійсний input' , 'option', 'invalid_input' },
cvt_bad_num = { 'Значення «$1» повинно бути числом' , 'недійсне число' , 'option', 'invalid_number' },
cvt_big_prec = { 'Точність «$1» занадто велика' , 'точність занадто велика' , 'option', 'precision_too_large' },
cvt_invalid_num = { 'Число переповнене' , 'переповнення числа' , 'option', 'number_overflow' },
cvt_no_num = { 'Потребує число для конвертації' , 'потребує число' , 'option', 'needs_number' },
cvt_no_num2 = { 'Потребує інше число для діапозону' , 'потребує інше число' , 'option', 'needs_another_number' },
cvt_bad_altitude = { '«$1» потребує ціле число' , 'недійсна альтитуда' , 'option', 'invalid_altitude' },
cvt_bad_frac = { 'frac «$1» повинен бути цілим числом більше 1' , 'недійсний дріб' , 'option', 'invalid_fraction' },
cvt_bad_prec = { 'Точність «$1» повинна бути цілим числом' , 'недійсна точність' , 'option', 'invalid_precision' },
cvt_bad_sigfig = { 'sigfig «$1» повинен бути додатнім цілим числом' , 'недійсний sigfig' , 'option', 'invalid_sigfig' },
cvt_empty_option = { 'Проігноровано пусту опцію «$1»' , 'пуста опція' , 'option', 'empty_option' },
cvt_deprecated = { 'Опція «$1» є застарілою' , '*' , 'option', 'deprecated_option', format = 'cvt_format2' },
cvt_no_spell = { 'Написання недоступне' , 'баг, зверніться за допомогою', 'option', 'ask_for_help' },
cvt_unknown_option = { 'Проігноровано недійсну опцію «$1»' , 'недійсна опція' , 'option', 'invalid_option' },
cvt_wd_fail = { 'Не вдалося отримати доступ до вікіданих' , 'проблема з вікіданими' , 'option', 'wikidata_problem' },
cvt_bad_default = { 'Одиниця «$1» має недійсне стандартне значення' , 'баг, зверніться за допомогою', 'unit' , 'ask_for_help' },
cvt_bad_unit = { 'Одиниця «$1» недійсна в цьому місці' , 'одиниця недійсна тут' , 'unit' , 'unit_invalid_here' },
cvt_no_default = { 'Одиниця «$1» не має стандартної одиниці для виводу' , 'баг, зверніться за допомогою', 'unit' , 'ask_for_help' },
cvt_no_unit = { 'Потребує назву одиниці' , 'потребує назву одиниці' , 'unit' , 'needs_unit_name' },
cvt_unknown = { 'Назва одиниці «$1» невідома' , 'невідома одиниця' , 'unit' , 'unknown_unit' },
cvt_should_be = { '$1' , 'неоднозначна одиниця' , 'unit' , 'ambiguous_unit', regex = unitcode_regex, replace = unitcode_replace },
cvt_mismatch = { 'Неможливо конвертувати «$1» до «$2»' , 'не збігаються одиниці' , 'unit' , 'unit_mismatch' },
cvt_bug_convert = { 'Баг: Неможливо конвертувати між зазначеними одиницями' , 'баг, зверніться за допомогою', 'unit' , 'ask_for_help' },
cvt_lookup = { 'Одиниця «$1» неправильно визначена' , 'баг, зверніться за допомогою', 'unit' , 'ask_for_help' },
}
-- Text to join input value/unit with output value/unit.
local disp_joins = {
-- [1]=before output, [2]=after output, [3]=between outputs in a combination; default "; "
-- [wantname] gives default abbr=off
["or"] = { " or " , "" , " or ", wantname = true },
["sqbr-sp"] = { " [" , "]" },
["sqbr-nbsp"] = { " [" , "]" },
["comma"] = { ", " , "" , ", " },
["semicolon"] = { "; " , "" },
["slash-sp"] = { " / " , "" , wantname = true },
["slash-nbsp"] = { " / ", "" , wantname = true },
["slash-nosp"] = { "/" , "" , wantname = true },
["b"] = { " (" , ")" },
["(or)"] = { " (" , ")", " or " },
["br"] = { "<br />" , "" , wantname = true },
["br()"] = { "<br />(" , ")", wantname = true },
}
-- Text to separate values in a range.
local range_types = {
-- Specifying a table requires either:
-- * "off" and "on" values (for "abbr=off" and "abbr=on"), or
-- * "input" and "output" values (for LHS and RHS);
-- other fields are optional.
-- When "adj=on|abbr=off" applies, spaces in range text are replaced with hyphens.
-- With "exception = true", that also occurs with "adj=on|abbr=on".
-- If "adj" is defined here, that text (unchanged) is used with "adj=on".
["+"] = " + ",
[","] = ", ",
[", and"] = ", та ",
[", or"] = ", або ",
["by"] = " на ",
["-"] = "—",
["to about"] = " до близько ",
["and"] = { off = " та ", on = " та ", exception = true },
["and(-)"] = { input = " та ", output = "—" },
["or"] = { off = " або " , on = " або " , exception = true },
["to"] = { off = " до " , on = " до " , exception = true },
["to(-)"] = { input = " до ", output = "—" },
["+/-"] = { off = " ± ", on = " ± ", adj = " ± ", is_range_change = true },
["by(x)"] = { input = " на ", output = " × ", out_range_x = true },
["x"] = { off = " на ", on = " × ", abbr_range_x = true },
["X"] = { off = " на ", on = " × " }, -- TEMPORARY and undocumented option for experiments to compare with new abbr_range_x
["xx"] = " × ",
["*"] = "×", -- use "*" to replace "x" in {{convert/2}} which is different from "x" in old {{convert}}
["/"] = " / ", -- for a table of high/low temperatures with {{convert|83|/|63|F|disp=br()|abbr=values}}
}
local range_aliases = {
-- ["alternative name for a range"] = "standard range name"
["&"] = "and",
["–"] = "-",
["—"] = "-",
["–"] = "-",
["to-"] = "to(-)",
["×"] = "x",
["×"] = "x",
["±"] = "+/-",
["±"] = "+/-",
[", та"] = ", and",
[", або"] = ", or",
["на"] = "by",
["до близько"] = "to about",
["та"] = "and",
["та(-)"] = "and(-)",
["або"] = "or",
["до"] = "to",
["до(-)"] = "to(-)",
["на(x)"] = "by(x)",
}
-- Convert accepts range text delimited with whitespace, for example, {{convert|1 to 2|ft}}.
-- In addition, the following "words" are accepted without spaces, for example, {{convert|1-2|ft}}.
-- Words must be in correct order for searching, for example, 'x' after 'xx'.
local range_words = { '-', '–', 'xx', 'x', '*' }
local ranges = {
types = range_types,
aliases = range_aliases,
words = range_words,
}
-- Valid option names.
local en_option_name = {
-- ["local text for option name"] = "en name used in this module"
["$"] = "$",
["abbr"] = "abbr",
["adj"] = "adj",
["altitude_ft"] = "altitude_ft",
["altitude_m"] = "altitude_m",
["comma"] = "comma",
["debug"] = "debug",
["disp"] = "disp",
["error"] = "error",
["frac"] = "frac",
["input"] = "input",
["lang"] = "lang",
["link"] = "lk",
["lk"] = "lk",
["near"] = "near",
["order"] = "order",
["qid"] = "qid",
["qual"] = "qual",
["qualifier"] = "qual",
["round"] = "round",
["sigfig"] = "sigfig",
["sing"] = "adj", -- "sing" is an old alias for "adj"
["sortable"] = "sortable",
["sp"] = "sp",
["spell"] = "spell",
["stylein"] = "stylein",
["styleout"] = "styleout",
["tracking"] = "tracking",
}
-- Valid option values.
-- Convention: parms.opt_xxx refers to an option that is set here
-- (not intended to be set by the template which invokes this module).
-- Example: At en.wiki, "abbr" includes:
-- ["comma"] = "opt_nocomma"
-- As a result, if the template uses abbr=comma, this script sets:
-- parms["opt_nocomma"] = true
-- parms["abbr"] = nil
-- Therefore parms.abbr will be nil, or will have one of the listed values
-- that do not start with "opt_".
-- 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 = {
["$"] = 'TEXT', -- TEXT should be a currency symbol that will be used instead of "$"
["abbr"] = {
-- ["local text for option value"] = "en value used in this module"
["comma"] = "opt_nocomma?", -- no numsep in input or output numbers
["def"] = "", -- ignored (some wrapper templates call convert with "abbr=def" to mean "default abbreviation")
["h"] = "on", -- abbr=on + use "h" for hand unit (default)
["hh"] = "opt_hand_hh", -- abbr=on + use "hh" for hand unit
["in"] = "in", -- use symbol for LHS unit
["mos"] = "mos", -- in a range, repeat the input unit (no longer used)
["none"] = "off", -- old name for "off"
["off"] = "off", -- use name for all units
["on"] = "on", -- use symbol for all units
["out"] = "out", -- use symbol for RHS unit (default)
["values"] = "opt_values", -- show only input and output numbers, not units
["~"] = "opt_also_symbol", -- show input unit symbol as well as name
},
["adj"] = {
["1"] = "opt_singular", -- unit name is singular when value satisfies: (-1 <= v and v < 0) or (0 < v and v <= 1)
["flip"] = "opt_flip?", -- reverse order of input/output
["j"] = "opt_use_nbsp", -- "join": use " " instead of " " between value and unit name
["mid"] = "opt_adjectival, opt_adj_mid", -- adj=on with user-specified text after input unit (between input and output)
["nocomma"] = "opt_nocomma?", -- no numsep in input or output numbers
["off"] = "", -- ignored (off is the default)
["on"] = "opt_adjectival", -- unit name is singular and hyphenated
["pre"] = "opt_one_preunit", -- user-specified text before input unit
["ri0"] = "opt_ri=0", -- round input with precision = 0
["ri1"] = "opt_ri=1", -- round input with precision = 1
["ri2"] = "opt_ri=2", -- round input with precision = 2
["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"] = {
["5"] = "opt_comma5", -- only use numsep grouping if 5 or more digits
["gaps"] = "opt_gaps", -- use gaps, not numsep, to separate groups of digits
["gaps3"] = "opt_gaps, opt_gaps3", -- group only in threes rather than default of no gap before a single digit after decimal mark
["gaps5"] = "opt_gaps?", -- deprecated 2015-05-29, was: opt_gaps + opt_comma5
["off"] = "opt_nocomma", -- no numsep in input or output numbers
},
["debug"] = {
["yes"] = "opt_sortable_debug", -- make the normally hidden sort key visible
},
["disp"] = {
["/"] = "or?", -- see "slash"
["2"] = "opt_output_only?", -- display only output value and symbol/name (not input)
["5"] = "opt_round=5", -- round output value to nearest 5
["b"] = "b", -- join: '(...)'
["(or)"] = "(or)", -- join: '(...)' with 'or' between outputs in a combination
["br"] = "br", -- join: '<br />'
["br()"] = "br()", -- join: '<br />(...)'
["comma"] = "comma", -- join: ','
["flip"] = "opt_flip", -- reverse order of input/output
["flip5"] = "opt_flip, opt_round=5?", -- disp=flip + disp=5
["nocomma"] = "opt_nocomma?", -- no numsep in input or output numbers
["number"] = "opt_output_number_only", -- display output value (not input, and not output symbol/name)
["or"] = "or", -- join: 'or'
["out"] = "opt_output_only",
["output number only"] = "opt_output_number_only",
["output only"] = "opt_output_only",
["preunit"] = "opt_two_preunits", -- user-specified text before input and output units
["s"] = "or?", -- see "slash"
["semicolon"] = "semicolon", -- join: ';'
["slash"] = "or?", -- 2014-11-03: "disp=slash" is now equivalent to "disp=or" as slash is unhelpful
["sqbr"] = "sqbr", -- join: '[...]'
["table"] = "opt_table", -- output is suitable for a table cell with align="right"
["tablecen"] = "opt_tablecen", -- output is suitable for a table cell with align="center"
["u2"] = "opt_output_unit_only?", -- display output symbol/name (not input, and not output value)
["unit"] = "opt_input_unit_only", -- display input symbol/name (not output, and not input value)
["unit or text"] = "opt_input_unit_only, opt_ignore_error", -- display input symbol/name, or given unit code if not known
["unit2"] = "opt_output_unit_only",
["x"] = "x", -- join: <first>...<second> (user-specified text)
},
["error"] = 'TEXT', -- TEXT is any text that will be returned if the conversion fails, instead of an error occurring
["frac"] = 'INTEGER',
["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)
["en"] = "opt_lang_en", -- use en digits for numbers, regardless of local language
["local"] = "opt_lang_local", -- use local digits for numbers (default, although config can change default to en)
},
["lk"] = {
["in"] = "in", -- link LHS unit name or symbol
["off"] = "off", -- do not link: same as default except for hand unit
["on"] = "on", -- link all unit names or symbols (but not twice for the same unit)
["out"] = "out", -- link RHS unit name or symbol
},
["near"] = {
["5"] = "opt_round=5?", -- round output value to nearest 5
},
["order"] = {
["flip"] = "opt_flip", -- reverse order of input/output
},
["qid"] = 'TEXT', -- TEXT should be a Wikidata Q item identifier
["qual"] = 'TEXT', -- TEXT should be a Wikidata Q item identifier
["round"] = {
["0.5"] = "opt_round=0.5", -- round output value to nearest 0.5
["5"] = "opt_round=5", -- round output value to nearest 5
["10"] = "opt_round=10", -- round output value to nearest 10 (same as but clearer than "|-1")
["25"] = "opt_round=25", -- round output value to nearest 25
["50"] = "opt_round=50", -- round output value to nearest 50
["each"] = "opt_round_each", -- using default precision in a range, round each output separately (default uses highest precision of each item in range)
},
["sigfig"] = 'INTEGER',
["sortable"] = {
["off"] = "", -- ignored (off is the default)
["in"] = "opt_sortable_on?", -- same as "on"
["on"] = "opt_sortable_on", -- output sort key for use in a sortable table, based on value from converting to a standard base unit
["out"] = "opt_sortable_on?", -- same as "on"
},
["sp"] = {
["us"] = "opt_sp_us", -- use U.S. spelling (like "meter" instead of default "metre")
},
["spell"] = { -- only English spelling is supported; not scientific notation; only some fractions
["in"] = "opt_spell_in", -- spell input value in words
["In"] = "opt_spell_in, opt_spell_upper", -- spell input value in words with first letter uppercase
["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
},
["stylein"] = 'TEXT',
["styleout"] = 'TEXT',
["tracking"] = 'TEXT',
}
local titles = {
["frac"] = "Дріб/styles.css",
["sfrac"] = "Ндріб/styles.css",
}
return {
SIprefixes = SIprefixes,
all_categories = all_categories,
all_messages = all_messages,
currency = { ['$'] = true, ['£'] = true, ['€'] = true, ['₱'] = true, ['₽'] = true, ['¥'] = true, ['₴'] = true },
customary_units = customary_units,
disp_joins = disp_joins,
en_option_name = en_option_name,
en_option_value = en_option_value,
eng_scales = eng_scales,
ranges = ranges,
titles = titles,
translation_table = translation_table,
}