diff options
author | Christian Heimes <christian@cheimes.de> | 2007-11-12 01:20:56 (GMT) |
---|---|---|
committer | Christian Heimes <christian@cheimes.de> | 2007-11-12 01:20:56 (GMT) |
commit | ced1646b9e53171276befafd216a13d8be62cf83 (patch) | |
tree | 336a15ad29f001ec386e52c0a7f2eb610bee4c1e | |
parent | 3d4c316f174d72c9b0db7e5bf75e0447c36f895c (diff) | |
download | cpython-ced1646b9e53171276befafd216a13d8be62cf83.zip cpython-ced1646b9e53171276befafd216a13d8be62cf83.tar.gz cpython-ced1646b9e53171276befafd216a13d8be62cf83.tar.bz2 |
Fix for #1427: Error in standard module calendar
the prweek() method is still broken and I can't figure out how it suppose to work.
-rw-r--r-- | Lib/calendar.py | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/Lib/calendar.py b/Lib/calendar.py index 84fabc7..acd463f 100644 --- a/Lib/calendar.py +++ b/Lib/calendar.py @@ -6,7 +6,9 @@ Sunday as the last (the European convention). Use setfirstweekday() to set the first day of the week (0=Monday, 6=Sunday).""" from __future__ import with_statement -import sys, datetime, locale +import sys +import datetime +import locale as _locale __all__ = ["IllegalMonthError", "IllegalWeekdayError", "setfirstweekday", "firstweekday", "isleap", "leapdays", "weekday", "monthrange", @@ -485,11 +487,11 @@ class TimeEncoding: self.locale = locale def __enter__(self): - self.oldlocale = locale.setlocale(locale.LC_TIME, self.locale) - return locale.getlocale(locale.LC_TIME)[1] + self.oldlocale = _locale.setlocale(_locale.LC_TIME, self.locale) + return _locale.getlocale(_locale.LC_TIME)[1] def __exit__(self, *args): - locale.setlocale(locale.LC_TIME, self.oldlocale) + _locale.setlocale(_locale.LC_TIME, self.oldlocale) class LocaleTextCalendar(TextCalendar): @@ -503,7 +505,7 @@ class LocaleTextCalendar(TextCalendar): def __init__(self, firstweekday=0, locale=None): TextCalendar.__init__(self, firstweekday) if locale is None: - locale = locale.getdefaultlocale() + locale = _locale.getdefaultlocale() self.locale = locale def formatweekday(self, day, width): @@ -537,7 +539,7 @@ class LocaleHTMLCalendar(HTMLCalendar): def __init__(self, firstweekday=0, locale=None): HTMLCalendar.__init__(self, firstweekday) if locale is None: - locale = locale.getdefaultlocale() + locale = _locale.getdefaultlocale() self.locale = locale def formatweekday(self, day): @@ -658,9 +660,11 @@ def main(args): parser.error("if --locale is specified --encoding is required") sys.exit(1) + locale = options.locale, options.encoding + if options.type == "html": if options.locale: - cal = LocaleHTMLCalendar(locale=options.locale) + cal = LocaleHTMLCalendar(locale=locale) else: cal = HTMLCalendar() encoding = options.encoding @@ -676,7 +680,7 @@ def main(args): sys.exit(1) else: if options.locale: - cal = LocaleTextCalendar(locale=options.locale) + cal = LocaleTextCalendar(locale=locale) else: cal = TextCalendar() optdict = dict(w=options.width, l=options.lines) |