[Python-checkins] r87056 - in python/branches/py3k: Lib/argparse.py Lib/test/test_argparse.py Misc/NEWS
eric.araujo
python-checkins at python.org
Sat Dec 4 18:31:49 CET 2010
Author: eric.araujo
Date: Sat Dec 4 18:31:49 2010
New Revision: 87056
Log:
Use proper plural forms in argparse (#4391)
Modified:
python/branches/py3k/Lib/argparse.py
python/branches/py3k/Lib/test/test_argparse.py
python/branches/py3k/Misc/NEWS
Modified: python/branches/py3k/Lib/argparse.py
==============================================================================
--- python/branches/py3k/Lib/argparse.py (original)
+++ python/branches/py3k/Lib/argparse.py Sat Dec 4 18:31:49 2010
@@ -88,7 +88,7 @@
import sys as _sys
import textwrap as _textwrap
-from gettext import gettext as _
+from gettext import gettext as _, ngettext
def _callable(obj):
@@ -1438,7 +1438,9 @@
conflict_handler(action, confl_optionals)
def _handle_conflict_error(self, action, conflicting_actions):
- message = _('conflicting option string(s): %s')
+ message = ngettext('conflicting option string: %s',
+ 'conflicting option strings: %s',
+ len(conflicting_actions))
conflict_string = ', '.join([option_string
for option_string, action
in conflicting_actions])
@@ -1995,7 +1997,9 @@
OPTIONAL: _('expected at most one argument'),
ONE_OR_MORE: _('expected at least one argument'),
}
- default = _('expected %s argument(s)') % action.nargs
+ default = ngettext('expected %s argument',
+ 'expected %s arguments',
+ action.nargs) % action.nargs
msg = nargs_errors.get(action.nargs, default)
raise ArgumentError(action, msg)
Modified: python/branches/py3k/Lib/test/test_argparse.py
==============================================================================
--- python/branches/py3k/Lib/test/test_argparse.py (original)
+++ python/branches/py3k/Lib/test/test_argparse.py Sat Dec 4 18:31:49 2010
@@ -4315,7 +4315,7 @@
items = [
name
for name, value in vars(argparse).items()
- if not name.startswith("_")
+ if not (name.startswith("_") or name == 'ngettext')
if not inspect.ismodule(value)
]
self.assertEqual(sorted(items), sorted(argparse.__all__))
Modified: python/branches/py3k/Misc/NEWS
==============================================================================
--- python/branches/py3k/Misc/NEWS (original)
+++ python/branches/py3k/Misc/NEWS Sat Dec 4 18:31:49 2010
@@ -49,6 +49,8 @@
Library
-------
+- Issue #4391: Use proper plural forms in argparse.
+
- Issue #10601: sys.displayhook uses 'backslashreplace' error handler on
UnicodeEncodeError.
More information about the Python-checkins
mailing list