Как я могу заставить свое веб-приложение понимать разницу между единственным и множественным числом?

#user-interface #web-applications #user-experience #plural

#пользовательский интерфейс #веб-приложения #множественное

Вопрос:

Когда пользователь на популярном веб-сайте получает ответ, ему (довольно неловко) сообщают, что у него «1 ответ» (см. иллюстрацию).

quot;1 ответquot;? Неловко

Я уверен, что должно быть легко определить, есть ли у них один ответ, и убрать ‘s’ с конца слова.

Комментарии:

1. @Johnsyweb Вы всегда можете проверить наличие числа, если число больше 1, тогда используйте множественное число, иначе используйте единственное число.

2. @Johnsyweb В таком случае, возможно, вы со мной не согласитесь. Я бы просто отобразил responses , чтобы отобразить предыдущий ответ (ы).

3. Я хотел бы добавить 1000 к этому вопросу. Использование слова во множественном числе после цифры 1 является дилетантской ошибкой. Еще хуже мерзость «1 ответ (ы)».

4. @Spectre: собственно вопрос в названии: «Как я могу заставить свое веб-приложение понимать разницу между единственным и множественным числом»

5. Самое простое, что можно сделать, это найти себе гигантскую букву S . Затем сообщите своим пользователям, что вы чувствуете .

Ответ №1:

Для английского языка это обычно не сложнее, чем:

 if number == 1:
    print "1 response"
else:
    print "%s responses" % number
  

Для других разговорных языков это может быть довольно сложно, потому что не всегда нужно просто добавлять s. Однако методика остается той же. Вы должны добавить код, чтобы проверить число и отобразить правильную форму.

Часто я использую совершенно другую формулировку для случая нуля («у вас нет ответов»), 1 («у вас есть только один ответ») или 2 (у вас N ответов). Очевидно, что в конкретном примере, который вы приводите, это неприменимо.

Однако в конкретном примере, который вы приводите, можно утверждать, что реализация правильная. Это вкладка «ответы» с маркером для числа. Это не английское предложение, а скорее название вкладки. Итак, независимо от того, сколько ответов есть, это всегда будет вкладка «ответы». Хотя это слишком сложно, и я думаю, что если бы это был мой веб-сайт, я бы, вероятно, изменил его на «1 ответ».

Ответ №2:

Это зависит от используемого вами языка / фреймворка. Например, в Rails есть pluralize помощник, который дает:

 pluralize(1, 'response') => "1 response"
pluralize(2, 'response') => "2 responses"
  

Комментарии:

1. Для PHP есть нечто подобное: kuwamoto.org/2007/12/17 /…