bem / bem-bl

Base BEM library
http://bem.github.com/bem-bl/
198 stars 84 forks source link

BEM-2059 — BEM.I18N: Добавить поддержку параметризованных склоняемых ключей #593

Closed mshustov closed 9 years ago

mshustov commented 9 years ago

здесь же и тесты

минимальные изменения для обратной совместимости. теперь будут обрабатываться ключи

["Одно новое письмо",
 "<i18n:param>count</i18n:param> новых письма",
 "<i18n:param>count</i18n:param> новых писем",
 "Нет новых писем"]

ключи

"<!--- comment -->['One', 'Two', 'Five', 'None']"
"You have ['One', 'Two', 'Five', 'No']"

будут обрабатываться по старому

arikon commented 9 years ago

@restrry Много где используется " вместо '

mshustov commented 9 years ago

:up:

shuhrat commented 9 years ago

Ключ plural содержит правила для обработки ключей с формами фраз и слов, зависящих от числа.

    <i18n:dynamic project="tanker" keyset="dynamic" key="plural">
        <i18n:count>
            <i18n:param>count</i18n:param>
        </i18n:count>
        <i18n:one>электричка</i18n:one>
        <i18n:some>электрички</i18n:some>
        <i18n:many>электричек</i18n:many>
    </i18n:dynamic>

plural_adv — это расширенная форма правила plural, с пунктом none

    <i18n:dynamic project="tanker" keyset="dynamic" key="plural_adv">
        <i18n:count>
            <i18n:param>count</i18n:param>
        </i18n:count>
        <i18n:none>электричек</i18n:none>
        <i18n:one>электричка</i18n:one>
        <i18n:some>электрички</i18n:some>
        <i18n:many>электричек</i18n:many>
    </i18n:dynamic>

Мы гененрируем plural c none а должны только для plural_adv или я не прав? посмотри плз на islands-romochka/common.blocks/i-tanker/dynamic/i-tanker__dynamic.i18n/ru.js

mishaberezin commented 9 years ago

Мы гененрируем plural c none а должны только для plural_adv или я не прав?

@Shuhrat Прав.

qfox commented 9 years ago

["Одно новое письмо",

Вместо «Сто одно новое письмо» мы получим «Одно новое письмо», да?

mshustov commented 9 years ago

@mishaberezin там вроде теперь так и есть ;)

mishaberezin commented 9 years ago

Задача перемещается в другой PR: https://github.com/enb-bem/enb-bem-i18n/pull/9 Здесь чинить не будем.

qfox commented 9 years ago

@mishaberezin Может задепрекейтить?

mishaberezin commented 9 years ago

@zxqfox Чтобы задепрекейтить нужно дать что-нибудь на замену. А здесь на замену переезд на другую систему сборки. Я бы просто оставил как есть и дал спокойно умереть.

qfox commented 9 years ago

@mishaberezin резонно, убедил.