Class | I18n::Backend::Advanced |
In: |
lib/russian/backend/advanced.rb
|
Parent: | Simple |
"Продвинутый" бекэнд для I18n.
Наследует Simple бекэнд и полностью с ним совместим. Добаляет поддержку для отдельностоящих/контекстных названий дней недели и месяцев. Также позволяет каждому языку использовать собственные правила плюрализации, объявленные как Proc (lambda).
Extends Simple backend. Allows usage of "standalone" keys for DateTime localization and usage of user-defined Proc (lambda) pluralization methods in translation tables.
LOCALIZE_ABBR_MONTH_NAMES_MATCH | = | /(%d|%e)(.*)(%b)/ |
LOCALIZE_MONTH_NAMES_MATCH | = | /(%d|%e)(.*)(%B)/ |
LOCALIZE_STANDALONE_ABBR_DAY_NAMES_MATCH | = | /^%a/ |
LOCALIZE_STANDALONE_DAY_NAMES_MATCH | = | /^%A/ |
Acts the same as strftime, but returns a localized version of the formatted date string. Takes a key from the date/time formats translations as a format argument (e.g., :short in :’date.formats‘).
Метод отличается от localize в Simple бекэнде поддержкой отдельностоящих/контекстных названий дней недели и месяцев.
Note that it differs from localize in Simple< backend by checking for "standalone" month name/day name keys in translation and using them if available.
options parameter added for i18n-0.3 compliance.
Default pluralizer, used if pluralization rule is not defined in translations.
Uses English pluralization rules — it will pick the first translation if count is not equal to 1 and the second translation if it is equal to 1.
Использует правила плюрализации из таблицы переводов для языка (если присутствуют), иначе использует правило плюрализации по умолчанию (английский язык).
Пример задания правила в таблице переводов:
store_translations :'en', { :pluralize => lambda { |n| n == 1 ? :one : :other } }
Правило должно возвращать один из символов для таблицы переводов:
:zero, :one, :two, :few, :many, :other
Picks a pluralization rule specified in translation tables for a language or uses default pluralization rules.
This is how pluralization rules are defined in translation tables, English language for example:
store_translations :'en', { :pluralize => lambda { |n| n == 1 ? :one : :other } }
Rule must return a symbol to use with pluralization, it must be one of:
:zero, :one, :two, :few, :many, :other