Module:I18n/ordinal: Difference between revisions
From Neodyland Wiki
More actions
Add Danish, Greek, Estonian, Croatian, and Low German |
m add Tamil, move generic schemes at top, before schemes for specific languages ordered by language code; TODO: roman-scheme for centuries in eu/gl/it and la-classical) |
||
| Line 19: | Line 19: | ||
['es'] = 'es-scheme', -- Spanish | ['es'] = 'es-scheme', -- Spanish | ||
['et'] = 'period-scheme', -- Estonian | ['et'] = 'period-scheme', -- Estonian | ||
['eu'] = 'roman-scheme', -- Basque | |||
['fa'] = 'fa-scheme', -- Persian | ['fa'] = 'fa-scheme', -- Persian | ||
['fi'] = 'period-scheme', -- Finnish | ['fi'] = 'period-scheme', -- Finnish | ||
| Line 44: | Line 45: | ||
['sl'] = 'period-scheme', -- Slovene | ['sl'] = 'period-scheme', -- Slovene | ||
['sv'] = 'sv-scheme', -- Swedish | ['sv'] = 'sv-scheme', -- Swedish | ||
['ta'] = 'ta-scheme', -- Tamil | |||
['th'] = 'th-scheme', -- Thai | ['th'] = 'th-scheme', -- Thai | ||
['zh'] = 'zh-scheme', -- Chinese | ['zh'] = 'zh-scheme', -- Chinese | ||
| Line 50: | Line 52: | ||
--[[ Text used to internationalize the various schemes. | --[[ Text used to internationalize the various schemes. | ||
Styles are supported by suffixing "/style" to key. | Styles are supported by suffixing "/style" to key. | ||
Styles that are superscripted set "superscript" to true. | Styles that are superscripted set "superscript" to true (this style can be disabled, e.g. in category and page names not supporting HTML styling tags). | ||
Scheme set was developed to match the output of the pre-Lua {{Ordinal}} template, preserved as {{Ordinal/old}} | Scheme set was developed to match the output of the pre-Lua {{Ordinal}} template, preserved as {{Ordinal/old}} | ||
]] | ]] | ||
p.Scheme = { | p.Scheme = { | ||
-- the null scheme, i.e. just the number | -- the null scheme, i.e. just the number (normally not used except in technical contexts expecting only numbers) | ||
['null-scheme'] = { | ['null-scheme'] = { | ||
}, | }, | ||
| Line 64: | Line 66: | ||
}, | }, | ||
-- | -- Roman (Basque, Galician, Italian, and Classical Latin) | ||
[' | ['roman-scheme'] = { | ||
rules = ' | period = false, | ||
superscript = false, | |||
formatlang = 'roman' | |||
}, | |||
-- Romance (Italian, Portuguese) | |||
['romance-scheme'] = { | |||
rules = 'gendered-suffix', | |||
superscript = true, | superscript = true, | ||
suffix = ' | period = false, | ||
suffix = 'o', | |||
suffix_m = 'o', | |||
suffix_f = 'a', | |||
suffix_n = 'o', | |||
}, | }, | ||
-- Bengali | -- Bengali | ||
['bn-scheme'] = { | ['bn-scheme'] = { | ||
rules = 'mod10-suffix', | rules = 'mod10-suffix', | ||
superscript = true, | superscript = true, | ||
suffix_0 = 'ম', | |||
suffix_1 = 'ম', | |||
suffix_2 = 'য়', | |||
suffix_3 = 'য়', | |||
suffix_4 = 'র্থ়', | |||
suffix_5 = 'ম', | |||
suffix_6 = 'ষ্ঠ', | |||
suffix_7 = 'ম', | |||
suffix_8 = 'ম', | |||
suffix_9 = 'ম', | |||
}, | }, | ||
| Line 100: | Line 104: | ||
rules = 'suffix', | rules = 'suffix', | ||
suffix = '-vet', | suffix = '-vet', | ||
formatlang = 'eo' -- pre-Lua {{Ordinal}} template used "eo" number formatting for "br" ordinals | formatlang = 'eo' -- pre-Lua {{Ordinal}} template used "eo" number formatting for "br" ordinals (???FIXME???) | ||
}, | }, | ||
| Line 112: | Line 116: | ||
}, | }, | ||
-- the English scheme, i.e. "1st", "2nd", "3rd", "4th". | |||
['en-scheme'] = { | |||
rules = 'skip-tens', | |||
superscript = true, | |||
suffix = 'th', | |||
suffix_1 = 'st', | |||
suffix_2 = 'nd', | |||
suffix_3 = 'rd', | |||
}, | |||
-- the English scheme using the "d" style, i.e. "23d". | |||
['en-scheme/d'] = { | |||
rules = 'suffix', | |||
suffix = 'd' | |||
}, | |||
-- Esperanto | -- Esperanto | ||
['eo-scheme'] = { | ['eo-scheme'] = { | ||
| Line 118: | Line 138: | ||
}, | }, | ||
-- Romance | -- Spanish (period plus Romance) | ||
['es-scheme'] = { | ['es-scheme'] = { | ||
rules = 'gendered-suffix', | rules = 'gendered-suffix', | ||
| Line 143: | Line 152: | ||
['fa-scheme'] = { | ['fa-scheme'] = { | ||
rules = 'suffix', | rules = 'suffix', | ||
suffix = 'م', | |||
}, | }, | ||
-- French | -- French | ||
['fr-scheme'] = { | ['fr-scheme'] = { | ||
rules = 'gendered-suffix-one', | |||
superscript = true, | |||
suffix = 'e', | |||
suffix_1 = 'e', -- there's NO neutral gender in French (this is only for unspecified gender) | |||
suffix_1_m = 'er', | |||
suffix_1_f = 're', | |||
}, | |||
-- French alternate specific style for 2nd (used only when the 2nd is also the *last* one in a pair, including World Wars) | |||
['fr-scheme/pair'] = { | |||
rules = 'gendered-suffix-one', | rules = 'gendered-suffix-one', | ||
superscript = true, | superscript = true, | ||
| Line 154: | Line 173: | ||
suffix_1_m = 'er', | suffix_1_m = 'er', | ||
suffix_1_f = 're', | suffix_1_f = 're', | ||
suffix_2 = 'e', | |||
suffix_2_m = 'nd', | |||
suffix_2_f = 'de', | |||
}, | }, | ||
| Line 162: | Line 183: | ||
superscript = true, | superscript = true, | ||
suffix = 'e', | suffix = 'e', | ||
suffix_1 = 'e', | |||
suffix_1_m = 'er', | |||
suffix_1_f = 're', | |||
formatlang = 'roman' -- styled normally in small capitals (except milleniums using big capitals) | |||
}, | |||
-- French specific roman ordinal style after names of personal titles (kings/queens/popes...) and of book chapters (suffixed only for 1st) | |||
['fr-scheme/roman-title'] = { | |||
rules = 'gendered-suffix-one', | |||
superscript = true, | |||
suffix = '', -- no suffix except for 1st | |||
suffix_1 = 'e', | suffix_1 = 'e', | ||
suffix_1_m = 'er', | suffix_1_m = 'er', | ||
suffix_1_f = 're', | suffix_1_f = 're', | ||
suffix_1_n = 'е', | suffix_1_n = 'е', | ||
formatlang = 'roman' | formatlang = 'roman' -- style using only big capitals | ||
}, | }, | ||
| Line 190: | Line 222: | ||
suffix_8 = 've', | suffix_8 = 've', | ||
suffix_9 = 'ne', | suffix_9 = 'ne', | ||
}, | |||
-- Japanese | |||
-- this is for the adjective in undetermined order before noun; otherwise Japanese use: <cardinal number><noun>目 | |||
['ja-scheme'] = { | |||
rules = 'prefix', | |||
prefix = '第', | |||
}, | }, | ||
| Line 195: | Line 234: | ||
['km-scheme'] = { | ['km-scheme'] = { | ||
rules = 'prefix', | rules = 'prefix', | ||
prefix = 'ទ', | |||
}, | }, | ||
-- | -- Korean | ||
['ko-scheme'] = { | |||
[' | rules = 'suffix', | ||
rules = ' | suffix = '째', | ||
}, | }, | ||
| Line 216: | Line 254: | ||
['lo-scheme'] = { | ['lo-scheme'] = { | ||
rules = 'prefix', | rules = 'prefix', | ||
prefix = 'ທີ່', | |||
}, | }, | ||
-- Macedonian | -- Macedonian | ||
['mk-scheme'] = { | ['mk-scheme'] = { | ||
| Line 243: | Line 275: | ||
['ml-scheme'] = { | ['ml-scheme'] = { | ||
rules = 'suffix', | rules = 'suffix', | ||
suffix = '-മത്തെ', | |||
}, | }, | ||
| Line 310: | Line 342: | ||
}, | }, | ||
-- Thai | |||
['th-scheme'] = { | ['th-scheme'] = { | ||
rules = 'prefix', | rules = 'prefix', | ||
prefix = ' | prefix = 'ที่', | ||
}, | |||
-- Modern Tamil (using European digits for all numbers, with an hyphen before the suffix) | |||
['ta-scheme'] = { | |||
rules = 'suffix', | |||
suffix = '-ஆம்', | |||
formatlang = 'en', | |||
}, | |||
-- Traditional Tamil (using Tamil digits without any hyphen before the suffix, but a distinct prefix and suffix for 1st) | |||
['ta-scheme/trad'] = { | |||
rules = 'suffix-one', | |||
suffix = 'ஆம்', | |||
prefix_1 = 'மு', | |||
suffix_1 = 'லாம்', | |||
}, | }, | ||
-- Chinese | |||
['zh-scheme'] = { | ['zh-scheme'] = { | ||
rules = 'prefix', | rules = 'prefix', | ||
Revision as of 10:24, 7 April 2015
This documentation is transcluded from Module:I18n/ordinal/doc.
local p = {}
--[[ Different languages use different schemes for ordinals, and some of these schemes are shared between languages.
"SchemeFromLang" picks an ordinal scheme based on a specified language.
All unlisted languages default to the "period-scheme", i.e. "104." is the ordinal for the value "104".
Languages will follow the regular language fallback chain. For example, "de-formal" would fallback to scheme for "de",
and only if that does not exist would the "period-scheme" be used.
]]
p.SchemeFromLang = {
['bn'] = 'bn-scheme', -- Bengali
['br'] = 'br-scheme', -- Breton
['cs'] = 'period-scheme', -- Czech
['da'] = 'period-scheme', -- Danish
['de'] = 'period-scheme', -- German
['el'] = 'el-scheme', -- Greek
['en'] = 'en-scheme', -- English
['eo'] = 'eo-scheme', -- Esperanto
['es'] = 'es-scheme', -- Spanish
['et'] = 'period-scheme', -- Estonian
['eu'] = 'roman-scheme', -- Basque
['fa'] = 'fa-scheme', -- Persian
['fi'] = 'period-scheme', -- Finnish
['fr'] = 'fr-scheme', -- French
['hr'] = 'period-scheme', -- Croatian
['hu'] = 'period-scheme', -- Hungarian
['hy'] = 'hy-scheme', -- Armenian
['ia'] = 'ia-scheme', -- Interlingua
['it'] = 'romance-scheme', -- Italian
['ja'] = 'ja-scheme', -- Japanese
['km'] = 'km-scheme', -- Khmer
['ko'] = 'ko-scheme', -- Korean
['la'] = 'la-scheme', -- Latin
['lo'] = 'lo-scheme', -- Laothian
['mk'] = 'mk-scheme', -- Macedonian
['ml'] = 'ml-scheme', -- Malayalam
['ms'] = 'ms-scheme', -- Malay
['nds'] = 'period-scheme', -- Low German
['nl'] = 'nl-scheme', -- Dutch
['no'] = 'no-scheme', -- Norwegian
['pl'] = 'pl-scheme', -- Polish
['pt'] = 'romance-scheme', -- Portuguese
['ru'] = 'ru-scheme', -- Russian
['sk'] = 'period-scheme', -- Slovak
['sl'] = 'period-scheme', -- Slovene
['sv'] = 'sv-scheme', -- Swedish
['ta'] = 'ta-scheme', -- Tamil
['th'] = 'th-scheme', -- Thai
['zh'] = 'zh-scheme', -- Chinese
}
--[[ Text used to internationalize the various schemes.
Styles are supported by suffixing "/style" to key.
Styles that are superscripted set "superscript" to true (this style can be disabled, e.g. in category and page names not supporting HTML styling tags).
Scheme set was developed to match the output of the pre-Lua {{Ordinal}} template, preserved as {{Ordinal/old}}
]]
p.Scheme = {
-- the null scheme, i.e. just the number (normally not used except in technical contexts expecting only numbers)
['null-scheme'] = {
},
-- the period scheme, i.e. "<value>." used for at least: cs, de, fi, hu
['period-scheme'] = {
rules = 'suffix',
suffix = '.'
},
-- Roman (Basque, Galician, Italian, and Classical Latin)
['roman-scheme'] = {
period = false,
superscript = false,
formatlang = 'roman'
},
-- Romance (Italian, Portuguese)
['romance-scheme'] = {
rules = 'gendered-suffix',
superscript = true,
period = false,
suffix = 'o',
suffix_m = 'o',
suffix_f = 'a',
suffix_n = 'o',
},
-- Bengali
['bn-scheme'] = {
rules = 'mod10-suffix',
superscript = true,
suffix_0 = 'ম',
suffix_1 = 'ম',
suffix_2 = 'য়',
suffix_3 = 'য়',
suffix_4 = 'র্থ়',
suffix_5 = 'ম',
suffix_6 = 'ষ্ঠ',
suffix_7 = 'ম',
suffix_8 = 'ম',
suffix_9 = 'ম',
},
-- Breton
['br-scheme'] = {
rules = 'suffix',
suffix = '-vet',
formatlang = 'eo' -- pre-Lua {{Ordinal}} template used "eo" number formatting for "br" ordinals (???FIXME???)
},
-- Greek
['el-scheme'] = {
rules = 'gendered-suffix',
suffix = 'ος',
suffix_m = 'ος',
suffix_f = 'η',
suffix_n = 'ο',
},
-- the English scheme, i.e. "1st", "2nd", "3rd", "4th".
['en-scheme'] = {
rules = 'skip-tens',
superscript = true,
suffix = 'th',
suffix_1 = 'st',
suffix_2 = 'nd',
suffix_3 = 'rd',
},
-- the English scheme using the "d" style, i.e. "23d".
['en-scheme/d'] = {
rules = 'suffix',
suffix = 'd'
},
-- Esperanto
['eo-scheme'] = {
rules = 'suffix',
suffix = '-a',
},
-- Spanish (period plus Romance)
['es-scheme'] = {
rules = 'gendered-suffix',
superscript = true,
period = true,
suffix = 'o',
suffix_m = 'o',
suffix_f = 'a',
suffix_n = 'o',
},
-- Persian
['fa-scheme'] = {
rules = 'suffix',
suffix = 'م',
},
-- French
['fr-scheme'] = {
rules = 'gendered-suffix-one',
superscript = true,
suffix = 'e',
suffix_1 = 'e', -- there's NO neutral gender in French (this is only for unspecified gender)
suffix_1_m = 'er',
suffix_1_f = 're',
},
-- French alternate specific style for 2nd (used only when the 2nd is also the *last* one in a pair, including World Wars)
['fr-scheme/pair'] = {
rules = 'gendered-suffix-one',
superscript = true,
suffix = 'e',
suffix_1 = 'e',
suffix_1_m = 'er',
suffix_1_f = 're',
suffix_2 = 'e',
suffix_2_m = 'nd',
suffix_2_f = 'de',
},
-- the French scheme using the "roman" style ("roman year" is a supported alias for "roman")
['fr-scheme/roman'] = {
rules = 'gendered-suffix-one',
superscript = true,
suffix = 'e',
suffix_1 = 'e',
suffix_1_m = 'er',
suffix_1_f = 're',
formatlang = 'roman' -- styled normally in small capitals (except milleniums using big capitals)
},
-- French specific roman ordinal style after names of personal titles (kings/queens/popes...) and of book chapters (suffixed only for 1st)
['fr-scheme/roman-title'] = {
rules = 'gendered-suffix-one',
superscript = true,
suffix = '', -- no suffix except for 1st
suffix_1 = 'e',
suffix_1_m = 'er',
suffix_1_f = 're',
suffix_1_n = 'е',
formatlang = 'roman' -- style using only big capitals
},
-- Armenian
['hy-scheme'] = {
rules = 'suffix-one',
suffix = '-րդ',
suffix_1 = '-ին',
},
-- Interlingua
['ia-scheme'] = {
rules = 'mod10-suffix',
superscript = true,
suffix_0 = 'te',
suffix_1 = 'me',
suffix_2 = 'nde',
suffix_3 = 'tie',
suffix_4 = 'te',
suffix_5 = 'te',
suffix_6 = 'te',
suffix_7 = 'me',
suffix_8 = 've',
suffix_9 = 'ne',
},
-- Japanese
-- this is for the adjective in undetermined order before noun; otherwise Japanese use: <cardinal number><noun>目
['ja-scheme'] = {
rules = 'prefix',
prefix = '第',
},
-- Khmer
['km-scheme'] = {
rules = 'prefix',
prefix = 'ទ',
},
-- Korean
['ko-scheme'] = {
rules = 'suffix',
suffix = '째',
},
-- Latin
['la-scheme'] = {
rules = 'suffix',
superscript = true,
suffix = 'o',
formatlang = 'roman'
},
-- Laothian
['lo-scheme'] = {
rules = 'prefix',
prefix = 'ທີ່',
},
-- Macedonian
['mk-scheme'] = {
rules = 'mod10-suffix',
suffix_0 = '-тиот',
suffix_1 = '-виот',
suffix_2 = '-риот',
suffix_3 = '-иот',
suffix_4 = '-иот',
suffix_5 = '-тиот',
suffix_6 = '-иот',
suffix_7 = '-миот',
suffix_8 = '-миот',
suffix_9 = '-тиот',
},
-- Malayalam
['ml-scheme'] = {
rules = 'suffix',
suffix = '-മത്തെ',
},
-- Malay
['ms-scheme'] = {
rules = 'prefix',
prefix = 'ke-',
},
-- Dutch
['nl-scheme'] = {
rules = 'suffix',
suffix = 'e',
},
--Norwegian
['no-scheme'] = {
rules = 'skip-tens',
superscript = true,
suffix = 'de',
suffix_1 = 'ste',
suffix_2 = 'dre',
suffix_3 = 'dje',
suffix_5 = 'te',
suffix_6 = 'te',
},
-- Polish
['pl-scheme'] = {
rules = 'mod10-gendered-suffix-skip-tens',
suffix = '-ty',
suffix_f = '-ta',
suffix_n = '-te',
suffix_1 = '-szy',
suffix_1_f = '-sza',
suffix_1_n = '-sze',
suffix_2 = '-gi',
suffix_2_f = '-ga',
suffix_2_n = '-gie',
suffix_3 = '-ci',
suffix_3_f = '-cia',
suffix_3_n = '-cie',
suffix_7 = '-my',
suffix_7_f = '-ma',
suffix_7_n = '-me',
suffix_8 = '-my',
suffix_8_f = '-ma',
suffix_8_n = '-me',
},
-- Russian
['ru-scheme'] = {
rules = 'gendered-suffix',
suffix = '-й',
suffix_m = '-й',
suffix_f = '-я',
suffix_n = '-е',
},
-- Swedish
['sv-scheme'] = {
rules = 'skip-tens',
suffix = ':e',
suffix_1 = ':a',
suffix_2 = ':a',
},
-- Thai
['th-scheme'] = {
rules = 'prefix',
prefix = 'ที่',
},
-- Modern Tamil (using European digits for all numbers, with an hyphen before the suffix)
['ta-scheme'] = {
rules = 'suffix',
suffix = '-ஆம்',
formatlang = 'en',
},
-- Traditional Tamil (using Tamil digits without any hyphen before the suffix, but a distinct prefix and suffix for 1st)
['ta-scheme/trad'] = {
rules = 'suffix-one',
suffix = 'ஆம்',
prefix_1 = 'மு',
suffix_1 = 'லாம்',
},
-- Chinese
['zh-scheme'] = {
rules = 'prefix',
prefix = '第',
},
}
return p