Pull to refresh

Comments 3

Спасибо за статью. Сейчас как раз решаю проблему локализации приложения на текущем проекте и тоже активно смотрю в сторону gettext(), столкнулся со следующей проблемой:

Допустим есть строка «Сейчас 50 пользователей онлайн», где «50» — динамическое число, которое подставляется в виде одного из параметров к функции локализации строки. На выходе я имею что-то типа {{ localeString(«Сейчас %usersOnline% пользователей онлайн», { usersOnline: «50» }) }}. Как вы решаете эту проблему с gettext, при учете, что в разных языках этот «placeholder» должен находиться в разных частях предложения?
Да, вопрос как вывести «Сейчас 1 пользователь онлайн» Сейчас 3 пользователя онлайн" и «Сейчас 5 пользователей онлайн» в gettext прекрасно проработан. См. ngettext. Ну а для подстановки динамических данных делают именно как вы сказали — в gettext есть встроенная интерполяция.
Впрочем, об этом частично написано в следующей статье.
Для этого есть ngettext, страно что в статье эта тема ни разу не затронута. А также про подстановку переменных ничего не сказано. Меня к примеру всегда смущало использование sprintf с getetxt для подстановки переменных.
Sign up to leave a comment.