Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/locales.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/ru
diff options
context:
space:
mode:
authorDean Karn <Dean.Karn@metricaid.com>2016-11-08 19:14:13 +0300
committerDean Karn <Dean.Karn@metricaid.com>2016-11-08 19:14:13 +0300
commit7832011dcf5c8b82caa7d6b379c5df17d5681fea (patch)
treeb2feec7ef734b652acf3ac50d3bf8f90623eba63 /ru
parent23da3897c15437bd43dc8d2bc5f49ac4849e6c32 (diff)
Correct some issues + Add Russian testsv0.10.2
- corrected handling of single quite in date formats, index was off causing quotes to appear in text - corrected bug in plurals rules mod != rules were generating mod10 < 12 && mod10 >14, when it should be (mod10 < 12 || mod10 > 14) - added code to sort plural rules, no real issue just now print in order - override russian percent format CLDR contains space between # and % but should be no space. Russian tests were added, thanks @nikolay-turpitko. - updated tests to cover 100% of range rules.
Diffstat (limited to 'ru')
-rw-r--r--ru/ru.go24
1 files changed, 10 insertions, 14 deletions
diff --git a/ru/ru.go b/ru/ru.go
index 2592e128..afa47aa8 100644
--- a/ru/ru.go
+++ b/ru/ru.go
@@ -18,7 +18,6 @@ type ru struct {
group string
minus string
percent string
- percentSuffix string
perMille string
timeSeparator string
inifinity string
@@ -56,8 +55,7 @@ func New() locales.Translator {
perMille: "‰",
timeSeparator: ":",
inifinity: "∞",
- currencies: []string{"ADP ", "AED", "AFA ", "AFN", "ALK ", "ALL", "AMD", "ANG", "AOA", "AOK ", "AON ", "AOR ", "ARA ", "ARL ", "ARM ", "ARP ", "ARS", "ATS ", "A$", "AWG", "AZM ", "AZN", "BAD ", "BAM", "BAN ", "BBD", "BDT", "BEC ", "BEF ", "BEL ", "BGL ", "BGM ", "BGN", "BGO ", "BHD", "BIF", "BMD", "BND", "BOB", "BOL ", "BOP ", "BOV ", "BRB ", "BRC ", "BRE ", "R$", "BRN ", "BRR ", "BRZ ", "BSD", "BTN", "BUK ", "BWP", "BYB ", "BYR", "BZD", "CA$", "CDF", "CHE ", "CHF", "CHW ", "CLE ", "CLF ", "CLP", "CNX ", "CN¥", "COP", "COU ", "CRC", "CSD ", "CSK ", "CUC", "CUP", "CVE", "CYP ", "CZK", "DDM ", "DEM ", "DJF", "DKK", "DOP", "DZD", "ECS ", "ECV ", "EEK ", "EGP", "ERN", "ESA ", "ESB ", "ESP ", "ETB", "€", "FIM ", "FJD", "FKP", "FRF ", "£", "GEK ", "GEL", "GHC ", "GHS", "GIP", "GMD", "GNF", "GNS ", "GQE ", "GRD ", "GTQ", "GWE ", "GWP ", "GYD", "HK$", "HNL", "HRD ", "HRK", "HTG", "HUF", "IDR", "IEP ", "ILP ", "ILR ", "₪", "₹", "IQD", "IRR", "ISJ ", "ISK", "ITL ", "JMD", "JOD", "¥", "KES", "KGS", "KHR", "KMF", "KPW", "KRH ", "KRO ", "₩", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL ", "LTL", "LTT ", "LUC ", "LUF ", "LUL ", "LVL", "LVR ", "LYD", "MAD", "MAF ", "MCF ", "MDC ", "MDL", "MGA", "MGF ", "MKD", "MKN ", "MLF ", "MMK", "MNT", "MOP", "MRO", "MTL ", "MTP ", "MUR", "MVP ", "MVR", "MWK", "MX$", "MXP ", "MXV ", "MYR", "MZE ", "MZM ", "MZN", "NAD", "NGN", "NIC ", "NIO", "NLG ", "NOK", "NPR", "NZ$", "OMR", "PAB", "PEI ", "PEN", "PES ", "PGK", "PHP", "PKR", "PLN", "PLZ ", "PTE ", "PYG", "QAR", "RHD ", "ROL ", "RON", "RSD", "₽", "р.", "RWF", "SAR", "SBD", "SCR", "SDD ", "SDG", "SDP ", "SEK", "SGD", "SHP", "SIT ", "SKK ", "SLL", "SOS", "SRD", "SRG ", "SSP", "STD", "SUR ", "SVC ", "SYP", "SZL", "฿", "TJR ", "TJS", "TMM ", "ТМТ", "TND", "TOP", "TPE ", "TRL ", "TRY", "TTD", "NT$", "TZS", "₴", "UAK ", "UGS ", "UGX", "$", "USN ", "USS ", "UYI ", "UYP ", "UYU", "UZS", "VEB ", "VEF", "₫", "VNN ", "VUV", "WST", "FCFA", "XAG ", "XAU ", "XBA ", "XBB ", "XBC ", "XBD ", "EC$", "XDR ", "XEU ", "XFO ", "XFU ", "CFA", "XPD ", "CFPF", "XPT ", "XRE ", "XSU ", "XTS ", "XUA ", "XXXX", "YDD ", "YER", "YUD ", "YUM ", "YUN ", "YUR ", "ZAL ", "ZAR", "ZMK ", "ZMW", "ZRN ", "ZRZ ", "ZWD ", "ZWL ", "ZWR "},
- percentSuffix: " ",
+ currencies: []string{"ADP", "AED", "AFA", "AFN", "ALK", "ALL", "AMD", "ANG", "AOA", "AOK", "AON", "AOR", "ARA", "ARL", "ARM", "ARP", "ARS", "ATS", "A$", "AWG", "AZM", "AZN", "BAD", "BAM", "BAN", "BBD", "BDT", "BEC", "BEF", "BEL", "BGL", "BGM", "BGN", "BGO", "BHD", "BIF", "BMD", "BND", "BOB", "BOL", "BOP", "BOV", "BRB", "BRC", "BRE", "R$", "BRN", "BRR", "BRZ", "BSD", "BTN", "BUK", "BWP", "BYB", "BYR", "BZD", "CA$", "CDF", "CHE", "CHF", "CHW", "CLE", "CLF", "CLP", "CNX", "CN¥", "COP", "COU", "CRC", "CSD", "CSK", "CUC", "CUP", "CVE", "CYP", "CZK", "DDM", "DEM", "DJF", "DKK", "DOP", "DZD", "ECS", "ECV", "EEK", "EGP", "ERN", "ESA", "ESB", "ESP", "ETB", "€", "FIM", "FJD", "FKP", "FRF", "£", "GEK", "GEL", "GHC", "GHS", "GIP", "GMD", "GNF", "GNS", "GQE", "GRD", "GTQ", "GWE", "GWP", "GYD", "HK$", "HNL", "HRD", "HRK", "HTG", "HUF", "IDR", "IEP", "ILP", "ILR", "₪", "₹", "IQD", "IRR", "ISJ", "ISK", "ITL", "JMD", "JOD", "¥", "KES", "KGS", "KHR", "KMF", "KPW", "KRH", "KRO", "₩", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LTL", "LTT", "LUC", "LUF", "LUL", "LVL", "LVR", "LYD", "MAD", "MAF", "MCF", "MDC", "MDL", "MGA", "MGF", "MKD", "MKN", "MLF", "MMK", "MNT", "MOP", "MRO", "MTL", "MTP", "MUR", "MVP", "MVR", "MWK", "MX$", "MXP", "MXV", "MYR", "MZE", "MZM", "MZN", "NAD", "NGN", "NIC", "NIO", "NLG", "NOK", "NPR", "NZ$", "OMR", "PAB", "PEI", "PEN", "PES", "PGK", "PHP", "PKR", "PLN", "PLZ", "PTE", "PYG", "QAR", "RHD", "ROL", "RON", "RSD", "₽", "р.", "RWF", "SAR", "SBD", "SCR", "SDD", "SDG", "SDP", "SEK", "SGD", "SHP", "SIT", "SKK", "SLL", "SOS", "SRD", "SRG", "SSP", "STD", "SUR", "SVC", "SYP", "SZL", "฿", "TJR", "TJS", "TMM", "ТМТ", "TND", "TOP", "TPE", "TRL", "TRY", "TTD", "NT$", "TZS", "₴", "UAK", "UGS", "UGX", "$", "USN", "USS", "UYI", "UYP", "UYU", "UZS", "VEB", "VEF", "₫", "VNN", "VUV", "WST", "FCFA", "XAG", "XAU", "XBA", "XBB", "XBC", "XBD", "EC$", "XDR", "XEU", "XFO", "XFU", "CFA", "XPD", "CFPF", "XPT", "XRE", "XSU", "XTS", "XUA", "XXXX", "YDD", "YER", "YUD", "YUM", "YUN", "YUR", "ZAL", "ZAR", "ZMK", "ZMW", "ZRN", "ZRZ", "ZWD", "ZWL", "ZWR"},
currencyPositiveSuffix: " ",
currencyNegativeSuffix: " ",
monthsAbbreviated: []string{"", "янв.", "февр.", "мар.", "апр.", "мая", "июн.", "июл.", "авг.", "сент.", "окт.", "нояб.", "дек."},
@@ -73,7 +71,7 @@ func New() locales.Translator {
erasAbbreviated: []string{"до н. э.", "н. э."},
erasNarrow: []string{"до н.э.", "н.э."},
erasWide: []string{"до Рождества Христова", "от Рождества Христова"},
- timezones: map[string]string{"IST": "Индия", "MESZ": "Центральная Европа, летнее время", "HAST": "Гавайско-алеутское стандартное время", "COT": "Колумбия, стандартное время", "AEDT": "Восточная Австралия, летнее время", "MYT": "Малайзия", "AST": "Атлантическое стандартное время", "WAT": "Западная Африка, стандартное время", "WAST": "Западная Африка, летнее время", "WIT": "Восточная Индонезия", "ACDT": "Центральная Австралия, летнее время", "ECT": "Эквадор", "AWDT": "Западная Австралия, летнее время", "SGT": "Сингапур", "OEZ": "Восточная Европа, стандартное время", "EDT": "Восточная Америка, летнее время", "LHST": "Лорд-Хау, стандартное время", "CLST": "Чили, летнее время", "UYST": "Уругвай, летнее время", "CDT": "Центральная Америка, летнее время", "JDT": "Япония, летнее время", "OESZ": "Восточная Европа, летнее время", "AEST": "Восточная Австралия, стандартное время", "UYT": "Уругвай, стандартное время", "ACST": "Центральная Австралия, стандартное время", "ARST": "Аргентина, летнее время", "WEZ": "Западная Европа, стандартное время", "NZDT": "Новая Зеландия, летнее время", "WARST": "Западная Аргентина, летнее время", "SRT": "Суринам", "CHADT": "Чатем, летнее время", "WESZ": "Западная Европа, летнее время", "WIB": "Западная Индонезия", "ChST": "Чаморро", "LHDT": "Лорд-Хау, летнее время", "BOT": "Боливия", "PST": "Тихоокеанское стандартное время", "MEZ": "Центральная Европа, стандартное время", "TMT": "Туркмения, стандартное время", "CLT": "Чили, стандартное время", "CHAST": "Чатем, стандартное время", "SAST": "Южная Африка", "EST": "Восточная Америка, стандартное время", "HADT": "Гавайско-алеутское летнее время", "∅∅∅": "Амазонка, летнее время", "TMST": "Туркмения, летнее время", "MDT": "Горное летнее время (США)", "VET": "Венесуэла", "WITA": "Центральная Индонезия", "PDT": "Тихоокеанское летнее время", "NZST": "Новая Зеландия, стандартное время", "EAT": "Восточная Африка", "GFT": "Французская Гвиана", "ACWST": "Центральная Австралия, западное стандартное время", "AWST": "Западная Австралия, стандартное время", "MST": "Горное стандартное время (США)", "HKT": "Гонконг, стандартное время", "AKST": "Аляска, стандартное время", "ADT": "Атлантическое летнее время", "ACWDT": "Центральная Австралия, западное летнее время", "HNT": "Ньюфаундленд, стандартное время", "HAT": "Ньюфаундленд, летнее время", "COST": "Колумбия, летнее время", "CST": "Центральная Америка, стандартное время", "AKDT": "Аляска, летнее время", "CAT": "Центральная Африка", "WART": "Западная Аргентина, стандартное время", "ART": "Аргентина, стандартное время", "GMT": "Среднее время по Гринвичу", "GYT": "Гайана", "BT": "Бутан", "HKST": "Гонконг, летнее время", "JST": "Япония, стандартное время"},
+ timezones: map[string]string{"BOT": "Боливия", "BT": "Бутан", "WIB": "Западная Индонезия", "ChST": "Чаморро", "COST": "Колумбия, летнее время", "GFT": "Французская Гвиана", "HKT": "Гонконг, стандартное время", "PDT": "Тихоокеанское летнее время", "WART": "Западная Аргентина, стандартное время", "ACWDT": "Центральная Австралия, западное летнее время", "TMT": "Туркмения, стандартное время", "AKST": "Аляска, стандартное время", "JST": "Япония, стандартное время", "ACST": "Центральная Австралия, стандартное время", "ACDT": "Центральная Австралия, летнее время", "TMST": "Туркмения, летнее время", "ART": "Аргентина, стандартное время", "AEST": "Восточная Австралия, стандартное время", "AEDT": "Восточная Австралия, летнее время", "HAST": "Гавайско-алеутское стандартное время", "EAT": "Восточная Африка", "MESZ": "Центральная Европа, летнее время", "WEZ": "Западная Европа, стандартное время", "MST": "Макао, стандартное время", "CHADT": "Чатем, летнее время", "EST": "Восточная Америка, стандартное время", "EDT": "Восточная Америка, летнее время", "CST": "Центральная Америка, стандартное время", "MEZ": "Центральная Европа, стандартное время", "CLT": "Чили, стандартное время", "CAT": "Центральная Африка", "HKST": "Гонконг, летнее время", "WESZ": "Западная Европа, летнее время", "CLST": "Чили, летнее время", "WITA": "Центральная Индонезия", "∅∅∅": "Перу, летнее время", "JDT": "Япония, летнее время", "SRT": "Суринам", "GMT": "Среднее время по Гринвичу", "CDT": "Центральная Америка, летнее время", "MYT": "Малайзия", "UYST": "Уругвай, летнее время", "ADT": "Атлантическое летнее время", "NZST": "Новая Зеландия, стандартное время", "WARST": "Западная Аргентина, летнее время", "HAT": "Ньюфаундленд, летнее время", "UYT": "Уругвай, стандартное время", "AKDT": "Аляска, летнее время", "AWDT": "Западная Австралия, летнее время", "IST": "Индия", "AST": "Атлантическое стандартное время", "GYT": "Гайана", "WAST": "Западная Африка, летнее время", "MDT": "Макао, летнее время", "SAST": "Южная Африка", "VET": "Венесуэла", "LHST": "Лорд-Хау, стандартное время", "LHDT": "Лорд-Хау, летнее время", "CHAST": "Чатем, стандартное время", "ARST": "Аргентина, летнее время", "HADT": "Гавайско-алеутское летнее время", "WAT": "Западная Африка, стандартное время", "SGT": "Сингапур", "OEZ": "Восточная Европа, стандартное время", "COT": "Колумбия, стандартное время", "ECT": "Эквадор", "PST": "Тихоокеанское стандартное время", "NZDT": "Новая Зеландия, летнее время", "OESZ": "Восточная Европа, летнее время", "WIT": "Восточная Индонезия", "ACWST": "Центральная Австралия, западное стандартное время", "HNT": "Ньюфаундленд, стандартное время", "AWST": "Западная Австралия, стандартное время"},
}
}
@@ -107,7 +105,7 @@ func (ru *ru) CardinalPluralRule(num float64, v uint64) locales.PluralRule {
if v == 0 && iMod10 == 1 && iMod100 != 11 {
return locales.PluralRuleOne
- } else if v == 0 && iMod10 >= 2 && iMod10 <= 4 && iMod100 < 12 && iMod100 > 14 {
+ } else if v == 0 && iMod10 >= 2 && iMod10 <= 4 && (iMod100 < 12 || iMod100 > 14) {
return locales.PluralRuleFew
} else if (v == 0 && iMod10 == 0) || (v == 0 && iMod10 >= 5 && iMod10 <= 9) || (v == 0 && iMod100 >= 11 && iMod100 <= 14) {
return locales.PluralRuleMany
@@ -280,7 +278,7 @@ func (ru *ru) FmtNumber(num float64, v uint64) string {
// NOTE: 'num' passed into FmtPercent is assumed to be in percent already
func (ru *ru) FmtPercent(num float64, v uint64) string {
s := strconv.FormatFloat(math.Abs(num), 'f', int(v), 64)
- l := len(s) + 5
+ l := len(s) + 3
b := make([]byte, 0, l)
for i := len(s) - 1; i >= 0; i-- {
@@ -302,8 +300,6 @@ func (ru *ru) FmtPercent(num float64, v uint64) string {
b[i], b[j] = b[j], b[i]
}
- b = append(b, ru.percentSuffix...)
-
b = append(b, ru.percent...)
return string(b)
@@ -474,8 +470,8 @@ func (ru *ru) FmtDateMedium(t time.Time) string {
b = append(b, ru.monthsAbbreviated[t.Month()]...)
b = append(b, []byte{0x20}...)
b = strconv.AppendInt(b, int64(t.Year()), 10)
- b = append(b, []byte{}...)
- b = append(b, []byte{0x27, 0xd0, 0xb3, 0x27, 0x2e}...)
+ b = append(b, []byte{0x20, 0xd0, 0xb3}...)
+ b = append(b, []byte{0x2e}...)
return string(b)
}
@@ -490,8 +486,8 @@ func (ru *ru) FmtDateLong(t time.Time) string {
b = append(b, ru.monthsWide[t.Month()]...)
b = append(b, []byte{0x20}...)
b = strconv.AppendInt(b, int64(t.Year()), 10)
- b = append(b, []byte{}...)
- b = append(b, []byte{0x27, 0xd0, 0xb3, 0x27, 0x2e}...)
+ b = append(b, []byte{0x20, 0xd0, 0xb3}...)
+ b = append(b, []byte{0x2e}...)
return string(b)
}
@@ -508,8 +504,8 @@ func (ru *ru) FmtDateFull(t time.Time) string {
b = append(b, ru.monthsWide[t.Month()]...)
b = append(b, []byte{0x20}...)
b = strconv.AppendInt(b, int64(t.Year()), 10)
- b = append(b, []byte{}...)
- b = append(b, []byte{0x27, 0xd0, 0xb3, 0x27, 0x2e}...)
+ b = append(b, []byte{0x20, 0xd0, 0xb3}...)
+ b = append(b, []byte{0x2e}...)
return string(b)
}