diff --git a/CHANGES.md b/CHANGES.md index 6e9ebb40..2ebc682f 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -6,6 +6,7 @@ * Remove lockfile no longer used by cachecontrol * Update Msgpack 1.0.0 (fa7d744) to 1.0.4 (b5acfd5) * Update diskcache 5.1.0 (40ce0de) to 5.4.0 (1cb1425) +* Update humanize 3.5.0 (b6b0ea5) to 4.0.0 (a1514eb) * Update Rarfile 4.0 (55fe778) to 4.1a1 (8a72967) * Update UnRar x64 for Windows 6.11 to 6.20 * Update Send2Trash 1.5.0 (66afce7) to 1.8.1b0 (0ef9b32) diff --git a/lib/humanize/__init__.py b/lib/humanize/__init__.py index 0ccf63eb..3197b11b 100644 --- a/lib/humanize/__init__.py +++ b/lib/humanize/__init__.py @@ -19,7 +19,7 @@ from humanize.time import ( precisedelta, ) -__version__ = VERSION = '3.5.0' +__version__ = VERSION = '4.0.0' __all__ = [ diff --git a/lib/humanize/compat.py b/lib/humanize/compat.py deleted file mode 100644 index ee79683d..00000000 --- a/lib/humanize/compat.py +++ /dev/null @@ -1,6 +0,0 @@ -import sys - -if sys.version_info < (3,): - string_types = (basestring,) # noqa: F821 -else: - string_types = (str,) diff --git a/lib/humanize/filesize.py b/lib/humanize/filesize.py index 1de98455..5497e8e6 100644 --- a/lib/humanize/filesize.py +++ b/lib/humanize/filesize.py @@ -1,5 +1,4 @@ #!/usr/bin/env python -# -*- coding: utf-8 -*- """Bits and bytes related humanization.""" diff --git a/lib/humanize/i18n.py b/lib/humanize/i18n.py index 195a3f08..1e76a698 100644 --- a/lib/humanize/i18n.py +++ b/lib/humanize/i18n.py @@ -1,10 +1,9 @@ -# -*- coding: utf-8 -*- """Activate, get and deactivate translations.""" import gettext as gettext_module import os.path from threading import local -__all__ = ["activate", "deactivate", "gettext", "ngettext", "thousands_separator"] +__all__ = ["activate", "deactivate", "thousands_separator"] _TRANSLATIONS = {None: gettext_module.NullTranslations()} _CURRENT = local() @@ -67,7 +66,7 @@ def deactivate(): _CURRENT.locale = None -def gettext(message): +def _gettext(message): """Get translation. Args: @@ -79,7 +78,7 @@ def gettext(message): return get_translation().gettext(message) -def pgettext(msgctxt, message): +def _pgettext(msgctxt, message): """Fetches a particular translation. It works with `msgctxt` .po modifiers and allows duplicate keys with different @@ -104,8 +103,8 @@ def pgettext(msgctxt, message): return message if translation == key else translation -def ngettext(message, plural, num): - """Plural version of gettext. +def _ngettext(message, plural, num): + """Plural version of _gettext. Args: message (str): Singular text to translate. @@ -119,14 +118,14 @@ def ngettext(message, plural, num): return get_translation().ngettext(message, plural, num) -def gettext_noop(message): +def _gettext_noop(message): """Mark a string as a translation string without translating it. Example usage: ```python - CONSTANTS = [gettext_noop('first'), gettext_noop('second')] + CONSTANTS = [_gettext_noop('first'), _gettext_noop('second')] def num_name(n): - return gettext(CONSTANTS[n]) + return _gettext(CONSTANTS[n]) ``` Args: @@ -138,14 +137,14 @@ def gettext_noop(message): return message -def ngettext_noop(singular, plural): +def _ngettext_noop(singular, plural): """Mark two strings as pluralized translations without translating them. Example usage: ```python CONSTANTS = [ngettext_noop('first', 'firsts'), ngettext_noop('second', 'seconds')] def num_name(n): - return ngettext(*CONSTANTS[n]) + return _ngettext(*CONSTANTS[n]) ``` Args: @@ -158,7 +157,7 @@ def ngettext_noop(singular, plural): return (singular, plural) -def thousands_separator(): +def thousands_separator() -> str: """Return the thousands separator for a locale, default to comma. Returns: diff --git a/lib/humanize/locale/bn_BD/LC_MESSAGES/humanize.po b/lib/humanize/locale/bn_BD/LC_MESSAGES/humanize.po new file mode 100644 index 00000000..21095738 --- /dev/null +++ b/lib/humanize/locale/bn_BD/LC_MESSAGES/humanize.po @@ -0,0 +1,291 @@ +# Bengali translations for humanize package. +# Copyright (C) 2021 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the humanize package. +# Wasi Master , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: humanize\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-07-29 21:59+0600\n" +"PO-Revision-Date: 2021-07-29 22:07+0600\n" +"Last-Translator: U-WASI-PC\\Wasi Master \n" +"Language-Team: Bengali\n" +"Language: bn_BD\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: src/humanize/number.py:58 +msgctxt "0 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:59 +msgctxt "1 (male)" +msgid "st" +msgstr "" + +#: src/humanize/number.py:60 +msgctxt "2 (male)" +msgid "nd" +msgstr "" + +#: src/humanize/number.py:61 +msgctxt "3 (male)" +msgid "rd" +msgstr "" + +#: src/humanize/number.py:62 +msgctxt "4 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:63 +msgctxt "5 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:64 +msgctxt "6 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:65 +msgctxt "7 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:66 +msgctxt "8 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:67 +msgctxt "9 (male)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:71 +msgctxt "0 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:72 +msgctxt "1 (female)" +msgid "st" +msgstr "" + +#: src/humanize/number.py:73 +msgctxt "2 (female)" +msgid "nd" +msgstr "" + +#: src/humanize/number.py:74 +msgctxt "3 (female)" +msgid "rd" +msgstr "" + +#: src/humanize/number.py:75 +msgctxt "4 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:76 +msgctxt "5 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:77 +msgctxt "6 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:78 +msgctxt "7 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:79 +msgctxt "8 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:80 +msgctxt "9 (female)" +msgid "th" +msgstr "" + +#: src/humanize/number.py:247 +msgid "zero" +msgstr "শুন্য" + +#: src/humanize/number.py:248 +msgid "one" +msgstr "এক" + +#: src/humanize/number.py:249 +msgid "two" +msgstr "দুই" + +#: src/humanize/number.py:250 +msgid "three" +msgstr "তিন" + +#: src/humanize/number.py:251 +msgid "four" +msgstr "চার" + +#: src/humanize/number.py:252 +msgid "five" +msgstr "পাচ" + +#: src/humanize/number.py:253 +msgid "six" +msgstr "ছয়" + +#: src/humanize/number.py:254 +msgid "seven" +msgstr "সাত" + +#: src/humanize/number.py:255 +msgid "eight" +msgstr "আট" + +#: src/humanize/number.py:256 +msgid "nine" +msgstr "নয়" + +#: src/humanize/time.py:138 +#, python-format +msgid "%d microsecond" +msgid_plural "%d microseconds" +msgstr[0] "%d মাইক্রোসেকন্ড" +msgstr[1] "%d মাইক্রোসেকন্ড" + +#: src/humanize/time.py:147 +#, python-format +msgid "%d millisecond" +msgid_plural "%d milliseconds" +msgstr[0] "%d মিলিসেকন্ড" +msgstr[1] "%d মিলিসেকন্ড" + +#: src/humanize/time.py:150 src/humanize/time.py:231 +msgid "a moment" +msgstr "এক মুহুর্ত" + +#: src/humanize/time.py:152 +msgid "a second" +msgstr "এক সেকন্ড" + +#: src/humanize/time.py:154 +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d সেকন্ড" +msgstr[1] "%d সেকন্ড" + +#: src/humanize/time.py:156 +msgid "a minute" +msgstr "এক মিনিট" + +#: src/humanize/time.py:159 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d মিনিট" +msgstr[1] "%d মিনিট" + +#: src/humanize/time.py:161 +msgid "an hour" +msgstr "এক ঘন্টা" + +#: src/humanize/time.py:164 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ঘন্টা" +msgstr[1] "%d ঘন্টা" + +#: src/humanize/time.py:167 +msgid "a day" +msgstr "এক দিন" + +#: src/humanize/time.py:169 src/humanize/time.py:172 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d দিন" +msgstr[1] "%d দিন" + +#: src/humanize/time.py:174 +msgid "a month" +msgstr "এক মাস" + +#: src/humanize/time.py:176 +#, python-format +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "%d মাস" +msgstr[1] "%d মাস" + +#: src/humanize/time.py:179 +msgid "a year" +msgstr "এক বছর" + +#: src/humanize/time.py:181 src/humanize/time.py:190 +#, python-format +msgid "1 year, %d day" +msgid_plural "1 year, %d days" +msgstr[0] "%d বছর" +msgstr[1] "%d বছর" + +#: src/humanize/time.py:184 +msgid "1 year, 1 month" +msgstr "১ বছর, ১ মাস" + +#: src/humanize/time.py:187 +#, python-format +msgid "1 year, %d month" +msgid_plural "1 year, %d months" +msgstr[0] "১ বছর, %d মাস" +msgstr[1] "১ বছর, %d মাস" + +#: src/humanize/time.py:192 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "%d বছর" +msgstr[1] "%d বছর" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s from now" +msgstr "আজ থেকে %s পরে" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s ago" +msgstr "%s আগে" + +#: src/humanize/time.py:232 +msgid "now" +msgstr "এখন" + +#: src/humanize/time.py:255 +msgid "today" +msgstr "আজকে" + +#: src/humanize/time.py:257 +msgid "tomorrow" +msgstr "আগামীকাল" + +#: src/humanize/time.py:259 +msgid "yesterday" +msgstr "গতকাল" + +#: src/humanize/time.py:545 +#, python-format +msgid "%s and %s" +msgstr "%s আর %s" diff --git a/lib/humanize/locale/ca_ES/LC_MESSAGES/humanize.po b/lib/humanize/locale/ca_ES/LC_MESSAGES/humanize.po new file mode 100644 index 00000000..5fbde4a2 --- /dev/null +++ b/lib/humanize/locale/ca_ES/LC_MESSAGES/humanize.po @@ -0,0 +1,363 @@ +# Catalan translations for PACKAGE package +# This file is distributed under the same license as the PACKAGE package. +# Jordi Mas i Hernàndez , 2021 +# +msgid "" +msgstr "" +"Project-Id-Version: humanize\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" +"PO-Revision-Date: 2021-04-09 19:57+0200\n" +"Last-Translator: Jordi Mas i Hernàndez \n" +"Language-Team: Catalan\n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n!=1;\n" +"X-Generator: Poedit 2.4.1\n" + +#: src/humanize/number.py:57 +msgctxt "0 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:58 +msgctxt "1 (male)" +msgid "st" +msgstr "º" + +#: src/humanize/number.py:59 +msgctxt "2 (male)" +msgid "nd" +msgstr "º" + +#: src/humanize/number.py:60 +msgctxt "3 (male)" +msgid "rd" +msgstr "º" + +#: src/humanize/number.py:61 +msgctxt "4 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:62 +msgctxt "5 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:63 +msgctxt "6 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:64 +msgctxt "7 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:65 +msgctxt "8 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "º" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "º" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "º" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:140 +msgid "thousand" +msgid_plural "thousand" +msgstr[0] "" +msgstr[1] "" + +#: src/humanize/number.py:141 +msgid "million" +msgid_plural "million" +msgstr[0] "milió" +msgstr[1] "milió" + +#: src/humanize/number.py:142 +msgid "billion" +msgid_plural "billion" +msgstr[0] "mil milions" +msgstr[1] "mil milions" + +#: src/humanize/number.py:143 +msgid "trillion" +msgid_plural "trillion" +msgstr[0] "bilions" +msgstr[1] "bilions" + +#: src/humanize/number.py:144 +msgid "quadrillion" +msgid_plural "quadrillion" +msgstr[0] "quadrilió" +msgstr[1] "quadrilió" + +#: src/humanize/number.py:145 +msgid "quintillion" +msgid_plural "quintillion" +msgstr[0] "quintillió" +msgstr[1] "quintillió" + +#: src/humanize/number.py:146 +msgid "sextillion" +msgid_plural "sextillion" +msgstr[0] "sextilió" +msgstr[1] "sextilió" + +#: src/humanize/number.py:147 +msgid "septillion" +msgid_plural "septillion" +msgstr[0] "septilió" +msgstr[1] "septilió" + +#: src/humanize/number.py:148 +msgid "octillion" +msgid_plural "octillion" +msgstr[0] "octilió" +msgstr[1] "octilió" + +#: src/humanize/number.py:149 +msgid "nonillion" +msgid_plural "nonillion" +msgstr[0] "nonilió" +msgstr[1] "nonilió" + +#: src/humanize/number.py:150 +msgid "decillion" +msgid_plural "decillion" +msgstr[0] "decilió" +msgstr[1] "decilió" + +#: src/humanize/number.py:151 +msgid "googol" +msgid_plural "googol" +msgstr[0] "googol" +msgstr[1] "googol" + +#: src/humanize/number.py:246 +msgid "zero" +msgstr "zero" + +#: src/humanize/number.py:247 +msgid "one" +msgstr "un" + +#: src/humanize/number.py:248 +msgid "two" +msgstr "dos" + +#: src/humanize/number.py:249 +msgid "three" +msgstr "tres" + +#: src/humanize/number.py:250 +msgid "four" +msgstr "quatre" + +#: src/humanize/number.py:251 +msgid "five" +msgstr "cinc" + +#: src/humanize/number.py:252 +msgid "six" +msgstr "sis" + +#: src/humanize/number.py:253 +msgid "seven" +msgstr "set" + +#: src/humanize/number.py:254 +msgid "eight" +msgstr "vuit" + +#: src/humanize/number.py:255 +msgid "nine" +msgstr "nou" + +#: src/humanize/time.py:133 +#, python-format +msgid "%d microsecond" +msgid_plural "%d microseconds" +msgstr[0] "%d microsegon" +msgstr[1] "%d microsegons" + +#: src/humanize/time.py:142 +#, python-format +msgid "%d millisecond" +msgid_plural "%d milliseconds" +msgstr[0] "%d mil·lisegons" +msgstr[1] "%d mil·lisegons" + +#: src/humanize/time.py:145 src/humanize/time.py:220 +msgid "a moment" +msgstr "un moment" + +#: src/humanize/time.py:147 +msgid "a second" +msgstr "un segon" + +#: src/humanize/time.py:149 +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d segon" +msgstr[1] "%d segons" + +#: src/humanize/time.py:151 +msgid "a minute" +msgstr "un minut" + +#: src/humanize/time.py:154 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minuts" + +#: src/humanize/time.py:156 +msgid "an hour" +msgstr "una hora" + +#: src/humanize/time.py:159 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d hores" + +#: src/humanize/time.py:162 +msgid "a day" +msgstr "un dia" + +#: src/humanize/time.py:164 src/humanize/time.py:167 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dia" +msgstr[1] "%d dies" + +#: src/humanize/time.py:169 +msgid "a month" +msgstr "un mes" + +#: src/humanize/time.py:171 +#, python-format +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "%d mes" +msgstr[1] "%d mesos" + +#: src/humanize/time.py:174 +msgid "a year" +msgstr "un any" + +#: src/humanize/time.py:176 src/humanize/time.py:185 +#, python-format +msgid "1 year, %d day" +msgid_plural "1 year, %d days" +msgstr[0] "1 any, %d dia" +msgstr[1] "1 any, %d dies" + +#: src/humanize/time.py:179 +msgid "1 year, 1 month" +msgstr "1 any, 1 mes" + +#: src/humanize/time.py:182 +#, python-format +msgid "1 year, %d month" +msgid_plural "1 year, %d months" +msgstr[0] "1 any, %d mes" +msgstr[1] "1 any, %d mesos" + +#: src/humanize/time.py:187 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "%d any" +msgstr[1] "%d anys" + +#: src/humanize/time.py:217 +#, python-format +msgid "%s from now" +msgstr "en %s" + +#: src/humanize/time.py:217 +#, python-format +msgid "%s ago" +msgstr "fa %s" + +#: src/humanize/time.py:221 +msgid "now" +msgstr "ara" + +#: src/humanize/time.py:244 +msgid "today" +msgstr "avui" + +#: src/humanize/time.py:246 +msgid "tomorrow" +msgstr "demà" + +#: src/humanize/time.py:248 +msgid "yesterday" +msgstr "ahir" + +#: src/humanize/time.py:534 +#, python-format +msgid "%s and %s" +msgstr "%s i %s" diff --git a/lib/humanize/locale/da_DK/LC_MESSAGES/humanize.po b/lib/humanize/locale/da_DK/LC_MESSAGES/humanize.po new file mode 100644 index 00000000..510f2cc7 --- /dev/null +++ b/lib/humanize/locale/da_DK/LC_MESSAGES/humanize.po @@ -0,0 +1,364 @@ +# Danish translations for humanize package. +# Copyright (C) 2021 +# This file is distributed under the same license as the humanize project. +# YURII DEREVYCH , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: humanize\n" +"Report-Msgid-Bugs-To: https://github.com/jmoiron/humanize/issues\n" +"POT-Creation-Date: 2021-07-05 09:49+0200\n" +"PO-Revision-Date: 2021-11-24 22:25+0200\n" +"Last-Translator: YURII DEREVYCH \n" +"Language-Team: Da\n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.0\n" + +#: src/humanize/number.py:58 +msgctxt "0 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:59 +msgctxt "1 (male)" +msgid "st" +msgstr ":e" + +#: src/humanize/number.py:60 +msgctxt "2 (male)" +msgid "nd" +msgstr ":t" + +#: src/humanize/number.py:61 +msgctxt "3 (male)" +msgid "rd" +msgstr ":e" + +#: src/humanize/number.py:62 +msgctxt "4 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:63 +msgctxt "5 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:64 +msgctxt "6 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:65 +msgctxt "7 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:66 +msgctxt "8 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:67 +msgctxt "9 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:71 +msgctxt "0 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:72 +msgctxt "1 (female)" +msgid "st" +msgstr ":e" + +#: src/humanize/number.py:73 +msgctxt "2 (female)" +msgid "nd" +msgstr ":t" + +#: src/humanize/number.py:74 +msgctxt "3 (female)" +msgid "rd" +msgstr ":e" + +#: src/humanize/number.py:75 +msgctxt "4 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:76 +msgctxt "5 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:77 +msgctxt "6 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:78 +msgctxt "7 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:79 +msgctxt "8 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:80 +msgctxt "9 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:141 +msgid "thousand" +msgid_plural "thousand" +msgstr[0] "tusind" +msgstr[1] "thousand" + +#: src/humanize/number.py:142 +msgid "million" +msgid_plural "million" +msgstr[0] "million" +msgstr[1] "millioner" + +#: src/humanize/number.py:143 +msgid "billion" +msgid_plural "billion" +msgstr[0] "billion" +msgstr[1] "billioner" + +#: src/humanize/number.py:144 +msgid "trillion" +msgid_plural "trillion" +msgstr[0] "billion" +msgstr[1] "billioner" + +#: src/humanize/number.py:145 +msgid "quadrillion" +msgid_plural "quadrillion" +msgstr[0] "quadrillion" +msgstr[1] "quadrillioner" + +#: src/humanize/number.py:146 +msgid "quintillion" +msgid_plural "quintillion" +msgstr[0] "quintillion" +msgstr[1] "quintillioner" + +#: src/humanize/number.py:147 +msgid "sextillion" +msgid_plural "sextillion" +msgstr[0] "sextillion" +msgstr[1] "sextillioner" + +#: src/humanize/number.py:148 +msgid "septillion" +msgid_plural "septillion" +msgstr[0] "septillion" +msgstr[1] "septillioner" + +#: src/humanize/number.py:149 +msgid "octillion" +msgid_plural "octillion" +msgstr[0] "octillion" +msgstr[1] "octillioner" + +#: src/humanize/number.py:150 +msgid "nonillion" +msgid_plural "nonillion" +msgstr[0] "nonillion" +msgstr[1] "nonillioner" + +#: src/humanize/number.py:151 +msgid "decillion" +msgid_plural "decillion" +msgstr[0] "decillion" +msgstr[1] "decillioner" + +#: src/humanize/number.py:152 +msgid "googol" +msgid_plural "googol" +msgstr[0] "googol" +msgstr[1] "googol" + +#: src/humanize/number.py:247 +msgid "zero" +msgstr "nul" + +#: src/humanize/number.py:248 +msgid "one" +msgstr "en" + +#: src/humanize/number.py:249 +msgid "two" +msgstr "to" + +#: src/humanize/number.py:250 +msgid "three" +msgstr "tre" + +#: src/humanize/number.py:251 +msgid "four" +msgstr "fire" + +#: src/humanize/number.py:252 +msgid "five" +msgstr "fem" + +#: src/humanize/number.py:253 +msgid "six" +msgstr "seks" + +#: src/humanize/number.py:254 +msgid "seven" +msgstr "syv" + +#: src/humanize/number.py:255 +msgid "eight" +msgstr "otte" + +#: src/humanize/number.py:256 +msgid "nine" +msgstr "ni" + +#: src/humanize/time.py:138 +#, python-format +msgid "%d microsecond" +msgid_plural "%d microseconds" +msgstr[0] "%d mikrosekund" +msgstr[1] "%d mikrosekunder" + +#: src/humanize/time.py:147 +#, python-format +msgid "%d millisecond" +msgid_plural "%d milliseconds" +msgstr[0] "%d millsekund" +msgstr[1] "%d millsekunder" + +#: src/humanize/time.py:150 src/humanize/time.py:231 +msgid "a moment" +msgstr "et øjeblik" + +#: src/humanize/time.py:152 +msgid "a second" +msgstr "en anden" + +#: src/humanize/time.py:154 +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekund" +msgstr[1] "%d sekunder" + +#: src/humanize/time.py:156 +msgid "a minute" +msgstr "en minut" + +#: src/humanize/time.py:159 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minutter" + +#: src/humanize/time.py:161 +msgid "an hour" +msgstr "en time" + +#: src/humanize/time.py:164 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d time" +msgstr[1] "%d timer" + +#: src/humanize/time.py:167 +msgid "a day" +msgstr "en dag" + +#: src/humanize/time.py:169 src/humanize/time.py:172 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dag" +msgstr[1] "%d dage" + +#: src/humanize/time.py:174 +msgid "a month" +msgstr "en måned" + +#: src/humanize/time.py:176 +#, python-format +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "%d måned" +msgstr[1] "%d måneder" + +#: src/humanize/time.py:179 +msgid "a year" +msgstr "et år" + +#: src/humanize/time.py:181 src/humanize/time.py:190 +#, python-format +msgid "1 year, %d day" +msgid_plural "1 year, %d days" +msgstr[0] "1 år, %d dag" +msgstr[1] "1 år, %d dage" + +#: src/humanize/time.py:184 +msgid "1 year, 1 month" +msgstr "1 år, 1 måned" + +#: src/humanize/time.py:187 +#, python-format +msgid "1 year, %d month" +msgid_plural "1 year, %d months" +msgstr[0] "1 år, %d måned" +msgstr[1] "1 år, %d måneder" + +#: src/humanize/time.py:192 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "%d år" +msgstr[1] "%d år" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s from now" +msgstr "%s fra nu" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s ago" +msgstr "%s siden" + +#: src/humanize/time.py:232 +msgid "now" +msgstr "nu" + +#: src/humanize/time.py:255 +msgid "today" +msgstr "i dag" + +#: src/humanize/time.py:257 +msgid "tomorrow" +msgstr "i morgen" + +#: src/humanize/time.py:259 +msgid "yesterday" +msgstr "i går" + +#: src/humanize/time.py:545 +#, python-format +msgid "%s and %s" +msgstr "%s og %s" diff --git a/lib/humanize/locale/de_DE/LC_MESSAGES/humanize.po b/lib/humanize/locale/de_DE/LC_MESSAGES/humanize.po index 51a22549..d4a7f6e3 100644 --- a/lib/humanize/locale/de_DE/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/de_DE/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: humanize\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2016-12-18 11:50+0100\n" "Last-Translator: Christian Klein \n" "Language-Team: German\n" @@ -19,165 +19,215 @@ msgstr "" "Generated-By: Christian Klein\n" "X-Generator: Sublime Text 3\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "Million" msgstr[1] "Million" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "Milliarde" msgstr[1] "Milliarde" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "Billion" msgstr[1] "Billion" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "Billiarde" msgstr[1] "Billiarde" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "Trillion" msgstr[1] "Trillion" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "Trilliarde" msgstr[1] "Trilliarde" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "Quadrillion" msgstr[1] "Quadrillion" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "Quadrillarde" msgstr[1] "Quadrillarde" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "Quintillion" msgstr[1] "Quintillion" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "Quintilliarde" msgstr[1] "Quintilliarde" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "Googol" msgstr[1] "Googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "null" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "eins" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "zwei" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "drei" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "vier" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "fünf" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "sechs" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "sieben" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "acht" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "neun" diff --git a/lib/humanize/locale/es_ES/LC_MESSAGES/humanize.po b/lib/humanize/locale/es_ES/LC_MESSAGES/humanize.po index 219525fd..07959513 100644 --- a/lib/humanize/locale/es_ES/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/es_ES/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2020-03-31 21:08+0200\n" "Last-Translator: Álvaro Mondéjar \n" "Language-Team: \n" @@ -18,165 +18,215 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.3\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "º" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "º" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "º" #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "º" #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "º" #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "º" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ª" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "ª" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "ª" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "mil" msgstr[1] "mil" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "millón" msgstr[1] "millones" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "billón" msgstr[1] "billones" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "trillón" msgstr[1] "trillones" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "quatrillón" msgstr[1] "quatrillones" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "quintillón" msgstr[1] "quintillones" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "sextillón" msgstr[1] "sextillones" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "septillón" msgstr[1] "septillones" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "octillón" msgstr[1] "octillones" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "nonillón" msgstr[1] "nonillones" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "decillón" msgstr[1] "decillones" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "gúgol" msgstr[1] "gúgol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "cero" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "uno" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "dos" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "tres" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "cuatro" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "cinco" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "seis" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "siete" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "ocho" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "nueve" @@ -311,4 +361,4 @@ msgstr "ayer" #: src/humanize/time.py:534 #, python-format msgid "%s and %s" -msgstr "" +msgstr "%s y %s" diff --git a/lib/humanize/locale/fa_IR/LC_MESSAGES/humanize.po b/lib/humanize/locale/fa_IR/LC_MESSAGES/humanize.po index b3b9ad80..f5b841e3 100644 --- a/lib/humanize/locale/fa_IR/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/fa_IR/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: humanize\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2017-01-10 02:44+0330\n" "Last-Translator: Christian Klein \n" "Language-Team: German\n" @@ -19,165 +19,215 @@ msgstr "" "Generated-By: Christian Klein\n" "X-Generator: Poedit 1.5.4\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" +msgctxt "0 (male)" +msgid "th" +msgstr "صفرمین" + +#: src/humanize/number.py:58 +msgctxt "1 (male)" msgid "st" msgstr "اولین" -#: src/humanize/number.py:58 -msgctxt "2" +#: src/humanize/number.py:59 +msgctxt "2 (male)" msgid "nd" msgstr "دومین" -#: src/humanize/number.py:59 -msgctxt "3" +#: src/humanize/number.py:60 +msgctxt "3 (male)" msgid "rd" msgstr "سومین" -#: src/humanize/number.py:60 -msgctxt "4" +#: src/humanize/number.py:61 +msgctxt "4 (male)" msgid "th" msgstr "چهارمین" -#: src/humanize/number.py:61 -msgctxt "5" +#: src/humanize/number.py:62 +msgctxt "5 (male)" msgid "th" msgstr "پنجمین" -#: src/humanize/number.py:62 -msgctxt "6" +#: src/humanize/number.py:63 +msgctxt "6 (male)" msgid "th" msgstr "ششمین" -#: src/humanize/number.py:63 -msgctxt "7" +#: src/humanize/number.py:64 +msgctxt "7 (male)" msgid "th" msgstr "هفتمین" -#: src/humanize/number.py:64 -msgctxt "8" +#: src/humanize/number.py:65 +msgctxt "8 (male)" msgid "th" msgstr "هشتمین" -#: src/humanize/number.py:65 -msgctxt "9" +#: src/humanize/number.py:66 +msgctxt "9 (male)" msgid "th" msgstr "نهمین" -#: src/humanize/number.py:126 +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "صفرمین" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "اولین" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "دومین" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "سومین" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "چهارمین" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "پنجمین" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ششمین" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "هفتمین" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "هشتمین" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "نهمین" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "هزار" +msgstr[1] "هزار" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "میلیون" msgstr[1] "میلیون" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "میلیارد" msgstr[1] "میلیارد" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "ترلیون" msgstr[1] "ترلیون" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "کوادریلیون" msgstr[1] "کوادریلیون" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "کوانتیلیون" msgstr[1] "کوانتیلیون" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "سکستیلیون" msgstr[1] "سکستیلیون" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "سپتیلیون" msgstr[1] "سپتیلیون" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "اوکتیلیون" msgstr[1] "اوکتیلیون" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "نونیلیون" msgstr[1] "نونیلیون" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "دسیلیون" msgstr[1] "دسیلیون" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "گوگول" msgstr[1] "گوگول" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" -msgstr "" +msgstr "صفر" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "یک" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "دو" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "سه" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "چهار" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "پنج" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "شش" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "هفت" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "هشت" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "نه" @@ -185,15 +235,15 @@ msgstr "نه" #, python-format msgid "%d microsecond" msgid_plural "%d microseconds" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d میکرو‌ثانیه" +msgstr[1] "%d میکرو‌ثانیه" #: src/humanize/time.py:142 #, python-format msgid "%d millisecond" msgid_plural "%d milliseconds" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d میلی‌ثانیه" +msgstr[1] "%d میلی‌ثانیه" #: src/humanize/time.py:145 src/humanize/time.py:220 msgid "a moment" @@ -312,4 +362,4 @@ msgstr "دیروز" #: src/humanize/time.py:534 #, python-format msgid "%s and %s" -msgstr "" +msgstr "%s و %s" diff --git a/lib/humanize/locale/fi_FI/LC_MESSAGES/humanize.po b/lib/humanize/locale/fi_FI/LC_MESSAGES/humanize.po index e07c5589..1b36995d 100644 --- a/lib/humanize/locale/fi_FI/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/fi_FI/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: humanize\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2017-03-02 11:26+0200\n" "Last-Translator: Ville Skyttä \n" "Language-Team: Finnish\n" @@ -18,165 +18,215 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 1.8.12\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "tuhatta" msgstr[1] "tuhatta" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "miljoonaa" msgstr[1] "miljoonaa" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "miljardia" msgstr[1] "miljardia" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "biljoonaa" msgstr[1] "biljoonaa" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "kvadriljoonaa" msgstr[1] "kvadriljoonaa" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "kvintiljoonaa" msgstr[1] "kvintiljoonaa" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "sekstiljoonaa" msgstr[1] "sekstiljoonaa" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "septiljoonaa" msgstr[1] "septiljoonaa" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "oktiljoonaa" msgstr[1] "oktiljoonaa" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "noniljoonaa" msgstr[1] "noniljoonaa" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "dekiljoonaa" msgstr[1] "dekiljoonaa" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googol" msgstr[1] "googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "nolla" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "yksi" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "kaksi" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "kolme" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "neljä" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "viisi" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "kuusi" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "seitsemän" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "kahdeksan" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "yhdeksän" diff --git a/lib/humanize/locale/fr_FR/LC_MESSAGES/humanize.po b/lib/humanize/locale/fr_FR/LC_MESSAGES/humanize.po index 01bb94a0..13f894e4 100644 --- a/lib/humanize/locale/fr_FR/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/fr_FR/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2013-06-22 08:52+0100\n" "Last-Translator: Olivier Cortès \n" "Language-Team: fr_FR \n" @@ -19,185 +19,225 @@ msgstr "" "Generated-By: Babel 0.9.6\n" "X-Generator: Poedit 1.5.5\n" -#: src/humanize/number.py:56 -#, fuzzy -msgctxt "0" +#: src/humanize/number.py:57 +msgctxt "0 (male)" msgid "th" msgstr "e" -#: src/humanize/number.py:57 -#, fuzzy -msgctxt "1" +#: src/humanize/number.py:58 +msgctxt "1 (male)" msgid "st" msgstr "er" -#: src/humanize/number.py:58 -#, fuzzy -msgctxt "2" +#: src/humanize/number.py:59 +msgctxt "2 (male)" msgid "nd" msgstr "e" -#: src/humanize/number.py:59 -#, fuzzy -msgctxt "3" +#: src/humanize/number.py:60 +msgctxt "3 (male)" msgid "rd" msgstr "e" -#: src/humanize/number.py:60 -#, fuzzy -msgctxt "4" -msgid "th" -msgstr "e" - #: src/humanize/number.py:61 -#, fuzzy -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "e" #: src/humanize/number.py:62 -#, fuzzy -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "e" #: src/humanize/number.py:63 -#, fuzzy -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "e" #: src/humanize/number.py:64 -#, fuzzy -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "e" #: src/humanize/number.py:65 -#, fuzzy -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "e" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ère" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "e" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "e" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "e" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 #, fuzzy msgid "million" msgid_plural "million" msgstr[0] "%(value)s million" msgstr[1] "%(value)s million" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "milliard" msgstr[1] "milliard" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 #, fuzzy msgid "trillion" msgid_plural "trillion" msgstr[0] "%(value)s billion" msgstr[1] "%(value)s billion" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 #, fuzzy msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "%(value)s billiard" msgstr[1] "%(value)s billiard" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 #, fuzzy msgid "quintillion" msgid_plural "quintillion" msgstr[0] "%(value)s trillion" msgstr[1] "%(value)s trillion" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 #, fuzzy msgid "sextillion" msgid_plural "sextillion" msgstr[0] "%(value)s trilliard" msgstr[1] "%(value)s trilliard" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 #, fuzzy msgid "septillion" msgid_plural "septillion" msgstr[0] "%(value)s quatrillion" msgstr[1] "%(value)s quatrillion" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 #, fuzzy msgid "octillion" msgid_plural "octillion" msgstr[0] "%(value)s quadrilliard" msgstr[1] "%(value)s quadrilliard" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 #, fuzzy msgid "nonillion" msgid_plural "nonillion" msgstr[0] "%(value)s quintillion" msgstr[1] "%(value)s quintillion" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 #, fuzzy msgid "decillion" msgid_plural "decillion" msgstr[0] "%(value)s quintilliard" msgstr[1] "%(value)s quintilliard" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 #, fuzzy msgid "googol" msgid_plural "googol" msgstr[0] "%(value)s gogol" msgstr[1] "%(value)s gogol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "zéro" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "un" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "deux" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "trois" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "quatre" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "cinq" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "six" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "sept" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "huit" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "neuf" diff --git a/lib/humanize/locale/id_ID/LC_MESSAGES/humanize.po b/lib/humanize/locale/id_ID/LC_MESSAGES/humanize.po index a2725b92..bf35c4d5 100644 --- a/lib/humanize/locale/id_ID/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/id_ID/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2017-03-18 15:41+0700\n" "Last-Translator: adie.rebel@gmail.com\n" "Language-Team: Indonesian\n" @@ -18,153 +18,203 @@ msgstr "" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 1.8.11\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "juta" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "miliar" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "triliun" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "kuadriliun" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "quintillion" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "sextillion" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "septillion" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "octillion" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "nonillion" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "decillion" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "nol" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "satu" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "dua" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "tiga" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "empat" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "lima" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "enam" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "tujuh" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "delapan" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "sembilan" diff --git a/lib/humanize/locale/it_IT/LC_MESSAGES/humanize.po b/lib/humanize/locale/it_IT/LC_MESSAGES/humanize.po index d9a12b40..ac2c0f68 100644 --- a/lib/humanize/locale/it_IT/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/it_IT/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2018-10-27 22:52+0200\n" "Last-Translator: derfel \n" "Language-Team: Italian\n" @@ -18,165 +18,215 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.2\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "º" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "º" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "º" #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "º" #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "º" #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "º" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ª" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "ª" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "ª" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "milioni" msgstr[1] "milioni" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "miliardi" msgstr[1] "miliardi" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "bilioni" msgstr[1] "bilioni" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "biliardi" msgstr[1] "biliardi" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "trilioni" msgstr[1] "trilioni" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "triliardi" msgstr[1] "triliardi" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "quadrilioni" msgstr[1] "quadrilioni" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "quadriliardi" msgstr[1] "quadriliardi" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "quintilioni" msgstr[1] "quintilioni" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "quintiliardi" msgstr[1] "quintiliardi" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googol" msgstr[1] "googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "zero" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "uno" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "due" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "tre" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "quattro" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "cinque" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "sei" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "sette" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "otto" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "nove" diff --git a/lib/humanize/locale/ja_JP/LC_MESSAGES/humanize.po b/lib/humanize/locale/ja_JP/LC_MESSAGES/humanize.po index 21a21f82..e18c329f 100644 --- a/lib/humanize/locale/ja_JP/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/ja_JP/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: humanize\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2018-01-22 10:48+0900\n" "Last-Translator: Kan Torii \n" "Language-Team: Japanese\n" @@ -19,162 +19,212 @@ msgstr "" "Generated-By: Babel 0.9.6\n" "X-Generator: Poedit 2.0.6\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "番目" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "番目" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "番目" #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "番目" #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "番目" #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "番目" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "番目" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "番目" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "番目" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "番目" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "番目" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "番目" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "番目" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "番目" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "百万" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 #, fuzzy msgid "billion" msgid_plural "billion" msgstr[0] "十億" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "兆" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 #, fuzzy msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "千兆" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 #, fuzzy msgid "quintillion" msgid_plural "quintillion" msgstr[0] "百京" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 #, fuzzy msgid "sextillion" msgid_plural "sextillion" msgstr[0] "十垓" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 #, fuzzy msgid "septillion" msgid_plural "septillion" msgstr[0] "じょ" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 #, fuzzy msgid "octillion" msgid_plural "octillion" msgstr[0] "千じょ" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 #, fuzzy msgid "nonillion" msgid_plural "nonillion" msgstr[0] "百穣" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 #, fuzzy msgid "decillion" msgid_plural "decillion" msgstr[0] "十溝" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 #, fuzzy msgid "googol" msgid_plural "googol" msgstr[0] "溝無量大数" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "一" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "二" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "三" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "四" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "五" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "六" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "七" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "八" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "九" diff --git a/lib/humanize/locale/ko_KR/LC_MESSAGES/humanize.po b/lib/humanize/locale/ko_KR/LC_MESSAGES/humanize.po index e316ebe5..b8c0000d 100644 --- a/lib/humanize/locale/ko_KR/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/ko_KR/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2013-07-10 11:38+0900\n" "Last-Translator: @youngrok\n" "Language-Team: ko_KR \n" @@ -19,184 +19,244 @@ msgstr "" "Generated-By: Babel 0.9.6\n" "X-Generator: Poedit 1.5.7\n" -#: src/humanize/number.py:56 -#, fuzzy -msgctxt "0" -msgid "th" -msgstr "번째" - #: src/humanize/number.py:57 #, fuzzy -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "번째" #: src/humanize/number.py:58 #, fuzzy -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "번째" #: src/humanize/number.py:59 #, fuzzy -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "번째" #: src/humanize/number.py:60 #, fuzzy -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "번째" #: src/humanize/number.py:61 #, fuzzy -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "번째" #: src/humanize/number.py:62 #, fuzzy -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "번째" #: src/humanize/number.py:63 #, fuzzy -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "번째" #: src/humanize/number.py:64 #, fuzzy -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "번째" #: src/humanize/number.py:65 #, fuzzy -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "번째" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +#, fuzzy +msgctxt "9 (male)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:70 +#, fuzzy +msgctxt "0 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:71 +#, fuzzy +msgctxt "1 (female)" +msgid "st" +msgstr "번째" + +#: src/humanize/number.py:72 +#, fuzzy +msgctxt "2 (female)" +msgid "nd" +msgstr "번째" + +#: src/humanize/number.py:73 +#, fuzzy +msgctxt "3 (female)" +msgid "rd" +msgstr "번째" + +#: src/humanize/number.py:74 +#, fuzzy +msgctxt "4 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:75 +#, fuzzy +msgctxt "5 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:76 +#, fuzzy +msgctxt "6 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:77 +#, fuzzy +msgctxt "7 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:78 +#, fuzzy +msgctxt "8 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:79 +#, fuzzy +msgctxt "9 (female)" +msgid "th" +msgstr "번째" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "%(value)s million" msgstr[1] "%(value)s million" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "milliard" msgstr[1] "milliard" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 #, fuzzy msgid "trillion" msgid_plural "trillion" msgstr[0] "%(value)s billion" msgstr[1] "%(value)s billion" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 #, fuzzy msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "%(value)s quadrillion" msgstr[1] "%(value)s quadrillion" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 #, fuzzy msgid "quintillion" msgid_plural "quintillion" msgstr[0] "%(value)s quintillion" msgstr[1] "%(value)s quintillion" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 #, fuzzy msgid "sextillion" msgid_plural "sextillion" msgstr[0] "%(value)s sextillion" msgstr[1] "%(value)s sextillion" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 #, fuzzy msgid "septillion" msgid_plural "septillion" msgstr[0] "%(value)s septillion" msgstr[1] "%(value)s septillion" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 #, fuzzy msgid "octillion" msgid_plural "octillion" msgstr[0] "%(value)s octillion" msgstr[1] "%(value)s octillion" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 #, fuzzy msgid "nonillion" msgid_plural "nonillion" msgstr[0] "%(value)s nonillion" msgstr[1] "%(value)s nonillion" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 #, fuzzy msgid "decillion" msgid_plural "decillion" msgstr[0] "%(value)s décillion" msgstr[1] "%(value)s décillion" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 #, fuzzy msgid "googol" msgid_plural "googol" msgstr[0] "%(value)s gogol" msgstr[1] "%(value)s gogol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "하나" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "둘" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "셋" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "넷" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "다섯" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "여섯" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "일곱" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "여덟" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "아홉" @@ -204,15 +264,15 @@ msgstr "아홉" #, python-format msgid "%d microsecond" msgid_plural "%d microseconds" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d마이크로초" +msgstr[1] "%d마이크로초" #: src/humanize/time.py:142 #, python-format msgid "%d millisecond" msgid_plural "%d milliseconds" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d밀리초" +msgstr[1] "%d밀리초" #: src/humanize/time.py:145 src/humanize/time.py:220 msgid "a moment" @@ -248,7 +308,7 @@ msgstr "1시간" #, python-format msgid "%d hour" msgid_plural "%d hours" -msgstr[0] "%d heure" +msgstr[0] "%d시간" msgstr[1] "%d시간" #: src/humanize/time.py:162 @@ -259,18 +319,18 @@ msgstr "하루" #, python-format msgid "%d day" msgid_plural "%d days" -msgstr[0] "%d jour" +msgstr[0] "%d일" msgstr[1] "%d일" #: src/humanize/time.py:169 msgid "a month" -msgstr "한달" +msgstr "1개월" #: src/humanize/time.py:171 #, python-format msgid "%d month" msgid_plural "%d months" -msgstr[0] "%d mois" +msgstr[0] "%d개월" msgstr[1] "%d개월" #: src/humanize/time.py:174 @@ -281,8 +341,8 @@ msgstr "1년" #, python-format msgid "1 year, %d day" msgid_plural "1 year, %d days" -msgstr[0] "1년 %d일" -msgstr[1] "1년 %d일" +msgstr[0] "1년, %d일" +msgstr[1] "1년, %d일" #: src/humanize/time.py:179 msgid "1 year, 1 month" @@ -299,8 +359,8 @@ msgstr[1] "1년, %d개월" #, python-format msgid "%d year" msgid_plural "%d years" -msgstr[0] "%d 년" -msgstr[1] "%d ans" +msgstr[0] "%d년" +msgstr[1] "%d년" #: src/humanize/time.py:217 #, python-format diff --git a/lib/humanize/locale/nl_NL/LC_MESSAGES/humanize.po b/lib/humanize/locale/nl_NL/LC_MESSAGES/humanize.po index 3fc7594e..d9d56f20 100644 --- a/lib/humanize/locale/nl_NL/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/nl_NL/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2015-03-25 21:08+0100\n" "Last-Translator: Martin van Wingerden\n" "Language-Team: nl_NL\n" @@ -19,165 +19,215 @@ msgstr "" "Generated-By: Babel 0.9.6\n" "X-Generator: Poedit 1.7.5\n" -#: src/humanize/number.py:56 -msgctxt "0" +#: src/humanize/number.py:57 +msgctxt "0 (male)" msgid "th" msgstr "de" -#: src/humanize/number.py:57 -msgctxt "1" +#: src/humanize/number.py:58 +msgctxt "1 (male)" msgid "st" msgstr "ste" -#: src/humanize/number.py:58 -msgctxt "2" +#: src/humanize/number.py:59 +msgctxt "2 (male)" msgid "nd" msgstr "de" -#: src/humanize/number.py:59 -msgctxt "3" +#: src/humanize/number.py:60 +msgctxt "3 (male)" msgid "rd" msgstr "de" -#: src/humanize/number.py:60 -msgctxt "4" -msgid "th" -msgstr "de" - #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "de" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "de" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "de" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "de" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "de" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ste" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "de" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "de" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "de" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "miljoen" msgstr[1] "miljoen" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "miljard" msgstr[1] "miljard" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "biljoen" msgstr[1] "biljoen" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "biljard" msgstr[1] "biljard" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "triljoen" msgstr[1] "triljoen" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "triljard" msgstr[1] "triljard" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "quadriljoen" msgstr[1] "quadriljoen" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "quadriljard" msgstr[1] "quadriljard" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "quintiljoen" msgstr[1] "quintiljoen" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "quintiljard" msgstr[1] "quintiljard" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googol" msgstr[1] "googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "nul" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "één" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "twee" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "drie" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "vier" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "vijf" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "zes" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "zeven" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "acht" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "negen" diff --git a/lib/humanize/locale/pl_PL/LC_MESSAGES/humanize.po b/lib/humanize/locale/pl_PL/LC_MESSAGES/humanize.po index 0b41c09e..1d4720e2 100644 --- a/lib/humanize/locale/pl_PL/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/pl_PL/LC_MESSAGES/humanize.po @@ -2,12 +2,13 @@ # Copyright (C) 2020 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Bartosz Bubak , 2020. +# Added missing strings by Krystian Postek , 2020. # msgid "" msgstr "" "Project-Id-Version: 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2020-04-22 10:02+0200\n" "Last-Translator: Bartosz Bubak \n" "Language-Team: Polish\n" @@ -18,177 +19,227 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "milion" msgstr[1] "milion" msgstr[2] "milion" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "bilion" msgstr[1] "bilion" msgstr[2] "bilion" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "trylion" msgstr[1] "trylion" msgstr[2] "trylion" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "kwadrylion" msgstr[1] "kwadrylion" msgstr[2] "kwadrylion" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "kwintylion" msgstr[1] "kwintylion" msgstr[2] "kwintylion" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "sekstylion" msgstr[1] "sekstylion" msgstr[2] "sekstylion" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "septylion" msgstr[1] "septylion" msgstr[2] "septylion" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "oktylion" msgstr[1] "oktylion" msgstr[2] "oktylion" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "nonilion" msgstr[1] "nonilion" msgstr[2] "nonilion" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "decylion" msgstr[1] "decylion" msgstr[2] "decylion" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googol" msgstr[1] "googol" msgstr[2] "googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "zero" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "jeden" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "dwa" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "trzy" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "cztery" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "pięć" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "sześć" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "siedem" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "osiem" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "dziewięć" @@ -286,7 +337,7 @@ msgstr[2] "1 rok, %d dni" #: src/humanize/time.py:179 msgid "1 year, 1 month" -msgstr "" +msgstr "1 rok, 1 miesiąc" #: src/humanize/time.py:182 #, python-format @@ -333,4 +384,4 @@ msgstr "wczoraj" #: src/humanize/time.py:534 #, python-format msgid "%s and %s" -msgstr "" +msgstr "%s i %s" diff --git a/lib/humanize/locale/pt_BR/LC_MESSAGES/humanize.po b/lib/humanize/locale/pt_BR/LC_MESSAGES/humanize.po index 13f604ae..ecb395bd 100644 --- a/lib/humanize/locale/pt_BR/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/pt_BR/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2016-06-15 15:58-0300\n" "Last-Translator: \n" "Language-Team: \n" @@ -18,165 +18,215 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "X-Generator: Poedit 1.8.5\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "º" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "º" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "º" #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "º" #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "º" #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "º" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ª" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "ª" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "ª" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "milhão" msgstr[1] "milhão" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "bilhão" msgstr[1] "bilhão" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "trilhão" msgstr[1] "trilhão" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "quatrilhão" msgstr[1] "quatrilhão" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "quintilhão" msgstr[1] "quintilhão" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "sextilhão" msgstr[1] "sextilhão" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "septilhão" msgstr[1] "septilhão" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "octilhão" msgstr[1] "octilhão" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "nonilhão" msgstr[1] "nonilhão" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "decilhão" msgstr[1] "decilhão" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "undecilhão" msgstr[1] "undecilhão" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "zero" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "um" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "dois" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "três" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "quatro" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "cinco" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "seis" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "sete" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "oito" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "nove" diff --git a/lib/humanize/locale/pt_PT/LC_MESSAGES/humanize.po b/lib/humanize/locale/pt_PT/LC_MESSAGES/humanize.po index 82e9b28a..a2d1fed2 100644 --- a/lib/humanize/locale/pt_PT/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/pt_PT/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2020-07-05 18:17+0100\n" "Last-Translator: \n" "Language-Team: \n" @@ -18,165 +18,215 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "X-Generator: Poedit 2.3.1\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "º" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "º" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "º" #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "º" #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "º" #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "º" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "º" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "º" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ª" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "ª" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "ª" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "ª" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "milhão" msgstr[1] "milhão" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "milhar de milhão" msgstr[1] "milhar de milhão" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "bilião" msgstr[1] "bilião" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "mil biliões" msgstr[1] "mil biliões" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "trilião" msgstr[1] "trilião" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "mil triliões" msgstr[1] "mil triliões" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "quatrilião" msgstr[1] "quatrilião" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "mil quatriliões" msgstr[1] "mil quatriliões" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "quintilhão" msgstr[1] "quintilhão" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "mil quintilhões" msgstr[1] "mil quintilhões" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "sextilhão" msgstr[1] "sextilhão" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "zero" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "um" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "dois" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "três" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "quatro" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "cinco" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "seis" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "sete" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "oito" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "nove" diff --git a/lib/humanize/locale/ru_RU/LC_MESSAGES/humanize.po b/lib/humanize/locale/ru_RU/LC_MESSAGES/humanize.po index 13626838..b03aa5f7 100644 --- a/lib/humanize/locale/ru_RU/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/ru_RU/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2014-03-24 20:32+0300\n" "Last-Translator: Sergey Prokhorov \n" "Language-Team: ru_RU \n" @@ -20,184 +20,227 @@ msgstr "" "Generated-By: Babel 0.9.6\n" "X-Generator: Poedit 1.5.4\n" -# в Django тут "ий" но на самом деле оба варианта работают плохо -#: src/humanize/number.py:56 -msgctxt "0" +#: src/humanize/number.py:57 +msgctxt "0 (male)" msgid "th" msgstr "ой" -#: src/humanize/number.py:57 -msgctxt "1" +#: src/humanize/number.py:58 +msgctxt "1 (male)" msgid "st" msgstr "ый" -#: src/humanize/number.py:58 -msgctxt "2" +#: src/humanize/number.py:59 +msgctxt "2 (male)" msgid "nd" msgstr "ой" -#: src/humanize/number.py:59 -msgctxt "3" +#: src/humanize/number.py:60 +msgctxt "3 (male)" msgid "rd" msgstr "ий" -# в Django тут "ий" но на самом деле оба варианта работают плохо -#: src/humanize/number.py:60 -msgctxt "4" -msgid "th" -msgstr "ый" - -# в Django тут "ий" но на самом деле оба варианта работают плохо #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "ый" -# в Django тут "ий" но на самом деле оба варианта работают плохо #: src/humanize/number.py:62 -msgctxt "6" -msgid "th" -msgstr "ой" - -# в Django тут "ий" но на самом деле оба варианта работают плохо -#: src/humanize/number.py:63 -msgctxt "7" -msgid "th" -msgstr "ой" - -# в Django тут "ий" но на самом деле оба варианта работают плохо -#: src/humanize/number.py:64 -msgctxt "8" -msgid "th" -msgstr "ой" - -# в Django тут "ий" но на самом деле оба варианта работают плохо -#: src/humanize/number.py:65 -msgctxt "9" +msgctxt "5 (male)" msgid "th" msgstr "ый" -#: src/humanize/number.py:126 +#: src/humanize/number.py:63 +msgctxt "6 (male)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:64 +msgctxt "7 (male)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:65 +msgctxt "8 (male)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "ый" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ый" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "ой" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "ий" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "ый" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "ый" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "ой" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "ый" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +msgstr[0] "тысяча" +msgstr[1] "тысячи" +msgstr[2] "тысяч" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" -msgstr[0] "миллиона" +msgstr[0] "миллион" msgstr[1] "миллиона" -msgstr[2] "миллиона" +msgstr[2] "миллионов" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" -msgstr[0] "миллиарда" +msgstr[0] "миллиард" msgstr[1] "миллиарда" -msgstr[2] "миллиарда" +msgstr[2] "миллиардов" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" -msgstr[0] "триллиона" +msgstr[0] "триллион" msgstr[1] "триллиона" -msgstr[2] "триллиона" +msgstr[2] "триллионов" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" -msgstr[0] "квадриллиона" +msgstr[0] "квадриллион" msgstr[1] "квадриллиона" -msgstr[2] "квадриллиона" +msgstr[2] "квадриллионов" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" -msgstr[0] "квинтиллиона" +msgstr[0] "квинтиллион" msgstr[1] "квинтиллиона" -msgstr[2] "квинтиллиона" +msgstr[2] "квинтиллионов" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" -msgstr[0] "сикстиллиона" +msgstr[0] "сикстиллион" msgstr[1] "сикстиллиона" -msgstr[2] "сикстиллиона" +msgstr[2] "сикстиллионов" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" -msgstr[0] "септиллиона" +msgstr[0] "септиллион" msgstr[1] "септиллиона" -msgstr[2] "септиллиона" +msgstr[2] "септиллионов" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" -msgstr[0] "октиллиона" +msgstr[0] "октиллион" msgstr[1] "октиллиона" -msgstr[2] "октиллиона" +msgstr[2] "октиллионов" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" -msgstr[0] "нониллиона" +msgstr[0] "нониллион" msgstr[1] "нониллиона" -msgstr[2] "нониллиона" +msgstr[2] "нониллионов" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" -msgstr[0] "децилиона" +msgstr[0] "децилион" msgstr[1] "децилиона" -msgstr[2] "децилиона" +msgstr[2] "децилионов" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" -msgstr[0] "гогола" +msgstr[0] "гогол" msgstr[1] "гогола" -msgstr[2] "гогола" +msgstr[2] "гоголов" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" -msgstr "" +msgstr "ноль" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "один" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "два" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "три" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "четыре" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "пять" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "шесть" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "семь" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "восемь" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "девять" @@ -205,17 +248,17 @@ msgstr "девять" #, python-format msgid "%d microsecond" msgid_plural "%d microseconds" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +msgstr[0] "%d микросекунда" +msgstr[1] "%d микросекунды" +msgstr[2] "%d микросекунд" #: src/humanize/time.py:142 #, python-format msgid "%d millisecond" msgid_plural "%d milliseconds" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +msgstr[0] "%d миллисекунда" +msgstr[1] "%d миллисекунды" +msgstr[2] "%d миллисекунд" #: src/humanize/time.py:145 src/humanize/time.py:220 msgid "a moment" diff --git a/lib/humanize/locale/sk_SK/LC_MESSAGES/humanize.po b/lib/humanize/locale/sk_SK/LC_MESSAGES/humanize.po index c72c81d9..941718ad 100644 --- a/lib/humanize/locale/sk_SK/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/sk_SK/LC_MESSAGES/humanize.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: humanize\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2020-09-29 22:43+0300\n" "Last-Translator: Jose Riha \n" "Language-Team: sk \n" @@ -18,177 +18,227 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "milióna/ov" msgstr[1] "milióna/ov" msgstr[2] "milióna/ov" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "miliardy/árd" msgstr[1] "miliardy/árd" msgstr[2] "miliardy/árd" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "bilióna/ov" msgstr[1] "bilióna/ov" msgstr[2] "bilióna/ov" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "biliardy/árd" msgstr[1] "biliardy/árd" msgstr[2] "biliardy/árd" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "trilióna/árd" msgstr[1] "trilióna/árd" msgstr[2] "trilióna/árd" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "triliardy/árd" msgstr[1] "triliardy/árd" msgstr[2] "triliardy/árd" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "kvadrilióna/ov" msgstr[1] "kvadrilióna/ov" msgstr[2] "kvadrilióna/ov" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "kvadriliardy/árd" msgstr[1] "kvadriliardy/árd" msgstr[2] "kvadriliardy/árd" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "kvintilióna/ov" msgstr[1] "kvintilióna/ov" msgstr[2] "kvintilióna/ov" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "kvintiliardy/árd" msgstr[1] "kvintiliardy/árd" msgstr[2] "kvintiliardy/árd" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googola/ov" msgstr[1] "googola/ov" msgstr[2] "googola/ov" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "nula" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "jedna" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "dve" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "tri" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "štyri" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "päť" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "šesť" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "sedem" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "osem" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "deväť" diff --git a/lib/humanize/locale/sl_SI/LC_MESSAGES/humanize.po b/lib/humanize/locale/sl_SI/LC_MESSAGES/humanize.po new file mode 100644 index 00000000..a6624bfe --- /dev/null +++ b/lib/humanize/locale/sl_SI/LC_MESSAGES/humanize.po @@ -0,0 +1,409 @@ +# Slovenian translations for PACKAGE package. +# Copyright (C) 2021 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# vlin , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: humanize\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-06-11 22:52+0200\n" +"PO-Revision-Date: 2021-06-11 23:39+0200\n" +"Last-Translator: dkrat7 \n" +"Language-Team: Slovenian\n" +"Language: sl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" +"%100==4 ? 2 : 3);\n" +"X-Generator: Poedit 2.3\n" + +#: src/humanize/number.py:58 +msgctxt "0 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:59 +msgctxt "1 (male)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:60 +msgctxt "2 (male)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:61 +msgctxt "3 (male)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:62 +msgctxt "4 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:63 +msgctxt "5 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:64 +msgctxt "6 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:65 +msgctxt "7 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:66 +msgctxt "8 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:67 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:80 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 +msgid "thousand" +msgid_plural "thousand" +msgstr[0] "tisoč" +msgstr[1] "tisoč" +msgstr[2] "tisoč" +msgstr[3] "tisoč" + +#: src/humanize/number.py:141 +msgid "million" +msgid_plural "million" +msgstr[0] "milijon" +msgstr[1] "milijona" +msgstr[2] "milijoni" +msgstr[3] "milijonov" + +#: src/humanize/number.py:142 +msgid "billion" +msgid_plural "billion" +msgstr[0] "milijarda" +msgstr[1] "milijardi" +msgstr[2] "milijarde" +msgstr[3] "milijard" + +#: src/humanize/number.py:143 +msgid "trillion" +msgid_plural "trillion" +msgstr[0] "bilijon" +msgstr[1] "bilijona" +msgstr[2] "bilijoni" +msgstr[3] "bilijonov" + +#: src/humanize/number.py:144 +msgid "quadrillion" +msgid_plural "quadrillion" +msgstr[0] "bilijarda" +msgstr[1] "bilijardi" +msgstr[2] "bilijarde" +msgstr[3] "bilijard" + +#: src/humanize/number.py:145 +msgid "quintillion" +msgid_plural "quintillion" +msgstr[0] "trilijon" +msgstr[1] "trilijona" +msgstr[2] "trilijoni" +msgstr[3] "trilijonov" + +#: src/humanize/number.py:146 +msgid "sextillion" +msgid_plural "sextillion" +msgstr[0] "trilijarda" +msgstr[1] "trilijardi" +msgstr[2] "trilijarde" +msgstr[3] "trilijard" + +#: src/humanize/number.py:147 +msgid "septillion" +msgid_plural "septillion" +msgstr[0] "kvadrilijon" +msgstr[1] "kvadrilijona" +msgstr[2] "kvadrilijoni" +msgstr[3] "kvadrilijonov" + +#: src/humanize/number.py:148 +msgid "octillion" +msgid_plural "octillion" +msgstr[0] "kvadrilijarda" +msgstr[1] "kvadrilijardi" +msgstr[2] "kvadrilijarde" +msgstr[3] "kvadrilijard" + +#: src/humanize/number.py:149 +msgid "nonillion" +msgid_plural "nonillion" +msgstr[0] "kvintilijon" +msgstr[1] "kvintilijona" +msgstr[2] "kvintilijoni" +msgstr[3] "kvintilijonov" + +#: src/humanize/number.py:150 +msgid "decillion" +msgid_plural "decillion" +msgstr[0] "kvintilijarda" +msgstr[1] "kvintilijardi" +msgstr[2] "kvintilijarde" +msgstr[3] "kvintilijard" + +#: src/humanize/number.py:151 +msgid "googol" +msgid_plural "googol" +msgstr[0] "gugol" +msgstr[1] "gugola" +msgstr[2] "gugoli" +msgstr[3] "gugolov" + +#: src/humanize/number.py:247 +msgid "zero" +msgstr "nič" + +#: src/humanize/number.py:248 +msgid "one" +msgstr "ena" + +#: src/humanize/number.py:249 +msgid "two" +msgstr "dve" + +#: src/humanize/number.py:250 +msgid "three" +msgstr "tri" + +#: src/humanize/number.py:251 +msgid "four" +msgstr "štiri" + +#: src/humanize/number.py:252 +msgid "five" +msgstr "pet" + +#: src/humanize/number.py:253 +msgid "six" +msgstr "šest" + +#: src/humanize/number.py:254 +msgid "seven" +msgstr "sedem" + +#: src/humanize/number.py:255 +msgid "eight" +msgstr "osem" + +#: src/humanize/number.py:256 +msgid "nine" +msgstr "devet" + +#: src/humanize/time.py:138 +#, python-format +msgid "%d microsecond" +msgid_plural "%d microseconds" +msgstr[0] "%d mikrosekunda" +msgstr[1] "%d mikrosekundi" +msgstr[2] "%d mikrosekunde" +msgstr[3] "%d mikrosekund" + +#: src/humanize/time.py:147 +#, python-format +msgid "%d millisecond" +msgid_plural "%d milliseconds" +msgstr[0] "%d milisekunda" +msgstr[1] "%d milisekundi" +msgstr[2] "%d milisekunde" +msgstr[3] "%d milisekund" + +#: src/humanize/time.py:150 src/humanize/time.py:231 +msgid "a moment" +msgstr "trenutek" + +#: src/humanize/time.py:152 +msgid "a second" +msgstr "sekunda" + +#: src/humanize/time.py:154 +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekunda" +msgstr[1] "%d sekundi" +msgstr[2] "%d sekunde" +msgstr[3] "%d sekund" + +#: src/humanize/time.py:156 +msgid "a minute" +msgstr "minuta" + +#: src/humanize/time.py:159 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuta" +msgstr[1] "%d minuti" +msgstr[2] "%d minute" +msgstr[3] "%d minut" + +#: src/humanize/time.py:161 +msgid "an hour" +msgstr "ura" + +#: src/humanize/time.py:164 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ura" +msgstr[1] "%d uri" +msgstr[2] "%d ure" +msgstr[3] "%d ur" + +#: src/humanize/time.py:167 +msgid "a day" +msgstr "dan" + +#: src/humanize/time.py:169 src/humanize/time.py:172 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dan" +msgstr[1] "%d dneva" +msgstr[2] "%d dnevi" +msgstr[3] "%d dni" + +#: src/humanize/time.py:174 +msgid "a month" +msgstr "mesec" + +#: src/humanize/time.py:176 +#, python-format +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "%d mesec" +msgstr[1] "%d meseca" +msgstr[2] "%d meseci" +msgstr[3] "%d mesecev" + +#: src/humanize/time.py:179 +msgid "a year" +msgstr "leto" + +#: src/humanize/time.py:181 src/humanize/time.py:190 +#, python-format +msgid "1 year, %d day" +msgid_plural "1 year, %d days" +msgstr[0] "1 leto, %d dan" +msgstr[1] "1 leto, %d dneva" +msgstr[2] "1 leto, %d dnevi" +msgstr[3] "1 leto, %d dni" + +#: src/humanize/time.py:184 +msgid "1 year, 1 month" +msgstr "1 leto, 1 mesec" + +#: src/humanize/time.py:187 +#, python-format +msgid "1 year, %d month" +msgid_plural "1 year, %d months" +msgstr[0] "1 leto, %d mesec" +msgstr[1] "1 leto, %d meseca" +msgstr[2] "1 leto, %d meseci" +msgstr[3] "1 leto, %d mesecev" + +#: src/humanize/time.py:192 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "%d leto" +msgstr[1] "%d leti" +msgstr[2] "%d leta" +msgstr[3] "%d let" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s from now" +msgstr "%s od zdaj" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s ago" +msgstr "%s nazaj" + +#: src/humanize/time.py:232 +msgid "now" +msgstr "zdaj" + +#: src/humanize/time.py:255 +msgid "today" +msgstr "danes" + +#: src/humanize/time.py:257 +msgid "tomorrow" +msgstr "jutri" + +#: src/humanize/time.py:259 +msgid "yesterday" +msgstr "včeraj" + +#: src/humanize/time.py:545 +#, python-format +msgid "%s and %s" +msgstr "%s in %s" diff --git a/lib/humanize/locale/sv_SE/LC_MESSAGES/humanize.po b/lib/humanize/locale/sv_SE/LC_MESSAGES/humanize.po new file mode 100644 index 00000000..c16f1d6a --- /dev/null +++ b/lib/humanize/locale/sv_SE/LC_MESSAGES/humanize.po @@ -0,0 +1,363 @@ +# Swedish (Sweden) translations for humanize package. +# Copyright (C) 2021 +# This file is distributed under the same license as the humanize project. +# Kess Vargavind , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: humanize\n" +"Report-Msgid-Bugs-To: https://github.com/jmoiron/humanize/issues\n" +"POT-Creation-Date: 2021-07-05 09:49+0200\n" +"PO-Revision-Date: 2021-07-05 10:30+0200\n" +"Last-Translator: Kess Vargavind \n" +"Language-Team: Swedish\n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: src/humanize/number.py:58 +msgctxt "0 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:59 +msgctxt "1 (male)" +msgid "st" +msgstr ":a" + +#: src/humanize/number.py:60 +msgctxt "2 (male)" +msgid "nd" +msgstr ":a" + +#: src/humanize/number.py:61 +msgctxt "3 (male)" +msgid "rd" +msgstr ":e" + +#: src/humanize/number.py:62 +msgctxt "4 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:63 +msgctxt "5 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:64 +msgctxt "6 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:65 +msgctxt "7 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:66 +msgctxt "8 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:67 +msgctxt "9 (male)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:71 +msgctxt "0 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:72 +msgctxt "1 (female)" +msgid "st" +msgstr ":a" + +#: src/humanize/number.py:73 +msgctxt "2 (female)" +msgid "nd" +msgstr ":a" + +#: src/humanize/number.py:74 +msgctxt "3 (female)" +msgid "rd" +msgstr ":e" + +#: src/humanize/number.py:75 +msgctxt "4 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:76 +msgctxt "5 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:77 +msgctxt "6 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:78 +msgctxt "7 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:79 +msgctxt "8 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:80 +msgctxt "9 (female)" +msgid "th" +msgstr ":e" + +#: src/humanize/number.py:141 +msgid "thousand" +msgid_plural "thousand" +msgstr[0] "tusen" +msgstr[1] "tusen" + +#: src/humanize/number.py:142 +msgid "million" +msgid_plural "million" +msgstr[0] "miljon" +msgstr[1] "miljoner" + +#: src/humanize/number.py:143 +msgid "billion" +msgid_plural "billion" +msgstr[0] "miljard" +msgstr[1] "miljarder" + +#: src/humanize/number.py:144 +msgid "trillion" +msgid_plural "trillion" +msgstr[0] "biljon" +msgstr[1] "biljoner" + +#: src/humanize/number.py:145 +msgid "quadrillion" +msgid_plural "quadrillion" +msgstr[0] "biljard" +msgstr[1] "biljarder" + +#: src/humanize/number.py:146 +msgid "quintillion" +msgid_plural "quintillion" +msgstr[0] "triljon" +msgstr[1] "triljoner" + +#: src/humanize/number.py:147 +msgid "sextillion" +msgid_plural "sextillion" +msgstr[0] "triljard" +msgstr[1] "triljarder" + +#: src/humanize/number.py:148 +msgid "septillion" +msgid_plural "septillion" +msgstr[0] "kvadriljon" +msgstr[1] "kvadriljoner" + +#: src/humanize/number.py:149 +msgid "octillion" +msgid_plural "octillion" +msgstr[0] "kvadriljard" +msgstr[1] "kvadriljarder" + +#: src/humanize/number.py:150 +msgid "nonillion" +msgid_plural "nonillion" +msgstr[0] "kvintiljon" +msgstr[1] "kvintiljoner" + +#: src/humanize/number.py:151 +msgid "decillion" +msgid_plural "decillion" +msgstr[0] "kvintiljard" +msgstr[1] "kvintiljarder" + +#: src/humanize/number.py:152 +msgid "googol" +msgid_plural "googol" +msgstr[0] "googol" +msgstr[1] "googol" + +#: src/humanize/number.py:247 +msgid "zero" +msgstr "noll" + +#: src/humanize/number.py:248 +msgid "one" +msgstr "ett" + +#: src/humanize/number.py:249 +msgid "two" +msgstr "två" + +#: src/humanize/number.py:250 +msgid "three" +msgstr "tre" + +#: src/humanize/number.py:251 +msgid "four" +msgstr "fyra" + +#: src/humanize/number.py:252 +msgid "five" +msgstr "fem" + +#: src/humanize/number.py:253 +msgid "six" +msgstr "sex" + +#: src/humanize/number.py:254 +msgid "seven" +msgstr "sju" + +#: src/humanize/number.py:255 +msgid "eight" +msgstr "åtta" + +#: src/humanize/number.py:256 +msgid "nine" +msgstr "nio" + +#: src/humanize/time.py:138 +#, python-format +msgid "%d microsecond" +msgid_plural "%d microseconds" +msgstr[0] "%d mikrosekund" +msgstr[1] "%d mikrosekunder" + +#: src/humanize/time.py:147 +#, python-format +msgid "%d millisecond" +msgid_plural "%d milliseconds" +msgstr[0] "%d millsekund" +msgstr[1] "%d millsekunder" + +#: src/humanize/time.py:150 src/humanize/time.py:231 +msgid "a moment" +msgstr "en liten stund" + +#: src/humanize/time.py:152 +msgid "a second" +msgstr "en sekund" + +#: src/humanize/time.py:154 +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekund" +msgstr[1] "%d sekunder" + +#: src/humanize/time.py:156 +msgid "a minute" +msgstr "en minut" + +#: src/humanize/time.py:159 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minuter" + +#: src/humanize/time.py:161 +msgid "an hour" +msgstr "en timme" + +#: src/humanize/time.py:164 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d timme" +msgstr[1] "%d timmar" + +#: src/humanize/time.py:167 +msgid "a day" +msgstr "en dag" + +#: src/humanize/time.py:169 src/humanize/time.py:172 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dag" +msgstr[1] "%d dagar" + +#: src/humanize/time.py:174 +msgid "a month" +msgstr "en månad" + +#: src/humanize/time.py:176 +#, python-format +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "%d månad" +msgstr[1] "%d månader" + +#: src/humanize/time.py:179 +msgid "a year" +msgstr "ett år" + +#: src/humanize/time.py:181 src/humanize/time.py:190 +#, python-format +msgid "1 year, %d day" +msgid_plural "1 year, %d days" +msgstr[0] "1 år, %d dag" +msgstr[1] "1 år, %d dagar" + +#: src/humanize/time.py:184 +msgid "1 year, 1 month" +msgstr "1 år, 1 månad" + +#: src/humanize/time.py:187 +#, python-format +msgid "1 year, %d month" +msgid_plural "1 year, %d months" +msgstr[0] "1 år, %d månad" +msgstr[1] "1 år, %d månader" + +#: src/humanize/time.py:192 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "%d år" +msgstr[1] "%d år" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s from now" +msgstr "%s från nu" + +#: src/humanize/time.py:228 +#, python-format +msgid "%s ago" +msgstr "%s sedan" + +#: src/humanize/time.py:232 +msgid "now" +msgstr "nu" + +#: src/humanize/time.py:255 +msgid "today" +msgstr "idag" + +#: src/humanize/time.py:257 +msgid "tomorrow" +msgstr "imorgon" + +#: src/humanize/time.py:259 +msgid "yesterday" +msgstr "igår" + +#: src/humanize/time.py:545 +#, python-format +msgid "%s and %s" +msgstr "%s och %s" diff --git a/lib/humanize/locale/tr_TR/LC_MESSAGES/humanize.po b/lib/humanize/locale/tr_TR/LC_MESSAGES/humanize.po index 3533eb18..03a6f2f0 100644 --- a/lib/humanize/locale/tr_TR/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/tr_TR/LC_MESSAGES/humanize.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: humanize\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2017-02-23 20:00+0300\n" "Last-Translator: Emre Çintay \n" "Language-Team: Turkish\n" @@ -19,165 +19,215 @@ msgstr "" "X-Generator: Poedit 1.8.7.1\n" "Generated-By: Emre Çintay\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "milyon" msgstr[1] "milyon" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "milyar" msgstr[1] "milyar" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "trilyon" msgstr[1] "trilyon" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "katrilyon" msgstr[1] "katrilyon" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "kentilyon" msgstr[1] "kentilyon" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "sekstilyon" msgstr[1] "sekstilyon" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "septilyon" msgstr[1] "septilyon" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "oktilyon" msgstr[1] "oktilyon" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "nonilyon" msgstr[1] "nonilyon" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "desilyon" msgstr[1] "desilyon" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "googol" msgstr[1] "googol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "bir" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "iki" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "üç" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "dört" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "beş" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "altı" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "yedi" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "sekiz" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "dokuz" diff --git a/lib/humanize/locale/uk_UA/LC_MESSAGES/humanize.po b/lib/humanize/locale/uk_UA/LC_MESSAGES/humanize.po index 527f1134..d74ca5fd 100644 --- a/lib/humanize/locale/uk_UA/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/uk_UA/LC_MESSAGES/humanize.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: \n" "Last-Translator: TL\n" "Language-Team: uk_UA\n" @@ -15,177 +15,227 @@ msgstr "" "Generated-By:\n" "X-Generator: \n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "ий" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "ий" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "ий" #: src/humanize/number.py:59 -msgctxt "3" +msgctxt "2 (male)" +msgid "nd" +msgstr "ий" + +#: src/humanize/number.py:60 +msgctxt "3 (male)" msgid "rd" msgstr "ій" -#: src/humanize/number.py:60 -msgctxt "4" -msgid "th" -msgstr "ий" - #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "ий" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "ий" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "ий" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "ий" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "ий" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "ий" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "ий" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "ій" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "ий" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +msgstr[0] "тисяча" +msgstr[1] "тисячі" +msgstr[2] "тисяч" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" -msgstr[0] "мільйонів" -msgstr[1] "мільйонів" +msgstr[0] "мільйон" +msgstr[1] "мільйона" msgstr[2] "мільйонів" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" -msgstr[0] "мільярдів" -msgstr[1] "мільярдів" +msgstr[0] "мільярд" +msgstr[1] "мільярда" msgstr[2] "мільярдів" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" -msgstr[0] "трильйонів" -msgstr[1] "трильйонів" +msgstr[0] "трильйон" +msgstr[1] "трильйона" msgstr[2] "трильйонів" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" -msgstr[0] "квадрильйонів" -msgstr[1] "квадрильйонів" +msgstr[0] "квадрильйон" +msgstr[1] "квадрильйона" msgstr[2] "квадрильйонів" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" -msgstr[0] "квинтиліонів" -msgstr[1] "квинтиліонів" +msgstr[0] "квинтиліон" +msgstr[1] "квинтиліона" msgstr[2] "квинтиліонів" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" -msgstr[0] "сикстильйонів" -msgstr[1] "сикстильйонів" +msgstr[0] "сикстильйон" +msgstr[1] "сикстильйона" msgstr[2] "сикстильйонів" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" -msgstr[0] "септильйонів" -msgstr[1] "септильйонів" +msgstr[0] "септильйон" +msgstr[1] "септильйона" msgstr[2] "септильйонів" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" -msgstr[0] "октильйонів" -msgstr[1] "октильйонів" +msgstr[0] "октильйон" +msgstr[1] "октильйона" msgstr[2] "октильйонів" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" -msgstr[0] "нонильйонів" -msgstr[1] "нонильйонів" +msgstr[0] "нонильйон" +msgstr[1] "нонильйона" msgstr[2] "нонильйонів" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" -msgstr[0] "децильйонів" -msgstr[1] "децильйонів" +msgstr[0] "децильйон" +msgstr[1] "децильйона" msgstr[2] "децильйонів" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" -msgstr[0] "гугола" -msgstr[1] "гугола" -msgstr[2] "гугола" +msgstr[0] "гугол" +msgstr[1] "гугла" +msgstr[2] "гуглів" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "нуль" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "один" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "два" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "три" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "чотири" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "п'ять" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "шість" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "сім" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "вісім" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "дев'ять" @@ -194,8 +244,8 @@ msgstr "дев'ять" msgid "%d microsecond" msgid_plural "%d microseconds" msgstr[0] "%d мікросекунда" -msgstr[1] "%d мікросекунд" -msgstr[2] "%d мікросекунди" +msgstr[1] "%d мікросекунди" +msgstr[2] "%d мікросекунд" #: src/humanize/time.py:142 #, fuzzy, python-format @@ -203,7 +253,7 @@ msgid "%d millisecond" msgid_plural "%d milliseconds" msgstr[0] "%d мілісекунда" msgstr[1] "%d мілісекунди" -msgstr[2] "%d мілісекунди" +msgstr[2] "%d мілісекунд" #: src/humanize/time.py:145 src/humanize/time.py:220 msgid "a moment" @@ -211,14 +261,14 @@ msgstr "у цей момент" #: src/humanize/time.py:147 msgid "a second" -msgstr "секунду" +msgstr "секунда" #: src/humanize/time.py:149 #, python-format msgid "%d second" msgid_plural "%d seconds" msgstr[0] "%d секунда" -msgstr[1] "%d секунд" +msgstr[1] "%d секунди" msgstr[2] "%d секунд" #: src/humanize/time.py:151 @@ -242,7 +292,7 @@ msgstr "година" msgid "%d hour" msgid_plural "%d hours" msgstr[0] "%d година" -msgstr[1] "%d годин" +msgstr[1] "%d години" msgstr[2] "%d годин" #: src/humanize/time.py:162 @@ -255,7 +305,7 @@ msgid "%d day" msgid_plural "%d days" msgstr[0] "%d день" msgstr[1] "%d дня" -msgstr[2] "%d дні" +msgstr[2] "%d днів" #: src/humanize/time.py:169 msgid "a month" @@ -330,4 +380,4 @@ msgstr "вчора" #: src/humanize/time.py:534 #, python-format msgid "%s and %s" -msgstr "" +msgstr "%s й %s" diff --git a/lib/humanize/locale/vi_VI/LC_MESSAGES/humanize.po b/lib/humanize/locale/vi_VN/LC_MESSAGES/humanize.po similarity index 71% rename from lib/humanize/locale/vi_VI/LC_MESSAGES/humanize.po rename to lib/humanize/locale/vi_VN/LC_MESSAGES/humanize.po index 839e0bfd..e57b0c9a 100644 --- a/lib/humanize/locale/vi_VI/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/vi_VN/LC_MESSAGES/humanize.po @@ -1,4 +1,4 @@ -# French (France) translations for PROJECT. +# Vietnamese (Vietnam) translations for PROJECT. # Copyright (C) 2013 ORGANIZATION # This file is distributed under the same license as the PROJECT project. # FIRST AUTHOR , 2013. @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2017-05-30 11:51+0700\n" "Last-Translator: Olivier Cortès \n" "Language-Team: vi_VI \n" @@ -19,172 +19,222 @@ msgstr "" "Generated-By: Babel 0.9.6\n" "X-Generator: Poedit 1.8.7.1\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "." - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "." #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "." #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "." #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "." #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "." #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "." #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "." #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "." #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "." -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "." + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "." + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "." + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "." + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "nghìn" +msgstr[1] "nghìn" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "%(value)s triệu" msgstr[1] "%(value)s triệu" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "tỷ" msgstr[1] "tỷ" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "%(value)s nghìn tỷ" msgstr[1] "%(value)s nghìn tỷ" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "%(value)s triệu tỷ" msgstr[1] "%(value)s triệu tỷ" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 #, fuzzy msgid "quintillion" msgid_plural "quintillion" -msgstr[0] "%(value)s quintillion" -msgstr[1] "%(value)s quintillion" +msgstr[0] "%(value)s tỷ tỷ" +msgstr[1] "%(value)s tỷ tỷ" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 #, fuzzy msgid "sextillion" msgid_plural "sextillion" msgstr[0] "%(value)s sextillion" msgstr[1] "%(value)s sextillion" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 #, fuzzy msgid "septillion" msgid_plural "septillion" msgstr[0] "%(value)s septillion" msgstr[1] "%(value)s septillion" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 #, fuzzy msgid "octillion" msgid_plural "octillion" msgstr[0] "%(value)s octillion" msgstr[1] "%(value)s octillion" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 #, fuzzy msgid "nonillion" msgid_plural "nonillion" msgstr[0] "%(value)s nonillion" msgstr[1] "%(value)s nonillion" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 #, fuzzy msgid "decillion" msgid_plural "decillion" msgstr[0] "%(value)s décillion" msgstr[1] "%(value)s décillion" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 #, fuzzy msgid "googol" msgid_plural "googol" msgstr[0] "%(value)s gogol" msgstr[1] "%(value)s gogol" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" -msgstr "" +msgstr "không" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "một" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "hai" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "ba" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "bốn" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "năm" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "sáu" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "bảy" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "tám" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "chín" @@ -192,15 +242,15 @@ msgstr "chín" #, python-format msgid "%d microsecond" msgid_plural "%d microseconds" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d micro giây" +msgstr[1] "%d micro giây" #: src/humanize/time.py:142 #, python-format msgid "%d millisecond" msgid_plural "%d milliseconds" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d mili giây" +msgstr[1] "%d mili giây" #: src/humanize/time.py:145 src/humanize/time.py:220 msgid "a moment" @@ -319,4 +369,4 @@ msgstr "ngày hôm qua" #: src/humanize/time.py:534 #, python-format msgid "%s and %s" -msgstr "" +msgstr "%s và %s" diff --git a/lib/humanize/locale/zh_CN/LC_MESSAGES/humanize.po b/lib/humanize/locale/zh_CN/LC_MESSAGES/humanize.po index 404f8f77..8c54a9ab 100644 --- a/lib/humanize/locale/zh_CN/LC_MESSAGES/humanize.po +++ b/lib/humanize/locale/zh_CN/LC_MESSAGES/humanize.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: 1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-30 22:34+0200\n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" "PO-Revision-Date: 2016-11-14 23:02+0000\n" "Last-Translator: Liwen SUN \n" "Language-Team: Chinese (simplified)\n" @@ -18,165 +18,215 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/humanize/number.py:56 -msgctxt "0" -msgid "th" -msgstr "第" - #: src/humanize/number.py:57 -msgctxt "1" -msgid "st" +msgctxt "0 (male)" +msgid "th" msgstr "第" #: src/humanize/number.py:58 -msgctxt "2" -msgid "nd" +msgctxt "1 (male)" +msgid "st" msgstr "第" #: src/humanize/number.py:59 -msgctxt "3" -msgid "rd" +msgctxt "2 (male)" +msgid "nd" msgstr "第" #: src/humanize/number.py:60 -msgctxt "4" -msgid "th" +msgctxt "3 (male)" +msgid "rd" msgstr "第" #: src/humanize/number.py:61 -msgctxt "5" +msgctxt "4 (male)" msgid "th" msgstr "第" #: src/humanize/number.py:62 -msgctxt "6" +msgctxt "5 (male)" msgid "th" msgstr "第" #: src/humanize/number.py:63 -msgctxt "7" +msgctxt "6 (male)" msgid "th" msgstr "第" #: src/humanize/number.py:64 -msgctxt "8" +msgctxt "7 (male)" msgid "th" msgstr "第" #: src/humanize/number.py:65 -msgctxt "9" +msgctxt "8 (male)" msgid "th" msgstr "第" -#: src/humanize/number.py:126 +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "第" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "第" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "第" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:140 msgid "thousand" msgid_plural "thousand" msgstr[0] "" msgstr[1] "" -#: src/humanize/number.py:127 +#: src/humanize/number.py:141 msgid "million" msgid_plural "million" msgstr[0] "百万" msgstr[1] "百万" -#: src/humanize/number.py:128 +#: src/humanize/number.py:142 msgid "billion" msgid_plural "billion" msgstr[0] "十亿" msgstr[1] "十亿" -#: src/humanize/number.py:129 +#: src/humanize/number.py:143 msgid "trillion" msgid_plural "trillion" msgstr[0] "兆" msgstr[1] "兆" -#: src/humanize/number.py:130 +#: src/humanize/number.py:144 msgid "quadrillion" msgid_plural "quadrillion" msgstr[0] "万亿" msgstr[1] "万亿" -#: src/humanize/number.py:131 +#: src/humanize/number.py:145 msgid "quintillion" msgid_plural "quintillion" msgstr[0] "百京" msgstr[1] "百京" -#: src/humanize/number.py:132 +#: src/humanize/number.py:146 msgid "sextillion" msgid_plural "sextillion" msgstr[0] "十垓" msgstr[1] "十垓" -#: src/humanize/number.py:133 +#: src/humanize/number.py:147 msgid "septillion" msgid_plural "septillion" msgstr[0] "秭" msgstr[1] "秭" -#: src/humanize/number.py:134 +#: src/humanize/number.py:148 msgid "octillion" msgid_plural "octillion" msgstr[0] "千秭" msgstr[1] "千秭" -#: src/humanize/number.py:135 +#: src/humanize/number.py:149 msgid "nonillion" msgid_plural "nonillion" msgstr[0] "百穰" msgstr[1] "百穰" -#: src/humanize/number.py:136 +#: src/humanize/number.py:150 msgid "decillion" msgid_plural "decillion" msgstr[0] "十沟" msgstr[1] "十沟" -#: src/humanize/number.py:137 +#: src/humanize/number.py:151 msgid "googol" msgid_plural "googol" msgstr[0] "古高尔" msgstr[1] "古高尔" -#: src/humanize/number.py:228 +#: src/humanize/number.py:246 msgid "zero" msgstr "" -#: src/humanize/number.py:229 +#: src/humanize/number.py:247 msgid "one" msgstr "一" -#: src/humanize/number.py:230 +#: src/humanize/number.py:248 msgid "two" msgstr "二" -#: src/humanize/number.py:231 +#: src/humanize/number.py:249 msgid "three" msgstr "三" -#: src/humanize/number.py:232 +#: src/humanize/number.py:250 msgid "four" msgstr "四" -#: src/humanize/number.py:233 +#: src/humanize/number.py:251 msgid "five" msgstr "五" -#: src/humanize/number.py:234 +#: src/humanize/number.py:252 msgid "six" msgstr "六" -#: src/humanize/number.py:235 +#: src/humanize/number.py:253 msgid "seven" msgstr "七" -#: src/humanize/number.py:236 +#: src/humanize/number.py:254 msgid "eight" msgstr "八" -#: src/humanize/number.py:237 +#: src/humanize/number.py:255 msgid "nine" msgstr "九" diff --git a/lib/humanize/locale/zh_HK/LC_MESSAGES/humanize.po b/lib/humanize/locale/zh_HK/LC_MESSAGES/humanize.po new file mode 100644 index 00000000..e37719bd --- /dev/null +++ b/lib/humanize/locale/zh_HK/LC_MESSAGES/humanize.po @@ -0,0 +1,365 @@ +# Traditional Chinese (China) translation for the project +# Copyright (C) 2021 +# This file is distributed under the same license as the PACKAGE package. +# AZLisme , 2016. +# Liwen SUN , 2019. +# Edward Ho , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-05-04 23:15+0200\n" +"PO-Revision-Date: 2016-11-14 23:02+0000\n" +"Last-Translator: Edward Ho \n" +"Language-Team: Chinese (traditional)\n" +"Language: zh_HK\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: src/humanize/number.py:57 +msgctxt "0 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:58 +msgctxt "1 (male)" +msgid "st" +msgstr "第" + +#: src/humanize/number.py:59 +msgctxt "2 (male)" +msgid "nd" +msgstr "第" + +#: src/humanize/number.py:60 +msgctxt "3 (male)" +msgid "rd" +msgstr "第" + +#: src/humanize/number.py:61 +msgctxt "4 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:62 +msgctxt "5 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:63 +msgctxt "6 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:64 +msgctxt "7 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:65 +msgctxt "8 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:66 +msgctxt "9 (male)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:70 +msgctxt "0 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:71 +msgctxt "1 (female)" +msgid "st" +msgstr "第" + +#: src/humanize/number.py:72 +msgctxt "2 (female)" +msgid "nd" +msgstr "第" + +#: src/humanize/number.py:73 +msgctxt "3 (female)" +msgid "rd" +msgstr "第" + +#: src/humanize/number.py:74 +msgctxt "4 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:75 +msgctxt "5 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:76 +msgctxt "6 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:77 +msgctxt "7 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:78 +msgctxt "8 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:79 +msgctxt "9 (female)" +msgid "th" +msgstr "第" + +#: src/humanize/number.py:140 +msgid "thousand" +msgid_plural "thousand" +msgstr[0] "千" +msgstr[1] "千" + +#: src/humanize/number.py:141 +msgid "million" +msgid_plural "million" +msgstr[0] "百萬" +msgstr[1] "百萬" + +#: src/humanize/number.py:142 +msgid "billion" +msgid_plural "billion" +msgstr[0] "十億" +msgstr[1] "十億" + +#: src/humanize/number.py:143 +msgid "trillion" +msgid_plural "trillion" +msgstr[0] "兆" +msgstr[1] "兆" + +#: src/humanize/number.py:144 +msgid "quadrillion" +msgid_plural "quadrillion" +msgstr[0] "萬億" +msgstr[1] "萬億" + +#: src/humanize/number.py:145 +msgid "quintillion" +msgid_plural "quintillion" +msgstr[0] "百京" +msgstr[1] "百京" + +#: src/humanize/number.py:146 +msgid "sextillion" +msgid_plural "sextillion" +msgstr[0] "十垓" +msgstr[1] "十垓" + +#: src/humanize/number.py:147 +msgid "septillion" +msgid_plural "septillion" +msgstr[0] "秭" +msgstr[1] "秭" + +#: src/humanize/number.py:148 +msgid "octillion" +msgid_plural "octillion" +msgstr[0] "千秭" +msgstr[1] "千秭" + +#: src/humanize/number.py:149 +msgid "nonillion" +msgid_plural "nonillion" +msgstr[0] "百穰" +msgstr[1] "百穰" + +#: src/humanize/number.py:150 +msgid "decillion" +msgid_plural "decillion" +msgstr[0] "十溝" +msgstr[1] "十溝" + +#: src/humanize/number.py:151 +msgid "googol" +msgid_plural "googol" +msgstr[0] "古高爾" +msgstr[1] "古高爾" + +#: src/humanize/number.py:246 +msgid "zero" +msgstr "零" + +#: src/humanize/number.py:247 +msgid "one" +msgstr "一" + +#: src/humanize/number.py:248 +msgid "two" +msgstr "二" + +#: src/humanize/number.py:249 +msgid "three" +msgstr "三" + +#: src/humanize/number.py:250 +msgid "four" +msgstr "四" + +#: src/humanize/number.py:251 +msgid "five" +msgstr "五" + +#: src/humanize/number.py:252 +msgid "six" +msgstr "六" + +#: src/humanize/number.py:253 +msgid "seven" +msgstr "七" + +#: src/humanize/number.py:254 +msgid "eight" +msgstr "八" + +#: src/humanize/number.py:255 +msgid "nine" +msgstr "九" + +#: src/humanize/time.py:133 +#, python-format +msgid "%d microsecond" +msgid_plural "%d microseconds" +msgstr[0] "%d 微秒" +msgstr[1] "%d 微秒" + +#: src/humanize/time.py:142 +#, python-format +msgid "%d millisecond" +msgid_plural "%d milliseconds" +msgstr[0] "%d 毫秒" +msgstr[1] "%d 毫秒" + +#: src/humanize/time.py:145 src/humanize/time.py:220 +msgid "a moment" +msgstr "一會" + +#: src/humanize/time.py:147 +msgid "a second" +msgstr "1 秒" + +#: src/humanize/time.py:149 +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d 秒" +msgstr[1] "%d 秒" + +#: src/humanize/time.py:151 +msgid "a minute" +msgstr "1 分鐘" + +#: src/humanize/time.py:154 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d 分鐘" +msgstr[1] "%d 分鐘" + +#: src/humanize/time.py:156 +msgid "an hour" +msgstr "1 小時" + +#: src/humanize/time.py:159 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d 小時" +msgstr[1] "%d 小時" + +#: src/humanize/time.py:162 +msgid "a day" +msgstr "1 天" + +#: src/humanize/time.py:164 src/humanize/time.py:167 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d 天" +msgstr[1] "%d 天" + +#: src/humanize/time.py:169 +msgid "a month" +msgstr "1 月" + +#: src/humanize/time.py:171 +#, python-format +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "%d 月" +msgstr[1] "%d 月" + +#: src/humanize/time.py:174 +msgid "a year" +msgstr "1 年" + +#: src/humanize/time.py:176 src/humanize/time.py:185 +#, python-format +msgid "1 year, %d day" +msgid_plural "1 year, %d days" +msgstr[0] "%d 年" +msgstr[1] "%d 年" + +#: src/humanize/time.py:179 +msgid "1 year, 1 month" +msgstr "1 年又 1 個月" + +#: src/humanize/time.py:182 +#, python-format +msgid "1 year, %d month" +msgid_plural "1 year, %d months" +msgstr[0] "1 年又 %d 個月" +msgstr[1] "1 年又 %d 個月" + +#: src/humanize/time.py:187 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "%d年" +msgstr[1] "%d年" + +#: src/humanize/time.py:217 +#, python-format +msgid "%s from now" +msgstr "%s 之後" + +#: src/humanize/time.py:217 +#, python-format +msgid "%s ago" +msgstr "%s 之前" + +#: src/humanize/time.py:221 +msgid "now" +msgstr "現在" + +#: src/humanize/time.py:244 +msgid "today" +msgstr "今天" + +#: src/humanize/time.py:246 +msgid "tomorrow" +msgstr "明天" + +#: src/humanize/time.py:248 +msgid "yesterday" +msgstr "昨天" + +#: src/humanize/time.py:534 +#, python-format +msgid "%s and %s" +msgstr "%s 與 %s" diff --git a/lib/humanize/number.py b/lib/humanize/number.py index 9246474f..71509a6f 100644 --- a/lib/humanize/number.py +++ b/lib/humanize/number.py @@ -1,5 +1,4 @@ #!/usr/bin/env python -# -*- coding: utf-8 -*- """Humanizing functions for numbers.""" @@ -7,15 +6,14 @@ import math import re from fractions import Fraction -from . import compat -from .i18n import gettext as _ -from .i18n import ngettext -from .i18n import ngettext_noop as NS_ -from .i18n import pgettext as P_ +from .i18n import _gettext as _ +from .i18n import _ngettext +from .i18n import _ngettext_noop as NS_ +from .i18n import _pgettext as P_ from .i18n import thousands_separator -def ordinal(value): +def ordinal(value, gender="male"): """Converts an integer to its ordinal as a string. For example, 1 is "1st", 2 is "2nd", 3 is "3rd", etc. Works for any integer or @@ -46,6 +44,7 @@ def ordinal(value): ``` Args: value (int, str, float): Integer to convert. + gender (str): Gender for translations. Accepts either "male" or "female". Returns: str: Ordinal string. @@ -54,21 +53,35 @@ def ordinal(value): value = int(value) except (TypeError, ValueError): return value - t = ( - P_("0", "th"), - P_("1", "st"), - P_("2", "nd"), - P_("3", "rd"), - P_("4", "th"), - P_("5", "th"), - P_("6", "th"), - P_("7", "th"), - P_("8", "th"), - P_("9", "th"), - ) + if gender == "male": + t = ( + P_("0 (male)", "th"), + P_("1 (male)", "st"), + P_("2 (male)", "nd"), + P_("3 (male)", "rd"), + P_("4 (male)", "th"), + P_("5 (male)", "th"), + P_("6 (male)", "th"), + P_("7 (male)", "th"), + P_("8 (male)", "th"), + P_("9 (male)", "th"), + ) + else: + t = ( + P_("0 (female)", "th"), + P_("1 (female)", "st"), + P_("2 (female)", "nd"), + P_("3 (female)", "rd"), + P_("4 (female)", "th"), + P_("5 (female)", "th"), + P_("6 (female)", "th"), + P_("7 (female)", "th"), + P_("8 (female)", "th"), + P_("9 (female)", "th"), + ) if value % 100 in (11, 12, 13): # special case - return "%d%s" % (value, t[0]) - return "%d%s" % (value, t[value % 10]) + return f"{value}{t[0]}" + return f"{value}{t[value % 10]}" def intcomma(value, ndigits=None): @@ -104,7 +117,7 @@ def intcomma(value, ndigits=None): """ sep = thousands_separator() try: - if isinstance(value, compat.string_types): + if isinstance(value, str): float(value.replace(sep, "")) else: float(value) @@ -116,14 +129,14 @@ def intcomma(value, ndigits=None): else: orig = str(value) - new = re.sub(r"^(-?\d+)(\d{3})", r"\g<1>%s\g<2>" % sep, orig) + new = re.sub(r"^(-?\d+)(\d{3})", rf"\g<1>{sep}\g<2>", orig) if orig == new: return new else: return intcomma(new) -powers = [10 ** x for x in (3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 100)] +powers = [10**x for x in (3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 100)] human_powers = ( NS_("thousand", "thousand"), NS_("million", "million"), @@ -184,16 +197,16 @@ def intword(value, format="%.1f"): for ordinal, power in enumerate(powers[1:], 1): if value < power: chopped = value / float(powers[ordinal - 1]) - if float(format % chopped) == float(10 ** 3): + if float(format % chopped) == float(10**3): chopped = value / float(powers[ordinal]) singular, plural = human_powers[ordinal] return ( - " ".join([format, ngettext(singular, plural, math.ceil(chopped))]) + " ".join([format, _ngettext(singular, plural, math.ceil(chopped))]) ) % chopped else: singular, plural = human_powers[ordinal - 1] return ( - " ".join([format, ngettext(singular, plural, math.ceil(chopped))]) + " ".join([format, _ngettext(singular, plural, math.ceil(chopped))]) ) % chopped return str(value) @@ -292,11 +305,11 @@ def fractional(value): if whole_number and not numerator and denominator == 1: # this means that an integer was passed in # (or variants of that integer like 1.0000) - return "%.0f" % whole_number + return f"{whole_number:.0f}" elif not whole_number: - return "{:.0f}/{:.0f}".format(numerator, denominator) + return f"{numerator:.0f}/{denominator:.0f}" else: - return "{:.0f} {:.0f}/{:.0f}".format(whole_number, numerator, denominator) + return f"{whole_number:.0f} {numerator:.0f}/{denominator:.0f}" def scientific(value, precision=2): @@ -350,7 +363,7 @@ def scientific(value, precision=2): value = str(value).replace("-", "") negative = True - if isinstance(value, compat.string_types): + if isinstance(value, str): value = float(value) fmt = "{:.%se}" % str(int(precision)) @@ -430,7 +443,7 @@ def clamp(value, format="{:}", floor=None, ceil=None, floor_token="<", ceil_toke else: token = "" - if isinstance(format, compat.string_types): + if isinstance(format, str): return token + format.format(value) elif callable(format): return token + format(value) diff --git a/lib/humanize/time.py b/lib/humanize/time.py index 686265bd..3fbefed6 100644 --- a/lib/humanize/time.py +++ b/lib/humanize/time.py @@ -1,5 +1,4 @@ #!/usr/bin/env python -# -*- coding: utf-8 -*- """Time humanizing functions. @@ -8,11 +7,12 @@ These are largely borrowed from Django's `contrib.humanize`. import datetime as dt import math +from enum import Enum +from functools import total_ordering -from _23 import Enum - -from .i18n import gettext as _ -from .i18n import ngettext +from .i18n import _gettext as _ +from .i18n import _ngettext +from .number import intcomma __all__ = [ "naturaldelta", @@ -23,6 +23,7 @@ __all__ = [ ] +@total_ordering class Unit(Enum): MICROSECONDS = 0 MILLISECONDS = 1 @@ -38,40 +39,12 @@ class Unit(Enum): return self.value < other.value return NotImplemented - def __gt__(self, other): - if self.__class__ is other.__class__: - return self.value > other.value - return NotImplemented - - def __eq__(self, other): - if self.__class__ is other.__class__: - return self.value == other.value - return NotImplemented - - def __le__(self, other): - if self.__class__ is other.__class__: - return self.value <= other.value - return NotImplemented - - def __ge__(self, other): - if self.__class__ is other.__class__: - return self.value >= other.value - return NotImplemented - - def __ne__(self, other): - if self.__class__ is other.__class__: - return self.value != other.value - return NotImplemented - - def __hash__(self): - return hash(self.value) - def _now(): return dt.datetime.now() -def abs_timedelta(delta): +def _abs_timedelta(delta): """Return an "absolute" value for a timedelta, always representing a time distance. Args: @@ -86,7 +59,7 @@ def abs_timedelta(delta): return delta -def date_and_delta(value, now=None): +def _date_and_delta(value, *, now=None): """Turn a value into a date and a timedelta which represents how long ago it was. If that's not possible, return `(None, value)`. @@ -106,24 +79,33 @@ def date_and_delta(value, now=None): date = now - delta except (ValueError, TypeError): return None, value - return date, abs_timedelta(delta) + return date, _abs_timedelta(delta) -def naturaldelta(value, months=True, minimum_unit="seconds", when=None): +def naturaldelta( + value, + months=True, + minimum_unit="seconds", +) -> str: """Return a natural representation of a timedelta or number of seconds. This is similar to `naturaltime`, but does not add tense to the result. Args: - value (datetime.timedelta): A timedelta or a number of seconds. + value (datetime.timedelta or int): A timedelta or a number of seconds. months (bool): If `True`, then a number of months (based on 30.5 days) will be used for fuzziness between years. minimum_unit (str): The lowest unit that can be used. - when (datetime.timedelta): Point in time relative to which _value_ is - interpreted. Defaults to the current time in the local timezone. + when (datetime.datetime): Removed in version 4.0; If you need to + construct a timedelta, do it inline as the first argument. Returns: - str: A natural representation of the amount of time elapsed. + str (str or `value`): A natural representation of the amount of time + elapsed unless `value` is not datetime.timedelta or cannot be + converted to int. In that case, a `value` is returned unchanged. + + Raises: + OverflowError: If `value` is too large to convert to datetime.timedelta. Examples Compare two timestamps in a custom local timezone:: @@ -135,16 +117,21 @@ def naturaldelta(value, months=True, minimum_unit="seconds", when=None): now = dt.datetime.now(tz=berlin) later = now + dt.timedelta(minutes=30) - assert naturaldelta(later, when=now) == "30 minutes" + assert naturaldelta(later - now) == "30 minutes" """ tmp = Unit[minimum_unit.upper()] if tmp not in (Unit.SECONDS, Unit.MILLISECONDS, Unit.MICROSECONDS): - raise ValueError("Minimum unit '%s' not supported" % minimum_unit) + raise ValueError(f"Minimum unit '{minimum_unit}' not supported") minimum_unit = tmp - date, delta = date_and_delta(value, now=when) - if date is None: - return value + if isinstance(value, dt.timedelta): + delta = value + else: + try: + value = int(value) + delta = dt.timedelta(seconds=value) + except (ValueError, TypeError): + return value use_months = months @@ -158,65 +145,70 @@ def naturaldelta(value, months=True, minimum_unit="seconds", when=None): if seconds == 0: if minimum_unit == Unit.MICROSECONDS and delta.microseconds < 1000: return ( - ngettext("%d microsecond", "%d microseconds", delta.microseconds) + _ngettext("%d microsecond", "%d microseconds", delta.microseconds) % delta.microseconds ) elif minimum_unit == Unit.MILLISECONDS or ( minimum_unit == Unit.MICROSECONDS - # and 1000 <= delta.microseconds < 1_000_000 # using _ is PY3 only - and 1000 <= delta.microseconds < 1000000 + and 1000 <= delta.microseconds < 1_000_000 ): milliseconds = delta.microseconds / 1000 return ( - ngettext("%d millisecond", "%d milliseconds", milliseconds) + _ngettext("%d millisecond", "%d milliseconds", milliseconds) % milliseconds ) return _("a moment") elif seconds == 1: return _("a second") elif seconds < 60: - return ngettext("%d second", "%d seconds", seconds) % seconds + return _ngettext("%d second", "%d seconds", seconds) % seconds elif 60 <= seconds < 120: return _("a minute") elif 120 <= seconds < 3600: minutes = seconds // 60 - return ngettext("%d minute", "%d minutes", minutes) % minutes + return _ngettext("%d minute", "%d minutes", minutes) % minutes elif 3600 <= seconds < 3600 * 2: return _("an hour") elif 3600 < seconds: hours = seconds // 3600 - return ngettext("%d hour", "%d hours", hours) % hours + return _ngettext("%d hour", "%d hours", hours) % hours elif years == 0: if days == 1: return _("a day") if not use_months: - return ngettext("%d day", "%d days", days) % days + return _ngettext("%d day", "%d days", days) % days else: if not months: - return ngettext("%d day", "%d days", days) % days + return _ngettext("%d day", "%d days", days) % days elif months == 1: return _("a month") else: - return ngettext("%d month", "%d months", months) % months + return _ngettext("%d month", "%d months", months) % months elif years == 1: if not months and not days: return _("a year") elif not months: - return ngettext("1 year, %d day", "1 year, %d days", days) % days + return _ngettext("1 year, %d day", "1 year, %d days", days) % days elif use_months: if months == 1: return _("1 year, 1 month") else: return ( - ngettext("1 year, %d month", "1 year, %d months", months) % months + _ngettext("1 year, %d month", "1 year, %d months", months) % months ) else: - return ngettext("1 year, %d day", "1 year, %d days", days) % days + return _ngettext("1 year, %d day", "1 year, %d days", days) % days else: - return ngettext("%d year", "%d years", years) % years + return _ngettext("%s year", "%s years", years) % intcomma(years) -def naturaltime(value, future=False, months=True, minimum_unit="seconds", when=None): +def naturaltime( + value, + future=False, + months=True, + minimum_unit="seconds", + when=None, +) -> str: """Return a natural representation of a time in a resolution that makes sense. This is more or less compatible with Django's `naturaltime` filter. @@ -236,7 +228,7 @@ def naturaltime(value, future=False, months=True, minimum_unit="seconds", when=N str: A natural representation of the input in a resolution that makes sense. """ now = when or _now() - date, delta = date_and_delta(value, now=now) + date, delta = _date_and_delta(value, now=now) if date is None: return value # determine tense by value only if datetime/timedelta were passed @@ -244,7 +236,7 @@ def naturaltime(value, future=False, months=True, minimum_unit="seconds", when=N future = date > now ago = _("%s from now") if future else _("%s ago") - delta = naturaldelta(delta, months, minimum_unit, when=when) + delta = naturaldelta(delta, months, minimum_unit) if delta == _("a moment"): return _("now") @@ -252,7 +244,7 @@ def naturaltime(value, future=False, months=True, minimum_unit="seconds", when=N return ago % delta -def naturalday(value, format="%b %d", locale=True): +def naturalday(value, format="%b %d") -> str: """Return a natural day. For date values that are tomorrow, today or yesterday compared to @@ -270,8 +262,6 @@ def naturalday(value, format="%b %d", locale=True): return value delta = value - dt.date.today() if delta.days == 0: - if not locale: - return "today" return _("today") elif delta.days == 1: return _("tomorrow") @@ -280,7 +270,7 @@ def naturalday(value, format="%b %d", locale=True): return value.strftime(format) -def naturaldate(value): +def naturaldate(value) -> str: """Like `naturalday`, but append a year for dates more than ~five months away.""" try: value = dt.date(value.year, value.month, value.day) @@ -290,7 +280,7 @@ def naturaldate(value): except (OverflowError, ValueError): # Date arguments out of range return value - delta = abs_timedelta(value - dt.date.today()) + delta = _abs_timedelta(value - dt.date.today()) if delta.days >= 5 * 365 / 12: return naturalday(value, "%b %d %Y") return naturalday(value) @@ -406,7 +396,7 @@ def _suppress_lower_units(min_unit, suppress): return suppress -def precisedelta(value, minimum_unit="seconds", suppress=(), format="%0.2f"): +def precisedelta(value, minimum_unit="seconds", suppress=(), format="%0.2f") -> str: """Return a precise representation of a timedelta. ```pycon @@ -473,7 +463,7 @@ def precisedelta(value, minimum_unit="seconds", suppress=(), format="%0.2f"): ``` """ - date, delta = date_and_delta(value) + date, delta = _date_and_delta(value) if date is None: return value @@ -547,9 +537,13 @@ def precisedelta(value, minimum_unit="seconds", suppress=(), format="%0.2f"): for unit, fmt in zip(reversed(Unit), fmts): singular_txt, plural_txt, value = fmt if value > 0 or (not texts and unit == min_unit): - fmt_txt = ngettext(singular_txt, plural_txt, value) + fmt_txt = _ngettext(singular_txt, plural_txt, value) if unit == min_unit and math.modf(value)[0] > 0: fmt_txt = fmt_txt.replace("%d", format) + elif unit == YEARS: + fmt_txt = fmt_txt.replace("%d", "%s") + texts.append(fmt_txt % intcomma(value)) + continue texts.append(fmt_txt % value)